Пользовательские функции

При разработке отчетов и дашбордов в дизайнере отчетов присутствует возможность создать пользовательскую функцию. Сценарий функции можно описать с использованием визуального средства программирования Blockly или на одном из языков программирования, который установлен как скриптовый язык отчета: JS, C#, VB.NET. Функции создаются в словаре данных отчета.

 

Для того чтобы создать новую функцию, следует:
strel11 Выбрать пункт Новая функция... (New Function...) в меню Создать (New);

strel11 Выбрать команду Новая функция... (New Function...) контекстном меню словаря данных.

 

Пользовательскую функцию можно отредактировать. Для этого следует:
strel11 Выделить пользовательскую функцию в словаре данных, и нажать элемент управления Редактировать (Edit);

strel11 Выделить пользовательскую функцию в словаре данных, и нажать команду Редактировать (Edit) в контекстном меню словаря данных.

 

 

Редактор пользовательской функции

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

 

 

img_1 Поле Наименование (Name) предоставляет возможность изменить наименование функции. Является обязательным полем, т.к. обращение к функции осуществляется по ее имени.

img_2 Поле Описание (Description) предоставляет возможность указать дополнительную информацию для функции. Если это поле не является пустым, то дополнительная информация будет отображаться на панели описаний в словаре данных.

img_3 Параметр Категория (Category) предоставляет возможность определить категорию словаря данных, в которую будет добавлена новая функция. Содержит перечень предустановленных категорий, а также режим По выбору (Custom). Если выбрано значение По выбору, то будет отображаться поле Пользовательская категория (Custom Category). Категории используются для каталогизации функций и сами по себе не несут какой-либо функциональности.

img_4 Поле Пользовательская категория (Custom Category) отображается только если параметр Категория установлен в значение По выбору. В этом поле можно указать наименование пользовательской категории, которая будет создана при создании функции. Если поле Пользовательская категория будет не заполнено, то функция будет добавлено в корень категории Функции (Functions).

img_5 Параметр Тип возвращаемого значения (Return Type) предоставляет возможность установить тип данных, который будет возвращать функция.

img_6 Кнопка Добавить (Add) предоставляет добавить аргументы функции. Максимально, в функцию можно передать 10 аргументов.

img_7 Список аргументов функции. Если добавлен хотя бы один аргумент, будут отображаться параметры при помощи которых можно определить тип данных аргумента и его наименование.

img_8 Параметр Тип аргумента (Argument Type) предоставляет возможность установить тип данных аргумента.

img_9 Поле Наименование аргумента (Argument Name) предоставляет возможность установить имя аргумента, по которому можно обращаться к нему в сценарии функции.

img_10 Параметр Режим сценария (Script Mode) предоставляет возможность выбрать режим создания сценария Блоки (Blocks) или Код (Code). Сценарий созданный при помощи Blockly, является универсальным для всех платформ. Сценарий функции будет работать во всех генераторах отчетов Stimulsoft. Однако, сценарий может быть реализовано и при помощи скриптового языка отчета - JS, C#, VB.NET.

img_11 Поле сценария функции, в котором отображается код функции или надпись (Блоки) (Blocks), что в свою очередь означает реализацию сценария при помощи Blockly.

 

 

Особенности сценария функции с помощью кода
При реализации сценария функции при помощи кода, следует иметь в виду несколько ограничений и особенностей:
strel11 Во-первых, сценарий должен быть реализован на том языке программирования, который установлен как скриптовый язык отчета. Изменить его при помощи одноименного свойства шаблона отчета Скриптовый язык (Script Language).

strel11 Во-вторых, в случае построения отчета в генераторе отчетов для .NET и .NET Framework, сценарий функции написанный при помощи кода будет выполняться только в случае если режим вычисления отчета определен как Компиляция (Compilation).

strel11 В-третьих, при выполнении кода сценария функции в генераторе отчетов для .NET и .NET Framework следует учитывать значение параметра Доступ к компиляции (Compilation Access) на вкладке Главные (Main) в меню Параметры (Options) дизайнера отчетов. Если параметр Доступ к компиляции установлен в значение Запретить (Deny) или Включить режим интерпретации (Force Interpretation), то код сценария не будет выполняться. В генераторе отчетов для JS, PHP и Python следует учитывать значение параметра Доступ к событиям (Events Access) на вкладке Главные (Main) в меню Параметры (Options) дизайнера отчетов. Если параметр Доступ к событиям установлен в значение Запретить (Deny), то код сценария не будет выполняться.