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": "",
    "allowOauthProviders": ["FCC","Twitter"],
    "autoStartOauthProvider": "",
    "useDefaultUserOauth": "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

Способ авторизации. Допустимые значения:

  • IntegratedDomain. Интегрированная доменная авторизация. Для авторизации будет использован доменный пользователь, под которым был совершен вход в операционную систему.

При указании типа «IntegratedDomain» на форме авторизации не отображаются поля для ввода имени пользователя и пароля.

Дополнительно должен быть добавлен доменный пользователь в менеджере безопасности репозитория, в настройках подключения к репозиторию выбран тип аутентификации «Интегрированная доменная» и выполнены настройки доменной аутентификации на веб-сервере ASP.NET;

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

  • OAuth2. Парольная авторизация или авторизация через протокол OAuth 2.0. При указании типа «OAuth2» на форме авторизации дополнительно к полям ввода имени пользователя и пароля будут отображены кнопки для авторизации через внешние сервисы, перечисленные в поле allowOauthProviders.

Для использования парольной авторизации необходимо ввести имя пользователя и пароль в соответствующие поля.

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

  • Не указано, пустое или любое другое значение. Парольная авторизация. Отображается стандартная форма авторизации с полями для ввода имени пользователя и пароля.

allowOauthProviders

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

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

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

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

autoStartOauthProvider

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

"autoStartOauthProvider": "FCC"

где:

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

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

useDefaultUserOauth

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

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

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

  • 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 с моникёром открытой сессии.

См. также:

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