Поделиться через


Поддерживаемые составные типы данных для формул электронной отчетности

В этой статье содержится информация о составных типах данных, которые поддерживаются в выражениях электронной отчетности (ER). Составные типы данных — это класс, контейнер, запись, список записей и объект.

Класс

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

В компонентах сопоставления и формата электронной отчетности можно добавить источник данных Класс, который представляется в качестве источника данных и который возвращает значение типа класс. Этот источник данных предоставляет открытые методы класса, которые могут быть вызваны во время выполнения.

Примечание

Из выражений электронной отчетности могут быть вызваны только методы, возвращающие значение.

Из выражений электронной отчетности могут быть вызваны только методы с количеством аргументов в диапазоне от нуля до восьми.

Значение по умолчанию для классаNULL.

На следующем рисунке показано, как добавляется источник данных Системная информация(xInfo) типа Класс, чтобы сделать экземпляр класса приложения xInfo и вызвать его метод productName() для получения имени текущего приложения. Имя текущего приложения извлекается во время выполнения путем выполнения привязки xInfo.productName, которая была настроена для поля Имя программного обеспечения(SoftwareName) модели данных электронной отчетности. Эта привязка вызывает метод productName() класса приложения xInfo, который представлен в текущем сопоставлении модели как источник данных Системная информация(xInfo).

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

На следующем рисунке показано, как настроить формат электронной отчетности для помещения указанного имени приложения в создаваемые документы. Поле Имя программного обеспечения(SoftwareName) используемой модели данных было привязано к компоненту Строка, вложенному в XML-элемент softwareUsed формата электронной отчетности. Таким образом, имя текущего приложения помещается во время выполнения в XML-элемент softwareUsed созданного документа в формате XML.

Настройка структуры электронного исходящего документа в конструкторе формата электронной отчетности.

Контейнер

Тип данных контейнер содержит двоичное содержимое. Значение контейнера может использоваться для передачи определенной информации из хранилища в созданный документ. В платформе электронной отчетности этот тип данных часто используется для размещения мультимедийного содержимого, такого как эмблема компании, в создаваемых документах.

Примечание

Хотя каждый элемент мультимедиа может быть представлен как значение типа контейнер, не как каждое значение типа контейнер представляет элемент мультимедиа. Таким образом, если формат электронной отчетности настроен таким образом, что он использует контейнер для помещения изображения в генерируемые документы, но контейнер, на который указывает ссылка, не возвращает мультимедийного содержимого, может быть выдано исключение, напоминающее приведенный ниже пример: "Ошибка выполнения кода: двоичный (object), метод constructFromContainer вызван с недопустимыми параметрами".

Значение по умолчанию для типа контейнерNULL.

На следующем рисунке показано, как поле Точечный рисунок(Image) типа Контейнер связывается с полем Логотип модели данных типа Контейнер в сопоставлении модели Накладная по продаже. Эта привязка делает эмблему компании доступной для любого формата электронной отчетности, который предназначен для определения корня SalesInvoice и который использует это сопоставление модели во время выполнения.

Привязка поля типа контейнера в конструкторе сопоставления модели электронной отчетности.

Запись

Запись представляет собой коллекцию именованных полей, каждое из которых связано со значением примитивного типа данных или составного типа данных. Обычно запись используется для представления отдельной записи списка записей. В этом случае каждый элемент представляет отдельные поля, методы и отношения.

Значение по умолчанию для типа записьпусто.

Примечание

При получении значения поле из пустой записи возвращается значение по умолчанию соответствующего типа данных.

Запись можно получить с помощью следующих функций:

Дополнительные сведения о преобразовании значений типа запись см. в разделе Список функций электронной отчетности в категории "Список".

Список записей

Список записей представляет собой список элементов типа запись. Обычно список записей используется для представления списка записей, которые были извлечены из таблицы базы данных.

По умолчанию доступ к записям списка записей осуществляется последовательно. Для доступа к конкретной записи можно использовать функцию INDEX и указать целочисленный индекс типа целое число.

Значение по умолчанию для типа список записейпусто. Функцию ISEMPTY можно использовать для оценки того, что список записей пуст.

Примечание

Если список записей пуст, любая попытка получить значение поля для записи в нем вызовет исключение во время выполнения. Сведения о том, как предотвратить исключения времени выполнения этого типа, см. в разделе Учет пустых вариантов списка.

Список записей можно инициировать с помощью следующих функций:

Дополнительные сведения о преобразовании значений типа список записей см. в разделе Список функций электронной отчетности в категории "Список". Чтобы узнать, как создавать элементы списка записей, заполнять их данными приложения, а затем использовать эти данные для создания бизнес-документов, см. раздел Создание нового решения электронной отчетности для печати настраиваемого отчета.

Объект

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

Значение по умолчанию для типа объектNULL.

На следующем рисунке показано, как источник данных ReportDataContract типа Объект добавляется для передачи сведений о созданной накладной из исходного кода в сопоставление модели Накладная по проекту. Например, текст экземпляра накладной передается как часть контекста выполнения. Этот текст берется из исходного кода во время выполнения путем выполнения привязки ReportDataContract.parmInvoiceInstanceText, которая была настроена для поля Примечание в модели данных электронной отчетности. Эта привязка вызывает метод parmInvoiceInstanceText() класса приложения PSAProjInvoiceContract, который представлен в текущем сопоставлении модели как источник данных ReportDataContract.

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

Чтобы узнать, как передать сведения о контексте выполнения из исходного кода в выполняемое решение электронной отчетности, см. раздел Разработка артефактов приложений для вызова созданного отчета.

Дополнительные ресурсы