Каталог решений - Автоматическое заполнение шаблонов из дополнительных реквизитов 1С:Документооборот 8.

Автоматическое заполнение шаблонов из дополнительных реквизитов 1С:Документооборот 8.

Автоматическое заполнение шаблонов из дополнительных реквизитов 1С:Документооборот 8.

В наличии

Администратор создаёт новое поле в карточке документа в пользовательском режиме (дополнительный реквизит), пользователь 1С:Документооборот вводит данные в это поле, система должна автоматически подставить в шаблон документа введенные данные. Как подобраться к доп.реквизиту?

Категория:

Описание

Возможности автозаполнения шаблонов можно посмотреть в поучительном ВИДЕО.

Там описаны основы для подготовки автозаполнения, которые будут использоваться в данной статье. Здесь же будут рассмотрены некоторые немаловажные моменты. 

Предупреждение: в описании статьи дан обзор минимального создаваемого набора, нужного для осуществления автозаполнения. Сделано это для того, чтобы почти ничего не умеющий человек смог быстро создать набор для тестирования автозаполнения. Тем, кто с этим всем уже знаком — советую просто пробежаться глазами и дойти до нужного момента.

1. Итак, для начала создадим новый Файл. Это будет файл формата MS Word. В редакторе MS Word создадим новое «поле», заполним поля, как на скриншоте.

//sale.itcity.ru/upload/iblock/556/1.png

Загрузим файл в систему. Для этого переходим на вкладку «Документы и файлы», ссылка «Файлы». Создаём Файл в режиме «Из файла на диске». Выбираем нужный файл, делаем описание и вот, он загружен в систему. 

2. Создадим новый вид документа, для этого заходим в подсистему «Нормативно-справочная информация», нажимаем ссылку «Виды документов». Создаём новый вид документа, открываем «Набор дополнительных свойств документов данного вида». 

//sale.itcity.ru/upload/iblock/28b/2.png

Создаём новый дополнительный реквизит. 

//sale.itcity.ru/upload/iblock/07b/2.png

 

 //sale.itcity.ru/upload/iblock/fab/1.png

Создаём новый Внутренний документ. Для этого переходим в подсистему «Документы и файлы», и там создаём новый документ. Ставим вид документа равным «ТестовыйВидДок», который был создан ранее. Также должен появиться созданный нами доп.реквизит.

//sale.itcity.ru/upload/iblock/33c/8.png

Заполним значение доп.реквизита.

//sale.itcity.ru/upload/iblock/af0/9.png

Записываем и закрываем внутренний документ.

Далее нужно создать правило автозаполнения. Для этого переходим в подсистему «Нормативно-справочная информация», открываем «Правила автозаполнения шаблонов файлов» и создаём новое правило.

//sale.itcity.ru/upload/iblock/c0b/7.png

На скриншоте выше показан пример, когда «поле» в документе MS Word будет заполняться из стандартного реквизита. Т.е. наше поле в текстовом документе будет заменено на значение «ТестовыйВидДок», но нам нужно значение «16047», которое мы прописали в поле карточки внутреннего документа, в дополнительном реквизите. Для этого необходимо написать определенный код, ради которого и писалась эта статья. Пример:

 //sale.itcity.ru/upload/iblock/d8f/11.png

РезультатОбработки = АвтозаполнениеШаблоновФайловСервер.ПолучитьЗначениеДопРеквизитаОбъекта(Файл.ВладелецФайла.Ссылка,»ТестовыйДопРеквизит»)

Внимание: для быстрого тестирования на форме имеется кнопка «Проверить правило», нажимая на которую можно выбрать нужный документ, и посмотреть, каким образом будет заполняться шаблон файла данными из этого документа.

Для указания другого доп.реквизита необходимо в данной строчке просто поменять значение «ТестовыйДопРеквизит» на другое название другого доп.реквизита.

Помимо данного кода в данном поле можно использовать различные вариации другого кода, например:

  • РезультатОбработки = АвтозаполнениеШаблоновФайловСервер.ПолучитьЗначениеДопРеквизитаОбъекта(Файл.ВладелецФайла.Ссылка,»Страна, город») + » » + АвтозаполнениеШаблоновФайловСервер.ПолучитьЗначениеДопРеквизитаОбъекта(Файл.ВладелецФайла.Ссылка,»Организация»)

т.е. можно соединять несколько доп.реквизитов в одну строку, например.

  •  РезультатОбработки = (НачалоДня(Файл.ВладелецФайла.ДатаОкончанияДействия) — НачалоДня(Файл.ВладелецФайла.ДатаНачалаДействия)) / 86400 + 1;
в данном случае реально брать данные из простых реквизитов на форме и преобразовывать их.

has been added to your cart:
Оформление заказа