Главная → База знаний → Настройка и администрирование → Автозаполнение шаблонов документов
Как настроить автозаполнение исходящего документа в 1С Документооборот?
Автор: Владимир Лушников | Последнее обновление: 12 февраля 2025 |🕐 5 мин.чтения
Чтобы уменьшить трудозатраты на создание и заполнение исходящих писем, а также для унификации документирования, рекомендуется настроить автозаполняемый шаблон файла исходящего документа в «1С:Документообороте».
Настройки автозаполнения файлов подробно рассмотрены в видеокурсе.
Далее будет рассмотрена настройка автозаполнения в 1С:Документооборот версии 2.0.
В 1С:Документооборот под Администратором или пользователем с правами "Ответственный за НСИ" открываем справочник "Файлы".
В папку "Шаблоны файлов" загружаем файл исходящего письма.
Добавим в файл следующие поля ввода: ПолнНазвОрганизации, КраткНазвОрганизации, АдресОрганизации, Телефон, ОКПО, ОГРН, ИНН, КПП, Куда, Кому, ДатаРегистрации, РегНомер, ВОтветНа, ЗаголовокПисьма, СодержаниеПисьма, ДолжностьПодписанта, ФИОПодписанта.
В левом верхнем углу файла напишем команду ВставитьИзображениеШтрихкода, чтобы система в указанном месте вставила штрихкод.
В результате у нас получится следующий файл:
Готовый автозаполняемый шаблон файла исходящего письма можно скачать по ссылке: Исходящее письмо.
Теперь настроим правила автозаполнения этого файла для вида исходящего документа «Письмо».
После указания всех настроек наше правило должно выглядеть следующим образом:
В старых версиях 1С:Документооборот в справочнике Организации поле ОГРН отсутствовало, поэтому при заполнении поля ОГРН нам нужно было предварительно создавать дополнительный реквизит для справочника «Организации».
Для правила заполнения поля «Куда» нам нужно будет написать выражение на встроенном языке, так как получатель хранится в табличной части. Для упрощения будем считать что у нас всегда один получатель, поэтому будем брать первую строчку в табличной части «Получатели». Если имеет место большое кол-во исходящих писем с несколькими получателями, то нужно переделать выражение на встроенном языке.
//Получаем первого контрагента из табличной части Получатели
Контрагент = Файл.ВладелецФайла.Получатели[0].Получатель;
РезультатОбработки = "";
Если ЗначениеЗаполнено(Контрагент) Тогда
РезультатОбработки = Контрагент.НаименованиеПолное;
КонецЕсли;
Аналогично поступаем и с полем «Кому». Причем ФИО можем просклонять, а для должности добавим дополнительный реквизит «Должность в дательном падеже» для справочника «Контактные лица».
Тип значения дополнительного реквизита укажем «Дополнительное значение».
Правила замены будут выглядеть следующим образом:
//Получаем первого адресата из табличной части Получатели
Адресат = Файл.ВладелецФайла.Получатели[0].Адресат;
РезультатОбработки = "";
Если ЗначениеЗаполнено(Адресат) Тогда
ДолжностьВДательномПадеже = АвтозаполнениеШаблоновФайловСервер.ПолучитьЗначениеДопРеквизитаОбъекта(Адресат, "Должность в дательном падеже");
ФИО = Адресат.Наименование;
// Просклоняем ФИО
РезФИО = "";
Если ФизическиеЛицаКлиентСервер.Просклонять(ФИО, 3, РезФИО) Тогда
РезультатОбработкиФИО = РезФИО;
Иначе
РезультатОбработкиФИО = ФИО;
КонецЕсли;
РезультатОбработки = СокрЛП(ДолжностьВДательномПадеже) + " " + РезультатОбработкиФИО;
КонецЕсли;
Для поля ДатаРегистрации нам потребуется еще установить формат даты:
Поле ВОтветНа может быть, а может не быть заполнено. Если это исходящее письмо ответное, то тогда у нас будет автоматически заполнена связь «Отправлен в ответ на». И у входящего документа нам нужно брать не наш регистрационный номер и дату, а номер и дату отправителя входящего документа:
Док = Файл.ВладелецФайла.Ссылка;
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ РАЗРЕШЕННЫЕ
| СвязиДокументов.СвязанныйДокумент.ИсходящаяДата КАК ИсходящаяДата,
| СвязиДокументов.СвязанныйДокумент.ИсходящийНомер КАК ИсходящийНомер
|ИЗ
| РегистрСведений.СвязиДокументов КАК СвязиДокументов
|ГДЕ
| СвязиДокументов.Документ = &Документ
| И СвязиДокументов.ТипСвязи = &ТипСвязи";
Запрос.УстановитьПараметр("Документ", Док);
Запрос.УстановитьПараметр("ТипСвязи", Справочники.ТипыСвязей.ОтправленВОтветНа);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаЗапроса = РезультатЗапроса.Выбрать();
Если ВыборкаЗапроса.Следующий() Тогда
РезультатОбработки = "На № " + ВыборкаЗапроса.ИсходящийНомер + " от " + Формат(ВыборкаЗапроса.ИсходящаяДата, "ДЛФ=D");
Иначе
РезультатОбработки = "";
КонецЕсли;
При автозаполнении поля ЗаголовокПисьма важно помнить, что реквизит Наименование нам вряд ли подойдет, так как после регистрации документа в данном реквизите также будет храниться номер и дата документа. Поэтому целесообразно использовать реквизит Заголовок.
Для поля ДолжностьПодписанта используем выражение на встроенном языке:
РезультатОбработки = РаботаСПользователями.ПолучитьДолжность(Файл.ВладелецФайла.Подписал);
В результате проверки после добавления файла из шаблона мы должны получить следующий результат заполненного файла:
При настройке правил автозаполнения шаблона файла на встроенном языке 1С полезно будет разобраться со структурой хранения внутреннего документа.
Настройки автозаполнения файлов подробно рассмотрены в видеокурсе.
Как в 1с документооборот настроить шаблон комплексного процесса для служебной записки? Пошаговая инструкция.
Разберемся с термином бизнес-процесс и как процессы используются в 1с, и в частности в 1с документообороте. Выделим элементарные процессы: исполнение, рассмотрение, регистрация, согласование, утверждение.
Есть вопрос? — Поделитесь вашим мнением в комментариях.
авторизуйтесь