Содержание:
В современных системах документооборота автоматизация рутины играет ключевую роль в повышении производительности сотрудников. Одной из таких полезных функций в системе 1С: Документооборот является автоподстановка помощника сотрудника, которая позволяет ускорить работу с документами и задачами, минимизировать ошибки и обеспечить точность заполнения данных.
1. Зачем нужна автоподстановка помощника и его код
В ходе создания обработок или автозаполняемых шаблонов в какой-то момент может появиться надобность использовать помощника какого-либо сотрудника. Получить его програмно, т.е. создать автоподстановку, может показаться на первый взгляд нетривиальной задачей, хотя на самом деле подводных камней в написании такого запроса нет. Всё, что для этого нужно знать – структуру справочника замещающих и помощников и базовое понимание написания запросов.
В данной автоподстановке сотрудник, помощника которого мы пытаемся найти – ИскомыйСотрудник.
Запрос = Новый Запрос;
//выбираем тип замещения – «Помощники». Если нужен замещающий, то необходимо поменять «Помощники» на «Замещающие».
ВидЗамещения = Перечисления.ВидыЗамещения.Помощники;
Запрос.УстановитьПараметр(«Сотрудник», ИскомыйСотрудник);
Запрос.УстановитьПараметр(«ВидЗамещения», ВидЗамещения);
//сам запрос
Запрос1.Текст = «ВЫБРАТЬ ПЕРВЫЕ 1
| ЗамещающиеИПомощники.ВидЗамещения КАК ВидЗамещения,
| ЗамещающиеИПомощники.Замещающий КАК Замещающий,
| ЗамещающиеИПомощники.Сотрудник КАК Сотрудник
|ИЗ
| Справочник.ЗамещающиеИПомощники КАК ЗамещающиеИПомощники
|ГДЕ
| ЗамещающиеИПомощники.Сотрудник = &Сотрудник
| И ЗамещающиеИПомощники.ВидЗамещения = &ВидЗамещения»;
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
//получаем сотрудника помощника.
Результат = Сотрудники.ОсновнойСотрудникПользователя(ВыборкаДетальныеЗаписи.Замещающий);
2. Автоподстановка подписанта в системе 1С: Документооборот
В случае, если автоподстановка применяется, к примеру, на подписанта документа в 1С, а помощник будет обеспечивать подписание, может возникнуть ситуация, когда помощника у одного из потенциальных подписантов нет. Тогда в конце запроса необходимо написать проверку наличия помощника, а в случае его отсутствия – подставить другого сотрудника. В нашем случае это роль «Секретарь».
//проверка наличия помощника
Если ВыборкаДетальныеЗаписи1.Следующий() Тогда
Результат = Сотрудники.ОсновнойСотрудникПользователя(ВыборкаДетальныеЗаписи1.Замещающий);
Иначе
//если помощника нет – возвращается полная роль «Секретарь»
Роль = Справочники.РолиИсполнителей.НайтиПоНаименованию(«Секретарь»);
Результат = Справочники.ПолныеРоли.НайтиСоздатьПолнуюРоль(Роль);
КонецЕсли;
Заключение:
Функция автоподстановки помощника сотрудника в конфигурации 1С: Документооборот — это удобный инструмент, который значительно упрощает работу с задачами и документами, особенно в крупных компаниях. Она позволяет автоматизировать рутинные процессы, ускорить выполнение задач и минимизировать ошибки.
Использование автоподстановки помогает сосредоточиться на выполнении ключевых задач, оставляя системе управление организационными нюансами.