При разработке отчетов можно выполнять различные скрипты в режиме вычисления как Интерпретация (Interpretation). Для этого должны быть выполнены следующие условия:

Свойство шаблона Скриптовый язык (Script Language) должно быть установлен в значение C#;
В описании скрипта должен быть оператор return.

 

Информация

 

Если в выражении присутствуеит оператор return, генератор отчетов обработает это выражение как скрипт. Без оператора return любые конструкции обрабатываются как простое выражение.

 

 

 

При разработке различных скриптов можно использовать:

переменные отчета;
колонки данных;
функции, включая пользовательские;
базовые конструкции C# – if, else, тернарный оператор, циклы.

 

Скрипты можно использовать в:

событиях отчета;
пользовательских функциях;
выражениях отчета;
выражениях компонентов, переменных, вычисляемых колонках.

 

 

Скриптовый язык

Обработка скриптов в отчете зависит от выбранного значения для свойства Скриптовый язык (Script Language). Для работы C# скриптов на всех поддерживаемых платформах, необходимо свойство Скриптовый язык установить в значение C#. Это значение установлено по умолчанию для всех новых отчетов. Однако, для обратной совместимости, в ранее сознанных отчетах свойство Скриптовый язык будет установлено в значение Платформа (Platform). В этом случае, скриптовый язык зависит от платформы, на котором выполняется построение отчета:

платформа .NET - используются C# скрипты;
платформа JS - используется JavaScript.

 

 

Управление выполнением скриптов

Чтобы полностью отключить выполнение скриптов, следует установить свойство отчета Разрешить выполнение скриптов (Allow Scripts To Run) в значение Нет (False). Если же необходимо запретить скрипты только в выражениях, установите свойство отчета Разрешить скрипты в выражениях (Allow Scripts In Expressions) в значение Нет (False).

 

Информация

 

Обратите внимание, что выполнение скриптов в выражениях также зависит от свойства Разрешить выполнение скриптов. Если выполнение скриптов запрещено в свойствах отчетах, то значение свойства Разрешить скрипты в выражениях не будет учитываться, так как скрипты не будут выполняться. Кроме этого можно установить таймаут скрипта при помощи свойства Время ожидания выполнения скрипта (Script Timeout) в секундах.

 

 

 

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