Skip Headers
Oracle® Business Intelligence Applications New Features Guide
Version 7.9.6.2

Part Number E16811-01
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
View PDF

8 Support for Back-Dated Changes to Position Hierarchy

This chapter contains the following topics:

8.1 Overview

"Back-dated changes" refer to changes occurring in OLTP records after those records have already been processed and loaded into the warehouse. Position hierarchy represents the employee and supervisor reporting relationship that is maintained in the Oracle BI Applications data warehouse. In HR, it is the Supervisor Hierarchy; and in CRM, it is the Position Hierarchy. Position Hierarchy supports historical versions of the hierarchies with the current stamp on the current hierarchy rows. Position hierarchy is delivered with history tracking enabled, and the attributes that are tracked for Type 2 slowly changing are an employee's organization and supervisor. In addition, for CRM position hierarchy, a change in an employee's position is also tracked for Type 2 slowly changing.

In previous releases, Position Hierarchy was not designed to support back-dated changes to an employee's supervisor, organization, or other information to support deletes. If there is a correction or delete in the OLTP primary driving table or auxiliary tables that are sourced to build the supervisor hierarchy structure in the warehouse, changes that are effective prior to the last ETL run date will be loaded into the warehouse as new records but not as corrections, thereby introducing duplicates during the index creation process and causing the ETL to abort. In this release, back-dated changes and deletes in the OLTP that affect the supervisor and position hierarchy will be processed accordingly by the ETL to reflect the retroactive changes in the warehouse.

8.2 Supported Back-Dated Change Scenarios

The Position Hierarchy is a column-flattened structure that is loaded from the Position dimension, which maintains the parent-child relationships. The scenarios described in this section illustrate the effects of how back-dated changes affect the position dimension which in turn will affect the Position Hierarchy.

In an OLTP source system such as Oracle EBS, corrections can be made to historical rows or the current rows. Corrections can be made to OLTP tables that provide the primary data source for the data warehouse or to tables that serve as auxiliary lookups in the ETL process. Corrections can affect the following attributes:

Position hierarchy is affected by back-dated changes in different tables that directly or indirectly influence the ETL process. For example, Division Name can be changed retroactively without corresponding employee assignment changes in the source OLTP system. This back-dated Division Name change will trigger historical updates to the Position Hierarchy.

There are three main types of OLTP tables that affect Supervisor or Position Hierarchy. The following examples represent the tables in a source OLTP system:

The functionality in Oracle BI Applications Release 7.9.6 assumes that:

The following table contains an example of employee P1's assignment history in the warehouse before the back-dated changes:

Table 8-1 Example of Employee P1's Assignment History Before the Back-Dated Changes

Row Person Division Manager Start Date End Date

Row 1

P1

CRM

Mgr1

2006

2008

Row 2

P1

My Division

Mgr2

2008

2009

Row 3

P1

My Division

Mgr3

2009

4712


8.2.1 Back-Dated Change Scenarios That Affect Position Hierarchy

This section describes the types of OLTP back-dated changes that affect the Position Hierarchy and the solutions provided in the warehouse to address the back-dated change scenarios.

8.2.1.1 Scenario 1

A division name changed as a correction to the current record, for example Division Name 'My Division' was renamed to 'My New Division' in 2010. The employee did not change divisions as a result of a transfer. This is a Type B change as the source table does not track Division Name history, which is a Type 2 slowly changing attribute in the warehouse.

Option 1

This option is treated as a Type 2 (SCD) change and will introduce a new Type 2 (SCD) row in the warehouse. This option is enabled if DAC parameter UPDATE_CORRECTIONS_FLG is set to 'N'.

Person Division Manager Start Date End Date
P1 CRM Mgr1 2006 2008
P1 My Division Mgr2 2008 2009
P1 My Division Mgr3 2009 2010
P1 My New Division Mgr3 2010 4712

Option 2

This option is treated as a correction and will change historical data only without a new Type 2 row in the warehouse. This option is enabled if DAC parameter UPDATE_CORRECTIONS_FLG is set to 'Y'.

