Considerations for Enabling Descriptive Flexfield Segments for Business Intelligence

A descriptive flexfield that's registered in the database as enabled for Oracle Transactional Business Intelligence (OTBI) includes a BI-enabled setting for each of its segments. When a global, context, or context-sensitive segment is BI-enabled, it's available for use in Oracle BI.

The following aspects are important in understanding BI-enabled flexfield segments:

  • Flattening business components to use BI-enabled segments in Oracle BI

  • Equalizing segments to prevent duplication and complexity in the flattened component

  • Mapping attributes of flattened business components to logical objects in Oracle BI

  • Managing the labels that map segments to logical objects in Oracle BI

After you deploy a business intelligence-enabled flexfield, use the Import Oracle Data Extensions for Oracle Transactional Business Intelligence process to import the flexfield changes into the Oracle Transactional Business Intelligence repository. Users can make use of the newly-generated attributes in business intelligence applications. For example, a user can generate a report that includes attributes added by the descriptive flexfield. For information about logical objects and import, see the Creating and Administering Analytics and Reports guide for your products.

Flattening

When you deploy a BI-enabled descriptive flexfield, the deployment process generates an additional set of flattened Application Development Framework (ADF) business components. The ADF business component is generated in addition to the usual ADF business components and the ADF faces artifacts. The flattened business components include attributes for BI-enabled segments only. Flattening means each user-defined column in each context shows up as an attribute in the Oracle Business Intelligence folder.

Flattened components include one attribute for the BI-enabled context-segment, and one attribute for each business intelligence-enabled global segment. For BI-enabled context-sensitive segments, what's included as part of the flattened components depend on whether you assign a label to the segment or not:

  • If you assigned a label to the segment, the flattened components include an additional single attribute representing segments with that label.

  • If you didn't assign a label, the flattened components include a discrete attribute for each BI-enabled context-sensitive segment in each context.

Mapping to Logical Objects in Business Intelligence

You can simplify reporting by representing similar segments as a single logical object in Business Intelligence.

If you assign a label to any set of context-sensitive segments that serve the same purpose in different contexts, you can consolidate or equalize the segments into a single attribute. This prevents duplication and the extra workload and complexity that result from the flattening process. For example, a United States context might have a Passport segment and a Canada context might have Visa segment. If you assign the NationalID segment label to both the Passport and Visa segments, they're equalized into the same NationalID attribute in the flattened business component.

Non-labeled context-sensitive segments aren't equalized across context values, so the flattened components include a separate attribute for each context-sensitive segment for each context value. It may not be possible to equalize similarly labeled segments if they have incompatible data types or value set types.

Assign a label to a global segment, context segment, or context-sensitive segment to map the corresponding attribute in the flattened components to a logical object in Oracle Business Intelligence. Using labels to map segments to BI logical objects minimizes the steps for importing the flexfield into Oracle Business Intelligence.

Note: Assigning a label to a context-sensitive segment serves to equalize the attribute across contexts, as well as map the equalized attribute to business intelligence.

Managing Labels

You may assign a predefined label (if available) to segments or create new labels for assignment, as needed. Specify a code, name, and description to identify each label. In the BI Object Name field, enter the name of the logical object in Oracle Business Intelligence to which the segment label should map during import. Specifying the BI logical object minimizes the steps for importing the flexfield into Oracle Business Intelligence and helps to equalize context-sensitive segments across contexts.

If no labels are assigned to a BI-enabled segment, or the BI Object Name on the assigned label doesn't exist in business intelligence, you must manually map the segment to the desired logical object when importing into Oracle Business Intelligence.

In addition, context-sensitive segments without labels can't be equalized across context values. The flattened components include a separate attribute for each non-labeled context-sensitive segment in each context.

Importing to Oracle Business Intelligence Repository

After you deploy a business intelligence-enabled flexfield, import the flexfield changes into the Oracle Business Intelligence repository to make use of the newly flattened business components in business intelligence and then propagate the flexfield object changes. When you import the metadata into the Oracle Business Intelligence repository, you must do so as the FUSION_APPS_BI_APPID user.

To import flexfield changes into the Oracle Transactional Business Intelligence repository in Oracle Cloud implementations, run the Import Oracle Data Extensions for Oracle Transactional Business Intelligence process. For information about logical objects and import, see the Creating and Administering Analytics and Reports guide for your products.

Note: When you import a flexfield into the Oracle Transactional Business Intelligence repository, you see both <name>_ and <name>_c attributes for each segment, along with some other optional attributes. The <name> attribute contains the value. The <name>_c attribute contains the code of the value set that the value comes from, and is used for linking to the value dimension. You must import both attributes.