Задача по обработке документа "КадровоеПеремещение".

1. BuryMeInVegas 30.07.19 11:20 Сейчас в теме
Добрый день. Я начинающий программист, поэтому сильно не бейте, пожалуйста. Задача такова:
Имеется документ "КадровоеПеремещение" с реквизитами:
-Организация
-Сотрудник
-ПредыдущееПодразделение
-ПредыдущаяДолжность
-НовоеПодразделение
-НоваяДолжность
-НовыйОклад
Данные о сотрудниках хранятся в регистре сведений "СведенияОСотрудниках". Необходимо реализовать вывод предыдущего подразделения и должности в соответствующие реквизиты документа из регистра сведений (предыдущее подразделение в "ПредыдущееПодразделение", предыдущая должность аналогично) по выбранному сотруднику. Должно быть вот так: выбрали Иванова Ивана Ивановича, автоматически вывелись его предыдущее подразделение и должность.

Насколько я понимаю, необходимо составить два запроса по срезу последних, чтобы достать предыдущее подразделение и должность по определённому сотруднику. Описывается всё это в обработчике ПриСозданииНаСервере в модуле формы. Но, честно говоря, я слабо понимаю, каким образом это можно реализовать. За подсказки и наводки буду крайне благодарен. Прикладываю форму документа, чтобы было наглядно.
Прикрепленные файлы:
По теме из базы знаний
Найденные решения
2. alexx2510 39 30.07.19 12:50 Сейчас в теме
Должно быть вот так: выбрали Иванова Ивана Ивановича, автоматически вывелись его предыдущее подразделение и должность.

Ну в таком случае и описывать логику заполнения нужных полей нужно не в обработчике ПриСозданииНаСервере, а в обработчике ПриИзменении элемента формы "Сотрудник".
Из этого обработчика вызывайте с директивой &НаСервереБезКонтекста свою функцию ПолучитьПредыдущееПодразделениеДолжность(Сотрудник), передавайте туда ссылку на выбранного на форме сотрудника, там запросом получайте нужные данные из регистров и возвращайте назад на клиента структуру со значениями предыдущих Подразделения и должности, после чего заполняйте этими значениями свои элементы формы (реквизиты обработки)
3. Stref75 31.07.19 06:01 Сейчас в теме
(1) если эта информация есть в регистре сведений, не вижу смысла дублировать её в реквизитах документах.
Другое дело, если это реквизит формы документа.
Посмотрите как это реализовано у документа "Кадровый перевод" в ЗУПе.
Прикрепленные файлы:
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. Stref75 31.07.19 06:01 Сейчас в теме
(1) если эта информация есть в регистре сведений, не вижу смысла дублировать её в реквизитах документах.
Другое дело, если это реквизит формы документа.
Посмотрите как это реализовано у документа "Кадровый перевод" в ЗУПе.
Прикрепленные файлы:
2. alexx2510 39 30.07.19 12:50 Сейчас в теме
Должно быть вот так: выбрали Иванова Ивана Ивановича, автоматически вывелись его предыдущее подразделение и должность.

Ну в таком случае и описывать логику заполнения нужных полей нужно не в обработчике ПриСозданииНаСервере, а в обработчике ПриИзменении элемента формы "Сотрудник".
Из этого обработчика вызывайте с директивой &НаСервереБезКонтекста свою функцию ПолучитьПредыдущееПодразделениеДолжность(Сотрудник), передавайте туда ссылку на выбранного на форме сотрудника, там запросом получайте нужные данные из регистров и возвращайте назад на клиента структуру со значениями предыдущих Подразделения и должности, после чего заполняйте этими значениями свои элементы формы (реквизиты обработки)
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот