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

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
ФорматИзСхемы(знач Значение)ФункцияВозвращает ключ формата по структуре ФорматОбщий
ЗначениеПоляНабораВСхему(знач СтрокаПоля)ФункцияСериализует поле набора/параметр области из ТЧ в структуру
ЗначениеПоляНабораИзСхемы(знач Значение)ФункцияДесериализует структуру поля в строку ТЧ