<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://wiki.alta.ru/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Rudometov</id>
	<title>Alta-Soft Wikipedia - Вклад участника [ru]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.alta.ru/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Rudometov"/>
	<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/Rudometov"/>
	<updated>2026-10-01T03:54:43Z</updated>
	<subtitle>Вклад участника</subtitle>
	<generator>MediaWiki 1.32.0</generator>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1400</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1400"/>
		<updated>2026-03-25T07:41:51Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для объединения ячеек в столбцах (ROWSPAN) ==== &lt;br /&gt;
&lt;br /&gt;
Если в столбце дописать ключевое слово '''%%JOIN''', то такой ячейки с одинаковыми значениями в столбце будут объединены.&lt;br /&gt;
Например, если шаблон вида &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
формирует таблицу&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | 1111 || aaaaa&lt;br /&gt;
 |-&lt;br /&gt;
 | 1111 || ббббб&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ггггг&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
то шаблон &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 %%JOIN || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
cформирует &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | rowspan=&amp;quot;2&amp;quot;| 1111 || aaaaa&lt;br /&gt;
 |- &lt;br /&gt;
 | ббббб&lt;br /&gt;
 |-&lt;br /&gt;
 | rowspan=&amp;quot;3&amp;quot;| 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | ггггг&lt;br /&gt;
 |-&lt;br /&gt;
 | ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для очистки строки с вложенным блоком вместо её удаления ====&lt;br /&gt;
&lt;br /&gt;
Если в любом месте главного цикла (START_END) вписать идентификатор '''%%CLEARSUBIFEMPTY''', то строка с вложенным циклом (STARTSUB_ENDSUB) не будет удаляться при пустом вложенном блоке,&lt;br /&gt;
а просто очистятся ячейки этого блока. Полезно, когда вложенный блок находится в одной строке с главным блоком. Обычно при пустом вложенном удаляется вся строка, вместе с главным блоком.&lt;br /&gt;
С таким идентификатором этого удаления можно избежать.&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAME''' – извлекает из графы 31 наименование вместе с обороткой TXT. По настройке [ExtraPrint]G31NameTovG=1 добавляет TOVG;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMETILLCOLON''' – извлекает из графы 31 наименование товара до двоеточия;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
* '''%%SUM3(''&amp;lt;ИМЯ_БЛОКА1&amp;gt;\&amp;lt;ИМЯ_БЛОКА2&amp;gt;\&amp;lt;ИМЯ_БЛОКА3&amp;gt;\&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля в блоке 3го уровня.&lt;br /&gt;
* '''%%31.PALCOUNT''' - количество паллет.&lt;br /&gt;
* '''%%31.PAKTYPE''' - тип упаковки.&lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.PAKNAME''' - наименование упаковки.&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%FIRSTDT''' – извлечет номер первой ДТ;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, либо в заданном вложенном блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%NUMBLOCKA(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')'''  - Возвращает количество записей в заданном вложенном блоке всех товаров %%NUMBLOCK('BLOCK\TOVG')&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
&lt;br /&gt;
* '''%%EXECMACROS(''&amp;lt;ИМЯ_МАКРОСА&amp;gt;'')''' - выполнит макрос, прописанный в шаблоне, после окончания выгрузки. Может находиться в любом месте шаблона.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''%%FORMULA([35_1]+[38_1])''' - выполнить операцию над полями (сложение, умножение, конкатекация строк и т.д.). Названия полей должны быть выделены скобками.&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' или ''УСЛОВИЕ'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) или условия (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
==== Функции работы с датой ====&lt;br /&gt;
&lt;br /&gt;
* '''%%TEXTDATE(''&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;'')'''  - конвертирует дату в текстовый формат (21 января 2025)&lt;br /&gt;
* '''%%DATE(''&amp;quot;dd mmmm yyyy&amp;quot;'',''[&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;]'')'''  - конвертирует дату в произвольный заданный формат&lt;br /&gt;
* '''%%CURDATE'''  - возвращает текущую дату в формате dd.mm.yyyy&lt;br /&gt;
* '''%%CURTIME'''  - возвращает текущее время в формате hh:nn:ss&lt;br /&gt;
* '''%%DASHDATE(''&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;'')'''  - заменяет точки на дефисы в дате dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
==== Прочие функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%COPY(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''X'', ''Y'')'''  - копировать часть данных из поля&lt;br /&gt;
* '''%%TRIM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')'''  - чистит значение поля от незначащих символов (пробелов) в начале и в конце&lt;br /&gt;
* '''%%LEFTPAD(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'',''&amp;quot; &amp;quot;'',''10'')'''  - Дополняет значение поля символами слева до заданной длины. По умолчанию (если второй параметр пустой) пробелами.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_06011_LASTDATE''' - только дата ДО,&lt;br /&gt;
  '''%%@44_06011_CODE''' - только код типа документа,&lt;br /&gt;
  '''%%@44_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
  '''%%@44_04021_FORMULA(G444+G442+&amp;quot;ОТ&amp;quot;+G443)''' - выгрузится согласно формуле&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Если необходимо собрать информацию про несколько разных типов документов, то в коде документа можно использовать символ ?, обозначающий любую цифру&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_014??_NODATE'''  - соберет через запятую номера документов с кодами 01401, 01402, 01403 и до 01499&lt;br /&gt;
&lt;br /&gt;
Если при помощи символов ? не удается закодировать маску для документов, то можно использовать символ &amp;amp; и указать несколько кодов документов&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_01191&amp;amp;01402_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01402&lt;br /&gt;
  '''%%@44_01191&amp;amp;0140?_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01401, 01402, 01403 ... до 01409&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_1010_DocNum''' – выгрузится номер платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_0''' – выгрузится сумма всех платежей.&lt;br /&gt;
  '''%%@B_0_Doc''' – выгрузятся номер и дата платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_DocNum''' – выгрузятся номера платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_Text''' – выгрузится вся строка, кроме ИНН\КПП.&lt;br /&gt;
&lt;br /&gt;
==== Для получения информации из SQL таблиц по ДТ и процедуре ====&lt;br /&gt;
&lt;br /&gt;
*  '''%%PROCESSID''' - ID ЭД-процедуры.&lt;br /&gt;
*  '''%%EDSTAT''' - ЭД-статус ДТ в текстовом виде.&lt;br /&gt;
*  '''%%EDSENDDATE''' - Дата подачи ДТ.&lt;br /&gt;
*  '''%%EDSENDTIME''' - Время подачи ДТ.&lt;br /&gt;
*  '''%%EDREGISTERDATE''' - Дата регистрации ДТ.&lt;br /&gt;
*  '''%%EDREGISTERTIME''' - Время регистрации ДТ.&lt;br /&gt;
*  '''%%EDLASTDATE''' - Дата выпуска ДТ.&lt;br /&gt;
*  '''%%EDLASTTIME''' - Время выпуска ДТ.&lt;br /&gt;
*  '''%%EDDATEBYCMN()''' - Дата произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDDATEBYCMN(CMN.11001) - дата регистрации ДТ&lt;br /&gt;
*  '''%%EDTIMEBYCMN()''' - Время произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDTIMEBYCMN(CMN.11001) - время регистрации ДТ&lt;br /&gt;
*  '''%%EDDATETIMEBY11309''' - Дата и время ЭД-сообщения CMN.11309 по ДТ в формате dd.mm.yyyy hh:nn:ss. При условии что сообщение CMN.11306 в статусе 3.&lt;br /&gt;
*  '''%%EDRESULTBYCMN()''' - Возвращает Result по сообщению или нескольким через запятую.&lt;br /&gt;
&lt;br /&gt;
==== Специальные функции ====&lt;br /&gt;
&lt;br /&gt;
*  '''%%@#DTI\IDCODE'''&lt;br /&gt;
&lt;br /&gt;
При добавлении к идентификатору из вложенного блока символов @# печать собирает все записи дополнение текущего товара в одну строку сохраняя переносы,&lt;br /&gt;
и создает строки в Excel (Calc) по количеству переносов, например %%@#DTI\IDCODE берет все записи DTI в текущем товаре, и делает общий массив значений IDCODE.&lt;br /&gt;
Потом одной операцией его вставляет, подсчитав и учтя в дальнейшем количество вставленных строк. Вставляет строго в строку где стоит конец товарного блока (%%END[BLOCK])&lt;br /&gt;
Поэтому в этой строке недопустимы какие-то идентификаторы, кроме самого %%END[BLOCK].&lt;br /&gt;
&lt;br /&gt;
Есть вариант записи всей строки в одну ячейку, без добавления строк, для этого добавляется двойной символ @ - %%@@DTI\IDCODE&lt;br /&gt;
&lt;br /&gt;
Дополнительная опция для идентификатора %%@#DTI\IDCODE - если вставить его внутри цикла по TOVG, то для каждого артикула будет выводить только те коды DTI, у которых в поле ART прописан этот артикул.&lt;br /&gt;
То есть получается фильтр кодов по артикулам.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1398</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1398"/>
		<updated>2025-12-09T09:27:45Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для объединения ячеек в столбцах (ROWSPAN) ==== &lt;br /&gt;
&lt;br /&gt;
Если в столбце дописать ключевое слово '''%%JOIN''', то такой ячейки с одинаковыми значениями в столбце будут объединены.&lt;br /&gt;
Например, если шаблон вида &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
формирует таблицу&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | 1111 || aaaaa&lt;br /&gt;
 |-&lt;br /&gt;
 | 1111 || ббббб&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ггггг&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
то шаблон &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 %%JOIN || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
cформирует &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | rowspan=&amp;quot;2&amp;quot;| 1111 || aaaaa&lt;br /&gt;
 |- &lt;br /&gt;
 | ббббб&lt;br /&gt;
 |-&lt;br /&gt;
 | rowspan=&amp;quot;3&amp;quot;| 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | ггггг&lt;br /&gt;
 |-&lt;br /&gt;
 | ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для очистки строки с вложенным блоком вместо её удаления ====&lt;br /&gt;
&lt;br /&gt;
Если в любом месте главного цикла (START_END) вписать идентификатор '''%%CLEARSUBIFEMPTY''', то строка с вложенным циклом (STARTSUB_ENDSUB) не будет удаляться при пустом вложенном блоке,&lt;br /&gt;
а просто очистятся ячейки этого блока. Полезно, когда вложенный блок находится в одной строке с главным блоком. Обычно при пустом вложенном удаляется вся строка, вместе с главным блоком.&lt;br /&gt;
С таким идентификатором этого удаления можно избежать.&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAME''' – извлекает из графы 31 наименование вместе с обороткой TXT. По настройке [ExtraPrint]G31NameTovG=1 добавляет TOVG;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMETILLCOLON''' – извлекает из графы 31 наименование товара до двоеточия;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
* '''%%SUM3(''&amp;lt;ИМЯ_БЛОКА1&amp;gt;\&amp;lt;ИМЯ_БЛОКА2&amp;gt;\&amp;lt;ИМЯ_БЛОКА3&amp;gt;\&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля в блоке 3го уровня.&lt;br /&gt;
* '''%%31.PALCOUNT''' - количество паллет.&lt;br /&gt;
* '''%%31.PAKTYPE''' - тип упаковки.&lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.PAKNAME''' - наименование упаковки.&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%FIRSTDT''' – извлечет номер первой ДТ;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, либо в заданном вложенном блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%NUMBLOCKA(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')'''  - Возвращает количество записей в заданном вложенном блоке всех товаров %%NUMBLOCK('BLOCK\TOVG')&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
&lt;br /&gt;
* '''%%EXECMACROS(''&amp;lt;ИМЯ_МАКРОСА&amp;gt;'')''' - выполнит макрос, прописанный в шаблоне, после окончания выгрузки. Может находиться в любом месте шаблона.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''%%FORMULA([35_1]+[38_1])''' - выполнить операцию над полями (сложение, умножение, конкатекация строк и т.д.). Названия полей должны быть выделены скобками.&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' или ''УСЛОВИЕ'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) или условия (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
==== Функции работы с датой ====&lt;br /&gt;
&lt;br /&gt;
* '''%%TEXTDATE(''&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;'')'''  - конвертирует дату в текстовый формат (21 января 2025)&lt;br /&gt;
* '''%%DATE(''&amp;quot;dd mmmm yyyy&amp;quot;'',''[&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;]'')'''  - конвертирует дату в произвольный заданный формат&lt;br /&gt;
* '''%%CURDATE'''  - возвращает текущую дату в формате dd.mm.yyyy&lt;br /&gt;
* '''%%CURTIME'''  - возвращает текущее время в формате hh:nn:ss&lt;br /&gt;
* '''%%DASHDATE(''&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;'')'''  - заменяет точки на дефисы в дате dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
==== Прочие функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%COPY(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''X'', ''Y'')'''  - копировать часть данных из поля&lt;br /&gt;
* '''%%TRIM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')'''  - чистит значение поля от незначащих символов (пробелов) в начале и в конце&lt;br /&gt;
* '''%%LEFTPAD(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'',''&amp;quot; &amp;quot;'',''10'')'''  - Дополняет значение поля символами слева до заданной длины. По умолчанию (если второй параметр пустой) пробелами.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_06011_LASTDATE''' - только дата ДО,&lt;br /&gt;
  '''%%@44_06011_CODE''' - только код типа документа,&lt;br /&gt;
  '''%%@44_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
  '''%%@44_04021_FORMULA(G444+G442+&amp;quot;ОТ&amp;quot;+G443)''' - выгрузится согласно формуле&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Если необходимо собрать информацию про несколько разных типов документов, то в коде документа можно использовать символ ?, обозначающий любую цифру&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_014??_NODATE'''  - соберет через запятую номера документов с кодами 01401, 01402, 01403 и до 01499&lt;br /&gt;
&lt;br /&gt;
Если при помощи символов ? не удается закодировать маску для документов, то можно использовать символ &amp;amp; и указать несколько кодов документов&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_01191&amp;amp;01402_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01402&lt;br /&gt;
  '''%%@44_01191&amp;amp;0140?_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01401, 01402, 01403 ... до 01409&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_1010_DocNum''' – выгрузится номер платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_0''' – выгрузится сумма всех платежей.&lt;br /&gt;
  '''%%@B_0_Doc''' – выгрузятся номер и дата платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_DocNum''' – выгрузятся номера платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_Text''' – выгрузится вся строка, кроме ИНН\КПП.&lt;br /&gt;
&lt;br /&gt;
==== Для получения информации из SQL таблиц по ДТ и процедуре ====&lt;br /&gt;
&lt;br /&gt;
*  '''%%PROCESSID''' - ID ЭД-процедуры.&lt;br /&gt;
*  '''%%EDSTAT''' - ЭД-статус ДТ в текстовом виде.&lt;br /&gt;
*  '''%%EDSENDDATE''' - Дата подачи ДТ.&lt;br /&gt;
*  '''%%EDSENDTIME''' - Время подачи ДТ.&lt;br /&gt;
*  '''%%EDREGISTERDATE''' - Дата регистрации ДТ.&lt;br /&gt;
*  '''%%EDREGISTERTIME''' - Время регистрации ДТ.&lt;br /&gt;
*  '''%%EDLASTDATE''' - Дата выпуска ДТ.&lt;br /&gt;
*  '''%%EDLASTTIME''' - Время выпуска ДТ.&lt;br /&gt;
*  '''%%EDDATEBYCMN()''' - Дата произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDDATEBYCMN(CMN.11001) - дата регистрации ДТ&lt;br /&gt;
*  '''%%EDTIMEBYCMN()''' - Время произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDTIMEBYCMN(CMN.11001) - время регистрации ДТ&lt;br /&gt;
*  '''%%EDDATETIMEBY11309''' - Дата и время ЭД-сообщения CMN.11309 по ДТ в формате dd.mm.yyyy hh:nn:ss. При условии что сообщение CMN.11306 в статусе 3.&lt;br /&gt;
*  '''%%EDRESULTBYCMN()''' - Возвращает Result по сообщению или нескольким через запятую.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1397</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1397"/>
		<updated>2025-10-22T09:01:22Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для объединения ячеек в столбцах (ROWSPAN) ==== &lt;br /&gt;
&lt;br /&gt;
Если в столбце дописать ключевое слово '''%%JOIN''', то такой ячейки с одинаковыми значениями в столбце будут объединены.&lt;br /&gt;
Например, если шаблон вида &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
формирует таблицу&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | 1111 || aaaaa&lt;br /&gt;
 |-&lt;br /&gt;
 | 1111 || ббббб&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ггггг&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
то шаблон &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 %%JOIN || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
cформирует &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | rowspan=&amp;quot;2&amp;quot;| 1111 || aaaaa&lt;br /&gt;
 |- &lt;br /&gt;
 | ббббб&lt;br /&gt;
 |-&lt;br /&gt;
 | rowspan=&amp;quot;3&amp;quot;| 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | ггггг&lt;br /&gt;
 |-&lt;br /&gt;
 | ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для очистки строки с вложенным блоком вместо её удаления ====&lt;br /&gt;
&lt;br /&gt;
Если в любом месте главного цикла (START_END) вписать идентификатор '''%%CLEARSUBIFEMPTY''', то строка с вложенным циклом (STARTSUB_ENDSUB) не будет удаляться при пустом вложенном блоке,&lt;br /&gt;
а просто очистятся ячейки этого блока. Полезно, когда вложенный блок находится в одной строке с главным блоком. Обычно при пустом вложенном удаляется вся строка, вместе с главным блоком.&lt;br /&gt;
С таким идентификатором этого удаления можно избежать.&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAME''' – извлекает из графы 31 наименование вместе с обороткой TXT. По настройке [ExtraPrint]G31NameTovG=1 добавляет TOVG;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMETILLCOLON''' – извлекает из графы 31 наименование товара до двоеточия;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
* '''%%SUM3(''&amp;lt;ИМЯ_БЛОКА1&amp;gt;\&amp;lt;ИМЯ_БЛОКА2&amp;gt;\&amp;lt;ИМЯ_БЛОКА3&amp;gt;\&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля в блоке 3го уровня.&lt;br /&gt;
* '''%%31.PALCOUNT''' - количество паллет.&lt;br /&gt;
* '''%%31.PAKTYPE''' - тип упаковки.&lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.PAKNAME''' - наименование упаковки.&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%FIRSTDT''' – извлечет номер первой ДТ;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, либо в заданном вложенном блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%NUMBLOCKA(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')'''  - Возвращает количество записей в заданном вложенном блоке всех товаров %%NUMBLOCK('BLOCK\TOVG')&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
&lt;br /&gt;
* '''%%EXECMACROS(''&amp;lt;ИМЯ_МАКРОСА&amp;gt;'')''' - выполнит макрос, прописанный в шаблоне, после окончания выгрузки. Может находиться в любом месте шаблона.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''%%FORMULA([35_1]+[38_1])''' - выполнить операцию над полями (сложение, умножение, конкатекация строк и т.д.). Названия полей должны быть выделены скобками.&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
==== Функции работы с датой ====&lt;br /&gt;
&lt;br /&gt;
* '''%%TEXTDATE(''&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;'')'''  - конвертирует дату в текстовый формат (21 января 2025)&lt;br /&gt;
* '''%%DATE(''&amp;quot;dd mmmm yyyy&amp;quot;'',''[&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;]'')'''  - конвертирует дату в произвольный заданный формат&lt;br /&gt;
* '''%%CURDATE'''  - возвращает текущую дату в формате dd.mm.yyyy&lt;br /&gt;
* '''%%CURTIME'''  - возвращает текущее время в формате hh:nn:ss&lt;br /&gt;
* '''%%DASHDATE(''&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;'')'''  - заменяет точки на дефисы в дате dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
==== Прочие функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%COPY(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''X'', ''Y'')'''  - копировать часть данных из поля&lt;br /&gt;
* '''%%TRIM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')'''  - чистит значение поля от незначащих символов (пробелов) в начале и в конце&lt;br /&gt;
* '''%%LEFTPAD(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'',''&amp;quot; &amp;quot;'',''10'')'''  - Дополняет значение поля символами слева до заданной длины. По умолчанию (если второй параметр пустой) пробелами.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_06011_LASTDATE''' - только дата ДО,&lt;br /&gt;
  '''%%@44_06011_CODE''' - только код типа документа,&lt;br /&gt;
  '''%%@44_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
  '''%%@44_04021_FORMULA(G444+G442+&amp;quot;ОТ&amp;quot;+G443)''' - выгрузится согласно формуле&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Если необходимо собрать информацию про несколько разных типов документов, то в коде документа можно использовать символ ?, обозначающий любую цифру&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_014??_NODATE'''  - соберет через запятую номера документов с кодами 01401, 01402, 01403 и до 01499&lt;br /&gt;
&lt;br /&gt;
Если при помощи символов ? не удается закодировать маску для документов, то можно использовать символ &amp;amp; и указать несколько кодов документов&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_01191&amp;amp;01402_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01402&lt;br /&gt;
  '''%%@44_01191&amp;amp;0140?_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01401, 01402, 01403 ... до 01409&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_1010_DocNum''' – выгрузится номер платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_0''' – выгрузится сумма всех платежей.&lt;br /&gt;
  '''%%@B_0_Doc''' – выгрузятся номер и дата платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_DocNum''' – выгрузятся номера платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_Text''' – выгрузится вся строка, кроме ИНН\КПП.&lt;br /&gt;
&lt;br /&gt;
==== Для получения информации из SQL таблиц по ДТ и процедуре ====&lt;br /&gt;
&lt;br /&gt;
*  '''%%PROCESSID''' - ID ЭД-процедуры.&lt;br /&gt;
*  '''%%EDSTAT''' - ЭД-статус ДТ в текстовом виде.&lt;br /&gt;
*  '''%%EDSENDDATE''' - Дата подачи ДТ.&lt;br /&gt;
*  '''%%EDSENDTIME''' - Время подачи ДТ.&lt;br /&gt;
*  '''%%EDREGISTERDATE''' - Дата регистрации ДТ.&lt;br /&gt;
*  '''%%EDREGISTERTIME''' - Время регистрации ДТ.&lt;br /&gt;
*  '''%%EDLASTDATE''' - Дата выпуска ДТ.&lt;br /&gt;
*  '''%%EDLASTTIME''' - Время выпуска ДТ.&lt;br /&gt;
*  '''%%EDDATEBYCMN()''' - Дата произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDDATEBYCMN(CMN.11001) - дата регистрации ДТ&lt;br /&gt;
*  '''%%EDTIMEBYCMN()''' - Время произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDTIMEBYCMN(CMN.11001) - время регистрации ДТ&lt;br /&gt;
*  '''%%EDDATETIMEBY11309''' - Дата и время ЭД-сообщения CMN.11309 по ДТ в формате dd.mm.yyyy hh:nn:ss. При условии что сообщение CMN.11306 в статусе 3.&lt;br /&gt;
*  '''%%EDRESULTBYCMN()''' - Возвращает Result по сообщению или нескольким через запятую.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1396</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1396"/>
		<updated>2025-10-03T13:09:18Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Для извлечений из гр.31 ДТ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для объединения ячеек в столбцах (ROWSPAN) ==== &lt;br /&gt;
&lt;br /&gt;
Если в столбце дописать ключевое слово '''%%JOIN''', то такой ячейки с одинаковыми значениями в столбце будут объединены.&lt;br /&gt;
Например, если шаблон вида &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
формирует таблицу&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | 1111 || aaaaa&lt;br /&gt;
 |-&lt;br /&gt;
 | 1111 || ббббб&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ггггг&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
то шаблон &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 %%JOIN || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
cформирует &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | rowspan=&amp;quot;2&amp;quot;| 1111 || aaaaa&lt;br /&gt;
 |- &lt;br /&gt;
 | ббббб&lt;br /&gt;
 |-&lt;br /&gt;
 | rowspan=&amp;quot;3&amp;quot;| 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | ггггг&lt;br /&gt;
 |-&lt;br /&gt;
 | ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для очистки строки с вложенным блоком вместо её удаления ====&lt;br /&gt;