Person Division Manager Start Date End Date
P1 CRM Mgr1 2006 2008
P1 My New Division Mgr2 2008 2009
P1 My New Division Mgr3 2009 4712

8.2.1.2 Scenario 1a

Division name changed as a correction to a historical record, for example Division Name 'My Division' was retroactively renamed to 'MD' 2008. The employee did not change divisions as a result of a transfer. This is also a Type B change as Division Name history is not tracked in the source OLTP system but is tracked as a Type 2 SCD in the data warehouse.

Option

Update the name change in the relevant history records.

Person Division Manager Start Date End Date
P1 CRM Mgr1 2006 2008
P1 MD Mgr2 2008 2009
P1 My New Division Mgr3 2009 4712

8.2.1.3 Scenario 2

Auxiliary table change: Job information is changed in the source OLTP system that is referred to in the historical data in the warehouse, for example Job name is changed to lower case. This is a Type C change where neither the OLTP nor the data warehouse track historical changes.

Option

New Job is propagated to all historical rows.

Person Division Manager Start Date End Date
P1 CRM Mgr1, job2 2006 2008
P1 My Division Mgr2, job2 2008 2009
P1 My Division Mgr3, job2 2009 4712

8.2.1.4 Scenario 3

Employee changed assignment divisions as a result of a transfer, for example Employee P1 transferred to division 'GRC' reporting to Mgr4 in 2010. This is a Type A change as the change occurs on a main OLTP driving table with history tracking.

Option

The data warehouse will insert a new row for tracking the employee as having a new manager. This is the standard case.

Person Division Manager Start Date End Date
P1 CRM Mgr1 2006 2008
P1 My Division Mgr2 2008 2009
P1 My Division Mgr3 2009 2010
P1 GRC Mgr4 2010 4712

8.2.1.5 Scenario 3a

This is a variation of Scenario 3, for example Employee's transfer from 'CRM' to 'My Division' actually occurred in 2007, not in 2008. This is a correction to the historical assignment record. The back-dated change is to the effective_from and effective_to date of the driving OLTP history table.

Option 1

Update the historical data in the warehouse. This doesn't require fact table updates. This option is enabled if DAC parameter UPDATE_CORRECTIONS_FLG is set to 'Y'.

Row Person Division Manager Start Date End Date
1 P1 CRM Mgr1 2006 2007
2 P1 My Division Mgr2 2007 2009
3 P1 My Division Mgr3 2009 4712

Option 2

This option introduces a new warehouse row to track changes. This option is enabled if DAC parameter UPDATE_CORRECTIONS_FLG is set to 'N'.

Row Person Division Manager Start Date End Date
1 P1 CRM Mgr1 2006 2007
4 P1 My Division Mgr2 2007 2008 (NEW)
2 P1 My Division Mgr2 2008 2009
3 P1 My Division Mgr3 2009 4712

Prior to the back-dated change, the fact table had some transactions pointing to the row 1 of the hierarchy table and some with foreign keys to the row 2. Fact rows with foreign key to row 1 will continue to have the same foreign key or the foreign key will be updated to match either row 2 or row 4 depending on the transaction date.

8.2.1.6 Scenario 3b

A back-dated change in the source OLTP system that results in the splitting of the record. For example, the employee changed managers from Mgr1 to Mgr5 in 2007. In the source OLTP system, the original assignment record with Mgr1 has a new end date of 2007 and a new record was added to assign the employee to the new manager Mgr5 in 2007. The warehouse will respond to the OLTP source change as described in the following table.

Option

Row Person Division Manager Start Date End Date
1 P1 CRM Mgr1 2006 2007
4 P1 CRM Mgr5 2007 2008 (NEW)
2 P1 My Division Mgr2 2008 2009
3 P1 My Division Mgr3 2009 4712

Fact rows with foreign keys to the row 1 will continue to have the same foreign key or the foreign key will be updated to row 4 depending on the transaction date.

