About Working With Domains and Domain Mappings

Domains are pre-seeded dimensional values that help define business metrics. For example, in Financial Analytics, domains store information about the General Ledger accounts.

Domains are typically located in the source system. If domains are not available in a source system, then they can be sourced from a flat file. For example, domains for Oracle Price Analytics are loaded using the flat file file_domain_member_gs.csv. This file will also be used in order to supply source domains for Universal adaptor.

To manage Domains, you use these dialogs:

Why Are Some Domains Non-Extensible?

To maintain data integrity in Oracle BI Applications, some domains have been designed as non-extensible, and are therefore read-only.

If a domain is non-extensible, then when the domain is selected, the following options are greyed out:

  • the Edit icon in the Domain Member Mappings pane (on the Manage Domain Mappings and Hierarchies: Domain Mappings tab or Manage Domain Mappings and Hierarchies: Warehouse Domain Hierarchies tab).

  • the Add Target Domain Member button (on the Edit Domain Member Mappings dialog).

  • the Add Warehouse Domain Member button (on the Manage Warehouse Domains: Warehouse Domains tab\Warehouse Members pane).

About Domain Mappings and Domain Member Mappings

Domain Mappings specify how data in a source system is extracted and loaded into Oracle Business Analytics Warehouse. For example, the data in domain Source Group Account (BI_GROUP_ACCOUNT) extracts and loads into the domain Group Account (W_GL_GROUP_ACCOUNT).

Domain Members are the permitted values for a Source or Warehouse Domain. For example, the Domain Members for MARITAL_STATUS include D for Divorced, M for Married, S for Single, and so on.

Tip:

Domain values can be used to define delivered business metrics; therefore, you must review the delivered domain member values and map them to the correct source values.

Domain Mappings specify how entities in a Source System application are loaded into Oracle Business Analytics Warehouse.

The screenshot shows example domain mappings for Oracle Financial Analytics.

Domain Member Mappings specify how domain member data in a source system is extracted and loaded into domain member data in Oracle Business Analytics Warehouse. For example, in Oracle HR Analytics, domain Gender (W_SEX_MF_CODE) has a source value 'Male' that is mapped to a domain member value 'M' in Oracle Business Analytics Warehouse.

About Regular Domains and Band Domains

There are two types of Domains.

Regular Domains

Regular Domains have members consisting of a single value. For example, members for a Purchase Order Status domain might have the following members:

  • Cancelled

  • Closed

  • Incomplete

These single values map to single member values in the target system. For example, Cancelled maps to Cancelled, Closed maps to Closed, and so on.

Band Domains

Band Domains have members consisting of two values (Range Start, and Range End) that specify a range. For example, an Account Employee Size domain might have the following members:

  • 1, 5000

  • 5001, 10,000

  • 10,001, 1,000,000.

Each range maps to a single target Domain Member. For example, 1, 5000 maps to Small, 5001, 10,000 maps to Medium, and so on.

About Source Domains

Data fields in a Source System application are referred to as Source Domains.

The screenshot shows example source domains for Oracle Financial Analytics. Source Domains displayed on the Source Domains tab are read-only.

About Warehouse Domains

Data fields in Oracle Business Analytics Warehouse are referred to as Warehouse Domains.

The screenshot shows example warehouse domains for Oracle Financial Analytics.

About Warehouse Domain Hierarchies

Warehouse Domain Hierarchies are Domains that have been organized into hierarchies to enable the data to be more effectively analyzed. For example, in Oracle HR Analytics, you might need to have a workforce event hierarchy: Event Group -> Event Sub-group -> Event Detail.

Domain Hierarchies are displayed in inverted format, that is in the following format:
<Child 1>\
     <Child n>\
          <Parent>

Viewing Domain Hierarchies

To view Domain Hierarchies, select the Manage Domain Mappings and Hierarchies link on the Tasks bar, then display the Warehouse Domain Hierarchies tab.

The screenshot shows example warehouse domain hierarchies for Oracle Financial Analytics.

In the screenshot, the child node AP Transaction Subtype is shown above and to the left of the parent node AP Transaction Type. Domain Hierarchies are read-only. However, you can change the domain mappings.

For Warehouse Domains Hierarchies dialog field level help, see Manage Domain Mappings and Hierarchies: Warehouse Domain Hierarchies Tab in Oracle Business Intelligence Applications Functional Configuration Reference.

About Setting Up Domain Member Mappings

Oracle BI Applications ships default domain value mappings that map the seeded BI Application domain values to the seeded configuration data in Oracle Enterprise Resource Planning applications.

