Программный запуск формирования Word — различия между версиями
Материал из Формирование документов Word из 1C
Строка 7: | Строка 7: | ||
Программный запуск формирования Word-документа | Программный запуск формирования Word-документа | ||
− | + | <pre> | |
− | ПараметрыФормирования = Новый Структура( | + | ПараметрыФормирования = Новый Структура; |
− | + | ||
− | + | // Объект, на основе которого заполняется Word-шаблон. Обязательный параметр | |
− | + | ПараметрыФормирования.Вставить("Объект", Объект); | |
− | + | ||
− | + | // Элемент справочника Word_ПравилаЗаполнения. Если не задан - открывается окно выбора правила заполнения из связанных с переданным объектом. | |
− | ПараметрыФормирования.Вставить(" | + | ПараметрыФормирования.Вставить("ПравилоЗаполнения", ПравилоЗаполнения); |
+ | |||
+ | // Если Истина, то НЕ показывается диалог ввода пользовательских параметров. Полезно в случае если автоматический запуск полностью заполняет все параметры. | ||
+ | ПараметрыФормирования.Вставить("ПропускатьВводПараметровПользователем", Истина); | ||
+ | |||
+ | // Если Истина, то сформированный документ не показывается пользователю, в вызывающую форму возвращается | ||
+ | // структура с полями | ||
+ | // * АдресДокумента - адрес временного хранлища данных с содержимым файла | ||
+ | // * ПараметрыФайла - структура со строковыми полями ИмяФайла, Расширение | ||
+ | ПараметрыФормирования.Вставить("ВернутьСформированныйДокументВВызывающуюФорму", Истина); | ||
+ | |||
+ | // Если Истина, то формирование документа принудительно запускается на сервере (преимущественно формирование документа запускается на клиенте) | ||
+ | ПараметрыФормирования.Вставить("ФормироватьНаСервере", Истина); | ||
+ | |||
+ | // Если Истина, то окно Word активизируется после окончания формирования документа (при групповом формировании документов активизацию окна Word удобно отключать) | ||
+ | ПараметрыФормирования.Вставить("АктивизироватьWordПослеФормироваия", Истина); | ||
+ | |||
+ | // | ||
+ | // Далее добавляем пользовательские параметры | ||
+ | // | ||
+ | |||
+ | // Пользовательский параметр Параметр1 | ||
+ | ПараметрыФормирования.Вставить("Параметр1", ""); | ||
+ | |||
+ | // Пользовательский параметр Параметр2 | ||
+ | ПараметрыФормирования.Вставить("Параметр2", ""); | ||
ОткрытьФорму( | ОткрытьФорму( | ||
Строка 23: | Строка 48: | ||
, | , | ||
, | , | ||
− | Новый ОписаниеОповещения(" | + | Новый ОписаниеОповещения("ПослеФормированияДокумента", ЭтаФорма) |
); | ); | ||
− | + | </pre> |
Версия 11:06, 29 марта 2021
Есть возможность запускать формирование Word-документов в рамках своих доработок конфигурации. Это полезно в случаях, когда недостаточно типовой команды "В Word". Например, для
- группового формирование Word-документов;
- предварительной программной подготовки параметров;
- автоматического формирования и отправки по эл. почте документа без показа пользователю каких-либо диалогов.
Программный запуск формирования Word-документа
ПараметрыФормирования = Новый Структура; // Объект, на основе которого заполняется Word-шаблон. Обязательный параметр ПараметрыФормирования.Вставить("Объект", Объект); // Элемент справочника Word_ПравилаЗаполнения. Если не задан - открывается окно выбора правила заполнения из связанных с переданным объектом. ПараметрыФормирования.Вставить("ПравилоЗаполнения", ПравилоЗаполнения); // Если Истина, то НЕ показывается диалог ввода пользовательских параметров. Полезно в случае если автоматический запуск полностью заполняет все параметры. ПараметрыФормирования.Вставить("ПропускатьВводПараметровПользователем", Истина); // Если Истина, то сформированный документ не показывается пользователю, в вызывающую форму возвращается // структура с полями // * АдресДокумента - адрес временного хранлища данных с содержимым файла // * ПараметрыФайла - структура со строковыми полями ИмяФайла, Расширение ПараметрыФормирования.Вставить("ВернутьСформированныйДокументВВызывающуюФорму", Истина); // Если Истина, то формирование документа принудительно запускается на сервере (преимущественно формирование документа запускается на клиенте) ПараметрыФормирования.Вставить("ФормироватьНаСервере", Истина); // Если Истина, то окно Word активизируется после окончания формирования документа (при групповом формировании документов активизацию окна Word удобно отключать) ПараметрыФормирования.Вставить("АктивизироватьWordПослеФормироваия", Истина); // // Далее добавляем пользовательские параметры // // Пользовательский параметр Параметр1 ПараметрыФормирования.Вставить("Параметр1", ""); // Пользовательский параметр Параметр2 ПараметрыФормирования.Вставить("Параметр2", ""); ОткрытьФорму( "Обработка.Word_ФормированиеДокументов.Форма.ФормаВыбораИЗаполнениеШаблона", ПараметрыФормирования, ЭтаФорма, , , , Новый ОписаниеОповещения("ПослеФормированияДокумента", ЭтаФорма) );