OBIEE - переменные
В OBIEE обычно используются два типа переменных:
- Переменные репозитория
- Переменные сеанса
Помимо этого, вы также можете определить переменные презентации и запроса.
Переменные репозитория
Переменная репозитория имеет одно значение в любой момент времени. Переменные репозитория определяются с помощью инструмента администрирования Oracle BI. Переменные репозитория можно использовать вместо констант в мастере построителя выражений.
Есть два типа переменных репозитория -
- Статические переменные репозитория
- Переменные динамического репозитория
Статические переменные репозитория определяются в диалоговом окне переменных, и их значение существует до тех пор, пока администратор не изменит их.
Переменные статического репозитория содержат инициализаторы по умолчанию, которые являются числовыми или символьными значениями. Кроме того, вы можете использовать Expression Builder для вставки константы в качестве инициализатора по умолчанию, такой как дата, время и т. Д. Вы не можете использовать любое другое значение или выражение в качестве инициализатора по умолчанию для статической переменной репозитория.
В более старых версиях BI инструмент администратора не ограничивал значение статических переменных репозитория. Вы можете получить предупреждение при проверке согласованности, если ваш репозиторий был обновлен с более старых версий. В таком случае обновите статические переменные репозитория, чтобы инициализаторы по умолчанию имели постоянное значение.
Переменные динамического репозитория аналогичны статическим переменным, но значения обновляются данными, возвращаемыми из запросов. При определении переменной динамического репозитория вы создаете блок инициализации или используете уже существующий, который содержит запрос SQL. Вы также можете настроить расписание, по которому Oracle BI Server будет выполнять запрос и периодически обновлять значение переменной.
При изменении значения переменной динамического репозитория все записи кэша, связанные с бизнес-моделью, удаляются автоматически.
Каждый запрос может обновлять несколько переменных: по одной переменной для каждого столбца в запросе. Вы планируете выполнение этих запросов на сервере Oracle BI.
Переменные динамического репозитория полезны для определения содержимого источников логических таблиц. Например, предположим, что у вас есть два источника информации о заказах. Один источник содержит текущие заказы, а другой - исторические данные.
Создать переменные репозитория
В инструменте администрирования → выберите Управление → Выбрать переменные → Диспетчер переменных → Перейти к действию → Создать → Репозиторий> Переменная.
В диалоговом окне «Переменная» введите имя переменной (имена всех переменных должны быть уникальными) → Выберите тип переменной - статическая или динамическая.
Если вы выбираете динамическую переменную, используйте список блоков инициализации, чтобы выбрать существующий блок инициализации, который будет использоваться для постоянного обновления значения.
Чтобы создать новый блок инициализации → Нажмите New. Чтобы добавить значение инициализатора по умолчанию, введите значение в поле инициализатора по умолчанию или нажмите кнопку «Построитель выражений», чтобы использовать построитель выражений.
Для статических переменных репозитория сохраняется значение, указанное в окне инициализатора по умолчанию. Он не изменится, пока вы его не измените. Если вы инициализируете переменную с помощью строки символов, заключите строку в одинарные кавычки. Переменные статического репозитория должны иметь инициализаторы по умолчанию, которые являются постоянными значениями → Нажмите OK, чтобы закрыть диалоговое окно.
Переменные сеанса
Переменные сеанса похожи на переменные динамического репозитория и получают свои значения из блоков инициализации. Когда пользователь начинает сеанс, сервер Oracle BI создает новые экземпляры переменных сеанса и инициализирует их.
Существует столько экземпляров переменной сеанса, сколько активных сеансов на сервере Oracle BI. Каждый экземпляр переменной сеанса может быть инициализирован другим значением.
Есть два типа переменных сеанса -
- Системные переменные сеанса
- Несистемные переменные сеанса
Системные переменные сеанса используются Oracle BI и сервером презентаций для определенных целей. У них есть предопределенные зарезервированные имена, которые не могут использоваться другими переменными.
USER |
Эта переменная содержит значение, которое пользователь вводит с именем входа. Эта переменная обычно заполняется из профиля пользователя LDAP. |
USERGUID |
Эта переменная содержит глобальный уникальный идентификатор (GUID) пользователя и заполняется из профиля пользователя LDAP. |
GROUP |
Он содержит группы, к которым принадлежит пользователь. Если пользователь принадлежит к нескольким группам, укажите имена групп в одном столбце, разделенные точкой с запятой (пример - GroupA; GroupB; GroupC). Если точка с запятой должна быть частью имени группы, поставьте перед точкой с запятой символ обратной косой черты (\). |
ROLES |
Эта переменная содержит роли приложения, к которым принадлежит пользователь. Если пользователь принадлежит к нескольким ролям, укажите имена ролей в одном столбце, разделенные точкой с запятой (пример - RoleA; RoleB; RoleC). Если точка с запятой должна быть частью имени роли, поставьте перед точкой с запятой символ обратной косой черты (\). |
ROLEGUIDS |
Он содержит идентификаторы GUID для ролей приложения, к которым принадлежит пользователь. GUID для ролей приложения такие же, как имена ролей приложения. |
PERMISSIONS |
Он содержит разрешения, принадлежащие пользователю. Пример - oracle.bi.server.manageRepositories. |
Несистемные переменные сеанса используются для настройки пользовательских фильтров. Например, вы можете определить несистемную переменную с именем Sale_Region, которая будет инициализирована именем sale_region пользователя.
Создать переменные сеанса
В инструменте администрирования → выберите Управление → Выбрать переменные.
В диалоговом окне «Диспетчер переменных» щелкните Действие → Создать → Сеанс → Переменная.
В диалоговом окне «Переменная сеанса» введите имя переменной (имена всех переменных должны быть уникальными, а имена системных переменных сеанса зарезервированы и не могут использоваться для других типов переменных).
Для переменных сеанса вы можете выбрать следующие параметры -
Enable any user to set the value- Эта опция используется для установки переменных сеанса после того, как блок инициализации заполнит значение. Пример - эта опция позволяет не администраторам устанавливать эту переменную для выборки.
Security sensitive - Это используется для определения переменной как чувствительной к безопасности при использовании стратегии безопасности базы данных на уровне строк, такой как виртуальная частная база данных (VPD).
Вы можете использовать опцию списка блоков инициализации, чтобы выбрать блок инициализации, который будет использоваться для регулярного обновления значения. Вы также можете создать новый блок инициализации.
Чтобы добавить значение инициализатора по умолчанию, введите значение в поле инициализатора по умолчанию или нажмите кнопку «Построитель выражений», чтобы использовать построитель выражений. Щелкните ОК, чтобы закрыть диалоговое окно.
Администратор может создавать несистемные переменные сеанса с помощью инструмента администрирования Oracle BI.
Переменные представления
Переменные представления создаются с помощью подсказок Dashboard. Есть два типа подсказок на приборной панели, которые можно использовать:
Подсказка столбца
Переменная представления, созданная с помощью подсказки столбца, связана со столбцом, и значения, которые она может принимать, берутся из значений столбца.
Чтобы создать переменную презентации, перейдите в диалоговое окно «Создать подсказку» или в диалоговом окне «Редактировать подсказку» → «Выбрать переменную презентации» в поле «Набор переменных» → введите имя переменной.
Переменная подсказка
Переменная представления, созданная как подсказка переменной, не связана ни с одним столбцом, и вам необходимо определить ее значения.
Чтобы создать переменную презентации как часть подсказки переменной, в диалоговом окне «Новая подсказка» или в диалоговом окне «Редактировать подсказку» → Выберите переменную презентации в поле «Подсказка для» → введите имя переменной.
Значение переменной представления заполняется подсказкой столбца или переменной, с которой она создается. Каждый раз, когда пользователь выбирает значение в подсказке столбца или переменной, значение переменной представления устанавливается равным значению, которое выбирает пользователь.
Блоки инициализации
Блоки инициализации используются для инициализации переменных OBIEE: переменных динамического репозитория, переменных системного сеанса и несистемных переменных сеанса.
Он содержит оператор SQL, который выполняется для инициализации или обновления переменных, связанных с этим блоком. Выполняемый оператор SQL указывает на физические таблицы, к которым можно получить доступ с помощью пула соединений. Пул соединений определяется в диалоговом окне блока инициализации.
Если вы хотите, чтобы запрос для блока инициализации содержал SQL для конкретной базы данных, вы можете выбрать тип базы данных для этого запроса.
Инициализировать переменные динамического репозитория с помощью блока инициализации
Поле строки инициации по умолчанию блока инициализации используется для установки значений переменных динамического репозитория. Вы также определяете расписание, которому следует сервер Oracle BI, чтобы выполнить запрос и обновить значение переменной. Если вы установите уровень ведения журнала равным 2 или выше, информация журнала для всех запросов SQL, выполняемых для получения значения переменной, сохраняется в файле nqquery.log.
Расположение этого файла на сервере BI -
ORACLE_INSTANCE \ диагностика \ журналы \ OracleBIServerComponent \ coreapplication_obisn
Инициализировать переменные сеанса с помощью блока инициализации
Переменные сеанса также берут свои значения из блока инициализации, но их значение никогда не меняется с интервалами времени. Когда пользователь начинает новый сеанс, сервер Oracle BI создает новый экземпляр переменных сеанса.
Все SQL-запросы, выполняемые для получения информации о переменных сеанса сервером BI, если уровень ведения журнала установлен на 2 или выше в объекте пользователя Identity Manager или системная переменная сеанса LOGLEVEL установлена на 2 или выше в Variable Manager, сохраняются в nqquery.log файл.
Расположение этого файла на сервере BI -
ORACLE_INSTANCE \ диагностика \ журналы \ OracleBIServerComponent \ coreapplication_obisn
Создание блоков инициализации в инструменте администратора
Перейдите в Диспетчер → Переменные → Появится диалоговое окно Диспетчер переменных. Перейдите в меню «Действие» → нажмите «Создать» → «Репозиторий» → «Блок инициализации» → введите имя блока инициализации.
Перейдите на вкладку «Расписание» → выберите дату и время начала, а также интервал обновления.
Вы можете выбрать следующие параметры для блоков инициализации -
Disable- Если вы выберете эту опцию, блокировка инициализации отключена. Чтобы включить блок инициализации, щелкните правой кнопкой мыши существующий блок инициализации в диспетчере переменных и выберите «Включить». Эта опция позволяет вам изменить это свойство, не открывая диалоговое окно блока инициализации.
Allow deferred execution - Это позволяет вам отложить выполнение блока инициализации до тех пор, пока не будет осуществлен первый доступ к связанной переменной сеанса во время сеанса.
Required for authentication - Если вы выберете этот параметр, для входа пользователей в систему должен выполняться блок инициализации. Пользователям запрещается доступ к Oracle BI, если блок инициализации не выполняется.