When you configure your Offerings, you review the default mappings for domain values, and if necessary update them to suit the categories that you want to use to report on your data.

For example, in Oracle HR Analytics, the default domain values for Performance Range might be similar to the following:

0 - 50: PERF_RANGE_1

50 - 60: PERF_RANGE_2

60 - 70: PERF_RANGE_3.

If you want to use these default categories, you do not need to make any changes to these mappings before you start your ETL processes.

For example, you might want to change the range for PERF_RANGE_1 from 0 - 50 to 0 - 100. Or you might want to add a new category named PERF_RANGE_4 and assign the range 100 - 500 to the new PERF_RANGE_4 category.

Editing a Domain Member Mapping

You can edit a Domain Member Mapping if you need to change it from the default values.

  1. Navigate to the Domain that you want to edit.

    To display the Domain Mapping tab:

    • In Configuration Manager, select Manage Domain Mappings and Hierarchies in the Tasks pane, display the Domain Mappings tab, then select a Domain.

    • In FSM, select the Go to Task link for a Task that updates a Domain or Domain Member Mappings.

  2. Scroll down to the Domain Member Mappings pane.
  3. Click the Edit Domain Member Mappings icon.
  4. Edit the domain mapping values.

    Note:

    If you change existing values, then the records already loaded in the data warehouse are not modified and only new records are changed. Because new records are changed in this way, you must run a full load. However, if the change involves a new source member that is imported from the source, then all dimension records impacted due to that import are new. Because the dimension records are new, you need not run a full load.

Adding a Range Member Mapping

You can add a Range Member Mapping to a domain for which you can specify ranges.

  1. Navigate to the Domain that you want to edit.

    To display the Domain Mapping tab:

    • In Configuration Manager, select the Manage Domain Mappings and Hierarchies link in the Tasks pane, display the Domain Mappings tab, then select a banded (or ranged) Domain.

    • In FSM, select the Go to Task link for a Task that updates a banded or ranged Domain or Domain Member Mappings.

  2. Scroll down to the Domain Member Mappings pane.
  3. Click the Edit Domain Member Mappings icon to display the Edit Domain Member Mappings dialog.
  4. Click the Add Range Member Mapping (+) icon and specify values in the Range Start, Range End, and Target Domain Member - Code fields.

    Tip:

    Before you create a new range, you might first want to use the Add Warehouse Member button to first create a target Warehouse Member, which is then available as an option in the Target Domain Member - Code list. For example, you might add a Warehouse Member called 'Greater than 250,000' to map to the range 250,000 to 1,000,000.

Adding a Target Domain Member

You add Target Domain Members to extend Oracle Business Analytics Warehouse.

  1. Navigate to the Domain that you want to edit.

    To display the Domain Mapping tab, do one of the following:

    • In Configuration Manager, select the Manage Domain Mappings and Hierarchies link in the Tasks pane, display the Domain Mappings tab, then select a Domain.

    • In FSM, select the Go to Task link for a Task that updates a Domain or Domain Member Mappings.

  2. Scroll down to the Domain Member Mappings pane.
  3. Click the Edit Domain Member Mappings icon to display the Edit Domain Member Mappings dialog,
  4. Click Add Target Domain Member to display the Add Target Domain Member dialog, which enables you to specify a Name, Code, and optional Description.

    For example, you might add a Warehouse Member called 'Greater than 250,000' to map to the range 250,000 to 1,000,000.

    If the Add Target Domain Member option is grayed out or not displayed, then the domain is non-extensible.

    When you click OK to return to the Edit Domain Member Mappings dialog, you can map a Source Domain to the Target Domain that you just created.

Localizing a New Domain Member

If you added a new domain member and it requires localization, you can add string localizations for Configuration Manager metadata.

  1. Open a database administration tool, and connect to the Oracle Business Analytics Warehouse schema.
  2. Query for the table C_DOMAIN_MEMBER_TL and the new domain member record you added in Adding a Target Domain Member.

    You can query for the new domain member record by using the query filter on the columns CREATED_BY and CREATION_DATE. Each new domain member record will have 28 rows in the C_DOMAIN_MEMBER_TL table.

  3. Update the LANGUAGE_CODE column to match the localized deployment language.
    1. Identify the language code for the localized language using the following SQL:
      SELECT LANGUAGE_CODE, NLS_LANGUAGE, NLS_TERRITORY
      FROM FND_LANGUAGES_B
      WHERE INSTALLED_FLAG IN ('B', 'I');
      
    2. Update the domain member name, description, and source language code strings for the localized language using the following SQL:

      In this example, the localized language is Arabic, and the LANGUAGE_CODE is AR.

      UPDATE C_DOMAIN_MEMBER_TL
      SET DOMAIN_MEMBER_NAME = '<Arabic translated string for domain member name>', DOMAIN_MEMBER_DESCR = '<Arabic translated string for domain member description>', SRC_LANGUAGE_CODE = 'AR'
      WHERE DOMAIN_KEY = '<Domain key value for the record you want to update>'
      AND DOMAIN_MEMBER_CODE = '<Domain member code value for the record you want to update>'
      AND LANGUAGE_CODE = 'AR';
      
  4. Exit the database administration tool.
  5. Restart the Oracle WebLogic Server.

