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

API pw_Схема

Обработка pw_Схема является главным объектом объектной модели PrintWizard. Она выступает фабрикой типов (возвращает структуры-«прототипы» для каждого элемента схемы), хранит коллекции всех элементов и обеспечивает загрузку/выгрузку в плоскую структуру Макет.

Специализированные под-модули (pw_СхемаЗапросы, pw_СхемаНаборы и т.д.) управляют каждой коллекцией независимо. Они создаются и инициализируются внутри pw_Схема; напрямую их создавать не нужно — доступ через свойства экземпляра схемы.


МетодТипОписание
Загрузить(знач Значение)ПроцедураЗагружает схему из структуры Макет
ПередЗагрузкой()ПроцедураПодготовка схемы перед загрузкой (очистка)
ПослеЗагрузки()ПроцедураПостобработка после загрузки (пересчёт связей)
Выгрузить()ФункцияВыгружает схему в структуру Макет
Перечисления()ФункцияВозвращает структуру с описанием всех перечислений схемы
ПредставлениеПоля(знач Поле)ФункцияВозвращает массив строк-представлений для поля области
МетодТипОписание
УстановитьШаблон(знач Значение)ПроцедураЗагружает шаблон из переданных данных (MXL, DOCX, XLSX в base64)
ПолучитьШаблон()ФункцияВозвращает данные шаблона макета
МетодТипОписание
Версия()ФункцияВозвращает версию схемы
СвойствоТипа()ФункцияВозвращает имя свойства, обозначающего тип в модели
ЭтоКоллекция(знач Значение, знач ИмяТипа)ФункцияПроверяет, является ли значение коллекцией указанного типа
ЭтоСхема(знач Значение, знач ИмяТипа)ФункцияПроверяет, является ли значение схемой указанного типа
ПрочитатьИзСтрокиXML(знач СтрокаXML)ФункцияДесериализует объект из внутреннего XML
ЗаписатьВСтрокуXML()ФункцияСериализует объект во внутренний XML
УстановитьЯдро(знач Значение)ПроцедураУстанавливает ядро из внешнего объекта

Каждый тип элемента схемы представлен тремя методами:

  • ТипИмя() — возвращает строковое имя типа (используется как pw_type в XML/структуре)
  • ЭтоИмя(знач Значение, знач Коллекция = Ложь) — проверяет соответствие значения типу
  • Имя() — возвращает новую пустую структуру-прототип типа