&lt;br /&gt;
Если в любом месте главного цикла (START_END) вписать идентификатор '''%%CLEARSUBIFEMPTY''', то строка с вложенным циклом (STARTSUB_ENDSUB) не будет удаляться при пустом вложенном блоке,&lt;br /&gt;
а просто очистятся ячейки этого блока. Полезно, когда вложенный блок находится в одной строке с главным блоком. Обычно при пустом вложенном удаляется вся строка, вместе с главным блоком.&lt;br /&gt;
С таким идентификатором этого удаления можно избежать.&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAME''' – извлекает из графы 31 наименование вместе с обороткой TXT. По настройке [ExtraPrint]G31NameTovG=1 добавляет TOVG;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMETILLCOLON''' – извлекает из графы 31 наименование товара до двоеточия;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
* '''%%SUM3(''&amp;lt;ИМЯ_БЛОКА1&amp;gt;\&amp;lt;ИМЯ_БЛОКА2&amp;gt;\&amp;lt;ИМЯ_БЛОКА3&amp;gt;\&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля в блоке 3го уровня.&lt;br /&gt;
* '''%%31.PALCOUNT''' - количество паллет.&lt;br /&gt;
* '''%%31.PAKTYPE''' - тип упаковки.&lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.PAKNAME''' - наименование упаковки.&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%FIRSTDT''' – извлечет номер первой ДТ;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, либо в заданном вложенном блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%NUMBLOCKA(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')'''  - Возвращает количество записей в заданном вложенном блоке всех товаров %%NUMBLOCK('BLOCK\TOVG')&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
&lt;br /&gt;
* '''%%EXECMACROS(''&amp;lt;ИМЯ_МАКРОСА&amp;gt;'')''' - выполнит макрос, прописанный в шаблоне, после окончания выгрузки. Может находиться в любом месте шаблона.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''%%FORMULA([35_1]+[38_1])''' - выполнить операцию над полями (сложение, умножение, конкатекация строк и т.д.). Названия полей должны быть выделены скобками.&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
==== Функции работы с датой ====&lt;br /&gt;
&lt;br /&gt;
* '''%%TEXTDATE(''&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;'')'''  - конвертирует дату в текстовый формат (21 января 2025)&lt;br /&gt;
* '''%%DATE(''&amp;quot;dd mmmm yyyy&amp;quot;'',''[&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;]'')'''  - конвертирует дату в произвольный заданный формат&lt;br /&gt;
* '''%%CURDATE'''  - возвращает текущую дату в формате dd.mm.yyyy&lt;br /&gt;
* '''%%CURTIME'''  - возвращает текущее время в формате hh:nn:ss&lt;br /&gt;
* '''%%DASHDATE(''&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;'')'''  - заменяет точки на дефисы в дате dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
==== Прочие функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%COPY(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''X'', ''Y'')'''  - копировать часть данных из поля&lt;br /&gt;
* '''%%TRIM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')'''  - чистит значение поля от незначащих символов (пробелов) в начале и в конце&lt;br /&gt;
* '''%%LEFTPAD(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'',''&amp;quot; &amp;quot;'',''10'')'''  - Дополняет значение поля символами слева до заданной длины. По умолчанию (если второй параметр пустой) пробелами.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_06011_LASTDATE''' - только дата ДО,&lt;br /&gt;
  '''%%@44_!_06011_CODE''' - только код типа документа,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_!_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
  '''%%@44_!_04021_FORMULA(G444+G442+&amp;quot;ОТ&amp;quot;+G443)''' - выгрузится согласно формуле&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
С 2015 года так же допускается упрощенный синтаксис без _!_ в середине идентификатора.&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_04021_TEXT'''&lt;br /&gt;
  '''%%@44_01402_NODATE''' &lt;br /&gt;
&lt;br /&gt;
Если необходимо собрать информацию про несколько разных типов документов, то в коде документа можно использовать символ ?, обозначающий любую цифру&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_014??_NODATE'''  - соберет через запятую номера документов с кодами 01401, 01402, 01403 и до 01499&lt;br /&gt;
&lt;br /&gt;
Если при помощи символов ? не удается закодировать маску для документов, то можно использовать символ &amp;amp; и указать несколько кодов документов&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_01191&amp;amp;01402_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01402&lt;br /&gt;
  '''%%@44_01191&amp;amp;0140?_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01401, 01402, 01403 ... до 01409&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_1010_DocNum''' – выгрузится номер платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_0''' – выгрузится сумма всех платежей.&lt;br /&gt;
  '''%%@B_0_Doc''' – выгрузятся номер и дата платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_DocNum''' – выгрузятся номера платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_Text''' – выгрузится вся строка, кроме ИНН\КПП.&lt;br /&gt;
&lt;br /&gt;
==== Для получения информации из SQL таблиц по ДТ и процедуре ====&lt;br /&gt;
&lt;br /&gt;
*  '''%%PROCESSID''' - ID ЭД-процедуры.&lt;br /&gt;
*  '''%%EDSTAT''' - ЭД-статус ДТ в текстовом виде.&lt;br /&gt;
*  '''%%EDSENDDATE''' - Дата подачи ДТ.&lt;br /&gt;
*  '''%%EDSENDTIME''' - Время подачи ДТ.&lt;br /&gt;
*  '''%%EDREGISTERDATE''' - Дата регистрации ДТ.&lt;br /&gt;
*  '''%%EDREGISTERTIME''' - Время регистрации ДТ.&lt;br /&gt;
*  '''%%EDLASTDATE''' - Дата выпуска ДТ.&lt;br /&gt;
*  '''%%EDLASTTIME''' - Время выпуска ДТ.&lt;br /&gt;
*  '''%%EDDATEBYCMN()''' - Дата произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDDATEBYCMN(CMN.11001) - дата регистрации ДТ&lt;br /&gt;
*  '''%%EDTIMEBYCMN()''' - Время произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDTIMEBYCMN(CMN.11001) - время регистрации ДТ&lt;br /&gt;
*  '''%%EDDATETIMEBY11309''' - Дата и время ЭД-сообщения CMN.11309 по ДТ в формате dd.mm.yyyy hh:nn:ss. При условии что сообщение CMN.11306 в статусе 3.&lt;br /&gt;
*  '''%%EDRESULTBYCMN()''' - Возвращает Result по сообщению или нескольким через запятую.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1395</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1395"/>
		<updated>2025-10-03T13:07:54Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Для извлечений из гр.31 ДТ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для объединения ячеек в столбцах (ROWSPAN) ==== &lt;br /&gt;
&lt;br /&gt;
Если в столбце дописать ключевое слово '''%%JOIN''', то такой ячейки с одинаковыми значениями в столбце будут объединены.&lt;br /&gt;
Например, если шаблон вида &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
формирует таблицу&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | 1111 || aaaaa&lt;br /&gt;
 |-&lt;br /&gt;
 | 1111 || ббббб&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ггггг&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
то шаблон &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 %%JOIN || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
cформирует &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | rowspan=&amp;quot;2&amp;quot;| 1111 || aaaaa&lt;br /&gt;
 |- &lt;br /&gt;
 | ббббб&lt;br /&gt;
 |-&lt;br /&gt;
 | rowspan=&amp;quot;3&amp;quot;| 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | ггггг&lt;br /&gt;
 |-&lt;br /&gt;
 | ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для очистки строки с вложенным блоком вместо её удаления ====&lt;br /&gt;