Adding String Localizations for Oracle BI Repository Metadata

If you added a new domain member, you can add string localizations in the Oracle BI Repository metadata.

  1. Stop the OPMN services.

    Use the command: opmnctl stopall.

  2. Open a database administration tool, and connect to the Oracle Business Analytics Warehouse schema.
  3. Identify the strings for the following presentation objects:
    • Subject area
    • Presentation table
    • Presentation hierarchy
    • Presentation level
    • Presentation column

    For example, for the subject area Payables Invoices - Prepayment Invoice Distributions Real Time, enter the following strings:

    String Presentation Object

    Payables Invoices - Prepayment Invoice Distributions Real Time

    Subject area

    Time

    Presentation table

    Date - Year

    Presentation hierarchy

    Total

    Presentation level

    Year

    Presentation level

    Calendar Year

    Presentation column

  4. For each subject area, externalize the strings for localization and generate custom names for the presentation objects:
    1. In the Oracle BI Administration Tool, right-click the subject area and select Externalize Display Names, and then select Generate Custom Names.
    2. Save your work.

    See Localizing Metadata Names in the Repository in System Administrator's Guide for Oracle Business Intelligence Enterprise Edition.

  5. Check the consistency of the repository, and remove any inconsistencies.

    See Checking the Consistency of a Repository or Business Model in Metadata Repository Builder's Guide for Oracle Business Intelligence Enterprise Edition.

  6. Enter the custom name of one of the presentation objects into the table C_RPD_MSGS:
    INSERT INTO C_RPD_MSGS(MSG_ID, CREATED_BY, CREATION_DATE)
    VALUES('<CUSTOM NAME OF PRESENTATION OBJECT>', 'CUSTOM', SYSTIMESTAMP);
    COMMIT;
    

    To view the values for custom names and logical columns in the Oracle BI Administration Tool, right-click the presentation object and select Properties. The data in the Custom display name field appears in the format VALUEOF(NQ_SESSION.VALUE, where VALUE is the custom name for a presentation object, or the logical value for a presentation column. This value is the value that you need to enter in the VALUES section of the SQL statement above.

  7. Enter the localized string for the presentation object in the previous step into the table C_RPD_MSGS_TL:
    INSERT INTO C_RPD_MSGS_TL(MSG_ID, MSG_TEXT, LANGUAGE_CODE, CREATED_BY, CREATION_DATE)
    VALUES('<CUSTOM NAME OF PRESENTATION OBJECT>', '<LOCALIZATION OF THE STRING'>, '<LANGUAGE CODE FOR TRANSLATED LANGUAGE>', 'CUSTOM', SYSTIMESTAMP);
    COMMIT;
    

    To identify the language code for a particular language, use the following SQL:

    SELECT LANGUAGE_CODE, NLS_LANGUAGE, NLS_TERRITORY
    FROM FND_LANGUAGES_B
    WHERE INSTALLED_FLAG IN ('B', 'I');
    
  8. Enter additional details about the presentation object into the table C_RPD_MSGS_REL as indicated by the following SQL:
    INSERT INTO C_RPD_MSGS_REL(MSG_ID, MSG_NUM, MESSAGE_TYPE, CREATED_BY, CREATION_DATE)
    VALUES('<CUSTOM NAME OF PRESENTATION OBJECT>', '<TRANSLATION OF THE STRING'>, '<LANGUAGE CODE FOR TRANSLATED LANGUAGE>', 'METADATA','CUSTOM', SYSTIMESTAMP);
    COMMIT;
    
  9. Repeat steps 6 through 8 for each presentation object requiring localization.
  10. Validate that the physical connection of the session initialization block INIT_USER_LANGUAGE_CODE is operable:
    1. In the Oracle BI Administration Tool, select Manage, Variables, Session Initialization Block.
    2. Right-click INIT_USER_LANGUAGE_CODE.
    3. In the Properties dialog, click Edit Data Source.
    4. Click Test, and input the value for the language code. Then, click OK.

      For example, for Arabic enter 'AR'.

      The value USER_LANGUAGE_CODE = '<language code>' should be returned.

      If this value is not returned, the TNS entry for the data source is not properly configured.

  11. Restart the OPMN services.
  12. Verify the localized strings in Oracle BI Answers. On the login page, specify the appropriate language.

Synchronizing a Target Domain with a Source Domain

In some scenarios, you might only know what target Domain member values should be when you deploy Oracle BI Applications. For example, in Order Management or Supply Chain Analytics, UOM (Unit of Measurement) is typically not known until deployment time. You can set up a non-ranged target domain using the Sync to Source option to automatically synchronize a target domain with values from the source domain.

This process inserts new target members from the source domain, and automatically generates 1:1 mappings. This is useful for large domains with many member mappings that might otherwise take a long time to set up.

Sync to Source is only available for extensible non-ranged Domains.

  1. Navigate to the Domain that you want to synchronize.

    If you are in Configuration Manager, from the Tasks bar click Manage Domains and Mappings, display the Domain mappings tab, select the Domain that you want to edit, then click the Edit Domain Member Mappings icon in the Domain Member Mappings pane to display the Edit Domain Member Mappings dialog.

    If you are in FSM, when you click Go to Task for the Task that is updating a Domain, you display the Edit Domain Member Mappings dialog.

  2. Click Sync to Source.
  3. At the Warning dialog, click OK.

    Important:

    If you click OK to continue, then you commit changes to the target Domain members, even if you do not click Save or click Save and Close on the Edit Domain Member Mappings dialog.

    Target Domain member values are generated. In the example below, the target codes for C_JOB_FAMILY are automatically synchronized with the Source member codes.

Updating Multiple Target Domain Member Values

You can set up a target domain using the Batch Edit option to update multiple target domain members with the same value. This is useful for large domains with many member mappings that require the same value.

  1. Navigate to the Domain that you want to edit.

    If you are in Configuration Manager, from the Tasks bar click Manage Domains and Mappings, display the Domain mappings tab, select the Domain that you want to edit, then click the Edit Domain Member Mappings icon in the Domain Member Mappings pane.

    If you are in FSM, click Go to Task for the Task that is updating a Domain.

  2. Ctrl + click to multi-select one or more rows in the table.
  3. Select a value from the Batch Edit drop-down list.
  4. Click Change to apply the value selected in the Batch Edit drop-down list to all specified members.

Modifying a Warehouse Domain Hierarchy

Oracle BI Applications Warehouse Domains are organized into hierarchies. You might want to modify a hierarchy to enable data to be more effectively analyzed. For example, you might change the order of items in a hierarchy.

  1. In the Domain mappings list, select the Domain Mapping that you want to edit.
  2. Use the options at the top of the Domain Mapping list to change the hierarchy.

Configuring Externally Conformed Domains

You can manage and create conformed domains in Oracle Business Analytics Warehouse that are based on definitions in a source system. For example, you might want to configure Units of Measure (UOMs) that are sourced from a pre-defined master product-line (typically Fusion) source domain.

  1. In Configuration Manager, select the Manage Externally Conformed Domains link in the Tasks pane to display the Manage Externally Conformed Domains dialog.
  2. Use the Product Line drop down list to select a source system.

    When a source system is selected, domains for that source system are displayed.

    Note:

    If your implementation requires user conformed domains that do not have default predefined values other than Not Applicable and Unassigned, then you can add applicable values using the Manage Warehouse Domains page. Search for the applicable domain and select it from the search results. This enables the Add (+) button. You can then use the Manage Externally Conformed Domains page to enter the domain values and later use the Manage Domain Mappings and Hierarchies page to map the values.
  3. In the domains list, select the Domain that you want to configure and click Configure Domain to start the configuration wizard.

    Note:

    If a domain has already been configured, before you can configure the domain using the wizard, you must first delete the existing configuration by clicking Delete Domain Configuration.

    If a domain has already been configured, a green tick is displayed in the Configured? field, and the unique ID of the data source is displayed in the Referenced Data Source field.

  4. Follow the on-screen instructions on the configuration wizard.
  5. Click Save.

    If you include the configured domain in a Load Plan for ETL, the data will be loaded into Oracle Business Analytics Warehouse from the specified source domain.