8.2.1.7 Scenario 3c

A back-dated change gets cascaded to all the records since a particular date, for example Mgr2 in row 3 should be Mgr4 and also change managers for all future rows since 2008. The employee's current assignment records are as follows in the data warehouse:

Row Person Division Manager Start Date End Date
1 P1 CRM Mgr1 2006 2007
2 P1 CRM Mgr5 2007 2008 (NEW)
3 P1 My Division Mgr2 2008 2009
4 P1 My Division Mgr3 2009 4712

Option

Update the historical and current records in the warehouse:

Row Person Division Manager Start Date End Date
1 P1 CRM Mgr1 2006 2007
2 P1 CRM Mgr5 2007 2008 (NEW)
3 P1 My Division Mgr4 2008 2009
4 P1 My Division Mgr4 2009 4712

8.2.1.8 Scenario 3d

A back-dated change is a row delete in OLTP. Row 2 is deleted in OLTP and row 1 is updated to the end date of 2009.

Option

Transactions will not be deleted in warehouse; but rows will be updated to reflect the changed attributes in the time range including changes initiated by auxiliary tables. This will void fact foreign key updates.

Row Person Division Manager Start Date End Date
1 P1 CRM Mgr1 2006 2008
2 P1 CRM Mgr1 2008 2009 (NEW)
3 P1 My Division Mgr3 2009 4712

8.3 Objects Changed to Support Back-Dated Changes in Supervisor/Position Hierarchy

This section describes the objects have been changed to support back-dated changes in Position Hierarchy.

8.3.1 Data Model Changes

The following changes were made to the data model:

  • Added SCD1_WID to W_POSITION_D and W_POSITION_DH.

  • Adding DELETE_FLG to W_POSITION_DH

  • Adding new tables W_POSITION_DH_BAK, W_POSITION_DH_PRE_CHG_TMP, W_POSITION_DH_POST_CHG_TMP

  • Adding new columns SCD_TYPE1B_FLG and SCD_TYPE2B_FLG to W_POSITION_DH_BASE_TMP

8.3.2 Informatica Code Changes

This section describes the code changes in Informatica.

8.3.2.1 Mappings

The following new mappings have been added:

  • SIL_PositionDimensionHierarchy_SoftDelete

  • SIL_PositionDimensionHierarchy_IdentifyBaseModified_TypeB

  • SIL_PositionDimensionHierarchy_PreChangeTemp

  • SIL_PositionDimensionHierarchy_PostChangeTemp

  • SIL_PositionDimensionHierarchy_CopyDelete

  • SIL_PositionDimensionHierarchy_Delete

The following mappings have been updated:

  • SIL_PositionDimensioHierarchy

  • SIL_PositionDimensioHierarchy_Full

  • SIL_PositionDimensionHierarchy_IdentifyBaseModified

8.3.2.2 Sessions/Workflows

The following sessions/workflows have been added to Informatica:

  • SIL_PositionDimensionHierarchy_SoftDelete

  • SIL_PositionDimensionHierarchy_IdentifyBaseModified_TypeB

  • SIL_PositionDimensionHierarchy_PreChangeTemp

  • SIL_PositionDimensionHierarchy_PostChangeTemp

  • SIL_PositionDimensionHierarchy_CopyDelete

  • SIL_PositionDimensionHierarchy_Delete

8.3.2.3 Reusable Lookup

To support back-dated changes to position hierarchy, the Lkp_W_Position_DH_WID_Type1 lookup was added.

8.3.3 DAC Updates

The following tasks have been added to DAC:

  • SIL_PositionDimensionHierarchy_SoftDelete

  • SIL_PositionDimensionHierarchy_IdentifyBaseModified_TypeB

  • SIL_PositionDimensionHierarchy_PreChangeTemp

  • SIL_PositionDimensionHierarchy_PostChangeTemp

  • SIL_PositionDimensionHierarchy_CopyDelete

  • SIL_PositionDimensionHierarchy_Delete