&lt;br /&gt;
Если в любом месте главного цикла (START_END) вписать идентификатор '''%%CLEARSUBIFEMPTY''', то строка с вложенным циклом (STARTSUB_ENDSUB) не будет удаляться при пустом вложенном блоке,&lt;br /&gt;
а просто очистятся ячейки этого блока. Полезно, когда вложенный блок находится в одной строке с главным блоком. Обычно при пустом вложенном удаляется вся строка, вместе с главным блоком.&lt;br /&gt;
С таким идентификатором этого удаления можно избежать.&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAME''' – извлекает из графы 31 наименование вместе с обороткой TXT. По настройке [ExtraPrint]G31NameTovG=1 добавляет TOVG;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMETILLCOLON''' – извлекает из графы 31 наименование товара до двоеточия;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
* '''%%SUM3(''&amp;lt;ИМЯ_БЛОКА1&amp;gt;\&amp;lt;ИМЯ_БЛОКА2&amp;gt;\&amp;lt;ИМЯ_БЛОКА3&amp;gt;\&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля в блоке 3го уровня.&lt;br /&gt;
* '''%%31.PALCOUNT''' - количество паллет.&lt;br /&gt;
* '''%%31.PAKTYPE''' - тип упаковки.&lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.PAKNAME''' - наименование упаковки.&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, либо в заданном вложенном блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%NUMBLOCKA(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')'''  - Возвращает количество записей в заданном вложенном блоке всех товаров %%NUMBLOCK('BLOCK\TOVG')&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
&lt;br /&gt;
* '''%%EXECMACROS(''&amp;lt;ИМЯ_МАКРОСА&amp;gt;'')''' - выполнит макрос, прописанный в шаблоне, после окончания выгрузки. Может находиться в любом месте шаблона.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''%%FORMULA([35_1]+[38_1])''' - выполнить операцию над полями (сложение, умножение, конкатекация строк и т.д.). Названия полей должны быть выделены скобками.&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
==== Функции работы с датой ====&lt;br /&gt;
&lt;br /&gt;
* '''%%TEXTDATE(''&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;'')'''  - конвертирует дату в текстовый формат (21 января 2025)&lt;br /&gt;
* '''%%DATE(''&amp;quot;dd mmmm yyyy&amp;quot;'',''[&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;]'')'''  - конвертирует дату в произвольный заданный формат&lt;br /&gt;
* '''%%CURDATE'''  - возвращает текущую дату в формате dd.mm.yyyy&lt;br /&gt;
* '''%%CURTIME'''  - возвращает текущее время в формате hh:nn:ss&lt;br /&gt;
* '''%%DASHDATE(''&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;'')'''  - заменяет точки на дефисы в дате dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
==== Прочие функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%COPY(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''X'', ''Y'')'''  - копировать часть данных из поля&lt;br /&gt;
* '''%%TRIM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')'''  - чистит значение поля от незначащих символов (пробелов) в начале и в конце&lt;br /&gt;
* '''%%LEFTPAD(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'',''&amp;quot; &amp;quot;'',''10'')'''  - Дополняет значение поля символами слева до заданной длины. По умолчанию (если второй параметр пустой) пробелами.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_06011_LASTDATE''' - только дата ДО,&lt;br /&gt;
  '''%%@44_!_06011_CODE''' - только код типа документа,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_!_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
  '''%%@44_!_04021_FORMULA(G444+G442+&amp;quot;ОТ&amp;quot;+G443)''' - выгрузится согласно формуле&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
С 2015 года так же допускается упрощенный синтаксис без _!_ в середине идентификатора.&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_04021_TEXT'''&lt;br /&gt;
  '''%%@44_01402_NODATE''' &lt;br /&gt;
&lt;br /&gt;
Если необходимо собрать информацию про несколько разных типов документов, то в коде документа можно использовать символ ?, обозначающий любую цифру&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_014??_NODATE'''  - соберет через запятую номера документов с кодами 01401, 01402, 01403 и до 01499&lt;br /&gt;
&lt;br /&gt;
Если при помощи символов ? не удается закодировать маску для документов, то можно использовать символ &amp;amp; и указать несколько кодов документов&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_01191&amp;amp;01402_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01402&lt;br /&gt;
  '''%%@44_01191&amp;amp;0140?_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01401, 01402, 01403 ... до 01409&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_1010_DocNum''' – выгрузится номер платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_0''' – выгрузится сумма всех платежей.&lt;br /&gt;
  '''%%@B_0_Doc''' – выгрузятся номер и дата платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_DocNum''' – выгрузятся номера платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_Text''' – выгрузится вся строка, кроме ИНН\КПП.&lt;br /&gt;
&lt;br /&gt;
==== Для получения информации из SQL таблиц по ДТ и процедуре ====&lt;br /&gt;
&lt;br /&gt;
*  '''%%PROCESSID''' - ID ЭД-процедуры.&lt;br /&gt;
*  '''%%EDSTAT''' - ЭД-статус ДТ в текстовом виде.&lt;br /&gt;
*  '''%%EDSENDDATE''' - Дата подачи ДТ.&lt;br /&gt;
*  '''%%EDSENDTIME''' - Время подачи ДТ.&lt;br /&gt;
*  '''%%EDREGISTERDATE''' - Дата регистрации ДТ.&lt;br /&gt;
*  '''%%EDREGISTERTIME''' - Время регистрации ДТ.&lt;br /&gt;
*  '''%%EDLASTDATE''' - Дата выпуска ДТ.&lt;br /&gt;
*  '''%%EDLASTTIME''' - Время выпуска ДТ.&lt;br /&gt;
*  '''%%EDDATEBYCMN()''' - Дата произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDDATEBYCMN(CMN.11001) - дата регистрации ДТ&lt;br /&gt;
*  '''%%EDTIMEBYCMN()''' - Время произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDTIMEBYCMN(CMN.11001) - время регистрации ДТ&lt;br /&gt;
*  '''%%EDDATETIMEBY11309''' - Дата и время ЭД-сообщения CMN.11309 по ДТ в формате dd.mm.yyyy hh:nn:ss. При условии что сообщение CMN.11306 в статусе 3.&lt;br /&gt;
*  '''%%EDRESULTBYCMN()''' - Возвращает Result по сообщению или нескольким через запятую.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1394</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1394"/>
		<updated>2025-10-03T13:03:56Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Для получения информации из SQL таблиц по ДТ и процедуре */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для объединения ячеек в столбцах (ROWSPAN) ==== &lt;br /&gt;
&lt;br /&gt;
Если в столбце дописать ключевое слово '''%%JOIN''', то такой ячейки с одинаковыми значениями в столбце будут объединены.&lt;br /&gt;
Например, если шаблон вида &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
формирует таблицу&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | 1111 || aaaaa&lt;br /&gt;
 |-&lt;br /&gt;
 | 1111 || ббббб&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ггггг&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
то шаблон &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 %%JOIN || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
cформирует &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | rowspan=&amp;quot;2&amp;quot;| 1111 || aaaaa&lt;br /&gt;
 |- &lt;br /&gt;
 | ббббб&lt;br /&gt;
 |-&lt;br /&gt;
 | rowspan=&amp;quot;3&amp;quot;| 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | ггггг&lt;br /&gt;
 |-&lt;br /&gt;
 | ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для очистки строки с вложенным блоком вместо её удаления ====&lt;br /&gt;
&lt;br /&gt;
Если в любом месте главного цикла (START_END) вписать идентификатор '''%%CLEARSUBIFEMPTY''', то строка с вложенным циклом (STARTSUB_ENDSUB) не будет удаляться при пустом вложенном блоке,&lt;br /&gt;
а просто очистятся ячейки этого блока. Полезно, когда вложенный блок находится в одной строке с главным блоком. Обычно при пустом вложенном удаляется вся строка, вместе с главным блоком.&lt;br /&gt;
С таким идентификатором этого удаления можно избежать.&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMETILLCOLON''' – извлекает из графы 31 наименование товара до двоеточия;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
* '''%%SUM3(''&amp;lt;ИМЯ_БЛОКА1&amp;gt;\&amp;lt;ИМЯ_БЛОКА2&amp;gt;\&amp;lt;ИМЯ_БЛОКА3&amp;gt;\&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля в блоке 3го уровня.&lt;br /&gt;
* '''%%31.PALCOUNT''' - количество паллет.&lt;br /&gt;
* '''%%31.PAKTYPE''' - тип упаковки.&lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, либо в заданном вложенном блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%NUMBLOCKA(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')'''  - Возвращает количество записей в заданном вложенном блоке всех товаров %%NUMBLOCK('BLOCK\TOVG')&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
&lt;br /&gt;
* '''%%EXECMACROS(''&amp;lt;ИМЯ_МАКРОСА&amp;gt;'')''' - выполнит макрос, прописанный в шаблоне, после окончания выгрузки. Может находиться в любом месте шаблона.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''%%FORMULA([35_1]+[38_1])''' - выполнить операцию над полями (сложение, умножение, конкатекация строк и т.д.). Названия полей должны быть выделены скобками.&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
==== Функции работы с датой ====&lt;br /&gt;
&lt;br /&gt;
* '''%%TEXTDATE(''&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;'')'''  - конвертирует дату в текстовый формат (21 января 2025)&lt;br /&gt;
* '''%%DATE(''&amp;quot;dd mmmm yyyy&amp;quot;'',''[&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;]'')'''  - конвертирует дату в произвольный заданный формат&lt;br /&gt;
* '''%%CURDATE'''  - возвращает текущую дату в формате dd.mm.yyyy&lt;br /&gt;
* '''%%CURTIME'''  - возвращает текущее время в формате hh:nn:ss&lt;br /&gt;
* '''%%DASHDATE(''&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;'')'''  - заменяет точки на дефисы в дате dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
==== Прочие функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%COPY(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''X'', ''Y'')'''  - копировать часть данных из поля&lt;br /&gt;
* '''%%TRIM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')'''  - чистит значение поля от незначащих символов (пробелов) в начале и в конце&lt;br /&gt;
* '''%%LEFTPAD(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'',''&amp;quot; &amp;quot;'',''10'')'''  - Дополняет значение поля символами слева до заданной длины. По умолчанию (если второй параметр пустой) пробелами.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_06011_LASTDATE''' - только дата ДО,&lt;br /&gt;
  '''%%@44_!_06011_CODE''' - только код типа документа,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_!_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
  '''%%@44_!_04021_FORMULA(G444+G442+&amp;quot;ОТ&amp;quot;+G443)''' - выгрузится согласно формуле&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
С 2015 года так же допускается упрощенный синтаксис без _!_ в середине идентификатора.&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_04021_TEXT'''&lt;br /&gt;
  '''%%@44_01402_NODATE''' &lt;br /&gt;
&lt;br /&gt;
Если необходимо собрать информацию про несколько разных типов документов, то в коде документа можно использовать символ ?, обозначающий любую цифру&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_014??_NODATE'''  - соберет через запятую номера документов с кодами 01401, 01402, 01403 и до 01499&lt;br /&gt;
&lt;br /&gt;
Если при помощи символов ? не удается закодировать маску для документов, то можно использовать символ &amp;amp; и указать несколько кодов документов&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_01191&amp;amp;01402_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01402&lt;br /&gt;
  '''%%@44_01191&amp;amp;0140?_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01401, 01402, 01403 ... до 01409&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_1010_DocNum''' – выгрузится номер платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_0''' – выгрузится сумма всех платежей.&lt;br /&gt;
  '''%%@B_0_Doc''' – выгрузятся номер и дата платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_DocNum''' – выгрузятся номера платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_Text''' – выгрузится вся строка, кроме ИНН\КПП.&lt;br /&gt;
&lt;br /&gt;
==== Для получения информации из SQL таблиц по ДТ и процедуре ====&lt;br /&gt;
&lt;br /&gt;
*  '''%%PROCESSID''' - ID ЭД-процедуры.&lt;br /&gt;
*  '''%%EDSTAT''' - ЭД-статус ДТ в текстовом виде.&lt;br /&gt;
*  '''%%EDSENDDATE''' - Дата подачи ДТ.&lt;br /&gt;
*  '''%%EDSENDTIME''' - Время подачи ДТ.&lt;br /&gt;
*  '''%%EDREGISTERDATE''' - Дата регистрации ДТ.&lt;br /&gt;
*  '''%%EDREGISTERTIME''' - Время регистрации ДТ.&lt;br /&gt;
*  '''%%EDLASTDATE''' - Дата выпуска ДТ.&lt;br /&gt;
*  '''%%EDLASTTIME''' - Время выпуска ДТ.&lt;br /&gt;
*  '''%%EDDATEBYCMN()''' - Дата произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDDATEBYCMN(CMN.11001) - дата регистрации ДТ&lt;br /&gt;
*  '''%%EDTIMEBYCMN()''' - Время произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDTIMEBYCMN(CMN.11001) - время регистрации ДТ&lt;br /&gt;
*  '''%%EDDATETIMEBY11309''' - Дата и время ЭД-сообщения CMN.11309 по ДТ в формате dd.mm.yyyy hh:nn:ss. При условии что сообщение CMN.11306 в статусе 3.&lt;br /&gt;
*  '''%%EDRESULTBYCMN()''' - Возвращает Result по сообщению или нескольким через запятую.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1393</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1393"/>
		<updated>2025-10-03T13:02:31Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Для получения информации из SQL таблиц по ДТ и процедуре */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для объединения ячеек в столбцах (ROWSPAN) ==== &lt;br /&gt;
&lt;br /&gt;
Если в столбце дописать ключевое слово '''%%JOIN''', то такой ячейки с одинаковыми значениями в столбце будут объединены.&lt;br /&gt;
Например, если шаблон вида &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
формирует таблицу&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | 1111 || aaaaa&lt;br /&gt;
 |-&lt;br /&gt;
 | 1111 || ббббб&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ггггг&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
то шаблон &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 %%JOIN || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
cформирует &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | rowspan=&amp;quot;2&amp;quot;| 1111 || aaaaa&lt;br /&gt;
 |- &lt;br /&gt;
 | ббббб&lt;br /&gt;
 |-&lt;br /&gt;
 | rowspan=&amp;quot;3&amp;quot;| 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | ггггг&lt;br /&gt;
 |-&lt;br /&gt;
 | ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для очистки строки с вложенным блоком вместо её удаления ====&lt;br /&gt;
&lt;br /&gt;
Если в любом месте главного цикла (START_END) вписать идентификатор '''%%CLEARSUBIFEMPTY''', то строка с вложенным циклом (STARTSUB_ENDSUB) не будет удаляться при пустом вложенном блоке,&lt;br /&gt;
а просто очистятся ячейки этого блока. Полезно, когда вложенный блок находится в одной строке с главным блоком. Обычно при пустом вложенном удаляется вся строка, вместе с главным блоком.&lt;br /&gt;
С таким идентификатором этого удаления можно избежать.&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMETILLCOLON''' – извлекает из графы 31 наименование товара до двоеточия;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
* '''%%SUM3(''&amp;lt;ИМЯ_БЛОКА1&amp;gt;\&amp;lt;ИМЯ_БЛОКА2&amp;gt;\&amp;lt;ИМЯ_БЛОКА3&amp;gt;\&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля в блоке 3го уровня.&lt;br /&gt;
* '''%%31.PALCOUNT''' - количество паллет.&lt;br /&gt;
* '''%%31.PAKTYPE''' - тип упаковки.&lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, либо в заданном вложенном блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%NUMBLOCKA(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')'''  - Возвращает количество записей в заданном вложенном блоке всех товаров %%NUMBLOCK('BLOCK\TOVG')&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
&lt;br /&gt;
* '''%%EXECMACROS(''&amp;lt;ИМЯ_МАКРОСА&amp;gt;'')''' - выполнит макрос, прописанный в шаблоне, после окончания выгрузки. Может находиться в любом месте шаблона.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''%%FORMULA([35_1]+[38_1])''' - выполнить операцию над полями (сложение, умножение, конкатекация строк и т.д.). Названия полей должны быть выделены скобками.&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
==== Функции работы с датой ====&lt;br /&gt;
&lt;br /&gt;
* '''%%TEXTDATE(''&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;'')'''  - конвертирует дату в текстовый формат (21 января 2025)&lt;br /&gt;
* '''%%DATE(''&amp;quot;dd mmmm yyyy&amp;quot;'',''[&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;]'')'''  - конвертирует дату в произвольный заданный формат&lt;br /&gt;
* '''%%CURDATE'''  - возвращает текущую дату в формате dd.mm.yyyy&lt;br /&gt;
* '''%%CURTIME'''  - возвращает текущее время в формате hh:nn:ss&lt;br /&gt;
* '''%%DASHDATE(''&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;'')'''  - заменяет точки на дефисы в дате dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
==== Прочие функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%COPY(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''X'', ''Y'')'''  - копировать часть данных из поля&lt;br /&gt;
* '''%%TRIM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')'''  - чистит значение поля от незначащих символов (пробелов) в начале и в конце&lt;br /&gt;
* '''%%LEFTPAD(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'',''&amp;quot; &amp;quot;'',''10'')'''  - Дополняет значение поля символами слева до заданной длины. По умолчанию (если второй параметр пустой) пробелами.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_06011_LASTDATE''' - только дата ДО,&lt;br /&gt;
  '''%%@44_!_06011_CODE''' - только код типа документа,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_!_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
  '''%%@44_!_04021_FORMULA(G444+G442+&amp;quot;ОТ&amp;quot;+G443)''' - выгрузится согласно формуле&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
С 2015 года так же допускается упрощенный синтаксис без _!_ в середине идентификатора.&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_04021_TEXT'''&lt;br /&gt;
  '''%%@44_01402_NODATE''' &lt;br /&gt;
&lt;br /&gt;
Если необходимо собрать информацию про несколько разных типов документов, то в коде документа можно использовать символ ?, обозначающий любую цифру&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_014??_NODATE'''  - соберет через запятую номера документов с кодами 01401, 01402, 01403 и до 01499&lt;br /&gt;
&lt;br /&gt;
Если при помощи символов ? не удается закодировать маску для документов, то можно использовать символ &amp;amp; и указать несколько кодов документов&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_01191&amp;amp;01402_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01402&lt;br /&gt;
  '''%%@44_01191&amp;amp;0140?_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01401, 01402, 01403 ... до 01409&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_1010_DocNum''' – выгрузится номер платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_0''' – выгрузится сумма всех платежей.&lt;br /&gt;
  '''%%@B_0_Doc''' – выгрузятся номер и дата платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_DocNum''' – выгрузятся номера платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_Text''' – выгрузится вся строка, кроме ИНН\КПП.&lt;br /&gt;
&lt;br /&gt;
==== Для получения информации из SQL таблиц по ДТ и процедуре ====&lt;br /&gt;
&lt;br /&gt;
*  '''%%PROCESSID''' - ID ЭД-процедуры.&lt;br /&gt;
*  '''%%EDSTAT''' - ЭД-статус ДТ в текстовом виде.&lt;br /&gt;
*  '''%%EDSENDDATE''' - Дата подачи ДТ.&lt;br /&gt;
*  '''%%EDSENDTIME''' - Время подачи ДТ.&lt;br /&gt;
*  '''%%EDREGISTERDATE''' - Дата регистрации ДТ.&lt;br /&gt;
*  '''%%EDREGISTERTIME''' - Время регистрации ДТ.&lt;br /&gt;
*  '''%%EDLASTDATE''' - Дата выпуска ДТ.&lt;br /&gt;
*  '''%%EDLASTTIME''' - Время выпуска ДТ.&lt;br /&gt;
*  '''%%EDDATEBYCMN()''' - Дата произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDDATEBYCMN(CMN.11001) - дата регистрации ДТ&lt;br /&gt;
*  '''%%EDTIMEBYCMN()''' - Время произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDTIMEBYCMN(CMN.11001) - время регистрации ДТ&lt;br /&gt;
*  '''%%EDDATETIMEBY11309''' - Дата и время ЭД-сообщения CMN.11309 по ДТ в формате dd.mm.yyyy hh:nn:ss. При условии что сообщение CMN.11306 в статусе 3.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1392</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1392"/>
		<updated>2025-10-03T12:54:50Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Для извлечений из гр.31 ДТ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для объединения ячеек в столбцах (ROWSPAN) ==== &lt;br /&gt;
&lt;br /&gt;
Если в столбце дописать ключевое слово '''%%JOIN''', то такой ячейки с одинаковыми значениями в столбце будут объединены.&lt;br /&gt;
Например, если шаблон вида &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
формирует таблицу&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | 1111 || aaaaa&lt;br /&gt;
 |-&lt;br /&gt;
 | 1111 || ббббб&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ггггг&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
то шаблон &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 %%JOIN || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
cформирует &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | rowspan=&amp;quot;2&amp;quot;| 1111 || aaaaa&lt;br /&gt;
 |- &lt;br /&gt;
 | ббббб&lt;br /&gt;
 |-&lt;br /&gt;
 | rowspan=&amp;quot;3&amp;quot;| 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | ггггг&lt;br /&gt;
 |-&lt;br /&gt;
 | ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для очистки строки с вложенным блоком вместо её удаления ====&lt;br /&gt;
&lt;br /&gt;
Если в любом месте главного цикла (START_END) вписать идентификатор '''%%CLEARSUBIFEMPTY''', то строка с вложенным циклом (STARTSUB_ENDSUB) не будет удаляться при пустом вложенном блоке,&lt;br /&gt;
а просто очистятся ячейки этого блока. Полезно, когда вложенный блок находится в одной строке с главным блоком. Обычно при пустом вложенном удаляется вся строка, вместе с главным блоком.&lt;br /&gt;
С таким идентификатором этого удаления можно избежать.&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMETILLCOLON''' – извлекает из графы 31 наименование товара до двоеточия;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
* '''%%SUM3(''&amp;lt;ИМЯ_БЛОКА1&amp;gt;\&amp;lt;ИМЯ_БЛОКА2&amp;gt;\&amp;lt;ИМЯ_БЛОКА3&amp;gt;\&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля в блоке 3го уровня.&lt;br /&gt;
* '''%%31.PALCOUNT''' - количество паллет.&lt;br /&gt;
* '''%%31.PAKTYPE''' - тип упаковки.&lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, либо в заданном вложенном блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%NUMBLOCKA(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')'''  - Возвращает количество записей в заданном вложенном блоке всех товаров %%NUMBLOCK('BLOCK\TOVG')&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
&lt;br /&gt;
* '''%%EXECMACROS(''&amp;lt;ИМЯ_МАКРОСА&amp;gt;'')''' - выполнит макрос, прописанный в шаблоне, после окончания выгрузки. Может находиться в любом месте шаблона.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''%%FORMULA([35_1]+[38_1])''' - выполнить операцию над полями (сложение, умножение, конкатекация строк и т.д.). Названия полей должны быть выделены скобками.&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
==== Функции работы с датой ====&lt;br /&gt;
&lt;br /&gt;
* '''%%TEXTDATE(''&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;'')'''  - конвертирует дату в текстовый формат (21 января 2025)&lt;br /&gt;
* '''%%DATE(''&amp;quot;dd mmmm yyyy&amp;quot;'',''[&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;]'')'''  - конвертирует дату в произвольный заданный формат&lt;br /&gt;
* '''%%CURDATE'''  - возвращает текущую дату в формате dd.mm.yyyy&lt;br /&gt;
* '''%%CURTIME'''  - возвращает текущее время в формате hh:nn:ss&lt;br /&gt;
* '''%%DASHDATE(''&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;'')'''  - заменяет точки на дефисы в дате dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
==== Прочие функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%COPY(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''X'', ''Y'')'''  - копировать часть данных из поля&lt;br /&gt;
* '''%%TRIM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')'''  - чистит значение поля от незначащих символов (пробелов) в начале и в конце&lt;br /&gt;
* '''%%LEFTPAD(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'',''&amp;quot; &amp;quot;'',''10'')'''  - Дополняет значение поля символами слева до заданной длины. По умолчанию (если второй параметр пустой) пробелами.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_06011_LASTDATE''' - только дата ДО,&lt;br /&gt;
  '''%%@44_!_06011_CODE''' - только код типа документа,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_!_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
  '''%%@44_!_04021_FORMULA(G444+G442+&amp;quot;ОТ&amp;quot;+G443)''' - выгрузится согласно формуле&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
С 2015 года так же допускается упрощенный синтаксис без _!_ в середине идентификатора.&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_04021_TEXT'''&lt;br /&gt;
  '''%%@44_01402_NODATE''' &lt;br /&gt;
&lt;br /&gt;
Если необходимо собрать информацию про несколько разных типов документов, то в коде документа можно использовать символ ?, обозначающий любую цифру&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_014??_NODATE'''  - соберет через запятую номера документов с кодами 01401, 01402, 01403 и до 01499&lt;br /&gt;
&lt;br /&gt;
Если при помощи символов ? не удается закодировать маску для документов, то можно использовать символ &amp;amp; и указать несколько кодов документов&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_01191&amp;amp;01402_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01402&lt;br /&gt;
  '''%%@44_01191&amp;amp;0140?_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01401, 01402, 01403 ... до 01409&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_1010_DocNum''' – выгрузится номер платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_0''' – выгрузится сумма всех платежей.&lt;br /&gt;
  '''%%@B_0_Doc''' – выгрузятся номер и дата платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_DocNum''' – выгрузятся номера платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_Text''' – выгрузится вся строка, кроме ИНН\КПП.&lt;br /&gt;
&lt;br /&gt;
==== Для получения информации из SQL таблиц по ДТ и процедуре ====&lt;br /&gt;
&lt;br /&gt;
*  '''%%PROCESSID''' - ID ЭД-процедуры.&lt;br /&gt;
*  '''%%EDSTAT''' - ЭД-статус ДТ в текстовом виде.&lt;br /&gt;
*  '''%%EDSENDDATE''' - Дата подачи ДТ.&lt;br /&gt;
*  '''%%EDSENDTIME''' - Время подачи ДТ.&lt;br /&gt;
*  '''%%EDREGISTERDATE''' - Дата регистрации ДТ.&lt;br /&gt;
*  '''%%EDREGISTERTIME''' - Время регистрации ДТ.&lt;br /&gt;
*  '''%%EDLASTDATE''' - Дата выпуска ДТ.&lt;br /&gt;
*  '''%%EDLASTTIME''' - Время выпуска ДТ.&lt;br /&gt;
*  '''%%EDDATEBYCMN()''' - Дата произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDDATEBYCMN(CMN.11001) - дата регистрации ДТ&lt;br /&gt;
*  '''%%EDTIMEBYCMN()''' - Время произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDTIMEBYCMN(CMN.11001) - время регистрации ДТ&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1391</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1391"/>
		<updated>2025-10-03T12:50:20Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Специальные идентификаторы */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для объединения ячеек в столбцах (ROWSPAN) ==== &lt;br /&gt;
&lt;br /&gt;
Если в столбце дописать ключевое слово '''%%JOIN''', то такой ячейки с одинаковыми значениями в столбце будут объединены.&lt;br /&gt;
Например, если шаблон вида &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
формирует таблицу&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | 1111 || aaaaa&lt;br /&gt;
 |-&lt;br /&gt;
 | 1111 || ббббб&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ггггг&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
то шаблон &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 %%JOIN || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
cформирует &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | rowspan=&amp;quot;2&amp;quot;| 1111 || aaaaa&lt;br /&gt;
 |- &lt;br /&gt;
 | ббббб&lt;br /&gt;
 |-&lt;br /&gt;
 | rowspan=&amp;quot;3&amp;quot;| 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | ггггг&lt;br /&gt;
 |-&lt;br /&gt;
 | ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для очистки строки с вложенным блоком вместо её удаления ====&lt;br /&gt;
&lt;br /&gt;
Если в любом месте главного цикла (START_END) вписать идентификатор '''%%CLEARSUBIFEMPTY''', то строка с вложенным циклом (STARTSUB_ENDSUB) не будет удаляться при пустом вложенном блоке,&lt;br /&gt;
а просто очистятся ячейки этого блока. Полезно, когда вложенный блок находится в одной строке с главным блоком. Обычно при пустом вложенном удаляется вся строка, вместе с главным блоком.&lt;br /&gt;
С таким идентификатором этого удаления можно избежать.&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMETILLCOLON''' – извлекает из графы 31 наименование товара до двоеточия;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
* '''%%31.PALCOUNT''' - количество паллет.&lt;br /&gt;
* '''%%31.PAKTYPE''' - тип упаковки.&lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, либо в заданном вложенном блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%NUMBLOCKA(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')'''  - Возвращает количество записей в заданном вложенном блоке всех товаров %%NUMBLOCK('BLOCK\TOVG')&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
&lt;br /&gt;
* '''%%EXECMACROS(''&amp;lt;ИМЯ_МАКРОСА&amp;gt;'')''' - выполнит макрос, прописанный в шаблоне, после окончания выгрузки. Может находиться в любом месте шаблона.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''%%FORMULA([35_1]+[38_1])''' - выполнить операцию над полями (сложение, умножение, конкатекация строк и т.д.). Названия полей должны быть выделены скобками.&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
==== Функции работы с датой ====&lt;br /&gt;
&lt;br /&gt;
* '''%%TEXTDATE(''&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;'')'''  - конвертирует дату в текстовый формат (21 января 2025)&lt;br /&gt;
* '''%%DATE(''&amp;quot;dd mmmm yyyy&amp;quot;'',''[&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;]'')'''  - конвертирует дату в произвольный заданный формат&lt;br /&gt;
* '''%%CURDATE'''  - возвращает текущую дату в формате dd.mm.yyyy&lt;br /&gt;
* '''%%CURTIME'''  - возвращает текущее время в формате hh:nn:ss&lt;br /&gt;
* '''%%DASHDATE(''&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;'')'''  - заменяет точки на дефисы в дате dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
==== Прочие функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%COPY(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''X'', ''Y'')'''  - копировать часть данных из поля&lt;br /&gt;
* '''%%TRIM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')'''  - чистит значение поля от незначащих символов (пробелов) в начале и в конце&lt;br /&gt;
* '''%%LEFTPAD(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'',''&amp;quot; &amp;quot;'',''10'')'''  - Дополняет значение поля символами слева до заданной длины. По умолчанию (если второй параметр пустой) пробелами.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_06011_LASTDATE''' - только дата ДО,&lt;br /&gt;
  '''%%@44_!_06011_CODE''' - только код типа документа,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_!_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
  '''%%@44_!_04021_FORMULA(G444+G442+&amp;quot;ОТ&amp;quot;+G443)''' - выгрузится согласно формуле&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
С 2015 года так же допускается упрощенный синтаксис без _!_ в середине идентификатора.&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_04021_TEXT'''&lt;br /&gt;
  '''%%@44_01402_NODATE''' &lt;br /&gt;
&lt;br /&gt;
Если необходимо собрать информацию про несколько разных типов документов, то в коде документа можно использовать символ ?, обозначающий любую цифру&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_014??_NODATE'''  - соберет через запятую номера документов с кодами 01401, 01402, 01403 и до 01499&lt;br /&gt;
&lt;br /&gt;
Если при помощи символов ? не удается закодировать маску для документов, то можно использовать символ &amp;amp; и указать несколько кодов документов&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_01191&amp;amp;01402_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01402&lt;br /&gt;
  '''%%@44_01191&amp;amp;0140?_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01401, 01402, 01403 ... до 01409&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_1010_DocNum''' – выгрузится номер платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_0''' – выгрузится сумма всех платежей.&lt;br /&gt;
  '''%%@B_0_Doc''' – выгрузятся номер и дата платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_DocNum''' – выгрузятся номера платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_Text''' – выгрузится вся строка, кроме ИНН\КПП.&lt;br /&gt;
&lt;br /&gt;
==== Для получения информации из SQL таблиц по ДТ и процедуре ====&lt;br /&gt;
&lt;br /&gt;
*  '''%%PROCESSID''' - ID ЭД-процедуры.&lt;br /&gt;
*  '''%%EDSTAT''' - ЭД-статус ДТ в текстовом виде.&lt;br /&gt;
*  '''%%EDSENDDATE''' - Дата подачи ДТ.&lt;br /&gt;
*  '''%%EDSENDTIME''' - Время подачи ДТ.&lt;br /&gt;
*  '''%%EDREGISTERDATE''' - Дата регистрации ДТ.&lt;br /&gt;
*  '''%%EDREGISTERTIME''' - Время регистрации ДТ.&lt;br /&gt;
*  '''%%EDLASTDATE''' - Дата выпуска ДТ.&lt;br /&gt;
*  '''%%EDLASTTIME''' - Время выпуска ДТ.&lt;br /&gt;
*  '''%%EDDATEBYCMN()''' - Дата произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDDATEBYCMN(CMN.11001) - дата регистрации ДТ&lt;br /&gt;
*  '''%%EDTIMEBYCMN()''' - Время произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDTIMEBYCMN(CMN.11001) - время регистрации ДТ&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1390</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1390"/>
		<updated>2025-10-03T12:45:06Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для объединения ячеек в столбцах (ROWSPAN) ==== &lt;br /&gt;
&lt;br /&gt;
Если в столбце дописать ключевое слово '''%%JOIN''', то такой ячейки с одинаковыми значениями в столбце будут объединены.&lt;br /&gt;
Например, если шаблон вида &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
формирует таблицу&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | 1111 || aaaaa&lt;br /&gt;
 |-&lt;br /&gt;
 | 1111 || ббббб&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ггггг&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
то шаблон &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 %%JOIN || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
cформирует &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | rowspan=&amp;quot;2&amp;quot;| 1111 || aaaaa&lt;br /&gt;
 |- &lt;br /&gt;
 | ббббб&lt;br /&gt;
 |-&lt;br /&gt;
 | rowspan=&amp;quot;3&amp;quot;| 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | ггггг&lt;br /&gt;
 |-&lt;br /&gt;
 | ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для очистки строки с вложенным блоком вместо её удаления ====&lt;br /&gt;
&lt;br /&gt;
Если в любом месте главного цикла (START_END) вписать идентификатор '''%%CLEARSUBIFEMPTY''', то строка с вложенным циклом (STARTSUB_ENDSUB) не будет удаляться при пустом вложенном блоке,&lt;br /&gt;
а просто очистятся ячейки этого блока. Полезно, когда вложенный блок находится в одной строке с главным блоком. Обычно при пустом вложенном удаляется вся строка, вместе с главным блоком.&lt;br /&gt;
С таким идентификатором этого удаления можно избежать.&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMETILLCOLON''' – извлекает из графы 31 наименование товара до двоеточия;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
* '''%%31.PALCOUNT''' - количество паллет.&lt;br /&gt;
* '''%%31.PAKTYPE''' - тип упаковки.&lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
&lt;br /&gt;
* '''%%EXECMACROS(''&amp;lt;ИМЯ_МАКРОСА&amp;gt;'')''' - выполнит макрос, прописанный в шаблоне, после окончания выгрузки. Может находиться в любом месте шаблона.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* '''%%FORMULA([35_1]+[38_1])''' - выполнить операцию над полями (сложение, умножение, конкатекация строк и т.д.). Названия полей должны быть выделены скобками.&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
==== Функции работы с датой ====&lt;br /&gt;
&lt;br /&gt;
* '''%%TEXTDATE(''&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;'')'''  - конвертирует дату в текстовый формат (21 января 2025)&lt;br /&gt;
* '''%%DATE(''&amp;quot;dd mmmm yyyy&amp;quot;'',''[&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;]'')'''  - конвертирует дату в произвольный заданный формат&lt;br /&gt;
* '''%%CURDATE'''  - возвращает текущую дату в формате dd.mm.yyyy&lt;br /&gt;
* '''%%CURTIME'''  - возвращает текущее время в формате hh:nn:ss&lt;br /&gt;
* '''%%DASHDATE(''&amp;lt;ИМЯ_ПОЛЯ_С_ДАТОЙ&amp;gt;'')'''  - заменяет точки на дефисы в дате dd-mm-yyyy&lt;br /&gt;
&lt;br /&gt;
==== Прочие функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%COPY(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''X'', ''Y'')'''  - копировать часть данных из поля&lt;br /&gt;
* '''%%TRIM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')'''  - чистит значение поля от незначащих символов (пробелов) в начале и в конце&lt;br /&gt;
* '''%%EXECMACROS(''&amp;lt;ИМЯ_МАКРОСА&amp;gt;'')'''  - выполняет макрос в конце выгрузки. Расположить можно в любом месте шаблона&lt;br /&gt;
* '''%%BLOCKCOUNT'''  - Возвращает количество записей в блоке&lt;br /&gt;
* '''%%BLOCKNUM'''  - Возвращает номер записи в главном блоке (текущий номер товара) или номер вложенного блока ('''%%TOVG\BLOCKNUM''')&lt;br /&gt;
* '''%%NUMBLOCK'''  - Возвращает количество записей в главном блоке&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')'''  - Возвращает количество записей в заданном блоке %%NUMBLOCK('DOG'). Либо в заданном вложенном блоке текущего товара %%NUMBLOCK('BLOCK\TOVG')&lt;br /&gt;
* '''%%NUMBLOCKA(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')'''  - Возвращает количество записей в заданном вложенном блоке всех товаров %%NUMBLOCK('BLOCK\TOVG')&lt;br /&gt;
* '''%%LEFTPAD(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'',''&amp;quot; &amp;quot;'',''10'')'''  - Дополняет значение поля символами слева до заданной длины. По умолчанию (если второй параметр пустой) пробелами.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_06011_LASTDATE''' - только дата ДО,&lt;br /&gt;
  '''%%@44_!_06011_CODE''' - только код типа документа,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_!_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
  '''%%@44_!_04021_FORMULA(G444+G442+&amp;quot;ОТ&amp;quot;+G443)''' - выгрузится согласно формуле&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
С 2015 года так же допускается упрощенный синтаксис без _!_ в середине идентификатора.&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_04021_TEXT'''&lt;br /&gt;
  '''%%@44_01402_NODATE''' &lt;br /&gt;
&lt;br /&gt;
Если необходимо собрать информацию про несколько разных типов документов, то в коде документа можно использовать символ ?, обозначающий любую цифру&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_014??_NODATE'''  - соберет через запятую номера документов с кодами 01401, 01402, 01403 и до 01499&lt;br /&gt;
&lt;br /&gt;
Если при помощи символов ? не удается закодировать маску для документов, то можно использовать символ &amp;amp; и указать несколько кодов документов&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_01191&amp;amp;01402_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01402&lt;br /&gt;
  '''%%@44_01191&amp;amp;0140?_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01401, 01402, 01403 ... до 01409&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_1010_DocNum''' – выгрузится номер платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_0''' – выгрузится сумма всех платежей.&lt;br /&gt;
  '''%%@B_0_Doc''' – выгрузятся номер и дата платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_DocNum''' – выгрузятся номера платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_Text''' – выгрузится вся строка, кроме ИНН\КПП.&lt;br /&gt;
&lt;br /&gt;
==== Для получения информации из SQL таблиц по ДТ и процедуре ====&lt;br /&gt;
&lt;br /&gt;
*  '''%%PROCESSID''' - ID ЭД-процедуры.&lt;br /&gt;
*  '''%%EDSTAT''' - ЭД-статус ДТ в текстовом виде.&lt;br /&gt;
*  '''%%EDSENDDATE''' - Дата подачи ДТ.&lt;br /&gt;
*  '''%%EDSENDTIME''' - Время подачи ДТ.&lt;br /&gt;
*  '''%%EDREGISTERDATE''' - Дата регистрации ДТ.&lt;br /&gt;
*  '''%%EDREGISTERTIME''' - Время регистрации ДТ.&lt;br /&gt;
*  '''%%EDLASTDATE''' - Дата выпуска ДТ.&lt;br /&gt;
*  '''%%EDLASTTIME''' - Время выпуска ДТ.&lt;br /&gt;
*  '''%%EDDATEBYCMN()''' - Дата произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDDATEBYCMN(CMN.11001) - дата регистрации ДТ&lt;br /&gt;
*  '''%%EDTIMEBYCMN()''' - Время произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDTIMEBYCMN(CMN.11001) - время регистрации ДТ&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1358</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1358"/>
		<updated>2024-09-13T11:53:10Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для объединения ячеек в столбцах (ROWSPAN) ==== &lt;br /&gt;
&lt;br /&gt;
Если в столбце дописать ключевое слово '''%%JOIN''', то такой ячейки с одинаковыми значениями в столбце будут объединены.&lt;br /&gt;
Например, если шаблон вида &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
формирует таблицу&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | 1111 || aaaaa&lt;br /&gt;
 |-&lt;br /&gt;
 | 1111 || ббббб&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ггггг&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
то шаблон &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 %%JOIN || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
cформирует &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | rowspan=&amp;quot;2&amp;quot;| 1111 || aaaaa&lt;br /&gt;
 |- &lt;br /&gt;
 | ббббб&lt;br /&gt;
 |-&lt;br /&gt;
 | rowspan=&amp;quot;3&amp;quot;| 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | ггггг&lt;br /&gt;
 |-&lt;br /&gt;
 | ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для очистки строки с вложенным блоком вместо её удаления ====&lt;br /&gt;
&lt;br /&gt;
Если в любом месте главного цикла (START_END) вписать идентификатор '''%%CLEARSUBIFEMPTY''', то строка с вложенным циклом (STARTSUB_ENDSUB) не будет удаляться при пустом вложенном блоке,&lt;br /&gt;
а просто очистятся ячейки этого блока. Полезно, когда вложенный блок находится в одной строке с главным блоком. Обычно при пустом вложенном удаляется вся строка, вместе с главным блоком.&lt;br /&gt;
С таким идентификатором этого удаления можно избежать.&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMETILLCOLON''' – извлекает из графы 31 наименование товара до двоеточия;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
&lt;br /&gt;
* '''%%EXECMACROS(''&amp;lt;ИМЯ_МАКРОСА&amp;gt;'')''' - выполнит макрос, прописанный в шаблоне, после окончания выгрузки. Может находиться в любом месте шаблона.&lt;br /&gt;
&lt;br /&gt;
* '''%%31.PALCOUNT''' - количество паллет.&lt;br /&gt;
&lt;br /&gt;
* '''%%31.PAKTYPE''' - тип упаковки.&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%COPY(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''X'', ''Y'')'''  - копировать часть данных из поля&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_06011_LASTDATE''' - только дата ДО,&lt;br /&gt;
  '''%%@44_!_06011_CODE''' - только код типа документа,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_!_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
  '''%%@44_!_04021_FORMULA(G444+G442+&amp;quot;ОТ&amp;quot;+G443)''' - выгрузится согласно формуле&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
С 2015 года так же допускается упрощенный синтаксис без _!_ в середине идентификатора.&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_04021_TEXT'''&lt;br /&gt;
  '''%%@44_01402_NODATE''' &lt;br /&gt;
&lt;br /&gt;
Если необходимо собрать информацию про несколько разных типов документов, то в коде документа можно использовать символ ?, обозначающий любую цифру&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_014??_NODATE'''  - соберет через запятую номера документов с кодами 01401, 01402, 01403 и до 01499&lt;br /&gt;
&lt;br /&gt;
Если при помощи символов ? не удается закодировать маску для документов, то можно использовать символ &amp;amp; и указать несколько кодов документов&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_01191&amp;amp;01402_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01402&lt;br /&gt;
  '''%%@44_01191&amp;amp;0140?_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01401, 01402, 01403 ... до 01409&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_1010_DocNum''' – выгрузится номер платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_0''' – выгрузится сумма всех платежей.&lt;br /&gt;
  '''%%@B_0_Doc''' – выгрузятся номер и дата платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_DocNum''' – выгрузятся номера платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_Text''' – выгрузится вся строка, кроме ИНН\КПП.&lt;br /&gt;
&lt;br /&gt;
==== Для получения информации из SQL таблиц по ДТ и процедуре ====&lt;br /&gt;
&lt;br /&gt;
*  '''%%PROCESSID''' - ID ЭД-процедуры.&lt;br /&gt;
*  '''%%EDSTAT''' - ЭД-статус ДТ в текстовом виде.&lt;br /&gt;
*  '''%%EDSENDDATE''' - Дата подачи ДТ.&lt;br /&gt;
*  '''%%EDSENDTIME''' - Время подачи ДТ.&lt;br /&gt;
*  '''%%EDREGISTERDATE''' - Дата регистрации ДТ.&lt;br /&gt;
*  '''%%EDREGISTERTIME''' - Время регистрации ДТ.&lt;br /&gt;
*  '''%%EDLASTDATE''' - Дата выпуска ДТ.&lt;br /&gt;
*  '''%%EDLASTTIME''' - Время выпуска ДТ.&lt;br /&gt;
*  '''%%EDDATEBYCMN()''' - Дата произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDDATEBYCMN(CMN.11001) - дата регистрации ДТ&lt;br /&gt;
*  '''%%EDTIMEBYCMN()''' - Время произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDTIMEBYCMN(CMN.11001) - время регистрации ДТ&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1357</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1357"/>
		<updated>2024-09-13T09:25:21Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для объединения ячеек в столбцах (ROWSPAN) ==== &lt;br /&gt;
&lt;br /&gt;
Если в столбце дописать ключевое слово %%JOIN, то такой ячейки с одинаковыми значениями в столбце будут объединены.&lt;br /&gt;
Например, если шаблон вида &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
формирует таблицу&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | 1111 || aaaaa&lt;br /&gt;
 |-&lt;br /&gt;
 | 1111 || ббббб&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ггггг&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
то шаблон &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 %%JOIN || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
cформирует &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | rowspan=&amp;quot;2&amp;quot;| 1111 || aaaaa&lt;br /&gt;
 |- &lt;br /&gt;
 | ббббб&lt;br /&gt;
 |-&lt;br /&gt;
 | rowspan=&amp;quot;3&amp;quot;| 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | ггггг&lt;br /&gt;
 |-&lt;br /&gt;
 | ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для очистки строки с вложенным блоком вместо её удаления ====&lt;br /&gt;
&lt;br /&gt;
Если в любом месте главного цикла (START_END) вписать идентификатор %%CLEARSUBIFEMPTY, то строка с вложенным циклом (STARTSUB_ENDSUB) не будет удаляться при пустом вложенном блоке,&lt;br /&gt;
а просто очистятся ячейки этого блока. Полезно, когда вложенный блок находится в одной строке с главным блоком. Обычно при пустом вложенном удаляется вся строка, вместе с главным блоком.&lt;br /&gt;
С таким идентификатором этого удаления можно избежать.&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMETILLCOLON''' – извлекает из графы 31 наименование товара до двоеточия;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
&lt;br /&gt;
* '''%%EXECMACROS(''&amp;lt;ИМЯ_МАКРОСА&amp;gt;'')''' - выполнит макрос, прописанный в шаблоне, после окончания выгрузки. Может находиться в любом месте шаблона.&lt;br /&gt;
&lt;br /&gt;
* '''%%31.PALCOUNT''' - количество паллет.&lt;br /&gt;
&lt;br /&gt;
* '''%%31.PAKTYPE''' - тип упаковки.&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%COPY(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''X'', ''Y'')'''  - копировать часть данных из поля&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_06011_LASTDATE''' - только дата ДО,&lt;br /&gt;
  '''%%@44_!_06011_CODE''' - только код типа документа,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_!_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
  '''%%@44_!_04021_FORMULA(G444+G442+&amp;quot;ОТ&amp;quot;+G443)''' - выгрузится согласно формуле&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
С 2015 года так же допускается упрощенный синтаксис без _!_ в середине идентификатора.&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_04021_TEXT'''&lt;br /&gt;
  '''%%@44_01402_NODATE''' &lt;br /&gt;
&lt;br /&gt;
Если необходимо собрать информацию про несколько разных типов документов, то в коде документа можно использовать символ ?, обозначающий любую цифру&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_014??_NODATE'''  - соберет через запятую номера документов с кодами 01401, 01402, 01403 и до 01499&lt;br /&gt;
&lt;br /&gt;
Если при помощи символов ? не удается закодировать маску для документов, то можно использовать символ &amp;amp; и указать несколько кодов документов&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_01191&amp;amp;01402_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01402&lt;br /&gt;
  '''%%@44_01191&amp;amp;0140?_NODATE'''  - соберет через запятую номера документов с кодами 01191 и 01401, 01402, 01403 ... до 01409&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_1010_DocNum''' – выгрузится номер платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_0''' – выгрузится сумма всех платежей.&lt;br /&gt;
  '''%%@B_0_Doc''' – выгрузятся номер и дата платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_DocNum''' – выгрузятся номера платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_Text''' – выгрузится вся строка, кроме ИНН\КПП.&lt;br /&gt;
&lt;br /&gt;
==== Для получения информации из SQL таблиц по ДТ и процедуре ====&lt;br /&gt;
&lt;br /&gt;
*  '''%%PROCESSID''' - ID ЭД-процедуры.&lt;br /&gt;
*  '''%%EDSTAT''' - ЭД-статус ДТ в текстовом виде.&lt;br /&gt;
*  '''%%EDSENDDATE''' - Дата подачи ДТ.&lt;br /&gt;
*  '''%%EDSENDTIME''' - Время подачи ДТ.&lt;br /&gt;
*  '''%%EDREGISTERDATE''' - Дата регистрации ДТ.&lt;br /&gt;
*  '''%%EDREGISTERTIME''' - Время регистрации ДТ.&lt;br /&gt;
*  '''%%EDLASTDATE''' - Дата выпуска ДТ.&lt;br /&gt;
*  '''%%EDLASTTIME''' - Время выпуска ДТ.&lt;br /&gt;
*  '''%%EDDATEBYCMN()''' - Дата произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDDATEBYCMN(CMN.11001) - дата регистрации ДТ&lt;br /&gt;
*  '''%%EDTIMEBYCMN()''' - Время произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDTIMEBYCMN(CMN.11001) - время регистрации ДТ&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%A1%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0_SQL-%D1%82%D0%B0%D0%B1%D0%BB%D0%B8%D1%86_%D0%93%D0%A2%D0%94&amp;diff=1307</id>
		<title>Структура SQL-таблиц ГТД</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%A1%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0_SQL-%D1%82%D0%B0%D0%B1%D0%BB%D0%B8%D1%86_%D0%93%D0%A2%D0%94&amp;diff=1307"/>
		<updated>2023-02-09T09:29:48Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Основные таблицы БД программы Альта-ГТД=&lt;br /&gt;
&lt;br /&gt;
Неиспользуемые поля выделены &amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;серым&amp;lt;/span&amp;gt;, самые важные '''жирным'''.&lt;br /&gt;
&lt;br /&gt;
==Таблица '''Docs''' (основное хранилище документов программы)==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;standard&amp;quot;&lt;br /&gt;
 !Поле&lt;br /&gt;
 !Тип&lt;br /&gt;
 !Описание&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;ID&amp;lt;/span&amp;gt;&lt;br /&gt;
 |[int] IDENTITY(1,1)&lt;br /&gt;
 |Автоинкрементный ключ ''(устаревший, см. GID)''&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;PathId&amp;lt;/span&amp;gt;&lt;br /&gt;
 |[int]&lt;br /&gt;
 |Ссылка на путь, т.е. поле ID с именем папки ''(устаревший, см. PathGID)''&lt;br /&gt;
 |-&lt;br /&gt;
 |'''DocKey'''&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 |Номер документа или имя папки, для показа в списке&lt;br /&gt;
 |-&lt;br /&gt;
 |Dir&lt;br /&gt;
 |[int]&lt;br /&gt;
 |Признак типа записи, 0-документ, 10-папка. Возможно появление других служебных записей с Dir&amp;gt;0.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''DocTyp'''&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 |Тип документа, например 'GTD' для ГТД&lt;br /&gt;
 |-&lt;br /&gt;
 |DocDate&lt;br /&gt;
 |[datetime]&lt;br /&gt;
 |Дата из номера документа, там где оно применимо (прописано в структуре документа *.dcf)&lt;br /&gt;
 |-&lt;br /&gt;
 |'''ModDate'''&lt;br /&gt;
 |[datetime]&lt;br /&gt;
 |Дата последней модификации документа&lt;br /&gt;
 |-&lt;br /&gt;
 |RegDate&lt;br /&gt;
 |[datetime]&lt;br /&gt;
 |Дата выпуска для ГТД, проставляется вручную по кнопке &amp;quot;синяя печать&amp;quot;, или при выпуске по ЭД-2 ''(устаревший)''&lt;br /&gt;
 |-&lt;br /&gt;
 |CrDate&lt;br /&gt;
 |[datetime]&lt;br /&gt;
 |Дата создания (первого сохранения) документа&lt;br /&gt;
 |-&lt;br /&gt;
 |GoodsNum&lt;br /&gt;
 |[int]&lt;br /&gt;
 |Кол-во товаров в документе, там где оно применимо (прописано в структуре документа *.dcf)&lt;br /&gt;
 |-&lt;br /&gt;
 |UserName&lt;br /&gt;
 |[varchar](20)&lt;br /&gt;
 |Имя пользователя, последним сохранявшего документ. Присваивается только если в Альте настроены внутренние имена пользователей, к имени компьютера и пользователя в смысле Windows отношения не имеет.&lt;br /&gt;
 |-&lt;br /&gt;
 |EDSender&lt;br /&gt;
 |[varchar](20)&lt;br /&gt;
 |Пользователь, отославший документ по ЭД-2. Или логин в смысле Альты, или, если нет, то имя компьютера.&lt;br /&gt;
 |-&lt;br /&gt;
 |Binded&lt;br /&gt;
 |[varchar](100)&lt;br /&gt;
 |Взаимосвязанные документы, русские имена через запятую, для показа в списке. На 100% верить нельзя, т.к. не все помещаются и не всегда обновляются. Связь считается по одинаковому номеру в пределах одной папки (ГТД+ДТС+КТС+КУТС+Опись) или по происхождению (Инвойс=&amp;gt;ГТД=&amp;gt;ЭД-Инвойс).&lt;br /&gt;
 |-&lt;br /&gt;
 |Status&lt;br /&gt;
 |[varchar](10)&lt;br /&gt;
 |Статус. В большой степени заготовка, сейчас используется только '0000000001' для обозначения регистрации синей печатью. Не путать с EdStatus!&lt;br /&gt;
 |-&lt;br /&gt;
 |'''Blob'''&lt;br /&gt;
 |[image]&lt;br /&gt;
 |Главное поле! Собственно сохраненный документ. К сожалению в виде малочитабельного бинарника, хотя слова в кодировке WIN-1251 разобрать можно (на этом строится индексация для Full Text Search).&lt;br /&gt;
 |-&lt;br /&gt;
 |DocSize&lt;br /&gt;
 |[int]&lt;br /&gt;
 |Размер поля Blob (он же размера выгруженного файла документа во внутреннем формате Альта)&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;SDSId&amp;lt;/span&amp;gt;&lt;br /&gt;
 |[int]&lt;br /&gt;
 |Код пограничного поста при &amp;quot;удаленном декларировании по ЭД-2&amp;quot;. Отменено Спецификацией ЭД от 01.10.15. ''Изначально здесь была ссылка на номер СДС в смысле ЭД-1, но это тем более устарело.''&lt;br /&gt;
 |-&lt;br /&gt;
 |Locked&lt;br /&gt;
 |[int]&lt;br /&gt;
 |Значение Locked&amp;gt;0 признак того, что документ уже открыт другим пользователем (занят). В списке отображается желтым.&lt;br /&gt;
 |-&lt;br /&gt;
 |LockTime&lt;br /&gt;
 |[datetime]&lt;br /&gt;
 |Время, когда документ был открыт другим пользователем. Для показа в списке. Если время залочки больше суток, то считаем что это зависший компьютер и в списке желтым не отображаем.&lt;br /&gt;
 |-&lt;br /&gt;
 |LockUser&lt;br /&gt;
 |[varchar](15)&lt;br /&gt;
 |Имя пользователя, который занял документ&lt;br /&gt;
 |-&lt;br /&gt;
 |Comment&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 |Короткий комментарий, показывается и редактируется вручную в режиме &amp;quot;широкого списка&amp;quot;&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;ParentId&amp;lt;/span&amp;gt;&lt;br /&gt;
 |[int]&lt;br /&gt;
 |Ссылка на родительский документ ''(Устаревший, см. ParentGID)'''&lt;br /&gt;
 |-&lt;br /&gt;
 |'''ProcessId'''&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 |Номер процедуры ЭД-2, присваивается таможней в момент &amp;quot;открытия процедуры&amp;quot;. Один из способов связки с таблицей EdMsgs.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''EDStat'''&lt;br /&gt;
 |[int]&lt;br /&gt;
 |Статус процедуры ЭД-2. Отвечает за подсветку, &amp;quot;молнию&amp;quot; и подписи в списке документов. Подробнее см. [[Статусы документа при ЭД-2, поле Docs.EdStatus|Статусы документов ЭД-2]].&lt;br /&gt;
 |-&lt;br /&gt;
 |'''RegNum'''&lt;br /&gt;
 |[varchar](25)&lt;br /&gt;
 |Регистрационный номер ГТД, полученный из таможни по ЭД-2. Виден в режиме &amp;quot;широкого списка&amp;quot;. Может использоваться в отчетах.&lt;br /&gt;
 |-&lt;br /&gt;
 |DocumentID&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 |Уникальный номер документа, существует только для документов ЭД-2 (но не для ГТД!). При отправке в таможню не должен повторяться, поэтому при каждом сохранении создается заново. Не путать с главным ключом GID!&lt;br /&gt;
 |-&lt;br /&gt;
 |ArchId&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 |Номер ЭД-2 архива таможни, в который последний раз отправляли документ.&lt;br /&gt;
 |-&lt;br /&gt;
 |ArchDocID&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 |Номер документа в ЭД-2 архиве, присваивается таможней в ответном сообщении.&lt;br /&gt;
 |-&lt;br /&gt;
 |ArchDocumentID&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 |Номер DocumentID экземпляра документа переданного в ЭД-2 архив таможни.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''GID'''&lt;br /&gt;
 |[uniqueidentifier] ROWGUIDCOL&lt;br /&gt;
 |Первичный ключ, уникальный ID документа. Служит для связки с таблицами EdMsgs и *List.&lt;br /&gt;
 |-&lt;br /&gt;
 |ParentGID&lt;br /&gt;
 |[uniqueidentifier]&lt;br /&gt;
 |Ссылка на GID родительского документа. Проставляется при создании взаимосвязанного (ГТД из Инвойса, ДТС из ГТД и т.д.). Используется для показа и совместной выгрузки во внутреннем формате.&lt;br /&gt;
 |-&lt;br /&gt;
 |PathGID&lt;br /&gt;
 |[uniqueidentifier]&lt;br /&gt;
 |Указатель на папку, в которой лежит документ. Используется для структуризации списка. Папка - это такая же запись таблицы Docs, только с пустым Blob и Dir&amp;gt;0. По умолчанию ссылается на корневую папку с GUID(0)&lt;br /&gt;
 |-&lt;br /&gt;
 |TXT&lt;br /&gt;
 |[char](3)&lt;br /&gt;
 |Способ индексации, необходим для полнотекстового индекса. По умолчанию всегда &amp;quot;txt&amp;quot;.&lt;br /&gt;
 |-&lt;br /&gt;
 |Thumb&lt;br /&gt;
 |[varchar](40)&lt;br /&gt;
 |Идентификатор сертификата ЭЦП, с которой документ был отправлен по ЭД-2. Для предотвращения отправки с подписью разных фирм в рамках одной процедуры декларирования.&lt;br /&gt;
 |-&lt;br /&gt;
 |Firm&lt;br /&gt;
 |[varchar](100)&lt;br /&gt;
 |Фирма в смысле ЭД-2, для связки с таблицей EdFirms &amp;quot;ЭД-2 для нескольких фирм в одной базе&amp;quot;&lt;br /&gt;
 |-&lt;br /&gt;
 |FirstDT&lt;br /&gt;
 |[varchar](25)&lt;br /&gt;
 |Ссылка на первичную ДТ (регистрационный номер) у ЭД-документа для признака подачи /2.&lt;br /&gt;
 |-&lt;br /&gt;
 |ScanID&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 |ID сканированной копии документа.&lt;br /&gt;
 |-&lt;br /&gt;
 |Hash&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 |Hash для XML-блобов.&lt;br /&gt;
 |-&lt;br /&gt;
 |Comment2&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 |Дополнительный короткий комментарий, показывается в списке документов по настройке&lt;br /&gt;
[System]&amp;lt;br /&amp;gt;&lt;br /&gt;
ListComment2=1&lt;br /&gt;
 |-&lt;br /&gt;
 |Timestamp&lt;br /&gt;
 |[timestamp]&lt;br /&gt;
 |Служебное поле, хранит информацию о времени последнего обновления строки таблицы. Для динамического обновления списка документов.&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
==Таблица '''EdMsgs''' (заголовки всех сообщений ЭД-2)==&lt;br /&gt;
&lt;br /&gt;
Большая часть полей соответствует одноименным тэгам XML-сообщения ЭД-2&lt;br /&gt;
{| class=&amp;quot;standard&amp;quot;&lt;br /&gt;
 !Поле&lt;br /&gt;
 !Тип&lt;br /&gt;
 !Описание&lt;br /&gt;
 |-&lt;br /&gt;
 |'''EnvelopeID'''&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 |Идентификатор сообщения, уникальный ключ.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''InitialEnvelopeID'''&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 |Ссылка на идентификатор предыдущего сообщения. Для ответов, например при получении ошибки позволяет проследить к чему она относится.&lt;br /&gt;
 |-&lt;br /&gt;
 |SenderInformation&lt;br /&gt;
 |[varchar](100)&lt;br /&gt;
 |Имя отправителя сообщения. Обычно имеет вид &amp;quot;smtp://eps.customs.ru/''company_name''&amp;quot;. Выдается таможней, прописано в настройке ЭД-2.&lt;br /&gt;
 |-&lt;br /&gt;
 |ReceiverInformation&lt;br /&gt;
 |[varchar](100)&lt;br /&gt;
 |Имя получателя сообщения. Обычно фиксированное &amp;quot;smtp://eps.customs.ru/gateway&amp;quot;. Прописано в настройке ЭД-2. Для входящих сообщений от таможни SenderInformation и ReceiverInformation меняются местами.&lt;br /&gt;
 |-&lt;br /&gt;
 |PreparationDateTime&lt;br /&gt;
 |[datetime]&lt;br /&gt;
 |Время создания сообщения. По часам отправляющего компьютера, поэтому для разных поясов или летнего-зимнего времени может сильно не совпадать у входящих и исходящих сообщений.&lt;br /&gt;
 |-&lt;br /&gt;
 |InOutDateTime&lt;br /&gt;
 |[datetime]&lt;br /&gt;
 |Время приема сообщения в базу. По времени SQL-сервера. Используется для сортировки сообщений по умолчанию.&lt;br /&gt;
 |-&lt;br /&gt;
 |Priority&lt;br /&gt;
 |[int]&lt;br /&gt;
 |Используется для контроля ЭД сообщений. Сообщение на контроле - 1, снято с контроля - 0. Значение по умолчанию 4&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;Expiration&amp;lt;/span&amp;gt;&lt;br /&gt;
 |[int]&lt;br /&gt;
 |Фактически не используется, значение по умолчанию null&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;ConfirmationRequest&amp;lt;/span&amp;gt;&lt;br /&gt;
 |[varchar](10)&lt;br /&gt;
 |Фактически не используется, значение по умолчанию null&lt;br /&gt;
 |-&lt;br /&gt;
 |'''MessageType'''&lt;br /&gt;
 |[varchar](10)&lt;br /&gt;
 |Тип сообщения. Имеет вид &amp;quot;CMN.01234&amp;quot;. Основное поле для понимания смысла сообщения. Все типы прописаны в &amp;quot;Спецификации ЭД&amp;quot;.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''ProccessID'''&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 |Идентификатор процедуры. Объединяет сообщения относящиеся к одной ГТД (кроме самого первого, &amp;quot;запрос на открытие процедуры&amp;quot;)&lt;br /&gt;
 |-&lt;br /&gt;
 |CustomsCode&lt;br /&gt;
 |[varchar](8)&lt;br /&gt;
 |Код таможенного поста, всегда 8 знаков. Служит дополнением к адресу получателя, который один на всю таможню.&lt;br /&gt;
 |-&lt;br /&gt;
 |ParticipantID&lt;br /&gt;
 |[varchar](15)&lt;br /&gt;
 |Идентификатор участника ВЭД. Служит дополнением к адресу отправителя. Выдается таможней, прописан в настройке ЭД-2.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''Status'''&lt;br /&gt;
 |[int]&lt;br /&gt;
 |Статус сообщения ЭД. Позволяет определить что оно доставлено, не обработано или обработано с ошибкой. Подробнее см. [[Статусы сообщений ЭД-2, поле EdMsgs.Status|Статусы сообщений ЭД-2]]&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;Msg&amp;lt;/span&amp;gt;&lt;br /&gt;
 |[image]&lt;br /&gt;
 |Устаревшее поле. Раньше здесь хранилось тело сообщения в формате XML. Сейчас такого поля нет, а тело сообщения вынесено в связанную таблицу EDMsgsXML, которая в общем случае может находиться в другой БД - см. поле MsgDB.&lt;br /&gt;
 |-&lt;br /&gt;
 |DocumentID&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 |Идентификатор документа внутри сообщения, уникальный.&lt;br /&gt;
 |-&lt;br /&gt;
 |RefDocumentID&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 |Ссылка на идентификатор документа в предыдущем сообщении. В некотором роде дублирует пару EnvelopeID/InitialEnvelopeID. По идее должны присутствовать обе связки, но в сообщениях от таможни одной из них может не быть. Приходится смотреть на обе связки по &amp;quot;или&amp;quot;.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''Incoming'''&lt;br /&gt;
 |[bit]&lt;br /&gt;
 |Признак входящего сообщения. 0-сообщения декларанта, 1-сообщение таможенника.&lt;br /&gt;
 |-&lt;br /&gt;
 |DocumentName&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 |Тип документа. Соответствует первому информативному тэгу XML (который обернут снаружи конвертом SOAP с тэгом &amp;lt;Envelope&amp;gt; и подписью Крипто-ПРО с тэгом &amp;lt;Object&amp;gt;). Зависит от MessageType, причем один тип документа (например &amp;lt;Result&amp;gt;) может встречаться во многих разных &amp;quot;CMN.XXXXX&amp;quot;. Используется, в частности, для проверки соответствия содержимого XML одноименной XSD-схеме.&lt;br /&gt;
 |-&lt;br /&gt;
 |Result&lt;br /&gt;
 |[varchar](250)&lt;br /&gt;
 |Текст для показа в списке сообщений. Для разных типов содержит выборку из разных полей XML. Например русское название и номер ЭД-документа для сообщения &amp;quot;передан в ответ на запрос&amp;quot;. Или текст ошибки для таможенного сообщения об ошибке.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''DocGuid'''&lt;br /&gt;
 |[uniqueidentifier]&lt;br /&gt;
 |Служит для связки с таблицей Docs по главному ключу GID. В большинстве случаев дублирует связь по ProccessID. Но особенно важен для &amp;quot;запроса на открытие процедуры&amp;quot; (когда идентификатор процедуры еще не присвоен), и для отправки ПИ и ЭД-2 в архив (когда процедуры вообщен нет).&lt;br /&gt;
 |-&lt;br /&gt;
 |SoftVersion&lt;br /&gt;
 |[varchar](20)&lt;br /&gt;
 |Версия использованного формата XML. Регулярно меняется таможней. Первая цифра - версия &amp;quot;Альбома форматов&amp;quot;, вторая &amp;quot;Спецификации ЭД&amp;quot;. На момент ноября 2011 года используется &amp;quot;5.0.3/3.0.1&amp;quot;.&lt;br /&gt;
 |-&lt;br /&gt;
 |Sender&lt;br /&gt;
 |[varchar](15)&lt;br /&gt;
 |Имя пользователя, либо имя компьютера, который отправил либо принял сообщение. Используется в основном техподдержкой для диагностики проблем со связью. Аналогично полю EDSender таблицы Docs.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''MsgDB'''&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 |Если XML-тело сообщения вынесено в другую БД, то в данном поле хранится имя БД, в чьей таблице EDMsgsXML оно находится. По умолчанию данное поле пусто (NULL), что означает что используется таблица EDMsgsXML самой базы ГТД.&lt;br /&gt;
 |-&lt;br /&gt;
 |NameDS&lt;br /&gt;
 |[varchar](100)&lt;br /&gt;
 |Имя подписавшего сообщение (берется из ЭЦП).&lt;br /&gt;
 |-&lt;br /&gt;
 |ProgVers&lt;br /&gt;
 |[varchar](20)&lt;br /&gt;
 |Версия программы, сформировавшей запись сообщения.&lt;br /&gt;
 |-&lt;br /&gt;
 |FPD&lt;br /&gt;
 |[varbinary]&lt;br /&gt;
 |Former Protect Data - данные о рабочем месте Альта-ГТД, на котором сформировано сообщение. Служебное поле в двоичном формате.&lt;br /&gt;
 |-&lt;br /&gt;
 |MainProccessID&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 |Ссылка на основную процедуру с ДТ, при ответвлении сообщения о досмотре со своим ProccessID.&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
==Таблица '''EdMsgsXML''' (тело сообщений ЭД-2)==&lt;br /&gt;
&lt;br /&gt;
Данная таблица всегда есть в самой базе ГТД и связана с ''EdMsgs'' по полю ''EnvelopeID'' (связь &amp;quot;один к одному&amp;quot;). Однако, часть ЭД-сообщений (или все) могут быть вынесены в дополнительные БД на этом же SQL-сервере - см. описание поля ''EdMsgs.MsgDB'' выше и меню &amp;quot;Настройка / Сервер и сетевые настройки / Доп. базы для ЭД&amp;quot; в программе Альта-ГТД.&lt;br /&gt;
По умолчанию XML-тело сообщений сжимается (архивируется) для экономии места в БД, поэтому если предполагается напрямую читать XML-содержимое сообщений, то рекомендуется отключить функцию сжатия в вышеупомянутом меню Альта-ГТД, там же есть кнопка &amp;quot;Разжать&amp;quot; для уже записанных в БД сообщений (если вовремя не отключили сжатие).&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;standard&amp;quot;&lt;br /&gt;
 !Поле&lt;br /&gt;
 !Тип&lt;br /&gt;
 !Описание&lt;br /&gt;
 |-&lt;br /&gt;
 |'''EnvelopeID'''&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 |Идентификатор сообщения, уникальный ключ. Связка с EdMsgs.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''Msg'''&lt;br /&gt;
 |[image]&lt;br /&gt;
 |Тело сообщения в формате XML подписанное ЭЦП и возможно сжатое - см. след. поле.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''Zip'''&lt;br /&gt;
 |[int]&lt;br /&gt;
 |Признак сжатия поля Msg: 0 - нет сжатия (можно прочитать XML из поля Msg средствами SQL Server), 1 - сжатие по алгортму [http://www.zlib.net zlib] версии 1.2.3.&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
[[Категория:Автоматизация]]&lt;br /&gt;
[[Категория:ЭД-2]]&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1045</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1045"/>
		<updated>2019-08-19T13:59:48Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для объединения ячеек в столбцах (ROWSPAN) ==== &lt;br /&gt;
&lt;br /&gt;
Если в столбце дописать ключевое слово %%JOIN, то такой ячейки с одинаковыми значениями в столбце будут объединены.&lt;br /&gt;
Например, если шаблон вида &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
формирует таблицу&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | 1111 || aaaaa&lt;br /&gt;
 |-&lt;br /&gt;
 | 1111 || ббббб&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ггггг&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
то шаблон &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 %%JOIN || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
cформирует &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | rowspan=&amp;quot;2&amp;quot;| 1111 || aaaaa&lt;br /&gt;
 |- &lt;br /&gt;
 | ббббб&lt;br /&gt;
 |-&lt;br /&gt;
 | rowspan=&amp;quot;3&amp;quot;| 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | ггггг&lt;br /&gt;
 |-&lt;br /&gt;
 | ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMETILLCOLON''' – извлекает из графы 31 наименование товара до двоеточия;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
&lt;br /&gt;
* '''%%EXECMACROS(''&amp;lt;ИМЯ_МАКРОСА&amp;gt;'')''' - выполнит макрос, прописанный в шаблоне, после окончания выгрузки. Может находиться в любом месте шаблона.&lt;br /&gt;
&lt;br /&gt;
* '''%%31.PALCOUNT''' - количество паллет.&lt;br /&gt;
&lt;br /&gt;
* '''%%31.PAKTYPE''' - тип упаковки.&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_06011_LASTDATE''' - только дата ДО,&lt;br /&gt;
  '''%%@44_!_06011_CODE''' - только код типа документа,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_!_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
  '''%%@44_!_04021_FORMULA(G444+G442+&amp;quot;ОТ&amp;quot;+G443)''' - выгрузится согласно формуле&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_1010_DocNum''' – выгрузится номер платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_0''' – выгрузится сумма всех платежей.&lt;br /&gt;
  '''%%@B_0_Doc''' – выгрузятся номер и дата платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_DocNum''' – выгрузятся номера платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_Text''' – выгрузится вся строка, кроме ИНН\КПП.&lt;br /&gt;
&lt;br /&gt;
==== Для получения информации из SQL таблиц по ДТ и процедуре ====&lt;br /&gt;
&lt;br /&gt;
*  '''%%PROCESSID''' - ID ЭД-процедуры.&lt;br /&gt;
*  '''%%EDSTAT''' - ЭД-статус ДТ в текстовом виде.&lt;br /&gt;
*  '''%%EDSENDDATE''' - Дата подачи ДТ.&lt;br /&gt;
*  '''%%EDSENDTIME''' - Время подачи ДТ.&lt;br /&gt;
*  '''%%EDREGISTERDATE''' - Дата регистрации ДТ.&lt;br /&gt;
*  '''%%EDREGISTERTIME''' - Время регистрации ДТ.&lt;br /&gt;
*  '''%%EDLASTDATE''' - Дата выпуска ДТ.&lt;br /&gt;
*  '''%%EDLASTTIME''' - Время выпуска ДТ.&lt;br /&gt;
*  '''%%EDDATEBYCMN()''' - Дата произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDDATEBYCMN(CMN.11001) - дата регистрации ДТ&lt;br /&gt;
*  '''%%EDTIMEBYCMN()''' - Время произвольного ЭД-сообщения по ДТ, по типу этого сообщения. Например %%EDTIMEBYCMN(CMN.11001) - время регистрации ДТ&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%A1%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0_SQL-%D1%82%D0%B0%D0%B1%D0%BB%D0%B8%D1%86_%D0%93%D0%A2%D0%94&amp;diff=1020</id>
		<title>Структура SQL-таблиц ГТД</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%A1%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0_SQL-%D1%82%D0%B0%D0%B1%D0%BB%D0%B8%D1%86_%D0%93%D0%A2%D0%94&amp;diff=1020"/>
		<updated>2019-03-11T13:11:41Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Таблица EdMsgs (заголовки всех сообщений ЭД-2) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Основные таблицы БД программы Альта-ГТД=&lt;br /&gt;
&lt;br /&gt;
Неиспользуемые поля выделены &amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;серым&amp;lt;/span&amp;gt;, самые важные '''жирным'''.&lt;br /&gt;
&lt;br /&gt;
==Таблица '''Docs''' (основное хранилище документов программы)==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;standard&amp;quot;&lt;br /&gt;
 !Поле&lt;br /&gt;
 !Тип&lt;br /&gt;
 !Описание&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;ID&amp;lt;/span&amp;gt;&lt;br /&gt;
 |[int] IDENTITY(1,1)&lt;br /&gt;
 | Автоинкрементный ключ ''(устаревший, см. GID)''&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;PathId&amp;lt;/span&amp;gt;&lt;br /&gt;
 |[int]&lt;br /&gt;
 | Ссылка на путь, т.е. поле ID с именем папки ''(устаревший, см. PathGID)''&lt;br /&gt;
 |-&lt;br /&gt;
 |'''DocKey'''&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 | Номер документа или имя папки, для показа в списке&lt;br /&gt;
 |-&lt;br /&gt;
 |Dir&lt;br /&gt;
 |[int]&lt;br /&gt;
 | Признак типа записи, 0-документ, 10-папка. Возможно появление других служебных записей с Dir&amp;gt;0.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''DocTyp'''&lt;br /&gt;
 |[varchar](50) &lt;br /&gt;
 | Тип документа, например 'GTD' для ГТД&lt;br /&gt;
 |-&lt;br /&gt;
 |DocDate&lt;br /&gt;
 |[datetime]&lt;br /&gt;
 | Дата из номера документа, там где оно применимо (прописано в структуре документа *.dcf)&lt;br /&gt;
 |-&lt;br /&gt;
 |'''ModDate'''&lt;br /&gt;
 |[datetime]&lt;br /&gt;
 | Дата последней модификации документа&lt;br /&gt;
 |-&lt;br /&gt;
 |RegDate&lt;br /&gt;
 |[datetime]&lt;br /&gt;
 | Дата выпуска для ГТД, проставляется вручную по кнопке &amp;quot;синяя печать&amp;quot;, или при выпуске по ЭД-2&lt;br /&gt;
 |-&lt;br /&gt;
 |CrDate&lt;br /&gt;
 |[datetime]  &lt;br /&gt;
 | Дата создания (первого сохранения) документа&lt;br /&gt;
 |-&lt;br /&gt;
 |GoodsNum&lt;br /&gt;
 |[int]&lt;br /&gt;
 | Кол-во товаров в документе, там где оно применимо (прописано в структуре документа *.dcf)&lt;br /&gt;
 |-&lt;br /&gt;
 |UserName&lt;br /&gt;
 |[varchar](20)&lt;br /&gt;
 | Имя пользователя, последним сохранявшего документ. Присваивается только если в Альте настроены внутренние имена пользователей, к имени компьютера и пользователя в смысле Windows отношения не имеет.&lt;br /&gt;
 |-&lt;br /&gt;
 |EDSender&lt;br /&gt;
 |[varchar](20)&lt;br /&gt;
 | Пользователь, отославший документ по ЭД-2. Или логин в смысле Альты, или, если нет, то имя компьютера.&lt;br /&gt;
 |-&lt;br /&gt;
 |Binded&lt;br /&gt;
 |[varchar](100)&lt;br /&gt;
 | Взаимосвязанные документы, русские имена через запятую, для показа в списке. На 100% верить нельзя, т.к. не все помещаются и не всегда обновляются. Связь считается по одинаковому номеру в пределах одной папки (ГТД+ДТС+КТС+КУТС+Опись) или по происхождению (Инвойс=&amp;gt;ГТД=&amp;gt;ЭД-Инвойс).&lt;br /&gt;
 |-&lt;br /&gt;
 |Status&lt;br /&gt;
 |[varchar](10)&lt;br /&gt;
 | Статус. В большой степени заготовка, сейчас используется только '0000000001' для обозначения регистрации синей печатью. Не путать с EdStatus!&lt;br /&gt;
 |-&lt;br /&gt;
 |'''Blob'''&lt;br /&gt;
 |[image]&lt;br /&gt;
 | Главное поле! Собственно сохраненный документ. К сожалению в виде малочитабельного бинарника, хотя слова в кодировке WIN-1251 разобрать можно (на этом строится индексация для Full Text Search).&lt;br /&gt;
 |-&lt;br /&gt;
 |DocSize&lt;br /&gt;
 |[int]  &lt;br /&gt;
 | Размер поля Blob (он же размера выгруженного файла документа во внутреннем формате Альта)&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;SDSId&amp;lt;/span&amp;gt;&lt;br /&gt;
 |[int]  &lt;br /&gt;
 | Код пограничного поста при &amp;quot;удаленном декларировании по ЭД-2&amp;quot;. Отменено Спецификацией ЭД от 01.10.15. ''Изначально здесь была ссылка на номер СДС в смысле ЭД-1, но это тем более устарело.''&lt;br /&gt;
 |-&lt;br /&gt;
 |Locked&lt;br /&gt;
 |[int]&lt;br /&gt;
 | Значение Locked&amp;gt;0 признак того, что документ уже открыт другим пользователем (занят). В списке отображается желтым.&lt;br /&gt;
 |-&lt;br /&gt;
 |LockTime&lt;br /&gt;
 |[datetime]&lt;br /&gt;
 | Время, когда документ был открыт другим пользователем. Для показа в списке. Если время залочки больше суток, то считаем что это зависший компьютер и в списке желтым не отображаем.&lt;br /&gt;
 |-&lt;br /&gt;
 |LockUser&lt;br /&gt;
 |[varchar](15)&lt;br /&gt;
 | Имя пользователя, который занял документ&lt;br /&gt;
 |-&lt;br /&gt;
 |Comment&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 | Короткий комментарий, показывается и редактируется вручную в режиме &amp;quot;широкого списка&amp;quot;&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;ParentId&amp;lt;/span&amp;gt;&lt;br /&gt;
 |[int]&lt;br /&gt;
 | Ссылка на родительский документ ''(Устаревший, см. ParentGID)'''&lt;br /&gt;
 |-&lt;br /&gt;
 |'''ProcessId'''&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 | Номер процедуры ЭД-2, присваивается таможней в момент &amp;quot;открытия процедуры&amp;quot;. Один из способов связки с таблицей EdMsgs.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''EDStat'''&lt;br /&gt;
 |[int]&lt;br /&gt;
 | Статус процедуры ЭД-2. Отвечает за подсветку, &amp;quot;молнию&amp;quot; и подписи в списке документов. Подробнее см. [[Статусы документа при ЭД-2, поле Docs.EdStatus|Статусы документов ЭД-2]].&lt;br /&gt;
 |-&lt;br /&gt;
 |'''RegNum'''&lt;br /&gt;
 |[varchar](25)&lt;br /&gt;
 | Регистрационный номер ГТД, полученный из таможни по ЭД-2. Виден в режиме &amp;quot;широкого списка&amp;quot;. Может использоваться в отчетах.&lt;br /&gt;
 |-&lt;br /&gt;
 |DocumentID&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 | Уникальный номер документа, существует только для документов ЭД-2 (но не для ГТД!). При отправке в таможню не должен повторяться, поэтому при каждом сохранении создается заново. Не путать с главным ключом GID!&lt;br /&gt;
 |-&lt;br /&gt;
 |ArchId&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 | Номер ЭД-2 архива таможни, в который последний раз отправляли документ.&lt;br /&gt;
 |-&lt;br /&gt;
 |ArchDocID&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 | Номер документа в ЭД-2 архиве, присваивается таможней в ответном сообщении.&lt;br /&gt;
 |-&lt;br /&gt;
 |ArchDocumentID&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 | Номер DocumentID экземпляра документа переданного в ЭД-2 архив таможни.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''GID'''&lt;br /&gt;
 |[uniqueidentifier] ROWGUIDCOL&lt;br /&gt;
 | Первичный ключ, уникальный ID документа. Служит для связки с таблицами EdMsgs и *List.&lt;br /&gt;
 |-&lt;br /&gt;
 |ParentGID&lt;br /&gt;
 |[uniqueidentifier] &lt;br /&gt;
 | Ссылка на GID родительского документа. Проставляется при создании взаимосвязанного (ГТД из Инвойса, ДТС из ГТД и т.д.). Используется для показа и совместной выгрузки во внутреннем формате.&lt;br /&gt;
 |-&lt;br /&gt;
 |PathGID&lt;br /&gt;
 |[uniqueidentifier]&lt;br /&gt;
 | Указатель на папку, в которой лежит документ. Используется для структуризации списка. Папка - это такая же запись таблицы Docs, только с пустым Blob и Dir&amp;gt;0. По умолчанию ссылается на корневую папку с GUID(0)&lt;br /&gt;
 |-&lt;br /&gt;
 |TXT&lt;br /&gt;
 |[char](3)&lt;br /&gt;
 | Способ индексации, необходим для полнотекстового индекса. По умолчанию всегда &amp;quot;txt&amp;quot;.&lt;br /&gt;
 |-&lt;br /&gt;
 |Thumb&lt;br /&gt;
 |[varchar](40)&lt;br /&gt;
 | Идентификатор сертификата ЭЦП, с которой документ был отправлен по ЭД-2. Для предотвращения отправки с подписью разных фирм в рамках одной процедуры декларирования. &lt;br /&gt;
 |-&lt;br /&gt;
 |Firm &lt;br /&gt;
 |[varchar](100)&lt;br /&gt;
 | Фирма в смысле ЭД-2, для связки с таблицей EdFirms &amp;quot;ЭД-2 для нескольких фирм в одной базе&amp;quot;&lt;br /&gt;
 |-&lt;br /&gt;
 |FirstDT&lt;br /&gt;
 |[varchar](25)&lt;br /&gt;
 | Ссылка на первичную ДТ (регистрационный номер) у ЭД-документа для признака подачи /2.&lt;br /&gt;
 |-&lt;br /&gt;
 |ScanID&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 | ID сканированной копии документа.&lt;br /&gt;
 |-&lt;br /&gt;
 |Hash&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 | Hash для XML-блобов.&lt;br /&gt;
 |-&lt;br /&gt;
 |Comment2&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 | Дополнительный короткий комментарий, показывается в списке документов по настройке&lt;br /&gt;
[System]&amp;lt;br/&amp;gt;&lt;br /&gt;
ListComment2=1&lt;br /&gt;
 |-&lt;br /&gt;
 |Timestamp&lt;br /&gt;
 |[timestamp]&lt;br /&gt;
 | Служебное поле, хранит информацию о времени последнего обновления строки таблицы. Для динамического обновления списка документов. &lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
==Таблица '''EdMsgs''' (заголовки всех сообщений ЭД-2) ==&lt;br /&gt;
&lt;br /&gt;
Большая часть полей соответствует одноименным тэгам XML-сообщения ЭД-2&lt;br /&gt;
{| class=&amp;quot;standard&amp;quot;&lt;br /&gt;
 !Поле&lt;br /&gt;
 !Тип&lt;br /&gt;
 !Описание&lt;br /&gt;
 |-&lt;br /&gt;
 |'''EnvelopeID'''&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 |Идентификатор сообщения, уникальный ключ.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''InitialEnvelopeID'''&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 |Ссылка на идентификатор предыдущего сообщения. Для ответов, например при получении ошибки позволяет проследить к чему она относится.&lt;br /&gt;
 |-&lt;br /&gt;
 |SenderInformation&lt;br /&gt;
 |[varchar](100)&lt;br /&gt;
 |Имя отправителя сообщения. Обычно имеет вид &amp;quot;smtp://eps.customs.ru/''company_name''&amp;quot;. Выдается таможней, прописано в настройке ЭД-2.&lt;br /&gt;
 |-&lt;br /&gt;
 |ReceiverInformation&lt;br /&gt;
 |[varchar](100)&lt;br /&gt;
 |Имя получателя сообщения. Обычно фиксированное &amp;quot;smtp://eps.customs.ru/gateway&amp;quot;. Прописано в настройке ЭД-2. Для входящих сообщений от таможни SenderInformation и ReceiverInformation меняются местами.&lt;br /&gt;
 |-&lt;br /&gt;
 |PreparationDateTime&lt;br /&gt;
 |[datetime]&lt;br /&gt;
 |Время создания сообщения. По часам отправляющего компьютера, поэтому для разных поясов или летнего-зимнего времени может сильно не совпадать у входящих и исходящих сообщений.&lt;br /&gt;
 |-&lt;br /&gt;
 |InOutDateTime&lt;br /&gt;
 |[datetime]&lt;br /&gt;
 |Время приема сообщения в базу. По времени SQL-сервера. Используется для сортировки сообщений по умолчанию.&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;Priority&amp;lt;/span&amp;gt;&lt;br /&gt;
 |[int]&lt;br /&gt;
 |Фактически не используется, значение по умолчанию 4&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;Expiration&amp;lt;/span&amp;gt;&lt;br /&gt;
 |[int]&lt;br /&gt;
 |Фактически не используется, значение по умолчанию null&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;ConfirmationRequest&amp;lt;/span&amp;gt;&lt;br /&gt;
 |[varchar](10)&lt;br /&gt;
 |Фактически не используется, значение по умолчанию null&lt;br /&gt;
 |-&lt;br /&gt;
 |'''MessageType'''&lt;br /&gt;
 |[varchar](10)&lt;br /&gt;
 |Тип сообщения. Имеет вид &amp;quot;CMN.01234&amp;quot;. Основное поле для понимания смысла сообщения. Все типы прописаны в &amp;quot;Спецификации ЭД&amp;quot;.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''ProccessID'''&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 |Идентификатор процедуры. Объединяет сообщения относящиеся к одной ГТД (кроме самого первого, &amp;quot;запрос на открытие процедуры&amp;quot;)&lt;br /&gt;
 |-&lt;br /&gt;
 |CustomsCode&lt;br /&gt;
 |[varchar](8)&lt;br /&gt;
 |Код таможенного поста, всегда 8 знаков. Служит дополнением к адресу получателя, который один на всю таможню.&lt;br /&gt;
 |-&lt;br /&gt;
 |ParticipantID&lt;br /&gt;
 |[varchar](15)&lt;br /&gt;
 |Идентификатор участника ВЭД. Служит дополнением к адресу отправителя. Выдается таможней, прописан в настройке ЭД-2.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''Status'''&lt;br /&gt;
 |[int]&lt;br /&gt;
 |Статус сообщения ЭД. Позволяет определить что оно доставлено, не обработано или обработано с ошибкой. Подробнее см. [[Статусы сообщений ЭД-2, поле EdMsgs.Status|Статусы сообщений ЭД-2]]&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;Msg&amp;lt;/span&amp;gt;&lt;br /&gt;
 |[image]&lt;br /&gt;
 |Устаревшее поле. Раньше здесь хранилось тело сообщения в формате XML. Сейчас такого поля нет, а тело сообщения вынесено в связанную таблицу EDMsgsXML, которая в общем случае может находиться в другой БД - см. поле MsgDB.&lt;br /&gt;
 |-&lt;br /&gt;
 |DocumentID&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 |Идентификатор документа внутри сообщения, уникальный.&lt;br /&gt;
 |-&lt;br /&gt;
 |RefDocumentID&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 |Ссылка на идентификатор документа в предыдущем сообщении. В некотором роде дублирует пару EnvelopeID/InitialEnvelopeID. По идее должны присутствовать обе связки, но в сообщениях от таможни одной из них может не быть. Приходится смотреть на обе связки по &amp;quot;или&amp;quot;.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''Incoming'''&lt;br /&gt;
 |[bit]&lt;br /&gt;
 |Признак входящего сообщения. 0-сообщения декларанта, 1-сообщение таможенника.&lt;br /&gt;
 |-&lt;br /&gt;
 |DocumentName&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 |Тип документа. Соответствует первому информативному тэгу XML (который обернут снаружи конвертом SOAP с тэгом &amp;lt;Envelope&amp;gt; и подписью Крипто-ПРО с тэгом &amp;lt;Object&amp;gt;). Зависит от MessageType, причем один тип документа (например &amp;lt;Result&amp;gt;) может встречаться во многих разных &amp;quot;CMN.XXXXX&amp;quot;. Используется, в частности, для проверки соответствия содержимого XML одноименной XSD-схеме.&lt;br /&gt;
 |-&lt;br /&gt;
 |Result&lt;br /&gt;
 |[varchar](250)&lt;br /&gt;
 |Текст для показа в списке сообщений. Для разных типов содержит выборку из разных полей XML. Например русское название и номер ЭД-документа для сообщения &amp;quot;передан в ответ на запрос&amp;quot;. Или текст ошибки для таможенного сообщения об ошибке.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''DocGuid'''&lt;br /&gt;
 |[uniqueidentifier]&lt;br /&gt;
 |Служит для связки с таблицей Docs по главному ключу GID. В большинстве случаев дублирует связь по ProccessID. Но особенно важен для &amp;quot;запроса на открытие процедуры&amp;quot; (когда идентификатор процедуры еще не присвоен), и для отправки ПИ и ЭД-2 в архив (когда процедуры вообщен нет).&lt;br /&gt;
 |-&lt;br /&gt;
 |SoftVersion&lt;br /&gt;
 |[varchar](20)&lt;br /&gt;
 |Версия использованного формата XML. Регулярно меняется таможней. Первая цифра - версия &amp;quot;Альбома форматов&amp;quot;, вторая &amp;quot;Спецификации ЭД&amp;quot;. На момент ноября 2011 года используется &amp;quot;5.0.3/3.0.1&amp;quot;.&lt;br /&gt;
 |-&lt;br /&gt;
 |Sender &lt;br /&gt;
 |[varchar](15)&lt;br /&gt;
 |Имя пользователя, либо имя компьютера, который отправил либо принял сообщение. Используется в основном техподдержкой для диагностики проблем со связью. Аналогично полю EDSender таблицы Docs.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''MsgDB'''&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 |Если XML-тело сообщения вынесено в другую БД, то в данном поле хранится имя БД, в чьей таблице EDMsgsXML оно находится. По умолчанию данное поле пусто (NULL), что означает что используется таблица EDMsgsXML самой базы ГТД.&lt;br /&gt;
 |-&lt;br /&gt;
 |NameDS&lt;br /&gt;
 |[varchar](100)&lt;br /&gt;
 |Имя подписавшего сообщение (берется из ЭЦП).&lt;br /&gt;
 |-&lt;br /&gt;
 |ProgVers&lt;br /&gt;
 |[varchar](20)&lt;br /&gt;
 |Версия программы, сформировавшей запись сообщения.&lt;br /&gt;
 |-&lt;br /&gt;
 |FPD&lt;br /&gt;
 |[varbinary]&lt;br /&gt;
 |Former Protect Data - данные о рабочем месте Альта-ГТД, на котором сформировано сообщение. Служебное поле в двоичном формате.&lt;br /&gt;
 |-&lt;br /&gt;
 |MainProccessID&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 |Ссылка на основную процедуру с ДТ, при ответвлении сообщения о досмотре со своим ProccessID.&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
==Таблица '''EdMsgsXML''' (тело сообщений ЭД-2) ==&lt;br /&gt;
&lt;br /&gt;
Данная таблица всегда есть в самой базе ГТД и связана с ''EdMsgs'' по полю ''EnvelopeID'' (связь &amp;quot;один к одному&amp;quot;). Однако, часть ЭД-сообщений (или все) могут быть вынесены в дополнительные БД на этом же SQL-сервере - см. описание поля ''EdMsgs.MsgDB'' выше и меню &amp;quot;Настройка / Сервер и сетевые настройки / Доп. базы для ЭД&amp;quot; в программе Альта-ГТД.&lt;br /&gt;
По умолчанию XML-тело сообщений сжимается (архивируется) для экономии места в БД, поэтому если предполагается напрямую читать XML-содержимое сообщений, то рекомендуется отключить функцию сжатия в вышеупомянутом меню Альта-ГТД, там же есть кнопка &amp;quot;Разжать&amp;quot; для уже записанных в БД сообщений (если вовремя не отключили сжатие).&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;standard&amp;quot;&lt;br /&gt;
 !Поле&lt;br /&gt;
 !Тип&lt;br /&gt;
 !Описание&lt;br /&gt;
 |-&lt;br /&gt;
 |'''EnvelopeID'''&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 |Идентификатор сообщения, уникальный ключ. Связка с EdMsgs.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''Msg'''&lt;br /&gt;
 |[image]&lt;br /&gt;
 |Тело сообщения в формате XML подписанное ЭЦП и возможно сжатое - см. след. поле.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''Zip'''&lt;br /&gt;
 |[int]&lt;br /&gt;
 |Признак сжатия поля Msg: 0 - нет сжатия (можно прочитать XML из поля Msg средствами SQL Server), 1 - сжатие по алгортму [http://www.zlib.net zlib] версии 1.2.3.&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
[[Категория:Автоматизация]]&lt;br /&gt;
[[Категория:ЭД-2]]&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%A1%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0_SQL-%D1%82%D0%B0%D0%B1%D0%BB%D0%B8%D1%86_%D0%93%D0%A2%D0%94&amp;diff=1019</id>
		<title>Структура SQL-таблиц ГТД</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%A1%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D0%B0_SQL-%D1%82%D0%B0%D0%B1%D0%BB%D0%B8%D1%86_%D0%93%D0%A2%D0%94&amp;diff=1019"/>
		<updated>2019-03-11T12:35:11Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Таблица Docs (основное хранилище документов программы) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Основные таблицы БД программы Альта-ГТД=&lt;br /&gt;
&lt;br /&gt;
Неиспользуемые поля выделены &amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;серым&amp;lt;/span&amp;gt;, самые важные '''жирным'''.&lt;br /&gt;
&lt;br /&gt;
==Таблица '''Docs''' (основное хранилище документов программы)==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;standard&amp;quot;&lt;br /&gt;
 !Поле&lt;br /&gt;
 !Тип&lt;br /&gt;
 !Описание&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;ID&amp;lt;/span&amp;gt;&lt;br /&gt;
 |[int] IDENTITY(1,1)&lt;br /&gt;
 | Автоинкрементный ключ ''(устаревший, см. GID)''&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;PathId&amp;lt;/span&amp;gt;&lt;br /&gt;
 |[int]&lt;br /&gt;
 | Ссылка на путь, т.е. поле ID с именем папки ''(устаревший, см. PathGID)''&lt;br /&gt;
 |-&lt;br /&gt;
 |'''DocKey'''&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 | Номер документа или имя папки, для показа в списке&lt;br /&gt;
 |-&lt;br /&gt;
 |Dir&lt;br /&gt;
 |[int]&lt;br /&gt;
 | Признак типа записи, 0-документ, 10-папка. Возможно появление других служебных записей с Dir&amp;gt;0.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''DocTyp'''&lt;br /&gt;
 |[varchar](50) &lt;br /&gt;
 | Тип документа, например 'GTD' для ГТД&lt;br /&gt;
 |-&lt;br /&gt;
 |DocDate&lt;br /&gt;
 |[datetime]&lt;br /&gt;
 | Дата из номера документа, там где оно применимо (прописано в структуре документа *.dcf)&lt;br /&gt;
 |-&lt;br /&gt;
 |'''ModDate'''&lt;br /&gt;
 |[datetime]&lt;br /&gt;
 | Дата последней модификации документа&lt;br /&gt;
 |-&lt;br /&gt;
 |RegDate&lt;br /&gt;
 |[datetime]&lt;br /&gt;
 | Дата выпуска для ГТД, проставляется вручную по кнопке &amp;quot;синяя печать&amp;quot;, или при выпуске по ЭД-2&lt;br /&gt;
 |-&lt;br /&gt;
 |CrDate&lt;br /&gt;
 |[datetime]  &lt;br /&gt;
 | Дата создания (первого сохранения) документа&lt;br /&gt;
 |-&lt;br /&gt;
 |GoodsNum&lt;br /&gt;
 |[int]&lt;br /&gt;
 | Кол-во товаров в документе, там где оно применимо (прописано в структуре документа *.dcf)&lt;br /&gt;
 |-&lt;br /&gt;
 |UserName&lt;br /&gt;
 |[varchar](20)&lt;br /&gt;
 | Имя пользователя, последним сохранявшего документ. Присваивается только если в Альте настроены внутренние имена пользователей, к имени компьютера и пользователя в смысле Windows отношения не имеет.&lt;br /&gt;
 |-&lt;br /&gt;
 |EDSender&lt;br /&gt;
 |[varchar](20)&lt;br /&gt;
 | Пользователь, отославший документ по ЭД-2. Или логин в смысле Альты, или, если нет, то имя компьютера.&lt;br /&gt;
 |-&lt;br /&gt;
 |Binded&lt;br /&gt;
 |[varchar](100)&lt;br /&gt;
 | Взаимосвязанные документы, русские имена через запятую, для показа в списке. На 100% верить нельзя, т.к. не все помещаются и не всегда обновляются. Связь считается по одинаковому номеру в пределах одной папки (ГТД+ДТС+КТС+КУТС+Опись) или по происхождению (Инвойс=&amp;gt;ГТД=&amp;gt;ЭД-Инвойс).&lt;br /&gt;
 |-&lt;br /&gt;
 |Status&lt;br /&gt;
 |[varchar](10)&lt;br /&gt;
 | Статус. В большой степени заготовка, сейчас используется только '0000000001' для обозначения регистрации синей печатью. Не путать с EdStatus!&lt;br /&gt;
 |-&lt;br /&gt;
 |'''Blob'''&lt;br /&gt;
 |[image]&lt;br /&gt;
 | Главное поле! Собственно сохраненный документ. К сожалению в виде малочитабельного бинарника, хотя слова в кодировке WIN-1251 разобрать можно (на этом строится индексация для Full Text Search).&lt;br /&gt;
 |-&lt;br /&gt;
 |DocSize&lt;br /&gt;
 |[int]  &lt;br /&gt;
 | Размер поля Blob (он же размера выгруженного файла документа во внутреннем формате Альта)&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;SDSId&amp;lt;/span&amp;gt;&lt;br /&gt;
 |[int]  &lt;br /&gt;
 | Код пограничного поста при &amp;quot;удаленном декларировании по ЭД-2&amp;quot;. Отменено Спецификацией ЭД от 01.10.15. ''Изначально здесь была ссылка на номер СДС в смысле ЭД-1, но это тем более устарело.''&lt;br /&gt;
 |-&lt;br /&gt;
 |Locked&lt;br /&gt;
 |[int]&lt;br /&gt;
 | Значение Locked&amp;gt;0 признак того, что документ уже открыт другим пользователем (занят). В списке отображается желтым.&lt;br /&gt;
 |-&lt;br /&gt;
 |LockTime&lt;br /&gt;
 |[datetime]&lt;br /&gt;
 | Время, когда документ был открыт другим пользователем. Для показа в списке. Если время залочки больше суток, то считаем что это зависший компьютер и в списке желтым не отображаем.&lt;br /&gt;
 |-&lt;br /&gt;
 |LockUser&lt;br /&gt;
 |[varchar](15)&lt;br /&gt;
 | Имя пользователя, который занял документ&lt;br /&gt;
 |-&lt;br /&gt;
 |Comment&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 | Короткий комментарий, показывается и редактируется вручную в режиме &amp;quot;широкого списка&amp;quot;&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;ParentId&amp;lt;/span&amp;gt;&lt;br /&gt;
 |[int]&lt;br /&gt;
 | Ссылка на родительский документ ''(Устаревший, см. ParentGID)'''&lt;br /&gt;
 |-&lt;br /&gt;
 |'''ProcessId'''&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 | Номер процедуры ЭД-2, присваивается таможней в момент &amp;quot;открытия процедуры&amp;quot;. Один из способов связки с таблицей EdMsgs.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''EDStat'''&lt;br /&gt;
 |[int]&lt;br /&gt;
 | Статус процедуры ЭД-2. Отвечает за подсветку, &amp;quot;молнию&amp;quot; и подписи в списке документов. Подробнее см. [[Статусы документа при ЭД-2, поле Docs.EdStatus|Статусы документов ЭД-2]].&lt;br /&gt;
 |-&lt;br /&gt;
 |'''RegNum'''&lt;br /&gt;
 |[varchar](25)&lt;br /&gt;
 | Регистрационный номер ГТД, полученный из таможни по ЭД-2. Виден в режиме &amp;quot;широкого списка&amp;quot;. Может использоваться в отчетах.&lt;br /&gt;
 |-&lt;br /&gt;
 |DocumentID&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 | Уникальный номер документа, существует только для документов ЭД-2 (но не для ГТД!). При отправке в таможню не должен повторяться, поэтому при каждом сохранении создается заново. Не путать с главным ключом GID!&lt;br /&gt;
 |-&lt;br /&gt;
 |ArchId&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 | Номер ЭД-2 архива таможни, в который последний раз отправляли документ.&lt;br /&gt;
 |-&lt;br /&gt;
 |ArchDocID&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 | Номер документа в ЭД-2 архиве, присваивается таможней в ответном сообщении.&lt;br /&gt;
 |-&lt;br /&gt;
 |ArchDocumentID&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 | Номер DocumentID экземпляра документа переданного в ЭД-2 архив таможни.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''GID'''&lt;br /&gt;
 |[uniqueidentifier] ROWGUIDCOL&lt;br /&gt;
 | Первичный ключ, уникальный ID документа. Служит для связки с таблицами EdMsgs и *List.&lt;br /&gt;
 |-&lt;br /&gt;
 |ParentGID&lt;br /&gt;
 |[uniqueidentifier] &lt;br /&gt;
 | Ссылка на GID родительского документа. Проставляется при создании взаимосвязанного (ГТД из Инвойса, ДТС из ГТД и т.д.). Используется для показа и совместной выгрузки во внутреннем формате.&lt;br /&gt;
 |-&lt;br /&gt;
 |PathGID&lt;br /&gt;
 |[uniqueidentifier]&lt;br /&gt;
 | Указатель на папку, в которой лежит документ. Используется для структуризации списка. Папка - это такая же запись таблицы Docs, только с пустым Blob и Dir&amp;gt;0. По умолчанию ссылается на корневую папку с GUID(0)&lt;br /&gt;
 |-&lt;br /&gt;
 |TXT&lt;br /&gt;
 |[char](3)&lt;br /&gt;
 | Способ индексации, необходим для полнотекстового индекса. По умолчанию всегда &amp;quot;txt&amp;quot;.&lt;br /&gt;
 |-&lt;br /&gt;
 |Thumb&lt;br /&gt;
 |[varchar](40)&lt;br /&gt;
 | Идентификатор сертификата ЭЦП, с которой документ был отправлен по ЭД-2. Для предотвращения отправки с подписью разных фирм в рамках одной процедуры декларирования. &lt;br /&gt;
 |-&lt;br /&gt;
 |Firm &lt;br /&gt;
 |[varchar](100)&lt;br /&gt;
 | Фирма в смысле ЭД-2, для связки с таблицей EdFirms &amp;quot;ЭД-2 для нескольких фирм в одной базе&amp;quot;&lt;br /&gt;
 |-&lt;br /&gt;
 |FirstDT&lt;br /&gt;
 |[varchar](25)&lt;br /&gt;
 | Ссылка на первичную ДТ (регистрационный номер) у ЭД-документа для признака подачи /2.&lt;br /&gt;
 |-&lt;br /&gt;
 |ScanID&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 | ID сканированной копии документа.&lt;br /&gt;
 |-&lt;br /&gt;
 |Hash&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 | Hash для XML-блобов.&lt;br /&gt;
 |-&lt;br /&gt;
 |Comment2&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 | Дополнительный короткий комментарий, показывается в списке документов по настройке&lt;br /&gt;
[System]&amp;lt;br/&amp;gt;&lt;br /&gt;
ListComment2=1&lt;br /&gt;
 |-&lt;br /&gt;
 |Timestamp&lt;br /&gt;
 |[timestamp]&lt;br /&gt;
 | Служебное поле, хранит информацию о времени последнего обновления строки таблицы. Для динамического обновления списка документов. &lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
==Таблица '''EdMsgs''' (заголовки всех сообщений ЭД-2) ==&lt;br /&gt;
&lt;br /&gt;
Большая часть полей соответствует одноименным тэгам XML-сообщения ЭД-2&lt;br /&gt;
{| class=&amp;quot;standard&amp;quot;&lt;br /&gt;
 !Поле&lt;br /&gt;
 !Тип&lt;br /&gt;
 !Описание&lt;br /&gt;
 |-&lt;br /&gt;
 |'''EnvelopeID'''&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 |Идентификатор сообщения, уникальный ключ.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''InitialEnvelopeID'''&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 |Ссылка на идентификатор предыдущего сообщения. Для ответов, например при получении ошибки позволяет проследить к чему она относится.&lt;br /&gt;
 |-&lt;br /&gt;
 |SenderInformation&lt;br /&gt;
 |[varchar](100)&lt;br /&gt;
 |Имя отправителя сообщения. Обычно имеет вид &amp;quot;smtp://eps.customs.ru/''company_name''&amp;quot;. Выдается таможней, прописано в настройке ЭД-2.&lt;br /&gt;
 |-&lt;br /&gt;
 |ReceiverInformation&lt;br /&gt;
 |[varchar](100)&lt;br /&gt;
 |Имя получателя сообщения. Обычно фиксированное &amp;quot;smtp://eps.customs.ru/gateway&amp;quot;. Прописано в настройке ЭД-2. Для входящих сообщений от таможни SenderInformation и ReceiverInformation меняются местами.&lt;br /&gt;
 |-&lt;br /&gt;
 |PreparationDateTime&lt;br /&gt;
 |[datetime]&lt;br /&gt;
 |Время создания сообщения. По часам отправляющего компьютера, поэтому для разных поясов или летнего-зимнего времени может сильно не совпадать у входящих и исходящих сообщений.&lt;br /&gt;
 |-&lt;br /&gt;
 |InOutDateTime&lt;br /&gt;
 |[datetime]&lt;br /&gt;
 |Время приема сообщения в базу. По времени SQL-сервера. Используется для сортировки сообщений по умолчанию.&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;Priority&amp;lt;/span&amp;gt;&lt;br /&gt;
 |[int]&lt;br /&gt;
 |Фактически не используется, значение по умолчанию 4&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;Expiration&amp;lt;/span&amp;gt;&lt;br /&gt;
 |[int]&lt;br /&gt;
 |Фактически не используется, значение по умолчанию null&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;ConfirmationRequest&amp;lt;/span&amp;gt;&lt;br /&gt;
 |[varchar](10)&lt;br /&gt;
 |Фактически не используется, значение по умолчанию null&lt;br /&gt;
 |-&lt;br /&gt;
 |'''MessageType'''&lt;br /&gt;
 |[varchar](10)&lt;br /&gt;
 |Тип сообщения. Имеет вид &amp;quot;CMN.01234&amp;quot;. Основное поле для понимания смысла сообщения. Все типы прописаны в &amp;quot;Спецификации ЭД&amp;quot;.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''ProccessID'''&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 |Идентификатор процедуры. Объединяет сообщения относящиеся к одной ГТД (кроме самого первого, &amp;quot;запрос на открытие процедуры&amp;quot;)&lt;br /&gt;
 |-&lt;br /&gt;
 |CustomsCode&lt;br /&gt;
 |[varchar](8)&lt;br /&gt;
 |Код таможенного поста, всегда 8 знаков. Служит дополнением к адресу получателя, который один на всю таможню.&lt;br /&gt;
 |-&lt;br /&gt;
 |ParticipantID&lt;br /&gt;
 |[varchar](15)&lt;br /&gt;
 |Идентификатор участника ВЭД. Служит дополнением к адресу отправителя. Выдается таможней, прописан в настройке ЭД-2.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''Status'''&lt;br /&gt;
 |[int]&lt;br /&gt;
 |Статус сообщения ЭД. Позволяет определить что оно доставлено, не обработано или обработано с ошибкой. Подробнее см. [[Статусы сообщений ЭД-2, поле EdMsgs.Status|Статусы сообщений ЭД-2]]&lt;br /&gt;
 |-&lt;br /&gt;
 |&amp;lt;span style=&amp;quot;color:#CCCCCC&amp;quot;&amp;gt;Msg&amp;lt;/span&amp;gt;&lt;br /&gt;
 |[image]&lt;br /&gt;
 |Устаревшее поле. Раньше здесь хранилось тело сообщения в формате XML. Сейчас такого поля нет, а тело сообщения вынесено в связанную таблицу EDMsgsXML, которая в общем случае может находиться в другой БД - см. поле MsgDB.&lt;br /&gt;
 |-&lt;br /&gt;
 |DocumentID&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 |Идентификатор документа внутри сообщения, уникальный.&lt;br /&gt;
 |-&lt;br /&gt;
 |RefDocumentID&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 |Ссылка на идентификатор документа в предыдущем сообщении. В некотором роде дублирует пару EnvelopeID/InitialEnvelopeID. По идее должны присутствовать обе связки, но в сообщениях от таможни одной из них может не быть. Приходится смотреть на обе связки по &amp;quot;или&amp;quot;.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''Incoming'''&lt;br /&gt;
 |[bit]&lt;br /&gt;
 |Признак входящего сообщения. 0-сообщения декларанта, 1-сообщение таможенника.&lt;br /&gt;
 |-&lt;br /&gt;
 |DocumentName&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 |Тип документа. Соответствует первому информативному тэгу XML (который обернут снаружи конвертом SOAP с тэгом &amp;lt;Envelope&amp;gt; и подписью Крипто-ПРО с тэгом &amp;lt;Object&amp;gt;). Зависит от MessageType, причем один тип документа (например &amp;lt;Result&amp;gt;) может встречаться во многих разных &amp;quot;CMN.XXXXX&amp;quot;. Используется, в частности, для проверки соответствия содержимого XML одноименной XSD-схеме.&lt;br /&gt;
 |-&lt;br /&gt;
 |Result&lt;br /&gt;
 |[varchar](250)&lt;br /&gt;
 |Текст для показа в списке сообщений. Для разных типов содержит выборку из разных полей XML. Например русское название и номер ЭД-документа для сообщения &amp;quot;передан в ответ на запрос&amp;quot;. Или текст ошибки для таможенного сообщения об ошибке.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''DocGuid'''&lt;br /&gt;
 |[uniqueidentifier]&lt;br /&gt;
 |Служит для связки с таблицей Docs по главному ключу GID. В большинстве случаев дублирует связь по ProccessID. Но особенно важен для &amp;quot;запроса на открытие процедуры&amp;quot; (когда идентификатор процедуры еще не присвоен), и для отправки ПИ и ЭД-2 в архив (когда процедуры вообщен нет).&lt;br /&gt;
 |-&lt;br /&gt;
 |SoftVersion&lt;br /&gt;
 |[varchar](20)&lt;br /&gt;
 |Версия использованного формата XML. Регулярно меняется таможней. Первая цифра - версия &amp;quot;Альбома форматов&amp;quot;, вторая &amp;quot;Спецификации ЭД&amp;quot;. На момент ноября 2011 года используется &amp;quot;5.0.3/3.0.1&amp;quot;.&lt;br /&gt;
 |-&lt;br /&gt;
 |Sender &lt;br /&gt;
 |[varchar](15)&lt;br /&gt;
 |Имя пользователя, либо имя компьютера, который отправил либо принял сообщение. Используется в основном техподдержкой для диагностики проблем со связью. Аналогично полю EDSender таблицы Docs.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''MsgDB'''&lt;br /&gt;
 |[varchar](50)&lt;br /&gt;
 |Если XML-тело сообщения вынесено в другую БД, то в данном поле хранится имя БД, в чьей таблице EDMsgsXML оно находится. По умолчанию данное поле пусто (NULL), что означает что используется таблица EDMsgsXML самой базы ГТД.&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
==Таблица '''EdMsgsXML''' (тело сообщений ЭД-2) ==&lt;br /&gt;
&lt;br /&gt;
Данная таблица всегда есть в самой базе ГТД и связана с ''EdMsgs'' по полю ''EnvelopeID'' (связь &amp;quot;один к одному&amp;quot;). Однако, часть ЭД-сообщений (или все) могут быть вынесены в дополнительные БД на этом же SQL-сервере - см. описание поля ''EdMsgs.MsgDB'' выше и меню &amp;quot;Настройка / Сервер и сетевые настройки / Доп. базы для ЭД&amp;quot; в программе Альта-ГТД.&lt;br /&gt;
По умолчанию XML-тело сообщений сжимается (архивируется) для экономии места в БД, поэтому если предполагается напрямую читать XML-содержимое сообщений, то рекомендуется отключить функцию сжатия в вышеупомянутом меню Альта-ГТД, там же есть кнопка &amp;quot;Разжать&amp;quot; для уже записанных в БД сообщений (если вовремя не отключили сжатие).&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;standard&amp;quot;&lt;br /&gt;
 !Поле&lt;br /&gt;
 !Тип&lt;br /&gt;
 !Описание&lt;br /&gt;
 |-&lt;br /&gt;
 |'''EnvelopeID'''&lt;br /&gt;
 |[varchar](36)&lt;br /&gt;
 |Идентификатор сообщения, уникальный ключ. Связка с EdMsgs.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''Msg'''&lt;br /&gt;
 |[image]&lt;br /&gt;
 |Тело сообщения в формате XML подписанное ЭЦП и возможно сжатое - см. след. поле.&lt;br /&gt;
 |-&lt;br /&gt;
 |'''Zip'''&lt;br /&gt;
 |[int]&lt;br /&gt;
 |Признак сжатия поля Msg: 0 - нет сжатия (можно прочитать XML из поля Msg средствами SQL Server), 1 - сжатие по алгортму [http://www.zlib.net zlib] версии 1.2.3.&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
[[Категория:Автоматизация]]&lt;br /&gt;
[[Категория:ЭД-2]]&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1018</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=1018"/>
		<updated>2019-02-25T15:02:46Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Специальные идентификаторы */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для объединения ячеек в столбцах (ROWSPAN) ==== &lt;br /&gt;
&lt;br /&gt;
Если в столбце дописать ключевое слово %%JOIN, то такой ячейки с одинаковыми значениями в столбце будут объединены.&lt;br /&gt;
Например, если шаблон вида &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
формирует таблицу&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | 1111 || aaaaa&lt;br /&gt;
 |-&lt;br /&gt;
 | 1111 || ббббб&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ггггг&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
то шаблон &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 %%JOIN || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
cформирует &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | rowspan=&amp;quot;2&amp;quot;| 1111 || aaaaa&lt;br /&gt;
 |- &lt;br /&gt;
 | ббббб&lt;br /&gt;
 |-&lt;br /&gt;
 | rowspan=&amp;quot;3&amp;quot;| 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | ггггг&lt;br /&gt;
 |-&lt;br /&gt;
 | ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMETILLCOLON''' – извлекает из графы 31 наименование товара до двоеточия;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
&lt;br /&gt;
* '''%%EXECMACROS(''&amp;lt;ИМЯ_МАКРОСА&amp;gt;'')''' - выполнит макрос, прописанный в шаблоне, после окончания выгрузки. Может находиться в любом месте шаблона.&lt;br /&gt;
&lt;br /&gt;
* '''%%31.PALCOUNT''' - количество паллет.&lt;br /&gt;
&lt;br /&gt;
* '''%%31.PAKTYPE''' - тип упаковки.&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_06011_LASTDATE''' - только дата ДО,&lt;br /&gt;
  '''%%@44_!_06011_CODE''' - только код типа документа,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_!_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
  '''%%@44_!_04021_FORMULA(G444+G442+&amp;quot;ОТ&amp;quot;+G443)''' - выгрузится согласно формуле&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_1010_DocNum''' – выгрузится номер платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_0''' – выгрузится сумма всех платежей.&lt;br /&gt;
  '''%%@B_0_Doc''' – выгрузятся номер и дата платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_DocNum''' – выгрузятся номера платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_Text''' – выгрузится вся строка, кроме ИНН\КПП.&lt;br /&gt;
&lt;br /&gt;
==== Для получения информации из SQL таблиц по ДТ и процедуре ====&lt;br /&gt;
&lt;br /&gt;
*  '''%%EDSTAT''' - ЭД-статус ДТ в текстовом виде.&lt;br /&gt;
*  '''%%EDSENDDATE''' - Дата подачи ДТ.&lt;br /&gt;
*  '''%%EDSENDTIME''' - Время подачи ДТ.&lt;br /&gt;
*  '''%%EDREGISTERDATE''' - Дата регистрации ДТ.&lt;br /&gt;
*  '''%%EDREGISTERTIME''' - Время регистрации ДТ.&lt;br /&gt;
*  '''%%EDLASTDATE''' - Дата выпуска ДТ.&lt;br /&gt;
*  '''%%EDLASTTIME''' - Время выпуска ДТ.&lt;br /&gt;
*  '''%%PROCESSID''' - ID ЭД-процедуры.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=983</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=983"/>
		<updated>2018-08-07T12:37:39Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для объединения ячеек в столбцах (ROWSPAN) ==== &lt;br /&gt;
&lt;br /&gt;
Если в столбце дописать ключевое слово %%JOIN, то такой ячейки с одинаковыми значениями в столбце будут объединены.&lt;br /&gt;
Например, если шаблон вида &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
формирует таблицу&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | 1111 || aaaaa&lt;br /&gt;
 |-&lt;br /&gt;
 | 1111 || ббббб&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ггггг&lt;br /&gt;
 |- &lt;br /&gt;
 | 2222 || ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
то шаблон &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | %%FID1 %%JOIN || %%FID2&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
cформирует &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 | rowspan=&amp;quot;2&amp;quot;| 1111 || aaaaa&lt;br /&gt;
 |- &lt;br /&gt;
 | ббббб&lt;br /&gt;
 |-&lt;br /&gt;
 | rowspan=&amp;quot;3&amp;quot;| 2222 || ввввв &lt;br /&gt;
 |- &lt;br /&gt;
 | ггггг&lt;br /&gt;
 |-&lt;br /&gt;
 | ддддд&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
Применимо для печати в Excel и OpenOffice Calc.&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
* '''%%EDSTAT''' - статус ЭД в текстовом виде&lt;br /&gt;
&lt;br /&gt;
* '''%%EXECMACROS(''&amp;lt;ИМЯ_МАКРОСА&amp;gt;'')''' - выполнит макрос, прописанный в шаблоне, после окончания выгрузки. Может находиться в любом месте шаблона.&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_06011_LASTDATE''' - только дата ДО,&lt;br /&gt;
  '''%%@44_!_06011_CODE''' - только код типа документа,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_!_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
  '''%%@44_!_04021_FORMULA(G444+G442+&amp;quot;ОТ&amp;quot;+G443)''' - выгрузится согласно формуле&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_1010_DocNum''' – выгрузится номер платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_0''' – выгрузится сумма всех платежей.&lt;br /&gt;
  '''%%@B_0_Doc''' – выгрузятся номер и дата платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_DocNum''' – выгрузятся номера платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_Text''' – выгрузится вся строка, кроме ИНН\КПП.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=957</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=957"/>
		<updated>2017-12-01T09:07:56Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Для графы 47 и B документа ДТ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
* '''%%EDSTAT''' - статус ЭД в текстовом виде&lt;br /&gt;
&lt;br /&gt;
* '''%%EXECMACROS(''&amp;lt;ИМЯ_МАКРОСА&amp;gt;'')''' - выполнит макрос, прописанный в шаблоне, после окончания выгрузки. Может находиться в любом месте шаблона.&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_06011_LASTDATE''' - только дата ДО,&lt;br /&gt;
  '''%%@44_!_06011_CODE''' - только код типа документа,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_!_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_1010_DocNum''' – выгрузится номер платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_0''' – выгрузится сумма всех платежей.&lt;br /&gt;
  '''%%@B_0_Doc''' – выгрузятся номер и дата платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_DocNum''' – выгрузятся номера платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_Text''' – выгрузится вся строка, кроме ИНН\КПП.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=887</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=887"/>
		<updated>2017-08-02T10:39:48Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
* '''%%EDSTAT''' - статус ЭД в текстовом виде&lt;br /&gt;
&lt;br /&gt;
* '''%%EXECMACROS(''&amp;lt;ИМЯ_МАКРОСА&amp;gt;'')''' - выполнит макрос, прописанный в шаблоне, после окончания выгрузки. Может находиться в любом месте шаблона.&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_06011_LASTDATE''' - только дата ДО,&lt;br /&gt;
  '''%%@44_!_06011_CODE''' - только код типа документа,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_!_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_1010_DocNum''' – выгрузится номер платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_0''' – выгрузится сумма всех платежей.&lt;br /&gt;
  '''%%@B_0_Doc''' – выгрузятся номер и дата платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_DocNum''' – выгрузятся номера платежных документов по всем кодам.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=856</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=856"/>
		<updated>2017-02-09T06:51:50Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Для графы 47 и B документа ДТ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
* '''%%EDSTAT''' - статус ЭД в текстовом виде&lt;br /&gt;
&lt;br /&gt;
* '''%%EXECMACROS(''&amp;lt;ИМЯ_МАКРОСА&amp;gt;'')''' - выполнит макрос, прописанный в шаблоне, после окончания выгрузки. Может находиться в любом месте шаблона.&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_!_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_1010_DocNum''' – выгрузится номер платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_0''' – выгрузится сумма всех платежей.&lt;br /&gt;
  '''%%@B_0_Doc''' – выгрузятся номер и дата платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_DocNum''' – выгрузятся номера платежных документов по всем кодам.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=855</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=855"/>
		<updated>2017-02-09T06:51:22Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Для графы 47 и B документа ДТ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
* '''%%EDSTAT''' - статус ЭД в текстовом виде&lt;br /&gt;
&lt;br /&gt;
* '''%%EXECMACROS(''&amp;lt;ИМЯ_МАКРОСА&amp;gt;'')''' - выполнит макрос, прописанный в шаблоне, после окончания выгрузки. Может находиться в любом месте шаблона.&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_!_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_1010_DocNum''' – выгрузится номер платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_0_''' – выгрузится сумма всех платежей.&lt;br /&gt;
  '''%%@B_0_Doc''' – выгрузятся номер и дата платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_0_DocNum''' – выгрузятся номера платежных документов по всем кодам.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=854</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=854"/>
		<updated>2017-02-09T06:50:55Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Для графы 47 и B документа ДТ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
* '''%%EDSTAT''' - статус ЭД в текстовом виде&lt;br /&gt;
&lt;br /&gt;
* '''%%EXECMACROS(''&amp;lt;ИМЯ_МАКРОСА&amp;gt;'')''' - выполнит макрос, прописанный в шаблоне, после окончания выгрузки. Может находиться в любом месте шаблона.&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_!_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_0_''' – выгрузится сумма всех платежей.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_0_Doc''' – выгрузятся номер и дата платежных документов по всем кодам.&lt;br /&gt;
  '''%%@B_1010_DocNum''' – выгрузится номер платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_0_DocNum''' – выгрузятся номера платежных документов по всем кодам.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=851</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=851"/>
		<updated>2017-01-12T14:16:36Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Для графы 47 и B документа ДТ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
* '''%%EDSTAT''' - статус ЭД в текстовом виде&lt;br /&gt;
&lt;br /&gt;
* '''%%EXECMACROS(''&amp;lt;ИМЯ_МАКРОСА&amp;gt;'')''' - выполнит макрос, прописанный в шаблоне, после окончания выгрузки. Может находиться в любом месте шаблона.&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_!_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
  '''%%@B_1010_DocNum''' – выгрузится номер платежного документа по коду 1010.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=849</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=849"/>
		<updated>2016-11-08T11:35:22Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Функции */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
* '''%%EDSTAT''' - статус ЭД в текстовом виде&lt;br /&gt;
&lt;br /&gt;
* '''%%EXECMACROS(''&amp;lt;ИМЯ_МАКРОСА&amp;gt;'')''' - выполнит макрос, прописанный в шаблоне, после окончания выгрузки. Может находиться в любом месте шаблона.&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_!_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=848</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=848"/>
		<updated>2016-11-08T11:34:44Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Функции */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
* '''%%EDSTAT''' - статус ЭД в текстовом виде&lt;br /&gt;
&lt;br /&gt;
* '''%%EXECMACROS(&amp;lt;ИМЯ_МАКРОСА&amp;gt;)''' - выполнит макрос, прописанный в шаблоне, после окончания выгрузки.&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_!_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=832</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=832"/>
		<updated>2016-09-29T11:53:30Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Правила составления идентификаторов */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося '''вложенного''' блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ДТ)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
или &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (товары ДТ)''&lt;br /&gt;
     '''%%STARTSUB'''[TOVG]    ''Начало вложенного блока (Описание и характеристики товара (Графа 31 ДТ))''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_1''' ''Описание группы товаров''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_14''' ''Марка''&lt;br /&gt;
       '''%%BLOCK\TOVG\G31_15''' ''Артикул''&lt;br /&gt;
     '''%%ENDSUB'''[TOVG]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
* '''%%EDSTAT''' - статус ЭД в текстовом виде&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_!_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=829</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=829"/>
		<updated>2016-09-14T11:40:24Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Функции */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося вложенного блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося вложенного блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ГТД)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
* '''%%EDSTAT''' - статус ЭД в текстовом виде&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_!_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=828</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=828"/>
		<updated>2016-09-14T11:37:41Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося вложенного блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося вложенного блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ГТД)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
  '''%%@44_!_04021_COUNT''' - количество документов в товаре с данным кодом&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=827</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=827"/>
		<updated>2016-07-25T11:34:22Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Для графы 47 и B документа ДТ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося вложенного блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося вложенного блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ГТД)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010U_4''' - выгрузит сумму НДС, включая условно начисленные платежи,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=826</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=826"/>
		<updated>2016-07-25T11:31:50Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося вложенного блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося вложенного блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ГТД)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию ====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
  '''%%@44_!_04021_SIGN''' - только признак предоставления документа&lt;br /&gt;
  '''%%@44_!_04021_PRIOR''' - только номер предшествующей ДТ  &lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=794</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=794"/>
		<updated>2016-02-03T08:46:13Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Для графы 47 и B документа ДТ */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося вложенного блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося вложенного блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ГТД)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию =====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
  '''%%@B_1010_Doc''' – выгрузится номер и дата платежного документа по коду 1010.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=767</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=767"/>
		<updated>2015-06-05T12:06:44Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося вложенного блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося вложенного блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ГТД)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Специальные идентификаторы ===&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в каком-либо одном поле документа. Существуют следующие группы специальных идентификаторов:&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из справочников ==== &lt;br /&gt;
&lt;br /&gt;
Например, нам требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для извлечений из гр.31 ДТ ====&lt;br /&gt;
&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Функции ====&lt;br /&gt;
&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Обработка по условию =====&lt;br /&gt;
&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для извлечения из взаимосвязанных документов ====&lt;br /&gt;
&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить идентификатор связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Для гр.44 ДТ или гр. &amp;quot;Документы 1-15&amp;quot; Инвойса ====&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. &lt;br /&gt;
&lt;br /&gt;
Если указана только начальная часть пятизначного кода документа или у товара несколько документов с заданных кодом,&lt;br /&gt;
то все документы выводятся через запятую. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся все документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_04021''' - выгрузятся все инвойсы&lt;br /&gt;
  '''%%@44_!_01''' - выдаст все документы с кодами начинающиеся на 01&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
По умолчанию выводятся только номера и дата документов. Но при помощи дполнительного параметра&lt;br /&gt;
можно добавить даты действия, код документа и т.д.&lt;br /&gt;
&lt;br /&gt;
Примеры использования дополнительных параметров&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcode''' - выдаст все документы с кодами начинающиеся на 01, дописать перед номером &lt;br /&gt;
   документа его пятизначный код&lt;br /&gt;
  '''%%@44_!_04021_TEXT''' - полный текст документа со всеми ключевыми полями, как на лицевой графе 44, кроме кода. Обычно номер и дата.&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. &lt;br /&gt;
&lt;br /&gt;
Аналогично эти идентификаторы работают и в документе [[Инвойс]]. В нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==== Для графы 47 и B документа ДТ ====&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=576</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=576"/>
		<updated>2013-10-31T18:10:12Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Правила составления идентификаторов */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося вложенного блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося вложенного блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ГТД)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в документе Альта-ГТД. Например требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,ALFA2,34_1,NAME)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                   ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
Другие специальные идентификаторы:&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон).&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить трехбуквенный код связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44, 47 и B документа ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
  '''%%@44_!_01_wcodes''' - Выдаст все документы начинающиеся на 01* с пятизначными кодами типа документа&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44. Так же эти переменные работают и в документе [[Инвойс]], в нем они извлекают данные из полей Документ1-15 и дополнения &amp;quot;Документы переданные из программы Артикул&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=526</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=526"/>
		<updated>2013-04-12T11:58:06Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Правила составления идентификаторов */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося вложенного блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося вложенного блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ГТД)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в документе Альта-ГТД. Например требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,CODE,34_1,NAME17)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                    ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
