Программный запуск формирования Word — различия между версиями

Материал из Формирование документов Word из 1C
Перейти к: навигация, поиск
(Новая страница: «Есть возможность запускать формирование Word-документов в рамках своих доработок конфигу…»)
 
 
(не показаны 4 промежуточные версии этого же участника)
Строка 1: Строка 1:
Есть возможность запускать формирование Word-документов в рамках своих доработок конфигурации. Это полезно в случаях, когда недостаточно типовой команды "В Word". Например,
+
<span style="color:#ff0000">поддерживается только с версии 2.0</span>
  
* если необходимо групповое формирование Word-документов
+
Есть возможность запускать формирование Word-документов в рамках своих доработок конфигурации. Это полезно в случаях, когда недостаточно типовой команды "В Word". Например, для
* необходима предварительная программная подготовка параметров
+
 
 +
* группового формирование Word-документов;
 +
* предварительной программной подготовки [[Параметры заполнения шаблона|параметров]];
 +
* автоматического формирования и отправки по эл. почте документа без показа пользователю каких-либо диалогов.
 +
 
 +
Программный запуск формирования документа:
 +
 
 +
<pre>
 +
ПараметрыФормирования = Новый Структура;
 +
 
 +
// Объект, на основе которого заполняется Word-шаблон. Обязательный параметр
 +
ПараметрыФормирования.Вставить("Объект", Объект);
 +
 
 +
// Элемент справочника Word_ПравилаЗаполнения. Если не задан - открывается окно выбора правила заполнения из связанных с переданным объектом.
 +
ПараметрыФормирования.Вставить("ПравилоЗаполнения", ПравилоЗаполнения);
 +
 
 +
// Если Истина, то НЕ показывается диалог ввода пользовательских параметров. Полезно в случае если автоматический запуск полностью заполняет все параметры.
 +
ПараметрыФормирования.Вставить("ПропускатьВводПараметровПользователем", Истина);
 +
 
 +
// Если Истина, то сформированный документ не показывается пользователю, в вызывающую форму возвращается
 +
// структура с полями
 +
//  * АдресДокумента - адрес временного хранлища данных с содержимым файла
 +
//  * ПараметрыФайла - структура со строковыми полями ИмяФайла, Расширение
 +
ПараметрыФормирования.Вставить("ВернутьСформированныйДокументВВызывающуюФорму", Истина);
 +
 
 +
// Если Истина, то формирование документа принудительно запускается на сервере (преимущественно формирование документа запускается на клиенте)
 +
ПараметрыФормирования.Вставить("ФормироватьНаСервере", Истина);
 +
 
 +
// Если параметр ВернутьСформированныйДокументВВызывающуюФорму = Истина, то в этом параметре можно указать формат, в котором необходимо
 +
// вернуть документ. Допустимые варианты: DOC, DOCX, PDF, HTML, RTF, TXT, ODT
 +
ПараметрыФормирования.Вставить("Формат", "PDF");
 +
 
 +
// Если Истина, то окно Word активизируется после окончания формирования документа (при групповом формировании документов активизацию окна Word удобно отключать)
 +
ПараметрыФормирования.Вставить("АктивизироватьWordПослеФормироваия", Истина);
 +
 
 +
//
 +
// Далее добавляем пользовательские параметры
 +
//
 +
 
 +
// Пользовательский параметр Параметр1
 +
ПараметрыФормирования.Вставить("Параметр1", "");
 +
 
 +
// Пользовательский параметр Параметр2
 +
ПараметрыФормирования.Вставить("Параметр2", "");
 +
 +
ОткрытьФорму(
 +
"Обработка.Word_ФормированиеДокументов.Форма.ФормаВыбораИЗаполнениеШаблона",
 +
ПараметрыФормирования,
 +
ЭтаФорма,
 +
,
 +
,
 +
,
 +
Новый ОписаниеОповещения("ПослеФормированияДокумента", ЭтаФорма)
 +
);
 +
</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_ФормированиеДокументов.Форма.ФормаВыбораИЗаполнениеШаблона",
	ПараметрыФормирования,
	ЭтаФорма,
	,
	,
	,
	Новый ОписаниеОповещения("ПослеФормированияДокумента", ЭтаФорма)
);