Программный запуск формирования Word — различия между версиями
Материал из Формирование документов Word из 1C
(не показаны 3 промежуточные версии этого же участника) | |||
Строка 1: | Строка 1: | ||
+ | <span style="color:#ff0000">поддерживается только с версии 2.0</span> | ||
+ | |||
Есть возможность запускать формирование Word-документов в рамках своих доработок конфигурации. Это полезно в случаях, когда недостаточно типовой команды "В Word". Например, для | Есть возможность запускать формирование Word-документов в рамках своих доработок конфигурации. Это полезно в случаях, когда недостаточно типовой команды "В Word". Например, для | ||
Строка 5: | Строка 7: | ||
* автоматического формирования и отправки по эл. почте документа без показа пользователю каких-либо диалогов. | * автоматического формирования и отправки по эл. почте документа без показа пользователю каких-либо диалогов. | ||
− | Программный запуск формирования Word-документа | + | Программный запуск формирования документа: |
+ | |||
+ | <pre> | ||
+ | ПараметрыФормирования = Новый Структура; | ||
+ | |||
+ | // Объект, на основе которого заполняется Word-шаблон. Обязательный параметр | ||
+ | ПараметрыФормирования.Вставить("Объект", Объект); | ||
+ | |||
+ | // Элемент справочника Word_ПравилаЗаполнения. Если не задан - открывается окно выбора правила заполнения из связанных с переданным объектом. | ||
+ | ПараметрыФормирования.Вставить("ПравилоЗаполнения", ПравилоЗаполнения); | ||
+ | |||
+ | // Если Истина, то НЕ показывается диалог ввода пользовательских параметров. Полезно в случае если автоматический запуск полностью заполняет все параметры. | ||
+ | ПараметрыФормирования.Вставить("ПропускатьВводПараметровПользователем", Истина); | ||
+ | |||
+ | // Если Истина, то сформированный документ не показывается пользователю, в вызывающую форму возвращается | ||
+ | // структура с полями | ||
+ | // * АдресДокумента - адрес временного хранлища данных с содержимым файла | ||
+ | // * ПараметрыФайла - структура со строковыми полями ИмяФайла, Расширение | ||
+ | ПараметрыФормирования.Вставить("ВернутьСформированныйДокументВВызывающуюФорму", Истина); | ||
+ | |||
+ | // Если Истина, то формирование документа принудительно запускается на сервере (преимущественно формирование документа запускается на клиенте) | ||
+ | ПараметрыФормирования.Вставить("ФормироватьНаСервере", Истина); | ||
+ | |||
+ | // Если параметр ВернутьСформированныйДокументВВызывающуюФорму = Истина, то в этом параметре можно указать формат, в котором необходимо | ||
+ | // вернуть документ. Допустимые варианты: DOC, DOCX, PDF, HTML, RTF, TXT, ODT | ||
+ | ПараметрыФормирования.Вставить("Формат", "PDF"); | ||
+ | |||
+ | // Если Истина, то окно Word активизируется после окончания формирования документа (при групповом формировании документов активизацию окна Word удобно отключать) | ||
+ | ПараметрыФормирования.Вставить("АктивизироватьWordПослеФормироваия", Истина); | ||
+ | |||
+ | // | ||
+ | // Далее добавляем пользовательские параметры | ||
+ | // | ||
+ | |||
+ | // Пользовательский параметр Параметр1 | ||
+ | ПараметрыФормирования.Вставить("Параметр1", ""); | ||
− | + | // Пользовательский параметр Параметр2 | |
− | ПараметрыФормирования | + | ПараметрыФормирования.Вставить("Параметр2", ""); |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
ОткрытьФорму( | ОткрытьФорму( | ||
Строка 23: | Строка 54: | ||
, | , | ||
, | , | ||
− | Новый ОписаниеОповещения(" | + | Новый ОписаниеОповещения("ПослеФормированияДокумента", ЭтаФорма) |
); | ); | ||
− | + | </pre> |
Текущая версия на 03:42, 30 марта 2021
поддерживается только с версии 2.0
Есть возможность запускать формирование Word-документов в рамках своих доработок конфигурации. Это полезно в случаях, когда недостаточно типовой команды "В Word". Например, для
- группового формирование Word-документов;
- предварительной программной подготовки параметров;
- автоматического формирования и отправки по эл. почте документа без показа пользователю каких-либо диалогов.
Программный запуск формирования документа:
ПараметрыФормирования = Новый Структура; // Объект, на основе которого заполняется Word-шаблон. Обязательный параметр ПараметрыФормирования.Вставить("Объект", Объект); // Элемент справочника Word_ПравилаЗаполнения. Если не задан - открывается окно выбора правила заполнения из связанных с переданным объектом. ПараметрыФормирования.Вставить("ПравилоЗаполнения", ПравилоЗаполнения); // Если Истина, то НЕ показывается диалог ввода пользовательских параметров. Полезно в случае если автоматический запуск полностью заполняет все параметры. ПараметрыФормирования.Вставить("ПропускатьВводПараметровПользователем", Истина); // Если Истина, то сформированный документ не показывается пользователю, в вызывающую форму возвращается // структура с полями // * АдресДокумента - адрес временного хранлища данных с содержимым файла // * ПараметрыФайла - структура со строковыми полями ИмяФайла, Расширение ПараметрыФормирования.Вставить("ВернутьСформированныйДокументВВызывающуюФорму", Истина); // Если Истина, то формирование документа принудительно запускается на сервере (преимущественно формирование документа запускается на клиенте) ПараметрыФормирования.Вставить("ФормироватьНаСервере", Истина); // Если параметр ВернутьСформированныйДокументВВызывающуюФорму = Истина, то в этом параметре можно указать формат, в котором необходимо // вернуть документ. Допустимые варианты: DOC, DOCX, PDF, HTML, RTF, TXT, ODT ПараметрыФормирования.Вставить("Формат", "PDF"); // Если Истина, то окно Word активизируется после окончания формирования документа (при групповом формировании документов активизацию окна Word удобно отключать) ПараметрыФормирования.Вставить("АктивизироватьWordПослеФормироваия", Истина); // // Далее добавляем пользовательские параметры // // Пользовательский параметр Параметр1 ПараметрыФормирования.Вставить("Параметр1", ""); // Пользовательский параметр Параметр2 ПараметрыФормирования.Вставить("Параметр2", ""); ОткрытьФорму( "Обработка.Word_ФормированиеДокументов.Форма.ФормаВыбораИЗаполнениеШаблона", ПараметрыФормирования, ЭтаФорма, , , , Новый ОписаниеОповещения("ПослеФормированияДокумента", ЭтаФорма) );