Другие специальные идентификаторы:&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – Выводит значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%IIF(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''%%SUMALL(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' - сумма значений поля &amp;lt;ИМЯ_ПОЛЯ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон).&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить трехбуквенный код связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44 и 47 ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44.&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=525</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=525"/>
		<updated>2013-04-12T11:47:35Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Правила составления идентификаторов */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося вложенного блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося вложенного блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ГТД)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в документе Альта-ГТД. Например требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,CODE,34_1,NAME17)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                    ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
Другие специальные идентификаторы:&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(''&amp;lt;КОММЕНТАРИЙ&amp;gt;'', ''&amp;lt;ПОЛЕ&amp;gt;'')''' – Выводит значение поля &amp;lt;ПОЛЕ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(''&amp;lt;ИМЯ_БЛОКА&amp;gt;'')''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%IIF(''&amp;lt;ПОЛЕ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ПОЛЕ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ПОЛЕ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ПОЛЕ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ПОЛЕ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ПОЛЕ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''SUMALL(''&amp;lt;ПОЛЕ&amp;gt;'')''' - сумма значений поля &amp;lt;ПОЛЕ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон).&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить трехбуквенный код связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44 и 47 ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44.&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=524</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=524"/>
		<updated>2013-04-12T11:47:01Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: /* Правила составления идентификаторов */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося вложенного блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося вложенного блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ГТД)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в документе Альта-ГТД. Например требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,CODE,34_1,NAME17)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                    ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
