DBA.config.json

В файле DBA.config.json хранятся настройки, влияющие на работу веб-версии бизнес-приложения. По умолчанию файл имеет следующую структуру:

{
  "targetRepo": "ID_REPO",
  "targetApp": "ID_APP",
  "ppServiceUrl": "",
  "locale": "ru",
  "locales": ["ru"],
  "repositories": {
    "ID_REPO": {
      "repoIdent": "ID_REPO",
      "apps": {
        "ID_APP": {
          "appIdent": "ID_APP",
          "breadcrumbRootTitle": "FORESIGHT. Бизнес приложение",
          "mainMenuLogo": "assets/design/img/PPlogo_sm.png",
          "pageMetadataLogo": "assets/design/img/PPlogo.png"
        }
      }
    }
  }
}

Описание полей

Ниже приведён список полей, которые присутствуют в JSON-структуре по умолчанию:

Поле Описание
targetRepo Идентификатор репозитория, к которому осуществляется подключение по умолчанию. В качестве значения укажите идентификатор одного из репозиториев, настройки которого имеются в группе repositories.
targetApp Идентификатор бизнес-приложения, которое будет открыто. В качестве значения укажите идентификатор одного из бизнес-приложений, настройки которого имеются в группе apps репозитория, указанного в targetRepo.
ppServiceUrl URL-адрес BI-сервера, с которым будет взаимодействовать бизнес-приложение для получения данных.

locale

Двухбуквенный код языка, выбранного в интерфейсе по умолчанию.
locales Массив, содержащий двухбуквенные коды языков, на которые может быть переключён интерфейс. По умолчанию в массив включён только один элемент, соответствующий русскому языку. Если в массив добавить какие-либо дополнительные языки, то на стартовой странице, где осуществляется авторизация в репозитории, в нижней части будут доступны гиперссылки для переключения языка интерфейса.
repositories Данные о репозиториях, к которому осуществляется подключение. В данном разделе могут быть созданы несколько подразделов ID_REPO.
ID_REPO Раздел с информацией о репозитории. Наименование поля должно совпадать со значением, указываемым в поле repoIdent.
repoIdent Идентификатор репозитория. Значение поля должно совпадать с названием раздела ID_REPO.
apps Данные о бизнес-приложении. В данном разделе могут быть созданы несколько подразделов ID_APP.
ID_APP Раздел с информацией о бизнес-приложении. Наименование поля должно совпадать со значением, указываемым в поле appIdent.
appIdent Идентификатор бизнес-приложения в репозитории. Значение поля должно совпадать с названием раздела ID_APP.
breadcrumbRootTitle Заголовок, который будет выводиться в корневом элементе строки навигации.
mainMenuLogo Путь к изображению, которое отображается в верхнем левом углу над списком объектов.
pageMetadataLogo Путь к изображению, которое отображается над полями логина и пароля.

Также в JSON-структуру на корневом уровне можно включить дополнительные поля, которые будут обрабатываться и влиять на работу веб-приложения. Данные поля имеют значения по умолчанию, которые применяются, если поле отсутствует в структуре:

{
    ...
    "ppLibUrl": "assets/platform_modules",
    "externalJs": [],
    "externalCss": [],
    "isSendLogToBI": "false",
    "showNavGroupFirstElement": "false",
    "clearMetabaseObjectsCacheOnOpen": "true",
    "logToConsole": "true",
    "showMessageForUnhandledError": "true",
    "authentication": "IntegratedDomain",
    "allowOauthProviders": ["FCC","Twitter"],
    "use_default_user_oauth": "true",
    "modules" : {
        "CLASS":{
            "url": "http://project/app/olap.html",
            "urlSettings":
                {
                  "isRepo": true,
                  "isClass": true,
                  "mode": "edit",
                  "isConnectionId": true
                }
           }
        ...
    }
    ...
 }

Описание полей:

Поле Описание
ppLibUrl Путь до библиотек продукта «Форсайт. Аналитическая платформа», которые используются при работе бизнес-приложения. По умолчанию используется относительный путь «assets/platform_modules», который ищется в папке с установленной серверной частью расширений.
externalJs Массив URL-адресов до внешних js-файлов, которые будут загружены перед инициализацией бизнес-приложения. По умолчанию ни какие внешние js-файлы не загружаются.
externalCss Массив URL-адресов до внешних css-файлов, которые будут загружены перед инициализацией бизнес-приложения. По умолчанию ни какие внешние css-файлы не загружаются.
isSendLogToBI Признак логирования операций, который бизнес-приложение отправляет на BI-сервер. По умолчанию логирование выключено. При установке значения true лог выполняемых операций будет вестись на BI-сервере.
showNavGroupFirstElement Признак отображения первого дочернего элемента при переходе по группам меню. Допустимые значения:
  • true. При выборе элемента, содержащего дочерние элементы, открывается первый дочерний элемент. Выбрать родительский элемент нельзя.
  • false. Значение по умолчанию. При выборе родительского элемента отображается список его дочерних элементов, при выборе дочернего элемента - открывается его содержимое.