КонструкторТип / ПроверкаОбласть
Макет()ТипМакет() / ЭтоМакет(Значение)Макет
Реквизиты()ТипРеквизиты() / ЭтоРеквизиты(Значение)Реквизиты
Объект()ТипОбъект() / ЭтоОбъект(Значение, Коллекция)Объект
Команда()ТипКоманда() / ЭтоКоманда(Значение)Команда
Параметр()ТипПараметр() / ЭтоПараметр(Значение, Коллекция)Параметр
Запрос()ТипЗапрос() / ЭтоЗапрос(Значение, Коллекция)Запрос
ПолеЗапроса()ТипПолеЗапроса() / ЭтоПолеЗапроса(Значение, Коллекция)ПолеЗапроса
Набор()ТипНабор() / ЭтоНабор(Значение, Коллекция)Набор
ПолеНабора()ТипПолеНабора() / ЭтоПолеНабора(Значение, Коллекция)ПолеНабора
ИсточникДанных()ТипИсточникДанных() / ЭтоИсточникДанных(Значение)ИсточникДанных
Соединение()ТипСоединение() / ЭтоСоединение(Значение, Коллекция)Соединения
ПолеСоединения()ТипПолеСоединения() / ЭтоПолеСоединения(Значение, Коллекция)ПолеСоединения
Область()ТипОбласть() / ЭтоОбласть(Значение, Коллекция)Области
ПараметрОбласти()ТипПараметрОбласти() / ЭтоПараметрОбласти(Значение, Коллекция)ПараметрОбласти
ПравилоВывода()ТипПравилоВывода() / ЭтоПравилоВывода(Значение, Коллекция)ПравилаВывода области
ПараметрПечати()ТипПараметрПечати() / ЭтоПараметрПечати(Значение, Коллекция)ПараметрыПечати
Событие()ТипСобытие() / ЭтоСобытие(Значение, Коллекция)События
ФункцияМакета()ТипФункцияМакета() / ЭтоФункцияМакета(Значение, Коллекция)ФункцияМакета
ПараметрФункции()ТипПараметрФункции() / ЭтоПараметрФункции(Значение, Коллекция)ПараметрФункции
ДоступноеПоле()ТипДоступноеПоле() / ЭтоДоступноеПоле(Значение, Коллекция)ДоступноеПоле
СвязьДанных()ТипСвязьДанных() / ЭтоСвязьДанных(Значение, Коллекция)СвязьДанных
КонструкторТип / ПроверкаОписание
ПолеНабораДанных()ТипПолеНабораДанных() / ЭтоПолеНабораДанных(Значение)Поле из запроса / набора
ПолеСвойства()ТипПолеСвойства() / ЭтоПолеСвойства(Значение)Доп. свойство БСП
ПолеКонтактнойИнформации()ТипПолеКонтактнойИнформации() / ЭтоПолеКонтактнойИнформации(Значение)Контактная информация БСП
ПолеПредставления()ТипПолеПредставления() / ЭтоПолеПредставления(Значение, Коллекция)Составное представление
ПолеНумератора()ТипПолеНумератора() / ЭтоПолеНумератора(Значение, Коллекция)Автонумерация строк
ПолеАлгоритма()ТипПолеАлгоритма() / ЭтоПолеАлгоритма(Значение)Вычисляемое поле
ПолеQRКода()ТипПолеQRКода() / ЭтоПолеQRКода(Значение)QR-код
ЭлементПоляQRКода()ТипЭлементПоляQRКода() / ЭтоЭлементПоляQRКода(Значение, Коллекция)Строка QR-кода
ПолеСуммаПрописью()ТипПолеСуммаПрописью() / ЭтоПолеСуммаПрописью(Значение)Сумма прописью
КонструкторТип / ПроверкаПроверка «пустой»
ФорматОбщий()ТипФорматОбщий() / ЭтоФорматОбщий(Значение)ЭтоПустойФорматОбщий(Значение)
ФорматЧисло()ТипФорматЧисло() / ЭтоФорматЧисло(Значение)ЭтоПустойФорматЧисло(Значение)
ФорматДата()ТипФорматДата() / ЭтоФорматДата(Значение)ЭтоПустойФорматДата(Значение)
ФорматБулево()ТипФорматБулево() / ЭтоФорматБулево(Значение)ЭтоПустойФорматБулево(Значение)
ФорматЧислоПрописью()ТипФорматЧислоПрописью() / ЭтоФорматЧислоПрописью(Значение)ЭтоПустойФорматЧислоПрописью(Значение)
ФорматСтрока()ТипФорматСтрока() / ЭтоФорматСтрока(Значение)ЭтоПустойФорматСтрока(Значение)

Дополнительно: ЭтоЗначениеПараметраОбласти(Значение) — проверяет, что значение является схемой значения ПараметрОбласти. ЭтоПустойФормат(Значение) — проверяет, является ли значение любой пустой схемой форматирования.


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

МетодТипПараметрыОписание
Выгрузить()ФункцияВыгружает коллекцию в таблицу значений
Коллекция()ФункцияВозвращает коллекцию доступных полей
Получить(знач Значение)ФункцияИндекс, ключ или путьВозвращает доступное поле
Добавить(знач ДоступноеПоле, знач ИмяПоля)ФункцияСимвол * допустим только на последнем уровне путиДобавляет поле в коллекцию
Индекс(знач ДоступноеПоле)ФункцияЭлемент коллекцииИндекс элемента в коллекции
Количество()ФункцияКоличество доступных полей
Обновить(знач Отбор = Неопределено)ФункцияКлюч или имя набора для частичного обновленияПересчитывает коллекцию

Управляет коллекцией запросов схемы.

