Предыстория.
Создал БО с параметрами - две даты. В поле “Условное значение по умолчанию” для одной указал формулу, которая вернет начало года, а для второй - “сегодня”. Сохранил, синхронизировал схему. Выглядит хорошо, но есть одно но.
Что имеем.
По кнопке “Просмотр данных” видим не заполненные параметры от того и пустую таблицу. Работает только “значение пустого поля”, но в него нельзя поставить формулу.
Что хотим.
На основе этого БО строится отчет, который должен быть направлен в ежедневной рассылке по е-почте. Т.Е. параметр 1 - это всегда начало текущего года, параметр 2 - текущая дата. В шапке отчета, да и в названии файлов участвуют эти оба параметра. И да, с пустыми параметрами так же получаем пустой отчет.
А хотим мы малой кровью иметь такую рассылку.
Вопрос:
Как задать параметры по умолчанию для БО?
Как задать условные параметры для рассылки отчета?
Или делать это нужно через ETL процесс? Как?
Спасибо.
PS
С шапкой отчета как-то еще можно побороться.
Я сделал еще один БО с теми же параметрами, добавил обработку на NULL, теперь значение по умолчанию подставляется вместо пустого. Решение рабочее, но выглядит коряво очень кмк.
А вот с названием файла в голову ни чего не приходит толкового.
Здравствуйте, Сергей!
Спасибо за подробное описание ситуации. Рассмотрим ваш запрос по пунктам с учётом текущих возможностей системы AlphaBI (предполагаем, что используется версия, начиная с 5.6.1).
Как задать параметры по умолчанию для бизнес-объекта? Параметр по умолчанию задается в параметре бизнес-объекта «Значение по умолчанию». Параметр «Условное значение по умолчанию» служит для указания условия, при наступлении которого будет выполняться значение по умолчание. Параметр «Условное значение по умолчанию» не присваивает значение для параметра «Значение по умолчанию». Подробнее в руководстве пользователя.
Как задать условные параметры для рассылки отчета?
Для рассылки регламентного отчета на реестре с динамическими изменяющимися параметрами рекомендуется сделать бизнес-объект с типом SQL-запрос. В тексте SQL-запроса написать запрос к источнику данных и задать динамические правила фильтрации, согласно вашим параметрам (параметр 1 - это всегда начало текущего года, параметр 2 - текущая дата). Например, по полю create_dt можно использовать конструкцию:
WHERE
create_dt > = DATE_TRUNC('YEAR', CURRENT_DATE)
AND create_dt < CURRENT_DATE
Это исключит необходимость в параметризации и обеспечит автоматическое вычисление дат.
Как задать имя файла при экспорте отчета?
Имя файла для экспорта отчёта можно настроить непосредственно в его свойствах.
.
Нажмите на кнопку с троеточием (…) рядом с полем «Имя файла».
Это откроет окно редактора шаблона имени файла.
В окне «Имя файла отчета» выполните следующее:
В области 1 (поле для ввода) укажите шаблон имени файла.
В области 2 (дерево подстановок) выбирайте нужные переменные и добавляйте их в шаблон.
Вы можете комбинировать текст и подстановки для формирования нужного формата.
Синтаксис подстановок подобен функционалу в рассылках.
Ограничения:
Подстановки ограничены в функционале — нельзя использовать произвольные формулы.
Максимальная длина имени файла — 255 символов.
Если параметры не определены, файл получает имя empty.
В результате, в поле подстановок можно сформировать имя файла, в котором сначала будет указана дата начала года, а затем — дата формирования отчёта (текущая дата).
При экспорте отчёта в Excel имя файла формируется в соответствии с заданным шаблоном:
В момент создания отчёта все указанные подстановки заменяются на актуальные значения — системные (например, текущая дата) или введённые пользователем.
Если необходимые параметры не заданы, а константы отсутствуют, файл сохраняется с именем _empty_ (например, _empty_.xlsx , _empty_.xls ).
Как задать условные параметры для рассылки отчета?
тут возникает только один вопрос:
в тексте отчета, в шапке, нужно указать параметры отчета. типа Отчет с дата1 по дата2.
если это не параметры, то как их вывести?
Да, Роман верно уловил мысль, вопрос именно в этом.
Собственно, я и сделал по этой рекомендации и столкнулся с тем же ограничением: нет смысла обращаться к пустым параметрам, что бы их выводить в шапку отчета или мя файла. Нет возможности для отчетов формировать условные параметры. Для этого пришлось делать дополнительный БО, в котором шапка выводится одной строкой. Каждый год менять наименование фала - не по айтишески. Мы же достаточно ленивые, что бы это попытаться это автоматизировать
Предполагаю, что к полям из набора данных можно обращаться если отчет строится на OLAP, так ведь?
И еще.
Дата сама переводится в текст в формате “dd.mm.yyyy”, что не очень хорошо для имени файла.
Иметь возможность вставлять везде формулы и свое форматирование - очень полезно, кмк.