DBA.config.json

The DBA.config.json file stores the settings that affect business application web version performance. The file has the following structure by default:

{
  "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. Business application",
          "mainMenuLogo": "assets/design/img/PPlogo_sm.png",
          "pageMetadataLogo": "assets/design/img/PPlogo.png"
        }
      }
    }
  }
}

Description of Fields

Below is the list of fields contained in the default JSON structure:

Field Description
targetRepo The identifier of the repository, to which default connection is established. As a value, specify identifier of one of the repositories, which settings are contained in the "repositories" group.
targetApp The identifier of the business application that will be opened. As a value, specify identifier of one of the business applications, which settings are contained in the "apps" group of the repository specified in targetRepo.
ppServiceUrl URL of the BI server, with which a business application will interact to get data.

locale

Two-letter code of the default language selected in the interface.
locales The array containing two-letter language codes to which the interface can be switched. By default only one element corresponding to Russian is included into array. If any other additional languages are added to the array, then the start page used to log in to repository will contain hyperlinks to switch the interface language.
repositories The data of the repository, to which connection is established. Several subsections ID_REPO can be created in this section.
ID_REPO The section with repository information. Field name must match the value specified in the repoIdent field.
repoIdent Repository identifier. Field value must match the name of the ID_REPO section.
apps Business application data. Several subsections ID_APP can be created in this section.
ID_APP The section with business application information. Field name must match the value specified in the appIdent field.
appIdent The identifier of business application in repository. Field value must match the name of the ID_APP section.
breadcrumbRootTitle The title that is displayed in the breadcrumb's root element.
mainMenuLogo The path to the image displayed at the top left corner above the list of objects.
pageMetadataLogo The path to the image displayed above the login and password boxes.

It is also available to include additional fields into the root level of JSON structure that will be processed and will affect web application work. These fields have default values that are applied if the field is absent in the structure:

{
    ...
    "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
                }
           }
        ...
    }
    ...
 }

Description of fields:

Field Description
ppLibUrl Path to libraries of Foresight Analytics Platform used in business application work. By default, the relative path "assets/platform_modules" is used that is searched in the folder with installed extensions back end.
externalJs The array of URLs to external JS files that must be loaded before business application startup. No external JS files are loaded by default.
externalCss The array of URLs to external CSS files that will be loaded before business application startup. No external CSS files are loaded by default.
isSendLogToBI

Indicates whether operations that are sent by business application to BI server are logged. Logging is disabled by default. When the value is True, the operations log is recorded on BI server.

showNavGroupFirstElement

Indicates whether the first child element is displayed when navigating menu groups. Available values:

  • true. If the element containing child elements is selected, the first child element is opened. The parent element cannot be selected.

  • false. Default value. If the parent element is selected, the list of its child elements is displayed; if the child element is selected, it contents is opened.

clearMetabaseObjectsCacheOnOpen

Indicates whether object cache is cleared on opening. Available values:

  • true. Default value. If a repository object opens, its version is cleared in cache, and actual version is loaded to cache.

  • false. If an object opens, its cached version is used.

logToConsole

Indicates whether errors are displayed in the browser console. Available values:

  • true. Default value. Errors are displayed in the browser console.

  • false. Errors are not displayed in the browser console.

showMessageForUnhandledError

Indicates whether error messages are displayed, for which there are not special handlers in business application scripts. Available values:

  • true. Default value. Error messages are displayed.

  • false. Error messages are not displayed.

authentication

Authorization method. Available values:

  • IntegratedDomain. Integrated domain authorization. The domain user used for operating system login will be used for authorization.

When the IntegratedDomain type is specified, the authorization form does not display boxes to enter user name and password.

Additionally, it is necessary to add a domain user in repository security manager, the Integrated Domain authentication type must be selected in repository connection settings and domain authentication settings must be executed on the ASP.NET web server.

IMPORTANT. The use of domain/integrated domain authentication is not available in the designer of business applications if BI server is installed on Linux OS.

  • OAuth2. Password authorization or authorization via OAuth 2.0 protocol. When the OAuth2 type is specified, the authorization form displays additional buttons for authorization via external services listed in the allowOauthProviders box.

To use password authorization, enter user name and password to corresponding boxes.

To use external authorization service, go to the service page using the corresponding button. On the service form enter user name and password of the external service account.

If the autoStartOauthProvider field contains the specified value, the user is redirected to the specified external authorization service. The service specified in the autoStartOauthProvider field should be specified in the allowOauthProviders enumeration.

  • Undefined, empty or any other value. Password authorization. A standard authorization form is displayed with boxes to enter user name and password.

allowOauthProviders

The list of authorization services, which accounts can be used to log in to the web application. The allowOauthProviders field is set only when the user authorization via OAuth is used.

Values are specified in square brackets separated via comma. For example:

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

Available values are determined by the services specified on setting up parameters of OAuth protocols. Custom names of services can be selected on setting up parameters.

To use automatic redirection, set the authentication field to OAuth2, in the autoStartOauthProvider field specify the authorization service, to which the user is automatically redirected.

autoStartOauthProvider

The authorization service, to which the user it automatically redirected on web application login. For example: 

"autoStartOauthProvider": "FCC"

where:

  • FCC. Name of the external authorization service specified on setting up OAuth protocol parameters. The service specified in the autoStartOauthProvider field should be specified in the allowOauthProviders enumeration.

If the autoStartOauthProvider field contains the unregistered service or it is not contained in the allowOauthProviders enumeration, the user will not be automatically redirected.

To use automatic redirection, in the authentication field specify the OAuth2 value.

useDefaultUserOauth

Indicates, which user credentials are used to log in to the repository when OAuth 2.0 authorization is used: the default user or the specific user authorized on the external server. Optional attribute. If the attribute is not specified, the default value is used.

To authorize via the OAuth 2.0 protocol, in the authentication attribute specify the OAuth2 value. The settings described in the Setting Up Login via OAuth article should also be specified. Available values:

  • true. It is used by default. The connection of the repository is established under the default user, whose credentials were saved using the PP.Util utility.

  • false. To connect to the repository under the specific user authorized on the external server, set the False value. If the other value is used, each user credentials for each repository should be saved using the PP.Util.exe utility. For details about saving user credentials see the Setting Up Login via OAuth article. It is also required to set up OAuth 2.0 protocol parameters.

modules

Parameters for opening objects in the web interface of business application. This section allows for creating several CLASS subsections.

CLASS

The section with information about opening the specified class object. The field name should correspond with the numeric value of the object class, for which opening parameters are to be specified. The numeric value of the object class can be obtained in the MetabaseObjectClass enumeration.

url

The URL of the web application page for object opening.

urlSettings

Parameters that will also be passed to the page opened via the URL.

isRepo

Pass the repo parameter with name of the currently opened repository.

isClass

Pass the class parameter with object class value.

mode

Pass the mode parameter that determines an object opening mode. It may take the edit value (object opens for edit) and the view value (object opens for view). If the field is not specified, the object will be opened for view.

isConnectionId

Pass the ConnectionId parameter with opened session moniker.

See also:

Installing and Setting Up Extensions Back End