МетодТипПараметрыОписание
Загрузить(знач Запросы)ПроцедураМассив структурПолная загрузка из коллекции
Коллекция()ФункцияВозвращает коллекцию запросов
Получить(знач Значение)ФункцияКлюч или имяПоиск запроса
Вставить(знач Индекс, знач Значение = Неопределено, знач Имя = "")ФункцияИндекс позицииВставляет запрос по позиции
Добавить(знач Значение = Неопределено, знач Имя = "")ФункцияДобавляет запрос в конец
Обновить(знач Запрос)ФункцияСтруктура запросаОбновляет запрос по ключу
Удалить(знач Значение)ФункцияИндекс, ключ или структураУдаляет запрос
Очистить()ФункцияОчищает коллекцию
Индекс(знач Запрос)ФункцияЭлемент коллекцииИндекс элемента
Количество()ФункцияКоличество запросов
ТекстЗапроса(знач КлючИмя = Неопределено)ФункцияКлюч или имяВозвращает текст запроса
ОбновитьТекстЗапроса(знач Значение, знач ТекстЗапроса)ФункцияОбновляет текст запроса
НайтиПоле(знач Значение, знач КлючИмяПоля = Неопределено)ФункцияЗапрос; ключ или имя поляПоиск поля запроса
ОбновитьПоля(знач Значение)ФункцияЗапросПересинхронизирует поля запроса с текстом
КлючСтроки(знач НомерСтроки, знач Имя)ФункцияГенерирует ключ для запроса
КлючСтрокиПоля(знач КлючЗапроса, знач ИмяПоля)ФункцияГенерирует ключ для поля запроса

Управляет коллекцией наборов данных.

МетодТипПараметрыОписание
Загрузить(знач Наборы)ПроцедураМассив структурПолная загрузка
Коллекция()ФункцияКоллекция наборов
Получить(знач Значение)ФункцияКлюч или имяПоиск набора
Вставить(знач Индекс, знач Значение = Неопределено, знач Имя = "", знач Тип = "")ФункцияВставка по позиции
Добавить(знач Значение = Неопределено, знач Имя = "")ФункцияДобавление в конец
Обновить(знач Набор)ФункцияСтруктура набораОбновление по ключу
Удалить(знач Значение)ФункцияУдаление набора
Очистить()ПроцедураОчистка коллекции
Индекс(знач Набор)ФункцияИндекс элемента
Количество()ФункцияКоличество наборов
ПолучитьПоле(знач Набор, знач Поле)ФункцияНабор; индекс, ключ или имя поляВозвращает поле набора
КлючСтроки(знач НомерСтроки, знач Имя)ФункцияГенерирует ключ для набора
КлючСтрокиПоля(знач КлючНабора, знач Имя, знач Тип)ФункцияГенерирует ключ для поля набора

Управляет коллекцией областей шаблона.

МетодТипПараметрыОписание
Загрузить(знач Области)ПроцедураМассив структурПолная загрузка
Коллекция()ФункцияКоллекция областей
Получить(знач Значение)ФункцияИндекс, ключ или имяВозвращает область
Вставить(знач Индекс, знач Область = Неопределено)ФункцияВставка по позиции
Добавить(знач Область = Неопределено)ФункцияДобавление в конец
Обновить(знач Область)ФункцияСтруктура областиОбновление по ключу
Удалить(знач Значение)ФункцияУдаление области
Очистить()ПроцедураОчистка коллекции
Индекс(знач Область)ФункцияИндекс элемента
Количество()ФункцияКоличество областей
КлючСтроки(знач НомерСтроки, знач Имя)ФункцияГенерирует ключ для области
КлючСтрокиПараметра(знач КлючОбласти, знач Имя, знач Тип)ФункцияГенерирует ключ для параметра области
КлючСтрокиПравила(знач КлючОбласти, знач Порядок, знач Имя)ФункцияГенерирует ключ для правила вывода области

Управляет коллекцией объектов метаданных 1С, связанных с макетом.

