Выражение исходных данных

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

Для относительных отчетов данное выражение может содержать ссылки с соответствующими путями контекста, любые соотносимые ссылки будут разрешаться относительно контекста, в котором было выбрано действие Запустить отчет. Если отчет был запущен с использованием действия Показать отчет или из Редактора отчетов, связанные ссылки будут разрешаться относительно контекста, обозначенного свойством отчета Контекст по умолчанию.

Среда вычисления выражения исходных данных:

Контекст по умолчанию

Для aбсолютного отчета - сам контекст отчета.

Для относительного отчета - контекст, для которого запускается отчет.

Таблица данных по умолчанию

Таблица параметров отчета (если отчет параметризованный).

Ряд по умолчанию

0

Переменные среды

Только стандартные переменные.

Пример: Если формируется отчет о данных, полученных в результате запроса, выражение данных источника должно содержать ссылку на переменную данных в контексте запроса. Итак, если запрос называется ds_traffic_stats и принадлежит пользователю admin (это предопределенный запрос), мы можем получить следующее выражение данных источника:

{users.admin.queries.ds_traffic_stats:data}

Пример: Перед вами пример выражения данных источника относительного Attendance Report:

{attendance:attendanceData('{.:}')}

Данное выражение источника данных ссылается на функцию attendanceData из контекста attendance. В процессе оценки вызов данной функции осуществляется одним параметром, путь контекста из которого было выбрано действие запуска Attendance Report (или путь контекста по умолчанию, если отчет был запущен в тестовом режиме из редактора отчетов). Объяснение, почему {.:} разрешается в путь контекста по умолчанию, см. в разделе Стандартные ссылки.

Пример: Представленное ниже выражение относительного отчета История Тревоги загружает исторические события тревоги из базы данных и возвращает их в таблицу. Лишь несколько полей тревоги, выбранных функцией subtable(), включаются в отчет.

subtable({events:get('{.:}', "alert", null, null, false, null, false)}, "eCreationtime", "eLevel", "cause", "message", "trigger", "eAcknowledgements")

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

Контекст по умолчанию для отчета

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

Когда запуск связанного отчета осуществляется через действие Запустить отчет ("классический" способ), пути относительного контекста, содержащиеся в ссылках внутри выражения данных источника, разрешаются соответственно в путь контекста, из которого было инициировано действие "Запустить отчет". Свойство Контекст по Умолчанию в этом случае не используется.