Перейти к содержимому

XML-схема

Макеты PrintWizard экспортируются и импортируются в формате XML, соответствующем схеме версии 6.1 (http://printwizard.ru/export/v6.1). Эта страница описывает структуру XML и допустимые значения перечислений.

XML-файл макета содержит единственный корневой элемент Template со всеми вложенными коллекциями:

Template
├── Attributes — реквизиты макета (название, флаги)
├── Properties[] — произвольные свойства (ключ–значение)
├── Objects[] — объекты метаданных 1С
│ └── Command — настройка команды печати
├── Queries[] — запросы к данным
│ └── Fields[] — поля запроса
├── Datasets[] — наборы данных
│ ├── Source — источник данных
│ └── Fields[] — поля набора
├── Joins[] — соединения наборов
│ └── Fields[] — пары полей соединения
├── Parameters[] — входные параметры печати
├── PrintParameters[] — параметры страницы (поля, ориентация…)
├── Areas[] — области шаблона
│ ├── Parameters[] — параметры ячеек (привязка к данным)
│ └── OutputRules[] — условия вывода области (без BSL)
├── Events[] — обработчики событий жизненного цикла
├── Functions[] — пользовательские функции
│ └── Parameters[] — параметры функции
├── AvailableFields[] — вычисляемый список доступных полей
├── DataLinks[] — связи между таблицами схемы
├── PrintTemplate — шаблон (base64: MXL или XLSX/DOCX)
└── Variants[] — варианты печати
├── PrintParameters[]
├── Areas[]
├── Events[]
└── PrintTemplate

Корневой элемент макета.

<Template pw_type="Template"
Key="e7a1c3b2-..."
Name="РеализацияТоваровУслуг">
<Attributes IsRegistry="false"
IsOfficeOpenXML="false"
PrintParametersKey="ПараметрыПечати_СчётНаОплату">
<Presentation>Счёт на оплату</Presentation>
<Description>Счёт на оплату покупателю</Description>
</Attributes>
<Objects>...</Objects>
<Queries>...</Queries>
<Datasets>...</Datasets>
<Parameters>...</Parameters>
<Areas>...</Areas>
<AvailableFields>...</AvailableFields>
</Template>
АтрибутОбязателенОписание
Key✅Уникальный идентификатор макета (UUID)
NameВнутреннее имя макета
pw_typeВсегда Template
Атрибут / ЭлементОбязателенОписание
IsRegistry✅Макет является реестром (многострочный список)
IsOfficeOpenXML✅Шаблон в формате Office Open XML (DOCX/XLSX)
ExtKeyВнешний ключ для интеграции
PrintParametersKeyПользовательский ключ параметров печати (String(150)). Используется как ТабличныйДокумент.КлючПараметровПечати при выводе. Если не задан — исполнитель формирует ключ из Key макета (СтрЗаменить(Key, "-", "_")). Позволяет сохранить пользовательские настройки полей, ориентации, масштаба между обновлениями макета и переиспользовать их между родственными макетами.
<Presentation>✅Краткое наименование (отображается в списке)
<Description>Полное наименование
<Code>Уникальный код макета
<Comment>Комментарий разработчика

Каждый элемент Objects описывает объект 1С, для которого создана печатная форма.

<Objects pw_type="Object"
Number="1"
Key="a1b2c3d4-..."
Kind="Документы"
Name="РеализацияТоваровУслуг"
FullName="Документы.РеализацияТоваровУслуг"
UseCommand="true">
<Command Id="print_cmd_1" Order="1"
Presentation="Счёт на оплату"
CheckPosting="false"
SkipPreview="false">
<FormsList>ФормаДокумента</FormsList>
<FunctionalOptions>ИспользоватьПечать</FunctionalOptions>
</Command>
</Objects>
АтрибутОписание
KindВид коллекции метаданных — см. перечисление
FullNameПолное имя: Документы.РеализацияТоваровУслуг
UseCommandСоздавать команду в меню «Печать»
Атрибут / ЭлементОбязателенОписание
Id✅Идентификатор команды
Order✅Порядок в меню «Печать»
Presentation✅Надпись команды
CheckPosting✅Проверять проведение перед печатью
SkipPreview✅Печатать без предварительного просмотра
<FormsList>Список форм объекта, на которых размещается команда (по одному имени на элемент)
<FunctionalOptions>Список функциональных опций, управляющих видимостью команды (по одному имени на элемент)

Запрос содержит текст на языке запросов 1С и список полей результата.

<Queries pw_type="Query"
Number="1"
Key="b2c3d4e5-..."
Name="QueryGoods"
ResultType="ValueTable"
TempTable=""
Invalid="false"
NotFilterByRef="false">
<Text>ВЫБРАТЬ
Строки.Номенклатура КАК Номенклатура,
Строки.Количество КАК Количество,
Строки.Сумма КАК Сумма
ИЗ Документы.РеализацияТоваровУслуг.Товары КАК Строки
ГДЕ Строки.Ссылка В (&МассивОбъектов)</Text>
<Errors/>
<Guidelines/>
<Fields>
<Fields pw_type="Query.Field" Key="c1-..." Name="Номенклатура" Field="Номенклатура"/>
<Fields pw_type="Query.Field" Key="c2-..." Name="Количество" Field="Количество"/>
<Fields pw_type="Query.Field" Key="c3-..." Name="Сумма" Field="Сумма"/>
</Fields>
</Queries>
АтрибутОписание
ResultTypeValueTable — обычный запрос; TempTable — временная таблица
TempTableИмя временной таблицы (если ResultType = TempTable)
Invalidtrue если в запросе обнаружены ошибки
NotFilterByRefНе применять стандартный отбор по ссылке объекта

Набор данных связывает запрос с областью шаблона и описывает состав полей.

<Datasets pw_type="Dataset"
Number="1"
Key="d1e2f3a4-..."
Name="DSGoods"
Type="Collection"
SourceType="Query"
UseInTemplate="true">
<Source pw_type="DataSource" Type="Query" QueryKey="b2c3d4e5-..."/>
<Fields>
<Fields pw_type="Dataset.Field" Key="f1-..." Name="Номенклатура" Type="Dataset"/>
<Fields pw_type="Dataset.Field" Key="f2-..." Name="Количество" Type="Dataset"/>
<Fields pw_type="Dataset.Field" Key="f3-..." Name="НомерСтроки" Type="Numerator"/>
</Fields>
</Datasets>
АтрибутОписание
TypeТип набора — см. перечисление
SourceTypeQuery / Object / Algorithm
UseInTemplateИспользовать поля набора в шаблоне
Значение TypeВ конструктореОписание
DatasetПолеИсточника «Поле источника»Поле из запроса или источника данных
DescriptionПолеПредставления «Поле представления»Составное строковое представление (несколько реквизитов в одной ячейке)
NumeratorПолеНумератора «Поле нумератора»Автоматическая нумерация строк
AlgorithmПолеАлгоритма «Поле алгоритма»Поле, которое заполняет алгоритм обработки набора
AttributeПолеСвойства «Поле свойства»Дополнительное свойство объекта (БСП)
ContactInfoПолеКонтИнф «Поле конт. инф.»Контактная информация (БСП)
FunctionВычисляемоеПоле «Вычисляемое поле»Произвольный код на 1С, выполняется для каждой строки набора
QRCodeПолеQRКода «Поле QR-кода»QR-код

Algorithm и Function легко перепутать: первое — поле, которое заполнил алгоритм обработки набора, второе — вычисляемое поле с собственным кодом. Разбор обоих — в главе Наборы данных.


Область соответствует именованному диапазону строк в шаблоне и определяет способ вывода данных.

<Areas pw_type="Area"
Number="1"
Key="e1f2a3b4-..."
Name="Header"
PrintMethod="Single"
DatasetKey="..."
Order="1">
<Parameters>
<Parameters pw_type="Area.Parameter"
Key="p1-..."
Name="Контрагент"
Type="Dataset"
IsPicture="false"
IsDetails="false">
<Value pw_type="Field.Dataset"
DatasetKey="..."
DatasetFieldKey="..."
DatasetFieldName="Контрагент"
IsRowField="false"/>
<Presentation/>
</Parameters>
<Parameters pw_type="Area.Parameter"
Key="p2-..."
Name="ИтогоПрописью"
Type="SumInWords"
IsPicture="false"
IsDetails="false">
<Value pw_type="Field.SumInWords">
<NumberField pw_type="Field.Dataset"
DatasetKey="..." DatasetFieldKey="..."
DatasetFieldName="СуммаДокумента"/>
<CurrencyDefault>RUB</CurrencyDefault>
<NoFractions>false</NoFractions>
<FormatString/>
<Parameters/>
</Value>
<Presentation/>
</Parameters>
</Parameters>
</Areas>
Атрибут / ЭлементОписание
PrintMethodСпособ вывода — см. перечисление
PrintSettingsДополнительная настройка — см. перечисление
DatasetKeyКлюч связанного набора данных (обязателен для Collection)
OrderПорядок вывода области
<WrapParameter>Имя параметра-признака переноса (для PrintMethod = Wrap)
<WrapAddAreaName>Имя дополнительной области переноса
<WrapControlAreaName1>Имя первой контрольной области переноса
<WrapControlAreaName2>Имя второй контрольной области переноса
Значение TypeВ конструктореОписаниеТип значения <Value>
DatasetЗначениеНабора «Значение набора»Поле из набора данныхField.Dataset
DescriptionКонструкторСтроки «Конструктор строки»Составное представлениеField.Description
AlgorithmПроизвольныйАлгоритм «Алгоритм»Произвольный код 1СField.Function
SumInWordsСуммаПрописью «Сумма прописью»Сумма прописьюField.SumInWords
QRCodeДанныеQRКода «Данные QR-кода»QR-кодField.QRCode

Декларативное условие вывода области без использования события BeforeAreaOutput. Если на области заданы правила вывода — исполнитель до вызова BeforeAreaOutput вычисляет все включённые правила, объединяет результаты по логическому И и при Ложь пропускает вывод области (соседние области и повторения выводятся в штатном порядке).

<Areas pw_type="Area" ...>
<Parameters> ... </Parameters>
<OutputRules pw_type="Area.OutputRule"
Key="r1-..."
Order="1"
Use="true"
ComparisonType="NotEqual">
<LeftValue pw_type="Field.Dataset"
DatasetKey="..."
DatasetFieldKey="..."
DatasetFieldName="Контрагент.ЭтоФизическоеЛицо"/>
<RightValue xsi:type="xs:boolean">true</RightValue>
</OutputRules>
</Areas>
Атрибут / ЭлементОписание
KeyУникальный ключ правила (GUID)
UserIDПользовательский идентификатор (опционально)
OrderПорядок применения правил в пределах области
UseИспользование правила; false — правило игнорируется
ComparisonTypeВид сравнения — см. перечисление
<LeftValue>Левое значение — всегда Field.Dataset (поле набора данных)
<RightValue>Правое значение — произвольное значение, тип определяется через xsi:type

Свойство OutputRules на Area опционально (minOccurs=0). Существующие схемы без блока OutputRules остаются полностью совместимыми с версией 6.1.

Семантика исполнения:

  • Правила с Use = false пропускаются.
  • Для каждого включённого правила вычисляется фактическое значение поля по LeftValue, десериализуется RightValue, применяется ComparisonType.
  • Итог — логическое И всех правил. Пустой список включённых правил даёт true.
  • При ошибке вычисления / десериализации правило трактуется как false (с записью в журнал регистрации исполнителем).

Соединение связывает два набора данных по ключевым полям — аналог JOIN в SQL. Используется когда данные из двух запросов нужно объединить в одну строку вывода.

<Joins pw_type="Join"
Number="1"
Key="j1a2b3c4-..."
Name="JoinContractor"
Type="FirstRow"
LeftDatasetKey="d1e2f3a4-..."
RightDatasetKey="d5e6f7a8-...">
<Fields>
<Fields pw_type="Join.Field"
LeftFieldKey="f1-..."
RightFieldKey="f9-..."/>
</Fields>
</Joins>
АтрибутОбязателенОписание
Type✅Тип соединения — то же перечисление что у Dataset.Type
LeftDatasetKey✅Ключ левого (основного) набора данных
RightDatasetKey✅Ключ правого (присоединяемого) набора данных

Каждый элемент Fields внутри Joins содержит пару ключей:

АтрибутОписание
LeftFieldKeyКлюч поля из левого набора
RightFieldKeyКлюч поля из правого набора

После создания соединения поля правого набора становятся доступны по пути НаборыДанных.[ЛевыйНабор].[ИмяСоединения].[Поле].


Коллекция настроек страницы макета. Каждый элемент — пара «имя–значение» (NameValue). Применяется при выводе документа и может быть переопределена в вариантах (Variants).

<PrintParameters pw_type="NameValue" Name="ОриентацияСтраницы">
<Value pw_type="Value" Type="String">Landscape</Value>
</PrintParameters>
<PrintParameters pw_type="NameValue" Name="ПолеСверху">
<Value pw_type="Value" Type="Number">10</Value>
</PrintParameters>
Имя параметраОписание
ОриентацияСтраницыОриентация страницы (Portrait / Landscape)
МасштабПечатиМасштаб печати в процентах
АвтоМасштабАвтоматический масштаб (true / false)
ПолеСверхуВерхнее поле (мм)
ПолеСлеваЛевое поле (мм)
ПолеСнизуНижнее поле (мм)
ПолеСправаПравое поле (мм)
РазмерКолонтитулаСверхуВысота верхнего колонтитула (мм)
РазмерКолонтитулаСнизуВысота нижнего колонтитула (мм)
ЭкземпляровНаСтраницеКоличество экземпляров на одном листе
ЧередованиеРасположенияСтраницЧередование расположения страниц (true / false)
ДвусторонняяПечатьДвусторонняя печать (true / false)
ЧерноБелаяПечатьЧёрно-белая печать (true / false)
РазмерСтраницыРазмер страницы (например A4)

Колонтитулы представлены только размерами полос: тексты колонтитулов табличного документа в схеме не хранятся и задаются алгоритмом события ПослеФормирования — см. Колонтитулы.


Входные параметры передаются в макет при вызове печати. Стандартный параметр МассивОбъектов добавляется автоматически.

<Parameters pw_type="Parameter"
Key="pm1-..."
Name="НачалоПериода"
Type="Value"
UseInTemplate="false">
<Datatypes>Дата</Datatypes>
<Value/>
<Presentation/>
</Parameters>
Атрибут / ЭлементОписание
TypeТип параметра — см. перечисление
UseInTemplatetrue — параметр доступен напрямую в ячейках шаблона без привязки к набору
<Datatypes>Тип данных значения
<Value>Значение по умолчанию
<Presentation>Строковое представление значения по умолчанию

События позволяют выполнять произвольный код на 1С в определённые моменты формирования печатной формы.

<Events pw_type="Event" Name="BeforeFormation">
<Algorithm>
// Код на встроенном языке 1С
Если НЕ ЗначениеЗаполнено(МассивОбъектов) Тогда
Отказ = Истина;
КонецЕсли;
</Algorithm>
</Events>

Элемент Events содержит единственный дочерний элемент <Algorithm> с кодом на встроенном языке 1С. Допустимые значения атрибута Name — см. перечисление.


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

<Functions pw_type="Function"
Key="fn1-..."
Name="ФорматДаты">
<Description>Форматирует дату в строку вида «дд месяц гггг г.»</Description>
<Algorithm>
Дата = Параметры.Дата;
Возврат Формат(Дата, "ДЛФ=D");
</Algorithm>
<Parameters>
<Parameters pw_type="Function.Parameter"
Number="1"
Key="fnp1-..."
Name="Дата">
<Description>Дата для форматирования</Description>
<Datatypes>Дата</Datatypes>
</Parameters>
</Parameters>
</Functions>
Элемент / АтрибутОписание
<Description>Описание назначения функции
<Algorithm>Тело функции на встроенном языке 1С
<Parameters>Список параметров функции
Parameters.NameИмя параметра — доступен внутри алгоритма как Параметры.ИмяПараметра
Parameters.NumberПорядковый номер параметра (1-based)

Служебная коллекция, хранящая связи между элементами разных таблиц схемы. Используется для отслеживания зависимостей при редактировании схемы (каскадное обновление при переименовании набора, удалении поля и т.п.).

<DataLinks pw_type="DataLink" Key="dl1-...">
<LeftTable>Datasets</LeftTable>
<LeftKey>d1e2f3a4-...</LeftKey>
<RightTable>Areas</RightTable>
<RightKey>e1f2a3b4-...</RightKey>
<Comment/>
</DataLinks>
Элемент / АтрибутОписание
KeyUUID записи связи
<LeftTable>Имя таблицы источника: Queries, Datasets, DatasetFields, Joins, Areas, AreaParameters
<LeftKey>UUID строки в таблице источника
<RightTable>Имя таблицы цели
<RightKey>UUID строки в таблице цели
<Comment>Произвольный комментарий к связи

Вычисляемая коллекция, описывающая все поля, доступные для вставки в параметры областей. Формируется автоматически при загрузке схемы.

<AvailableFields pw_type="AvailableField"
Key="af1-..."
Path="НаборыДанных.DSGoods.Строка.Номенклатура"
DatasetKey="d1e2f3a4-..."
DatasetFieldKey="f1-..."
DatasetFieldName="Номенклатура"
IsRowField="true">
<Presentation>Номенклатура</Presentation>
<Datatypes>СправочникСсылка.Номенклатура</Datatypes>
</AvailableFields>

Пути строятся по следующим шаблонам:

Тип набораШаблон пути
FirstRow / LastRow / ConcatenationНаборыДанных.[Набор].[Поле]
Collection — поле строкиНаборыДанных.[Набор].Строка.[Поле]
Collection — итог по числовому полюНаборыДанных.[Набор].Итог.[Поле].[Агрегат]
Collection — количество строкНаборыДанных.[Набор].КоличествоСтрок
Через соединениеНаборыДанных.[Набор].[Соединение].[Поле]
Системный наборНаборыДанных.СистемныеПоля.[Поле]

[Агрегат] — один из Сумма, Среднее, Максимум, Минимум, ИтогНакопительный, ИтогПоСтранице, ПроцентКИтогу. Первые четыре — итог по всему набору; последние три — построчные накопительные значения. ИтогПоСтранице доступен только для табличных макетов (не для DOCX/XLSX).

Системный набор СистемныеПоля (тип FirstRow, ключ pw_system) воссоздаётся исполнителем при загрузке и не сериализуется в XML. Содержит поля НомерСтраницы, ТекущаяДата, ТекущийПользователь (последнее доступно при наличии БСП).

Алгоритмы пользователя, написанные до версии 2026.2, использовавшие .Итог.[Поле] как сумму, при загрузке макета автоматически переписываются в .Итог.[Поле].Сумма.


Каждый параметр области (Area.Parameter) и поле набора данных содержат элемент <Value>, тип которого определяется атрибутом pw_type. Ниже описаны все возможные структуры значений.


Самый распространённый тип. Указывает на конкретное поле конкретного набора.

<Value pw_type="Field.Dataset"
DatasetKey="d1e2f3a4-..."
DatasetFieldKey="f1-..."
DatasetFieldName="Номенклатура"
IsRowField="true"
IsQueryField="false"
IsFunction="false">
<!-- опционально: вложенный реквизит ссылочного поля -->
<QueryField>Наименование</QueryField>
<!-- опционально: функция над датой -->
<FunctionName>BegOfMonth</FunctionName>
<Datatypes>СправочникСсылка.Номенклатура</Datatypes>
</Value>
Атрибут / ЭлементОписание
DatasetKeyUUID набора данных
DatasetFieldKeyUUID поля внутри набора
DatasetFieldNameИмя поля (для читаемости)
IsRowFieldtrue — поле принадлежит строке коллекции (Collection)
IsQueryFieldtrue — поле является вложенным реквизитом ссылочного поля
IsFunctiontrue — к значению применяется функция даты
AggregateFunctionАгрегатная функция: Sum, Count, CountDistinct, Max, Min, Avg, RunningTotal, PageTotal, PercentOfTotal. RunningTotal / PageTotal / PercentOfTotal — построчные накопительные значения; PageTotal сбрасывается на каждой логической странице и доступен только для табличных макетов
JoinKeyUUID соединения (если поле из правого набора соединения)
<QueryField>Имя вложенного реквизита (например Наименование у поля Контрагент)
<FunctionName>Функция над датой — см. перечисление

Объединяет несколько полей в одну строку с префиксами и окончаниями. Используется когда в одной ячейке нужно вывести несколько реквизитов, например ИНН: 7701234567, КПП: 770101001.

<Value pw_type="Field.Description">
<Row pw_type="Field.Description.Row" Number="1"
Prefix="ИНН: " Ending=", ">
<SourceField pw_type="Field.Dataset"
DatasetKey="..." DatasetFieldKey="..."
DatasetFieldName="ИНН"/>
</Row>
<Row pw_type="Field.Description.Row" Number="2"
Prefix="КПП: " Ending="">
<SourceField pw_type="Field.Dataset"
DatasetKey="..." DatasetFieldKey="..."
DatasetFieldName="КПП"/>
</Row>
</Value>

Каждый элемент Row описывает одну часть составной строки:

Атрибут / ЭлементОписание
NumberПорядковый номер части (1-based)
PrefixТекст перед значением, например "ИНН: "
EndingТекст после значения, например ", "
<SourceField>Источник значения — структура Field.Dataset
<Format>Форматирование значения — структура Format

Выводит числовое значение прописью с указанием валюты. Например: Пятнадцать тысяч рублей 00 копеек.

<Value pw_type="Field.SumInWords">
<NumberField pw_type="Field.Dataset"
DatasetKey="..." DatasetFieldKey="..."
DatasetFieldName="СуммаДокумента"/>
<CurrencyField pw_type="Field.Dataset"
DatasetKey="..." DatasetFieldKey="..."
DatasetFieldName="Валюта"/>
<CurrencyDefault>RUB</CurrencyDefault>
<NoFractions>false</NoFractions>
<FormatString/>
<Parameters/>
</Value>
ЭлементОписание
<NumberField>Источник числового значения суммы — структура Field.Dataset
<CurrencyField>Источник валюты — структура Field.Dataset. Если не указан, используется CurrencyDefault
<CurrencyDefault>Валюта по умолчанию в ISO 4217: RUB, USD, EUR, KZT и др.
<NoFractions>true — не выводить копейки / центы
<FormatString>Строка форматирования (переопределяет стандартный вывод)
<Parameters>Дополнительные параметры функции прописью

Генерирует QR-код из данных. Поддерживает несколько форматов, включая УФЭБС для платёжных реквизитов.

<Value pw_type="Field.QRCode"
Type="JSON"
Accuracy="0"
Size="200">
<Algorithm/>
<Rows>
<Rows pw_type="Field.QRCode.Row" Name="ИНН">
<SourceField pw_type="Field.Dataset"
DatasetKey="..." DatasetFieldKey="..."
DatasetFieldName="ИНН"/>
</Rows>
<Rows pw_type="Field.QRCode.Row" Name="Сумма">
<SourceField pw_type="Field.Dataset"
DatasetKey="..." DatasetFieldKey="..."
DatasetFieldName="Сумма"/>
</Rows>
</Rows>
</Value>
Атрибут / ЭлементОписание
TypeФормат QR-кода — см. перечисление
AccuracyУровень коррекции ошибок (0–3)
SizeРазмер изображения в пикселях
<Algorithm>Код на 1С для формирования данных (если Type = Algorithm)
<Rows>Список полей для QR-кода (если Type = Bank, XML или JSON)
Rows.NameИмя поля в структуре QR-кода
Rows.<SourceField>Источник значения поля — структура Field.Dataset
Rows.<Format>Форматирование значения перед кодированием

Вычисляемое значение — произвольный код на встроенном языке 1С. Результат функции подставляется в ячейку.

<Value pw_type="Field.Function">
<Algorithm>
Возврат Формат(ТекущаяДата(), "ДЛФ=D");
</Algorithm>
</Value>

Внутри алгоритма доступны все данные макета: наборы, параметры, глобальные переменные формирования.


Значение дополнительного реквизита или свойства объекта из подсистемы БСП («Свойства»).

<Value pw_type="Field.Attribute"
AttrSetId="..."
AttrSetName="НастройкиКонтрагентов"
AttrId="..."
AttrName="КатегорияКлиента"
AttrDescription="Категория клиента">
<AttrSetDescription>Настройки контрагентов</AttrSetDescription>
<AttrIdDev>КатегорияКлиента</AttrIdDev>
<SourceField pw_type="Field.Dataset"
DatasetKey="..." DatasetFieldKey="..."
DatasetFieldName="Контрагент"/>
</Value>
Атрибут / ЭлементОписание
AttrSetId / AttrSetNameИдентификатор и имя набора дополнительных реквизитов
AttrId / AttrNameИдентификатор и имя конкретного реквизита
AttrDescriptionПредставление реквизита для пользователя
<SourceField>Поле-владелец реквизита (например, ссылка на контрагента)

Значение контактной информации объекта из подсистемы БСП («Контактная информация»): телефон, адрес, email и т.п.

<Value pw_type="Field.ContactInfo"
KindParentId="..."
KindParentName="Контрагенты"
KindId="..."
KindName="ЮридическийАдрес"
KindDescription="Юридический адрес">
<KindIdDev>ЮридическийАдрес</KindIdDev>
<KindNamePredefined/>
<SourceField pw_type="Field.Dataset"
DatasetKey="..." DatasetFieldKey="..."
DatasetFieldName="Контрагент"/>
<PeriodField pw_type="Field.Dataset"
DatasetKey="..." DatasetFieldKey="..."
DatasetFieldName="Дата"/>
</Value>
Атрибут / ЭлементОписание
KindParentId / KindParentNameВладелец вида контактной информации
KindId / KindNameИдентификатор и имя вида (например ЮридическийАдрес)
KindDescriptionПредставление для пользователя
<SourceField>Поле-объект, для которого запрашивается контактная информация
<PeriodField>Поле с датой актуальности (опционально)

Одно и то же значение зовётся по-разному в контракте и в интерфейсе: в XML лежит Single, в конструкторе то же значение называется БезПовторений, а в выпадающем списке подписано «Без повторений». Колонка В конструкторе даёт имя, под которым значение живёт в конструкторе, и следом в кавычках — подпись из списка, если она отличается от имени. Ассистент отвечает пользователю про интерфейс, а читает контракт, поэтому здесь и то и другое.

Допустимые значения атрибута Kind у элемента Objects:

Справочники · Документы · БизнесПроцессы · Задачи · РегистрыБухгалтерии · РегистрыСведений · РегистрыНакопления · ПланыСчетов · ПланыВидовХарактеристик · Перечисления · Константы · КритерииОтбора · ЖурналыДокументов · ПланыОбмена · ПланыВидовРасчета · РегистрыРасчета · Перерасчеты · ВнешниеИсточникиДанных · НумераторыДокументов · Последовательности


ЗначениеВ конструктореОписание
FirstRowПерваяСтрока «Первая строка»Берётся только первая строка результата
LastRowПоследняяСтрока «Последняя строка»Берётся только последняя строка
ConcatenationСоединениеСтрок «Соединение строк»Строки объединяются в одно значение
CollectionМногострочнаяКоллекция «Многострочная коллекция»Многострочная коллекция — цикл по каждой строке

ЗначениеВ конструктореОписание
SingleБезПовторений «Без повторений»Вывести один раз, независимо от числа строк набора
CollectionПоСтрокамКоллекции «По строкам коллекции»Цикл по строкам связанного набора
Headerheader «Верхний колонтитул»Верхний колонтитул (повторяется на каждой странице)
Footerfooter «Нижний колонтитул»Нижний колонтитул (повторяется на каждой странице)
WrapПереносСтроки «Перенос строки»Длинная строка разбивается по ширине
SkipНеВыводитьНаПечать «Не выводить на печать [без вывода]»Область остаётся в макете, но в печатную форму не попадает
ColumnОбластьКолонки «Область колонки [без вывода]»Служебная область-шаблон колонки: сама не выводится
ControlRowКонтрольнаяСтрока «Контрольная строка [служ: перенос строки]»Служебная область переноса: по ней меряется, влезает ли текст
WrapRowСтрокаПереноса «Строка переноса [служ: перенос строки]»Служебная область переноса: ею выводится каждый перенесённый кусок
EmptyПустаяОбласть «Пустая область [служ: перенос строки]»Служебная область переноса: ею добиваются пустые строки блока

Список в конструкторе зависит от формата макета: Header и Footer предлагаются только для DOCX, Column — только для табличного документа.


ЗначениеВ конструктореОписание
NewSectionНовыйРаздел «Новый раздел»Начать новый раздел (разрыв страницы перед областью)
RepeatInHeaderПовторятьПриПечати «Повторять в шапке»Повторять в шапке каждой страницы
RepeatInFooterПовторятьВПодвале «Повторять в подвале»Повторять в подвале каждой страницы
CheckPrintПроверитьВывод «Проверить вывод»Проверять необходимость вывода перед выводом области

Используется в Area.OutputRule/ComparisonType. Имена и состав соответствуют типовому 1С-перечислению ВидСравненияКомпоновкиДанных (DataCompositionComparisonType). Отдельной колонки «В конструкторе» здесь нет: конструктор хранит те же имена, что и XML, а подпись в списке совпадает с описанием ниже.

ЗначениеОписаниеПрименимость по типуТребует <RightValue>
EqualРавнолюбойда
NotEqualНе равнолюбойда
LessМеньшеЧисло / Дата / Строка / Булевода
LessOrEqualМеньше или равноЧисло / Дата / Строка / Булевода
GreaterБольшеЧисло / Дата / Строка / Булевода
GreaterOrEqualБольше или равноЧисло / Дата / Строка / Булевода
InListВ спискелюбойда (список)
NotInListНе в спискелюбойда (список)
InHierarchyВ иерархиииерархические ссылочныеда
NotInHierarchyНе в иерархиииерархические ссылочныеда
InListByHierarchyВ списке по иерархиииерархические ссылочныеда (список)
NotInListByHierarchyНе в списке по иерархиииерархические ссылочныеда (список)
ContainsСодержитСтрокада
NotContainsНе содержитСтрокада
FilledЗаполненолюбойнет
NotFilledНе заполненолюбойнет
LikeПодобно (шаблон %, _)Строкада
NotLikeНе подобноСтрокада
BeginsWithНачинается сСтрокада
NotBeginsWithНе начинается сСтрокада

Применимость по типу — для фильтрации в UI редактора. На исполнении несовместимые комбинации трактуются как невыполненное правило.


ЗначениеВ конструктореОписание
BankУФЭБСУФЭБС (стандарт быстрого платежа)
XMLXMLПроизвольный XML
JSONJSONПроизвольный JSON
AlgorithmАлгоритмПроизвольный алгоритм на 1С

ЗначениеВ конструктореКогда срабатывает
BeforeInitializationПередИнициализацией «Перед инициализацией»Перед инициализацией макета
OnDataReceivingПриПолученииДанных «При получении данных»При получении данных
BeforeFormationПередФормированием «Перед формированием»Перед началом формирования
BeforePageOutputПередВыводомСтраницы «Перед выводом страницы»Перед выводом каждой страницы
BeforeAreaOutputПередВыводомОбласти «Перед выводом области»Перед выводом каждой области
AfterAreaOutputПослеВыводаОбласти «После вывода области»После вывода области
AfterPageOutputПослеВыводаСтраницы «После вывода страницы»После вывода страницы
AfterFormationПослеФормирования «После формирования»После завершения формирования

ЗначениеВ конструктореОписание
ValueTableТаблицаЗначений «Таблица значений»Обычный запрос, результат используется как набор данных
TempTableВременнаяТаблица «Временная таблица»Временная таблица — промежуточный результат для других запросов

ЗначениеВ конструктореОписание
Value«Значение»Единственное значение
List«Список»Список значений
Table«Таблица»Таблица значений
Algorithm«Алгоритм»Вычисляется алгоритмом

Применяются к полям типа Дата через атрибут IsFunction = true и элемент <FunctionName>. Конструктор хранит те же имена, что и XML, а подписью в списке служит описание из таблицы («Начало дня», «День недели» и так далее):

ЗначениеОписание
BegOfMinute / EndOfMinuteНачало / конец минуты
BegOfHour / EndOfHourНачало / конец часа
BegOfDay / EndOfDayНачало / конец дня
BegOfWeek / EndOfWeekНачало / конец недели
BegOfMonth / EndOfMonthНачало / конец месяца
BegOfQuarter / EndOfQuarterНачало / конец квартала
BegOfYear / EndOfYearНачало / конец года
SecondСекунда
MinuteМинута
HourЧас
DayДень месяца
WeekDayДень недели (1 = понедельник)
DayOfYearДень года
WeekOfYearНеделя года
MonthМесяц
YearГод