clearMetabaseObjectsCacheOnOpen Признак очистки кэша объекта при открытии. Допустимые значения:
  • true. Значение по умолчанию. При открытии объекта репозитория очищать его версию в кэше и загружать в кэш актуальную версию.
  • false. При открытии объекта использовать кэшированную версию объекта.
logToConsole Признак вывода ошибок в консоль браузера. Допустимые значения:
  • true. Значение по умолчанию. Выводить ошибки в консоль браузера.
  • false. Не выводить ошибки в консоль браузера.
showMessageForUnhandledError Признак показа сообщений с ошибками, для которых в скриптах бизнес-приложения отсутствуют специальные обработчики. Допустимые значения:
  • true. Значение по умолчанию. Показывать сообщение с ошибками.
  • false. Не показывать сообщение с ошибками.
authentication Признак исключения отображения полей «Имя пользователя» и «Пароль» в окне регистрации при доменной аутентификации пользователей на сервере БД. Дополнительно должен быть добавлен доменный пользователь в менеджере безопасности репозитория, в настройках подключения к репозиторию выбран тип аутентификации «Интегрированная доменная» и выполнены настройки доменной аутентификации на веб-сервере ASP.NET. Допустимые значения:
  • IntegratedDomain. В окне регистрации не выводятся поля с именем пользователя и паролем. Для авторизации будет использован доменный пользователь, под которым был совершен вход в операционную систему;
  • OAuth2. Отображается окно регистрации с кнопками для авторизации через внешние сервисы, перечисленные в поле allowOauthProviders. При наличии заданного значения в поле autoStartOauthProvider реализуется автоматический переход на указанный сервис авторизации;
  • Не указано, пустое или любое другое значение. Отображается стандартное окно регистрации.

Важно. Использование доменной/интегрированной доменной аутентификации недоступно в конструкторе бизнес-приложений, если BI-сервер установлен на ОС Linux.

allowOauthProviders

Перечисление сервисов авторизации, учётные записи которых можно использовать для входа в веб-приложение. Поле allowOauthProviders задаётся только при авторизации пользователей через OAuth.

Значения указываются в квадратных скобках через запятую. Например:

"allowOauthProviders" : ["FCC","Twitter"]

Допустимые значения определяются тем, какие сервисы заданы при настройке параметров для протоколов OAuth. Наименования сервисов при настройке параметров могут быть выбраны произвольно.

Для использования автоматической переадресации в поле authentication должно быть указано значение «OAuth2», в поле autoStartOauthProvider - сервис авторизации, на который будет выполнен автоматический переход.

autoStartOauthProvider

Сервис авторизации, на который будет осуществлено автоматическое перенаправление при попытке входа в веб-приложение. Например: 

"autoStartOauthProvider": "FCC"

Где «FCC» – наименование внешнего сервиса авторизации, заданного при настройке параметров для протоколов OAuth. Используемый в поле autoStartOauthProvider сервис должен быть указан в перечислении allowOauthProviders.

Если в поле autoStartOauthProvider будет указан незарегистрированный сервис, или его не будет в перечислении allowOauthProviders, автоматическая переадресация не произойдёт.

Для использования автоматической переадресации в поле authentication должно быть указано значение «OAuth2».

use_default_user_oauth

Признак, который определяет, под каким пользователем происходит подключение к репозиторию при авторизации по протоколу OAuth 2.0: под пользователем по умолчанию или под конкретным пользователем, который проходил авторизацию на внешнем сервере. Необязательный атрибут. Если атрибут не указан, используется значение по умолчанию.

Для авторизации по протоколу OAuth 2.0 в атрибуте authentication должно быть указано значение OAuth2. Также должны быть выполнены настройки, описанные в статье «Настройка входа через OAuth». Возможные значения:

  • true. Используется по умолчанию. Подключение к репозиторию выполняется под пользователем по умолчанию, учётные данные которого были сохранены с помощью утилиты PP.Util;

  • false. Для подключения к репозиторию под конкретным пользователем, авторизовавшемся на внешнем сервере, установите значение false. Если используется данное значение, то учётные данные каждого пользователя для каждого репозитория должны быть сохранены с помощью утилиты PP.Util.exe. Для подробной информации о сохранении учётных данных пользователя обратитесь к статье «Настройка входа через OAuth». Также необходимо настроить параметры протокола OAuth 2.0.

modules

Параметры открытия объектов в веб-версии бизнес-приложения. В данном разделе могут быть созданы несколько подразделов CLASS.

CLASS

Раздел с информацией об открытии объекта заданного класса. Наименование поля должно соответствовать числовому значению класса объекта, для которого определяются параметры открытия. Числовое значение класса объекта можно получить в перечислении MetabaseObjectClass.

url

Ссылка на страницу веб-приложения для открытия объекта.

urlSettings

Параметры, которые также будут передаваться в открываемую url страницу.

isRepo

Передавать параметр repo с наименованием текущего открытого репозитория.

isClass

Передавать параметр class со значением класса объекта.

mode

Передавать параметр mode, определяющий режим открытия объекта. Может принимать значение edit (объект открывается на редактирование) и view (объект открывается на просмотр). Если поле не указано, то объект будет открываться на просмотр.

isConnectionId

Передавать параметр ConnectionId с моникёром открытой сессии.

См. также:

Установка и настройка серверной части расширений