Другие специальные идентификаторы:&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(&amp;lt;КОММЕНТАРИЙ&amp;gt;, &amp;lt;ПОЛЕ&amp;gt;)''' – Выводит значение поля &amp;lt;ПОЛЕ&amp;gt; с комментарием. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(&amp;lt;ИМЯ_БЛОКА&amp;gt;)''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%IIF(''&amp;lt;ПОЛЕ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ПОЛЕ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ПОЛЕ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ПОЛЕ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ПОЛЕ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ПОЛЕ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''SUMALL(''&amp;lt;ПОЛЕ&amp;gt;'')''' - сумма значений поля &amp;lt;ПОЛЕ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон).&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить трехбуквенный код связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44 и 47 ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44.&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=523</id>
		<title>Экспорт данных в офисные приложения</title>
		<link rel="alternate" type="text/html" href="https://wiki.alta.ru/index.php?title=%D0%AD%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BE%D1%84%D0%B8%D1%81%D0%BD%D1%8B%D0%B5_%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F&amp;diff=523"/>
		<updated>2013-04-12T11:19:30Z</updated>

		<summary type="html">&lt;p&gt;Rudometov: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Общие сведения о функции ==&lt;br /&gt;
&lt;br /&gt;
Для наиболее эффективной организации вывода документов на печать программы Альта (ГТД, Такса) позволяют переносить данные в офисные приложения Microsoft (Word, Excel) или OpenOffice. Данные оформляются согласно шаблонам – предопределенным в программе или изготовленным пользователем. В шаблонах могут быть задействованы все возможности указанных редакторов (форматирование таблиц, вставка графики и пр.). Экспорт осуществляется при помощи OLE-серверов, внедренных в офисные приложения, т.о. требуется обязательная установка этих приложений на компьютер пользователя.&lt;br /&gt;
Для случаев, когда офисные приложения на компьютере пользователя не установлены, в программе предусмотрена выгрузка данных в файлы либо простого текстового формата (.txt), либо формата HTML. При этом выгрузка в текстовый формат имеет ограниченную функциональность (не поддерживаются форматирование и таблицы). Выгрузка в HTML имеет полноценную функциональность, но требует определенных навыков для подготовки и оформления шаблонов.&lt;br /&gt;
&lt;br /&gt;
== Окно настройки выгрузки ==&lt;br /&gt;
&lt;br /&gt;
Выбор и настройка шаблонов для последующей выгрузки документа выполняется в окне «Печать документа в шаблон Office», вызываемом по команде главного меню Печать|Печать в Word/Excel/OpenOffice (для ГТД) или по нажатию Ctrl+Shift+F9.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Шаблоны ==&lt;br /&gt;
&lt;br /&gt;
=== Механизм выгрузки данных ===&lt;br /&gt;
Выгрузка данных в офисное приложение осуществляется при помощи шаблона. Шаблон – это документ офисного приложения, в котором оформляется для печати соответствующий электронный документ Альта-программы. Причем если неизменяемая часть электронного документа (названия полей, комментарии и т.п.) записывается в шаблон непосредственно, то изменяемая часть – введенные в поля значения – представляется в виде специальных символьных последовательностей – идентификаторов полей.&lt;br /&gt;
Таким образом, при выполнении выгрузки программа открывает шаблон в офисном приложении, находит в тексте шаблона идентификаторы полей документа и заменяет их соответствующими значениями. &lt;br /&gt;
Замена идентификаторов на данные из электронного документа производится методами самого офиса (как если бы пользователь вручную вызвал в офисном приложении команду замены одних строк на другие), поэтому при печати полностью сохраняется исходное форматирование шаблона, которое, следовательно, может быть сколь угодно сложным.&lt;br /&gt;
Полный перечень идентификаторов, предназначенных для использования в шаблонах для ГТД, содержится в файле [[alta\data\gtdwin.dcf]] (файл можно открыть в любом текстовом редакторе). &lt;br /&gt;
Идентификатор текущего (выделенного в данный момент) поля отображается в статусной строке окна ГТД (в правом нижнем углу):&lt;br /&gt;
&lt;br /&gt;
=== Выбор шаблона ===&lt;br /&gt;
Необходимый шаблон можно либо выбрать среди уже имеющихся, либо создать новый.&lt;br /&gt;
Способы выбора шаблона:&lt;br /&gt;
* по кнопке &amp;lt;Выбрать шаблон&amp;gt; (в левой части окна) – раскрывается основной список всех имеющихся шаблонов (при вызове окна «Печать документа в шаблон Office» этот список раскрыт по умолчанию);&lt;br /&gt;
* по кнопке &amp;lt;Недавние шаблоны&amp;gt; (в левой части окна) – открывается история печати, т.е. список последних использовавшихся для печати шаблонов (дата и время указаны в колонке «Изменен»). С шаблонами из этого списка можно производить [[#.D0.9A.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.B4.D0.BB.D1.8F_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D1.8B_.D1.81_.D1.88.D0.B0.D0.B1.D0.BB.D0.BE.D0.BD.D0.B0.D0.BC.D0.B8|те же команды]], что и с шаблонами из основного списка. Список недавно использовавшихся шаблонов можно очистить по кнопке &amp;lt;Очистить историю печати&amp;gt;. Сами шаблоны при этом не удаляются.&lt;br /&gt;
&lt;br /&gt;
=== Создание основы для нового шаблона ===&lt;br /&gt;
Если в основном списке подходящего шаблона нет, то можно либо создать его самостоятельно либо использовать один из имеющихся стандартных. &lt;br /&gt;
Чтобы взятый за основу шаблон (вновь созданный или стандартный) стал доступен для редактирования, необходимо внести его в основной список.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для стандартных:'''&lt;br /&gt;
# нажмите на кнопку &amp;lt;Готовые шаблоны&amp;gt; (в левой части окна); &lt;br /&gt;
# в появившемся списке стандартных шаблонов выберите подходящий;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите на кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – шаблон будет перенесен в основной список (раскрываемый по кнопке &amp;lt;Выбрать шаблон&amp;gt;) и станет доступным для редактирования, печати и т.д.&lt;br /&gt;
'''''Примечание'''''. Стандартные шаблоны хранятся в папке alta\template\default\. Список шаблонов – в файле template\default\template.ini. После выбора стандартного шаблона и нажатия кнопки &amp;lt;Создать&amp;gt; шаблон будет скопирован из template\default\ в рабочую папку документа с шаблонами.&amp;lt;br/&amp;gt;&lt;br /&gt;
:'''Для новых шаблонов:'''&lt;br /&gt;
# нажмите кнопку &amp;lt;Создать шаблон&amp;gt; (в левой части окна); &lt;br /&gt;
# выберите из списка пустой шаблон требуемого формата;&lt;br /&gt;
# дважды щелкните левой клавишей мыши по выбранному шаблону (или нажмите кнопку &amp;lt;Создать&amp;gt; в правом нижнем углу окна) – будет предложено два варианта:&lt;br /&gt;
## создать табличный шаблон с выбранными полями – в этом случае выбирается блок текущего документа (товары или дополнение) и поля этого блока, которые будут автоматически будут вставлены в шаблон в виде таблицы.&lt;br /&gt;
## создать обычный шаблон – будет создан пустой шаблон.&lt;br /&gt;
Новый шаблон появится в основном списке и станет доступным для редактирования, печати и т.д.&amp;lt;br/&amp;gt;&lt;br /&gt;
'''''Примечание'''''. Отображение форматов, доступных для создания нового шаблона, зависит от того, какое ПО установлено на данном компьютере: форматы TXT и HTML, раскрываемые стандартными программами ОС, доступны всегда; форматы DOC/XLS (MS Office) и ODT/ODS (OpenOffice) доступны только в том случае, если на компьютере установлены соответствующие офисные приложения.&lt;br /&gt;
&lt;br /&gt;
=== Команды для работы с шаблонами ===&lt;br /&gt;
К шаблонам, отображаемым в основном списке, можно применить следующие команды:&lt;br /&gt;
* Печатать документ согласно шаблону (кнопка &amp;lt;Печатать&amp;gt;, кнопка  на панели инструментов или Ctrl+P) – выбранный шаблон открывается в соответствующем офисном приложении (Word, Excel или OpenOffice), при этом в него выгружаются данные из текущего электронного документа;&lt;br /&gt;
'''''Примечание'''''. В процессе загрузки данных в шаблон на экране отображается окно с индикатором процесса выгрузки.&lt;br /&gt;
При необходимости выгрузку можно отменить по нажатию кнопки &amp;lt;Отмена&amp;gt;. При нажатии на кнопку &amp;lt;Подробно&amp;gt; будет отображаться протокол выгрузки (в нем отображаются сопровождающие процесс уведомления, предупреждения и сообщения об ошибках).&lt;br /&gt;
По окончании выгрузки протокол можно сохранить в текстовом формате, нажав на кнопку &amp;lt;Сохранить отчет&amp;gt;. Сохраненный протокол может понадобиться при обращении в техподдержку в случае возникновения ошибок.&lt;br /&gt;
* Редактировать шаблон (кнопка  или F4) – выбранный шаблон открывается для редактирования в соответствующем офисном приложении, не загружая данные из документа;&lt;br /&gt;
* Удалить шаблон (кнопка  или кнопка Del или Ctrl+D) – шаблон удаляется из основного списка (а также сам файл шаблона из соответствующей папки);&lt;br /&gt;
* Открыть папку, содержащую файлы шаблонов (кнопка  или Ctrl+E).&lt;br /&gt;
'''''Примечание'''''. Выбор папок для хранения шаблонов осуществляется для каждого типа документов (ГТД, ДТС и т.д.). По умолчанию используются стандартные папки в alta\template\. При необходимости редактирования путей к этим папкам нажмите кнопку &amp;lt;Настройки&amp;gt; (в левой части окна).&lt;br /&gt;
* Редактировать комментарий к документу (кнопка  или Ctrl+Z). Комментарий – это строка, которая в основном списке отображается вместо названия файла шаблона.&lt;br /&gt;
'''''Примечание'''''. Команды работы с шаблонами, расположенные на панели инструментов, дублируются в меню, вызываемом щелчком правой клавишей мыши по выбранному шаблону.&lt;br /&gt;
&lt;br /&gt;
=== Правила составления идентификаторов ===&lt;br /&gt;
Отличительная особенность идентификаторов: все они начинаются с двойного знака процента – %%. Идентификаторы могут быть расположены в любом месте документа, но должны отделяться от остального текста пробелами. Идентификаторы могут содержать только латинские буквы в верхнем регистре, цифры, а также знаки: % _ &amp;amp; \ [ ] ( ) @.&lt;br /&gt;
&lt;br /&gt;
Далее приводится синтаксис идентификаторов, используемых в шаблонах:&lt;br /&gt;
&lt;br /&gt;
%%&amp;lt;ИМЯ_ПОЛЯ&amp;gt; - вставка значения указанного поля.&amp;lt;br&amp;gt;&lt;br /&gt;
  '''%%7_1'''  ''Вставить значение поля 7_1 (регистрационный номер ГТД)''&lt;br /&gt;
%%START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося блока;&amp;lt;br&amp;gt;&lt;br /&gt;
%%END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося блока&amp;lt;br&amp;gt;&lt;br /&gt;
Эти идентификаторы используются для печати информации о товарах или дополнений документов, например &lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK] %%31.NAME '''%%END'''[BLOCK]&lt;br /&gt;
&lt;br /&gt;
позволит вставить в документ список товаров из поля ГТД «31. Грузовые места и описание товаров».&amp;lt;br&amp;gt; &lt;br /&gt;
Этот фрагмент шаблона размножается столько раз, сколько записей находится в ИМЯ_БЛОКА. Это или количество товаров или количество строк дополнения. Каждый из размноженных блоков заполняется данными полей соответствующего товара (дополнения). Такой подход позволяет создавать шаблоны печати практически любого вида.&amp;lt;br&amp;gt;&lt;br /&gt;
Если добавить после &amp;lt;ИМЯ_БЛОКА&amp;gt; номера первого и последнего товара, то будут выгружены записи только из указанного диапазона, например:&lt;br /&gt;
&lt;br /&gt;
 '''%%START'''[BLOCK,3,8] %%31.NAME '''%%END'''[BLOCK] - будут выгружены описания товаров только с 3 по 8 товар.&lt;br /&gt;
&lt;br /&gt;
Частный случай - %%START[BLOCK,2,2] - в этом случае выгрузятся поля из одного товара - второго.&amp;lt;br&amp;gt;&lt;br /&gt;
Частный случай - %%START[BLOCK,0,0] - в этом случае выгрузятся поля из всех товаров в одну строку через запятую.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
%%START %%END будучи размещенными в одной строке, при размножении формируют таблицу. Если разместить их в начале и конце страницы, то получится лист-карточка для для каждого товара. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
При добавлении ! в начале идентификатора (после %%, например %%!33_1) проверяется на повторы значений в цикле START/END. Повторяющиеся значения в шаблон не выводятся.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Для получения информации из вложенных блоков, т.е. блоков содержащихся в основном блоке используются директивы&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - начало повторяющегося вложенного блока&amp;lt;br&amp;gt;&lt;br /&gt;
%%STARTSUB[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] - конец повторяющегося вложенного блока&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Имя поля в идентификаторах в этом случае предваряется именем основного блока и именем вложенного блока через «\»&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]        ''Начало основного блока (графа 31 ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[TXT]    ''Начало вложенного блока (дополнительное описание товара, текст к гр. 31 ГТД)''&lt;br /&gt;
       '''%%BLOCK\TXT\TEXT''' ''Собственно, сам текст''&lt;br /&gt;
     '''%%ENDSUB'''[TXT]      ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]          ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Чтобы выгрузить поле из определенного блока вне цикла START/END, используется такая запись: '''%%BLOCK\2\TXT\3\TEXT'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Для выгрузки значений поля из всех товаров через запятую - '''%%BLOCK\0\33_1'''.&amp;lt;br&amp;gt;&lt;br /&gt;
Иногда возникает необходимость при печати в шаблоны получать информацию, не доступную в явном виде в документе Альта-ГТД. Например требуется получить наименование страны, зная при этом ее цифровой код. Для этого используется идентификатор&lt;br /&gt;
%%REF[''&amp;lt;СПР&amp;gt;,&amp;lt;ПОЛЕ1&amp;gt;,&amp;lt;ИМЯ_ПОЛЯ&amp;gt;,&amp;lt;ПОЛЕ2&amp;gt;''] , где ''&amp;lt;CПР&amp;gt;'' - имя файла справочника, ''&amp;lt;ПОЛЕ1&amp;gt;'' - название поля в справочнике, по которому ищем информацию, ''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'' - поле документа, откуда извлекается информация, ''&amp;lt;ПОЛЕ2&amp;gt;'' - название поля с возвращаемым значением.&lt;br /&gt;
&lt;br /&gt;
  '''%%REF'''(COUNTRS,CODE,34_1,NAME17)   ''Возьмем значение из графы 34 ГТД (код страны происхождения),''&lt;br /&gt;
                                    ''и используя его найдем наименование страны.''&lt;br /&gt;
&lt;br /&gt;
Другие специальные идентификаторы:&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31.NAMEONLY''' – в отличие от %%31.NAME, извлекает из графы 31 только наименование товара без описания;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%31ВСЕГОШТ''' – извлекает из графы 31 с основного листа ГТД число N из выражения вида «(ВСЕГО N ШТ)»;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUM(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – вычисляет сумму значений указанного поля. Например, по идентификатору %%SUM(42_1) будет выведена общая стоимость товаров (поле 42_1 – цена товара). &lt;br /&gt;
Кроме того с помощью идентификатора %%SUM можно извлечь сумму значений поля вложенного блока, например %%SUM(BLOCK\TOVG\KOLVO) извлекает из вложенного блока TOVG общее количество товаров в группах для текущего товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVG(''&amp;lt;ИМЯ_ПОЛЯ&amp;gt;'')''' – извлечет из дополнения «Описание и характеристика товаров» все значения для указанного поля через запятую (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NEW_PAGE''' - разрыв страницы;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%RATE(''&amp;lt;КОД_ВАЛЮТЫ&amp;gt;'')''' – получает курс валюты по её коду. В качестве передаваемого параметра можно использовать непосредственно код валюты (например USD), а можно использовать ссылку на идентификатор, содержащий этот код, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%RATE'''(BLOCK\DOG\PRVAL)&lt;br /&gt;
&lt;br /&gt;
* '''%%LABELEDFIELD(LABEL, ''&amp;lt;FID&amp;gt;'')''' – Выводит значение поля FID с комментарием LABEL. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%LABELEDFIELD'''(Код ТНВЭД:, 33_1)&lt;br /&gt;
&lt;br /&gt;
* '''%%BLOCKNUM''' – выводится номер текущего выгружаемого товара (используется внутри %%START[BLOCK] %%END[BLOCK]);&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%BLOCKCOUNT''' – выводится количество товаров в документе;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%NUMBLOCK(&amp;lt;ИМЯ_БЛОКА&amp;gt;)''' – выводится количество записей в блоке, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK)''' - количество товаров ДТ&lt;br /&gt;
  '''%%NUMBLOCK(BLOCK\1\TOVG)''' - количество артикулов в первом товаре ДТ;&lt;br /&gt;
&lt;br /&gt;
* '''%%TNVEDTEXT''' – выводится описание кода ТНВЭД для текущего выгружаемого товара;&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%PRICESCOLOR''' – если в документе поле «цены» (PRICES) подсвечено красным цветом, то при выгрузке в Excel ячейка с ценой также будет закрашена красным (используется вместо %%PRICES).&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%IIF(''&amp;lt;ПОЛЕ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ1&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ2&amp;gt;'')''' – В зависимости от значения поля &amp;lt;ПОЛЕ&amp;gt; (True, False) выведет либо &amp;lt;ЗНАЧЕНИЕ1&amp;gt; либо &amp;lt;ЗНАЧЕНИЕ2&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Примеры:&lt;br /&gt;
&lt;br /&gt;
  '''%%IIF(IMPORT,происхождения,назначения)'''&lt;br /&gt;
  '''%%IIF(ONECOUNTRY,%%REF(COUNTRS,CODE,Country,KrName),РАЗНЫЕ)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%NZ(''&amp;lt;ПОЛЕ&amp;gt;'', ''&amp;lt;ЗНАЧЕНИЕ&amp;gt;'')''' – если значение поля &amp;lt;ПОЛЕ&amp;gt; непустое, то выгружает его, иначе выгружает &amp;lt;ЗНАЧЕНИЕ&amp;gt;. Вместо ЗНАЧЕНИЯ может использоваться идентификатор с %%. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%NZ(REF(COUNTRS,CODE,Country,DESCR),Прочая)'''&lt;br /&gt;
&lt;br /&gt;
* '''%%STARTDEL[''&amp;lt;ПОЛЕ&amp;gt;'']...%%ENDDEL''' - если заключить фрагмент текста в шаблоне в эти операторы, то при пустом или равном &amp;quot;0&amp;quot; значении поля &amp;lt;ПОЛЕ&amp;gt; данный фрагмент будет удален из шаблона.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%USERNAME''' - автор документа.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%TOVGCOUNT''' - количество записей в дополнениях TOVG (артикулов) во всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
* '''%%SUMMARY''' - суммирует значения поля из дополнения по всему документу, например:&lt;br /&gt;
&lt;br /&gt;
  '''%%SUMMARY(BLOCK\TOVG\KOLVO)''' - просуммирует поле KOLVO по всей ДТ.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''SUMALL(''&amp;lt;ПОЛЕ&amp;gt;'')''' - сумма значений поля &amp;lt;ПОЛЕ&amp;gt; по всем документам (при выгрузке списка документов в один шаблон).&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Существует возможность при выгрузке одного документа выводить в шаблон значения полей из другого, взаимосвязанного, документа. Для этого необходимо перед идентификатором добавить трехбуквенный код связанного документа через точку. Например использованный в шаблоне выгрузки для ГТД идентификатор: &lt;br /&gt;
&lt;br /&gt;
  %%'''INV.'''42_ZAEDINIC &lt;br /&gt;
&lt;br /&gt;
выведет значение поля «стоимость за единицу» из связанного с ГТД инвойса. &lt;br /&gt;
&lt;br /&gt;
Часто количество товаров в ГТД и связанном с ней Инвойсе не совпадает. В этом случае для выгрузки в шаблон ГТД полей из инвойса можно использовать специальный вложенный блок INVDOC. То есть вложенный блок в этом случае будет представлять собой не дополнение ГТД, а товары из связанного с ней инвойса, из которых состоит соответствующий товар ГТД. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%START'''[BLOCK]                 ''Начало основного блока (товар ГТД)''&lt;br /&gt;
     '''%%STARTSUB'''[INVDOC]          ''Начало вложенного блока (товары инвойса, из которых состоит данный товар ГТД)''&lt;br /&gt;
       '''%%BLOCK\INVDOC\31_ARTICUL''' ''поля из товаров инвойса''&lt;br /&gt;
     '''%%ENDSUB'''[INVDOC]            ''Конец вложенного блока''&lt;br /&gt;
  '''%%END'''[BLOCK]                   ''Конец основного блока''&lt;br /&gt;
&lt;br /&gt;
Еще один тип идентификаторов – предваряется символами %%@ и используется для граф 44 и 47 ГТД. Используется для частичной выгрузки поля.  Синтаксис следующий:&amp;lt;br&amp;gt; &lt;br /&gt;
- %%@47_код вида платежа_номер столбика. Например:&lt;br /&gt;
&lt;br /&gt;
  '''%%@47_5010_3''' – выгрузит ставку НДС,&lt;br /&gt;
  '''%%@47_5010_4''' – выгрузит сумму НДС,&lt;br /&gt;
  '''%%@47_5010_4_V''' выгрузит сумму НДС, но в валюте по курсу из гр.23_1,&lt;br /&gt;
  '''%%@47_0_4''' – выгрузит сумму всех платежей,&lt;br /&gt;
  '''%%@47_0U_4''' – выгрузит сумму всех платежей, включая условно начисленные;&lt;br /&gt;
&lt;br /&gt;
- %%@44_!_код документа_дополнительные параметры. Примеры использования:&lt;br /&gt;
&lt;br /&gt;
  '''%%@44_!_06011''' – выгрузятся документы гр.44 с кодом 06011,&lt;br /&gt;
  '''%%@44_!_06011_О''' - выдавший орган для сертификатов (пишется в конце строчки после последней даты, без запятой),&lt;br /&gt;
  '''%%@44_!_06011_ДО''' – выгружает номер с первой и со второй датой, &lt;br /&gt;
  '''%%@44_!_06011_nodate''' – выгружает номер без дат,&lt;br /&gt;
  '''%%@44_!_06011_date''' - только первая дата,&lt;br /&gt;
  '''%%@44_!_04021''' - номер и дату инвойса.&lt;br /&gt;
  '''%%@44_!_04021_date''' - только дату инвойса.&lt;br /&gt;
&lt;br /&gt;
Документы берутся как с лицевой стороны, так и из дополнения гр.44.&lt;br /&gt;
&lt;br /&gt;
- %%@B_код вида платежа. Пример:&lt;br /&gt;
&lt;br /&gt;
  '''%%@B_1010''' – выгрузится сумма платежей по коду 1010.&lt;br /&gt;
&lt;br /&gt;
=== Выгрузка нескольких документов в один шаблон ===&lt;br /&gt;
&lt;br /&gt;
Выгрузка нескольких документов в один шаблон запускается из списка документов (Печать\Печать в Word\Excel\OpenOffice..).&amp;lt;br&amp;gt;&lt;br /&gt;
При этом будет предложено выгрузить все документы из текущей папки либо выбранные документы.&amp;lt;br&amp;gt;&lt;br /&gt;
Далее выбирается шаблон и запускается печать как обычно.&lt;br /&gt;
В табличный шаблон будут выгружены товары из всех выбранных документов. Если в шаблоне есть поля из шапки документа, то эти поля будут взяты из первого выбранного документа.&lt;br /&gt;
&lt;br /&gt;
Для выгрузки списка документов (только поля из шапки) предназначены идентификаторы %%START[DOC] ... %%END[DOC], которые образуют таблицу с количеством строк по количеству выбранных документов.&amp;lt;br&amp;gt;&lt;br /&gt;
Пример:&lt;br /&gt;
  &lt;br /&gt;
%%START[DOC] %%7_1 %%8_NAM %%9_NAM %%END[DOC]&lt;br /&gt;
&lt;br /&gt;
=== Окно с полями документа для редактирования шаблонов ===&lt;br /&gt;
Окно с полями документа открывается при редактировании шаблона если включена соответствующая настройка (стоит галочка в закладке с настройками).&lt;br /&gt;
В окне отображаются все поля соответствующего документа (например ГТД) в виде дерева. Идентификаторы полей перетаскиваются в шаблон мышью. Кроме того можно перетаскивать [[#.D0.9F.D1.80.D0.B0.D0.B2.D0.B8.D0.BB.D0.B0_.D1.81.D0.BE.D1.81.D1.82.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|специальные идентификаторы]] и [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|пользовательские идентификаторы (свои поля)]]. Ниже дерева с полями есть строка для быстрого поиска нужного поля.&amp;lt;br/&amp;gt;&lt;br /&gt;
Чтобы перетащить сразу несколько идентификаторов, выделите их все, удерживая нажатым Ctrl или Shift. После перетаскивания, поля расположатся в шаблоне в том же порядке, в каком они идут в окне. Порядок можно поменять используя кнопки &amp;quot;Переместить выделенные поля выше/ниже&amp;quot; на панели инструментов (выделить нужные поля и нажать соответствующую стрелку для перемещения выше или ниже).&lt;br /&gt;
Есть также следующие настройки:&lt;br /&gt;
* Прозрачность окна – меняется ползунком;&lt;br /&gt;
* Использовать START END – при перетаскивании полей они автоматически образуют собой таблицу со START[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] и END[''&amp;lt;ИМЯ_БЛОКА&amp;gt;''] (неприменимо для полей из заголовка документа). &lt;br /&gt;
* Перетаскивать поля с именами – совместно с идентификатором в шаблон вставляется и русское наименование поля;&lt;br /&gt;
* Не показывать больше это окно – выключение отображения окна с полями при редактировании шаблона, включить можно в [[#.D0.9E.D1.81.D1.82.D0.B0.D0.BB.D1.8C.D0.BD.D1.8B.D0.B5_.D0.BA.D0.BE.D0.BC.D0.B0.D0.BD.D0.B4.D1.8B_.D0.BE.D0.BA.D0.BD.D0.B0_.D0.BD.D0.B0.D1.81.D1.82.D1.80.D0.BE.D0.B9.D0.BA.D0.B8_.D0.B2.D1.8B.D0.B3.D1.80.D1.83.D0.B7.D0.BA.D0.B8|закладке с настройками]];&lt;br /&gt;
Одновременно можно редактировать несколько шаблонов. Если это шаблоны разных типов документов, то все такие типы добавятся в окно в виде отдельных деревьев и переключаются соответствующими кнопками с наименованиями типов в верхней части окна.&lt;br /&gt;
&lt;br /&gt;
== Остальные команды окна настройки выгрузки ==&lt;br /&gt;
Помимо команд для работы с шаблонами, в окне настройки выгрузки можно открыть для просмотра и редактирования список пользовательских идентификаторов для данного документа (кнопка &amp;lt;Свои поля&amp;gt;).&lt;br /&gt;
&lt;br /&gt;
'''''Примечание'''''. Использование пользовательских идентификаторов в шаблонах аналогично использованию стандартных идентификаторов. Создание и настройка пользовательских идентификаторов рассматриваются [[#.D0.A1.D0.BE.D0.B7.D0.B4.D0.B0.D0.BD.D0.B8.D0.B5_.D0.B8_.D1.80.D0.B5.D0.B4.D0.B0.D0.BA.D1.82.D0.B8.D1.80.D0.BE.D0.B2.D0.B0.D0.BD.D0.B8.D0.B5_.D0.BF.D0.BE.D0.BB.D1.8C.D0.B7.D0.BE.D0.B2.D0.B0.D1.82.D0.B5.D0.BB.D1.8C.D1.81.D0.BA.D0.B8.D1.85_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.BE.D0.B2|в следующем разделе]]. Пользовательские идентификаторы со всеми своими параметрами хранятся в файле [[ALTA\ExtraFields.ini]].&lt;br /&gt;
&lt;br /&gt;
В настройках (кнопка &amp;lt;настройки&amp;gt;) можно настроить для каждого типа документа индивидуальный каталог, где будут сохраняться шаблоны этого документа. Кроме того есть следующие настройки:&lt;br /&gt;
* Окно контроля выгрузки – в зависимости от положения бегунка, при выгрузке в шаблон, в окне контроля будут отображаться все сообщения, только ошибки и предупреждения, или окно вообще не будет отображаться.&lt;br /&gt;
* Показывать процесс выгрузки – при снятой галочке шаблон не будет виден до окончания выгрузки.&lt;br /&gt;
* Показывать окно с полями при редактировании документа – при включенной настройке рядом с открытым для редактирования шаблоном будет показано окно с полями для текущего документа. Из этого окна мышью можно перетаскивать нужные поля прямо в шаблон. Если перетаскивать сразу несколько полей, в шаблоне автоматически будет создана таблица.&lt;br /&gt;
* Обрезать большие описания – можно настроить обрезку больших полей при выгрузке&lt;br /&gt;
* Выгружать в открытый файл - если какой-либо файл уже открыт в текстовом или табличном редакторе офиса, то будет предложено выгрузить в этот файл, без создания нового. Для Excel будет создан новый лист, для Word - через разрыв страницы.&lt;br /&gt;
* Выгружать список документов в отдельные шаблоны - обычно при выгрузке нескольких документов, они выгружаются в одну таблицу. По этой настройке можно выгружать каждый документ в свою таблицу (отдельный шаблон).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Создание и редактирование пользовательских идентификаторов ==&lt;br /&gt;
&lt;br /&gt;
Помимо идентификаторов, предопределенных в системе (их перечень содержится в файле [[alta\data\gtdwin.dcf]]), при создании шаблонов можно использовать пользовательские идентификаторы.&lt;br /&gt;
&lt;br /&gt;
=== Описание команд меню ===&lt;br /&gt;
Список пользовательских идентификаторов открывается по нажатию кнопки &amp;lt;Свои поля&amp;gt; в окне печати. Здесь же идентификаторы можно создавать и редактировать.&lt;br /&gt;
В нижней части окна расположены поля для задания [[#.D0.9F.D0.B0.D1.80.D0.B0.D0.BC.D0.B5.D1.82.D1.80.D1.8B_.D0.B8.D0.B4.D0.B5.D0.BD.D1.82.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80.D0.B0|параметров идентификатора]], в верхней части – панель инструментов, где находятся кнопки для выполнения следующих команд:&lt;br /&gt;
* Создать новый идентификатор. Вызывает окно для ввода названия нового идентификатора. К названию будет автоматически добавлен двойной знак процента – %%;&lt;br /&gt;
* Дублировать идентификатор. Создает новый идентификатор, являющийся точной копией того, к которому была применена эта команда. Необходимо задать только имя идентификатора;&lt;br /&gt;
* Сохранить изменения. Сохраняет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла;&lt;br /&gt;
* Переименовать идентификатор;&lt;br /&gt;
* Выгрузить идентификаторы в файл. Все сохраненные в программе пользовательские идентификаторы хранятся в конфигурационном файле [[alta\ ExtraFields.ini]]. Однако по данной команде идентификаторы можно сохранить в отдельном ini-файле. Выберите один или несколько идентификаторов из списка в появившемся окне (порядок следования можно изменить кнопками-стрелочками) и по нажатию &amp;lt;OK&amp;gt; раскроется стандартное окно сохранения файла, в котором следует выбрать путь (по умолчанию – корневой каталог программы) и название ini-файла;&lt;br /&gt;
* Загрузить идентификаторы из файла. Команда загружает в программу идентификаторы, сохраненные ранее в отдельных ini-файлах по команде «Выгрузить идентификаторы в файл». Если при загрузке обнаружится совпадение имен с уже имеющимися в редакторе идентификаторами, то будет предложено заменить имеющийся на новый или задать для нового другое имя.&lt;br /&gt;
* Отменить все изменения. Команда отменяет все изменения в списке идентификаторов, включая создание, удаление и загрузку из файла.&lt;br /&gt;
&lt;br /&gt;
=== Параметры идентификатора ===&lt;br /&gt;
В нижней части окна со списком пользовательских идентификаторов располагается группа полей для ввода параметров выбранного идентификатора.&lt;br /&gt;
После выполнения команды «Создать» для нового идентификатора отображаются только два основных поля: &lt;br /&gt;
* Выберите тип идентификатора – здесь из выпадающего списка выбирается действие, которое необходимо будет произвести с выбранным полем документа. Если в списке выбрать пункт «Не назначено», то при выгрузке идентификатор будет заменен на значение выбранного поля документа.&lt;br /&gt;
* Выберите поле – сюда следует ввести или выбрать из списка имя стандартного идентификатора поля (если выделить поле в окне редактирования электронного документа, то соответствующий этому полю стандартный идентификатор появится в статусной строке - в правом нижнем углу окна). Если в этом поле оставить изначальное значение noname, то при выгрузке этот пользовательский идентификатор будет проигнорирован (на его месте ничего вставлено не будет);&lt;br /&gt;
На данный момент в программе доступны следующие варианты действий с полем:&lt;br /&gt;
* Применить регулярное выражение – при выборе этого варианта открывается поле для ввода регулярного выражения, которое будет применено при выводе значения указанного поля.&lt;br /&gt;
* Взять значение из справочника – в этом случае открываются дополнительные поля:&lt;br /&gt;
*# два поля группы Выбор справочника – в левом поле справочник выбирается из списка (раскрывающегося по нажатию кнопки в правой части поля), правом – путем выбора файла .dbf (по умолчанию, для выбора файла со справочником предлагается папка alta\ref). При выборе значения любого из этих полей второе поле заполняется автоматически;&lt;br /&gt;
*# Выберите ключевое поле – поле в справочнике, с которым будет соотнесено значение поля документа, т.е. поле документа будет использоваться в качестве ключа при поиске;&lt;br /&gt;
*# Выберите возвращаемое поле – выбирается поле в справочнике, значение которого будет возвращено в качестве результата применения идентификатора.&lt;br /&gt;
* Взять часть поля посимвольно – из строки значения поля выбрать подстроку, начинающуюся и заканчивающуюся символами с номерами, указанными в соответствующих полях С и По. Кроме того, можно задать обратный порядок отсчета символов (флажок «Отсчитывать с конца»).&lt;br /&gt;
* Извлечь слова – аналогично предыдущему варианту, с той лишь разницей, что из значения поля выбираются не символы, а целые слова.&lt;br /&gt;
* Значение по запросу – задается несколько вариантов значений для вставки в шаблон при выгрузке (варианты разделяются построчно). Если в процессе выгрузки документа программа обнаружит в шаблоне идентификатор такого типа, выгрузка приостановится и появится окно с предложением выбрать один из заданных вариантов. Если не было задано ни одного варианта или ни один из заданных не подходит, можно в поле ввода ввести произвольное значение. Введенное значение будет вставлено в шаблон.&lt;br /&gt;
* Значение в зависимости от значения поля – для выбранного поля предлагается создать список диапазонов значений, которым будут соответствовать какие-то выводимые значения. Пример для кода ТНВЭД (33_1):&lt;br /&gt;
&lt;br /&gt;
 0101000000	0101999999	0&lt;br /&gt;
 4012000000	4012999999	1&lt;br /&gt;
 0000000000	9999999999	Другое&lt;br /&gt;
&lt;br /&gt;
В этом примере при выгрузке товаров в шаблон для товаров с кодом ТНВЭД от 0101000000 до 0101999999 будет выведено значение «0», для кода от 4012000000 до 4012999999 – значение «1», для всех остальных кодов будет выведено значение «Другое».&lt;br /&gt;
&lt;br /&gt;
== Планировщик печати ==&lt;br /&gt;
&lt;br /&gt;
Используется для автоматической выгрузки документов в шаблон при запуске ГТД.&amp;lt;br&amp;gt;&lt;br /&gt;
Для автозапуска планировщика необходимо прописать для gtdw.exe параметр командной строки -w и после параметра указать путь к файлу с настройками планировщика. Например:&lt;br /&gt;
&lt;br /&gt;
   C:\Alta\gtdw -w C:\1.ini&lt;br /&gt;
&lt;br /&gt;
В файле с настройками должна быть секция [PrintParams], в которой допускаются следующие параметры:&lt;br /&gt;
&lt;br /&gt;
* DocType - тип документа,&lt;br /&gt;
* Dir - наименования папок, из которых выгружать документы (необязательный),&lt;br /&gt;
* RootDir - выгружать или нет из корневого каталога (по умолчанию не выгружает),&lt;br /&gt;
* DateFrom - начальная дата документа,&lt;br /&gt;
* DateTill - конечная дата документа,&lt;br /&gt;
* TemplateName - путь к шаблону,&lt;br /&gt;
* Registered - выгружать только зарегистрированные (по умолчанию выгружает все),&lt;br /&gt;
* DirNoPrint - папки, из которых НЕ выгружать (не обязательный).&lt;br /&gt;
&lt;br /&gt;
Например:&lt;br /&gt;
  &lt;br /&gt;
  [PrintParams]&lt;br /&gt;
  DocType = GTD&lt;br /&gt;
  Dir = Dir1,Dir2,Dir2\SubDir&lt;br /&gt;
  RootDir = 1&lt;br /&gt;
  DateFrom = 22.12.2011&lt;br /&gt;
  DateTill = 28.12.2011&lt;br /&gt;
  TemplateName = C:\Alta\template\GTD\Platechi.XLS&lt;br /&gt;
  Registered = 1&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Категория:Альта-ГТД]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Печать &lt;br /&gt;
&lt;br /&gt;
To-Do:&lt;br /&gt;
&lt;br /&gt;
про простой TXT&lt;br /&gt;
про XML(HTML)&lt;br /&gt;
примеры шаблонов --&amp;gt;&lt;/div&gt;</summary>
		<author><name>Rudometov</name></author>
		
	</entry>
</feed>