МетодТипПараметрыОписание
Загрузить(знач Объекты)ПроцедураМассив структурПолная загрузка
Коллекция()ФункцияКоллекция объектов
Получить(знач Значение)ФункцияИндекс, ключ или имяВозвращает объект
Вставить(знач Индекс, знач Значение = Неопределено)ФункцияВставка по позиции
Добавить(знач Значение = Неопределено)ФункцияДобавление в конец
Обновить(знач Объект)ФункцияСтруктура объектаОбновление по ключу
Удалить(знач Значение)ФункцияУдаление объекта
Очистить()ПроцедураОчистка коллекции
Индекс(знач Объект)ФункцияИндекс элемента
Количество()ФункцияКоличество объектов
КлючСтроки(знач НомерСтроки, знач ПолноеИмя)ФункцияГенерирует ключ для объекта

Управляет коллекцией входных параметров схемы.

МетодТипПараметрыОписание
Загрузить(знач Параметры)ПроцедураМассив структурПолная загрузка
Коллекция(знач ПараметрМакета = Неопределено)ФункцияНеобязательный фильтр по типуКоллекция параметров
Получить(знач Значение)ФункцияИндекс, ключ или имяВозвращает параметр
Вставить(знач Индекс, знач Значение = Неопределено, знач Имя = "", знач Тип = "")ФункцияВставка по позиции
Добавить(знач Значение = Неопределено, знач Имя = "", знач Тип = "")ФункцияДобавление в конец
Обновить(знач Параметр)ФункцияСтруктура параметраОбновление по ключу
Удалить(знач Значение)ФункцияУдаление параметра
Очистить()ПроцедураОчистка коллекции
Индекс(знач Параметр)ФункцияИндекс элемента
Количество()ФункцияКоличество параметров
Установить(знач Параметр, знач Значение)ФункцияПараметр; новое значениеУстанавливает значение параметра
КлючСтроки(знач НомерСтроки, знач Имя)ФункцияГенерирует ключ для параметра

Управляет коллекцией параметров страницы (ориентация, поля, масштаб и т.д.).

МетодТипПараметрыОписание
Загрузить(знач Параметры)ПроцедураМассив структурПолная загрузка
Коллекция()ФункцияКоллекция параметров
Получить(знач Имя)ФункцияИмя параметраВозвращает значение параметра по имени
Установить(знач Имя, знач Значение)ФункцияИмя; значениеУстанавливает параметр
Удалить(знач Имя)ФункцияИмя параметраУдаляет параметр
Очистить()ПроцедураОчищает коллекцию
Количество()ФункцияКоличество параметров
ЗаполнитьИзТабличногоДокумента(знач ТабличныйДокумент)ФункцияТабличныйДокументСчитывает настройки печати из документа

Служебная коллекция связей между таблицами схемы. Пересчитывается автоматически при изменениях объектной модели.

МетодТипПараметрыОписание
Выгрузить()ФункцияВыгружает связи в таблицу значений
Коллекция()ФункцияКоллекция связей
Получить(знач Значение)ФункцияИндекс или ключВозвращает связь
Индекс(знач СвязьДанных)ФункцияЭлементИндекс элемента
Количество()ФункцияКоличество связей
Обновить(знач ИменаТаблиц = Неопределено, знач Отбор = Неопределено)ПроцедураМассив имён таблиц для частичного обновленияПересчитывает связи

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

МетодТипПараметрыОписание
Загрузить(знач События)ПроцедураМассив структурПолная загрузка
Коллекция()ФункцияКоллекция событий
Получить(знач Значение)ФункцияИндекс, ключ или имяВозвращает событие
Установить(знач ИмяСобытия, знач Алгоритм)ФункцияИмя события; текст алгоритмаУстанавливает обработчик; добавляет, если нет
Удалить(знач Значение)ФункцияУдаляет событие
Очистить()ПроцедураОчищает коллекцию
Индекс(знач Событие)ФункцияИндекс элемента
Количество()ФункцияКоличество событий
КлючСтроки(знач Имя)ФункцияИмя событияГенерирует ключ для события

Управляет коллекцией соединений наборов данных.

