It is often seen that certain key business requirements are not covered by the pre-built contents (OOTB - Out Of The Box). For example, the OOTB Data Warehouse may not include some reporting metrics and you need to source it from the primary data source (OLTP database) or external secondary data stores (i.e. file, RDBMS, XML, and OLAP). There are number of situations where there is a need to modify the OOTB contents. This article describes how to do customizations in case we are required to build new Fact tables for the BI Apps 11.1.1.8.1.
In these cases it is important to follow certain guidelines and techniques when developing non-standard BI elements. The idea is to follow the same design techniques and guidelines that BI Apps uses to build OOTB contents for customization. This approach would be helpful to maintain the Oracle’s high standard development practices.
How to add new fact to the Oracle Business Analytics Warehouse?
Create custom Fact Staging and Fact tables in the database. Name all the newly created tables as WC_. These datastores include 2 following required columns:
In this document, we use WC_MASAN_PROC_FST_FS and WC_MASAN_PROC_FST_F which are the custom datastores of Procurement Analytics as sample templates.
Create 2 these custom tables in DW database, then import into ODI using the BI Apps RKM.
Note that the specific submodel that a table belongs to drives the table maintenance behavior. For example, tables in the ‘Fact Stage’ submodel will always be truncated during each ETL run while tables in the ‘Fact’ submodel are only truncated during a Full ETL run.
Before creating the custom SDE and SIL tasks, you should create new SDE and SIL Adaptor folders named as CUSTOM_<Original Folder Name> (e.g. CUSTOM_SDE_ORAR122_Adaptor) and CUSTOM_SILOS then you can put the custom SDE and SIL tasks into.
In ODI Studio, create the SDE and SIL task in the Custom SDE and SIL adaptor folders. In this document, we use SDE_ORA_MasanProcForecastPriceFact and SIL_MasanProcForecastPriceFact as sample templates, as shown below:
These tasks include the logic required to populate the data to the custom columns.
Dummy Interface
If you just use the Procedures to create the tasks and no need to use the Interfaces, then you should create a Dummy Interface which the Source and Target Datastore are the same and added the filter as shown below
The purpose of creating this Interface is OBI Apps will include automatically the Pre-Steps (Initialize) and Post-Steps (Finalize) (i.e. gather stats) in the generated Load Plan as shown below and adding filter is to not populate the data the target table using this interface.
Put the Interface is followed by the Procedure in the Package as following example:
Generate the custom scenario
Once you done the custom packages creation, generate the scenarios for those tasks named as <Folder Name>_<Package Name>
(e.g. SDE_ORAR122_ADAPTOR_SDE_ORA_MASANPROCFORECASTPRICEFACT and SILOS_SIL_MASANPROCFORECASTPRICEFACT).
Add a foreign key constraint to all dimension tables associated with this fact. The foreign key constraint ensures the Dimension SIL task is included in the generated load plan. The Dimension SDE task will be included in the generated load plan because it populates the staging table that is used as a source for the Dimension SIL task.
Include the custom facts step automatically in the Generated Load Plan
Add the SDE step to ‘3 SDE Fact X_CUSTOM_FG <Product Line Version Code>’ Load Plan Component:
Add the SIL step to ‘3 SIL Fact X_CUSTOM_FG’ Load Plan Component:
Oracle Business Intelligence (BI) Applications are complete, prebuilt BI solutions that deliver intuitive, role-based intelligence throughout an organization. These solutions enable organizations to gain more insight and greater value from a range of data sources and applications including Oracle E-Business Suite, PeopleSoft, JD Edwards, Siebel, and third party systems such as SAP.