МетодТипПараметрыОписание
Загрузить(знач Соединения)ПроцедураМассив структурПолная загрузка
Коллекция()ФункцияКоллекция соединений
Получить(знач Значение)ФункцияИндекс, ключ или имяВозвращает соединение
Вставить(знач Индекс, знач Значение = Неопределено, знач Имя = "", знач Тип = "")ФункцияВставка по позиции
Добавить(знач Значение = Неопределено, знач Имя = "", знач Тип = "")ФункцияДобавление в конец
Обновить(знач Соединение)ФункцияСтруктура соединенияОбновление по ключу
Удалить(знач Значение)ФункцияУдаление
Очистить()ПроцедураОчистка
Индекс(знач Соединение)ФункцияИндекс элемента
Количество()ФункцияКоличество соединений
КлючСтроки(знач НомерСтроки, знач Имя)ФункцияГенерирует ключ для соединения
КлючСтрокиПоля(знач КлючСоединения, знач КлючПоляЛево, знач КлючПоляПраво)ФункцияГенерирует ключ для поля соединения

Управляет коллекцией пользовательских функций макета.

МетодТипПараметрыОписание
Загрузить(знач Функции)ПроцедураМассив структурПолная загрузка
Коллекция()ФункцияКоллекция функций
Получить(знач Значение)ФункцияИндекс, ключ или имяВозвращает функцию
Вставить(знач Индекс, знач Значение = Неопределено)ФункцияВставка по позиции
Добавить(знач Значение = Неопределено)ФункцияДобавление; при дублировании ключа/имени выбрасывает исключение
Обновить(знач ФункцияМакета)ФункцияСтруктура функцииОбновление по ключу
Удалить(знач Значение)ФункцияУдаление
Очистить()ПроцедураОчистка
Индекс(знач ФункцияМакета)ФункцияИндекс элемента
Количество()ФункцияКоличество функций
КлючСтроки(знач НомерСтроки, знач Имя)ФункцияГенерирует ключ для функции
КлючСтрокиПараметра(знач КлючОбласти, знач Имя)ФункцияГенерирует ключ для параметра функции

Вспомогательный модуль, используемый внутри системы pw_Схема*. Содержит утилиты глубокого копирования, проверки типов и сериализации источников/форматов.

МетодТипОписание
КопияМодели(знач Значение)ФункцияСоздаёт глубокую копию структуры-модели
КопияКоллекции(знач Значение)ФункцияСоздаёт глубокую копию коллекции
ЭтоТипМодели(знач ТипПроверки)ФункцияПроверяет, может ли тип быть моделью
ЭтоТипКоллекция(знач ТипПроверки)ФункцияПроверяет, может ли тип быть коллекцией
МетодТипОписание
СтрокаПоКлючу(знач Таблица, знач Ключ)ФункцияВозвращает строку таблицы по ключу
СтрокаПоИндексу(знач Таблица, знач Индекс)ФункцияВозвращает строку таблицы по индексу
ПроверитьИмя(знач Таблица, знач СтрокаТаблицы, знач Обновить = Истина)ФункцияПроверяет уникальность имени в коллекции
НайтиКлючПоляОтбора(знач КоллекцияПолей)ФункцияНаходит наиболее подходящий ключ для стандартного отбора по ссылке
МетодТипОписание
ИсточникВСхему(знач КлючИсточника)ФункцияВозвращает структуру источника данных по ключу строки ТЧ DataSources
ИсточникИзСхемы(знач Источник)ФункцияВозвращает ключ источника по структуре ИсточникДанных
ФорматВСхему(знач КлючФормата)ФункцияВозвращает структуру формата по ключу строки ТЧ Formats
ФорматИзСхемы(знач Значение)ФункцияВозвращает ключ формата по структуре ФорматОбщий
ЗначениеПоляНабораВСхему(знач СтрокаПоля)ФункцияСериализует поле набора/параметр области из ТЧ в структуру
ЗначениеПоляНабораИзСхемы(знач Значение)ФункцияДесериализует структуру поля в строку ТЧ