New BW L5 hierarchy definition and integration to Anaplan.
Tool Leader: Charlotte Rollier
IT leader of the application: Guillaume Thevenet
The L5 hierarchy was before defined with the steps below, coming from Anaplan to BW via flat files.
AS-IS : The management of the L5 Budget hierarchy is the following one :
In this new solution we define the Levels applying rules to the existing BW Cost Center data, then generate outbound files to Anaplan.
The DSOS (AACOCT01 and AACOCT02) and InfoObjects (C_LEVEL1, C_LEVEL2, C_LEVEL3, C_LEVEL4 and C_LEVEL5) from previous solution were reused.
Level Rules definition.
Levels of ZCB_GRP (target hierarchy) | Attributes of Cost Center C_COSTCTR sources and business rules | Rules for the descriptions (texts) of the levels |
Level 1 ZCBS_GRP | IF GBU/Function (C_GBUFUCT) = GRP_GBU then Level 1 = CPFCTR1_2 (BFC GBU code) Else GBU/Function (C_GBUFUCT) (values = GRP_FUNCT or GRP_SBS) | For C_GBUFUCT = GRP_GBU => name of the GBU else the description linked to C_GBUFUCT |
Level 2 ZCBS_GRP | Level 2 = concatenation Group Function (C_GRPFUCT) & CPFCTR1_2 (BFC GBU code) | No GBU in the description only the description linked to Group Function (C_GRPFUCT) |
Level 3 ZCBS_GRP | %case 1 : Function and SBS If C_GBUFUCT= GRP_FUNCT or GRP_SBS Then Level 3 = value of 3 sub function (C_FUNCT_3) %case 2 : C_FUNCT_2 Else IF C_FUNCT_2 = in the list EPRD ; ELOCO ; EMISC; ESTLO (Added in Global Filter) (global filter) THEN level 3 = concatenation of C_FUNCT_2 & Log Sys & Responsible Plant code of the CC and & CPFCTR1_2 (BFC GBU code) with ”_” as separator %case 3 :others cases ELSE concatenation value of 3 sub function (C_FUNCT_3) & CPFCTR1_2 (BFC GBU code) with ”_” as separator | %case 1 : Function and SBS Description linked to 3 sub function (C_FUNCT_3) %case 2 : C_FUNCT_2 First the G_ZONE code from company code C_COMPCDE and code of the plant and description of the plant as space as separator %case 3 :others cases Description linked to 3 sub function (C_FUNCT_3) no need GBU description |
Level 4 ZCBS_GRP | %case 1 : Function and SBS If C_GBUFUCT = GRP_FUNCT or GRP_SBS then Level 4 = 4 function (C_FUNCT_4) %case 2 : C_FUNCT_2 Else IF C_FUNCT_2 = in the list EPRD ; ELOCO ; EMISC; ESTLO (Added in Global Filter) (global filter) THEN level 4 = concatenate 3 sub function (C_FUNCT_3) & log sys & responsible Plant code of the CC & CPFCTR1_2 (BFC GBU code) with ”_” as separator %case 3 : others cases ELSE Level 4 = concatenation value of 4 function (C_FUNCT_4) & CPFCTR1_2 (BFC GBU code) of the CC with ”_” as separator | %case 1 : Function and SBS 4 function (C_FUNCT_4) %case 2 : C_FUNCT_2 3 sub function (C_FUNCT_3) %case 3 : others cases 4 function (C_FUNCT_4) |
Level 5 ZCBS_GRP | %case 1 : Function If C_GBUFUCT = GRP_FUNCT then Level 4 = 4 function (C_FUNCT_4) & 4 function (C_FUNCT_4) with ”_” as separator %case 2 : SBS Else IF GBU/Function = GRP_SBS* THEN concatenate 4 function (C_FUNCT_4) & Code country of the company %case 3 : C_FUNCT_2 Else IF C_FUNCT_2 = in the list EPRD ; ELOCO ; EMISC; ESTLO (Added in Global Filter) (global filter) THEN level 4 = concatenate 3 sub function (C_FUNCT_3) & 3 sub function (C_FUNCT_3) & Log Sys & Responsible Plant code of the CC & CPFCTR1_2 (BFC GBU code) with ”_” as separator %case 4 : Others cases ELSE Level 4 = concatenation value of 4 function (C_FUNCT_4) & 4 function (C_FUNCT_4)& CPFCTR1_2 (BFC GBU code) of the CC with ”_” as separator | %case 1 : Function 4 function (C_FUNCT_4) %case 2 : SBS code country code + 4 function (C_FUNCT_4) space as separator %case 3 : C_FUNCT_2 3 sub function (C_FUNCT_3) (if EPRD etc) %case 4 : Others cases 4 function (C_FUNCT_4) |
Extraction rules.

Only ECO and SCO scope data. (C_COMPCODE-C_SCOPE)
Remove records where Level 5 is empty or only "_".
Remove records where Leve 1 is empty.
Global Filter variables for the Level Exceptions:

Process Chain: PC_CT_LEVEL5_HIER2 - COSTA - Hierarchy Level 5 from ECC

TBD
BW folder for the files : /exploit/BW/Anaplan_outbound
Format : in TXT, Unicode format and comma as separator.
Add “ “ for the descriptions fields as some of them could contain comma and raise issues in the Anaplan upload process.
Custom Program ZBW_ANAPLAN_OUTBOUND_HEADER created to add the files header lines, this is the last step from Process Chain PC_CT_LEVEL5_HIER2.
OH_COCT14 - F2G Anaplan - L5 Budget Hierarchy ECO
File name: L5_budget_hierarchy_ECO.txt
Structure definition:
L1 Code (mandatory) (extraction only L1 not empty)
L1 Description (mandatory)
L2 Code (mandatory)
L2 Description (mandatory)
L3 Code (mandatory)
L3 Description (mandatory)
L4 Code (mandatory)
L4 Description (mandatory)
L5 Code (mandatory)
L5 Description (mandatory)
Scope (mandatory)
OH_COCT15 - F2G Anaplan - L5 Link Cost Center ECO
File name: L5_link_cc_ECO.txt
Structure definition:
CC Code (mandatory)
CC Description (mandatory)
LVL5 Code (mandatory)
BSA (not mandatory)
Scope (mandatory)
OH_COCT16 - F2G Anaplan - L5 Budget Hierarchy SCO
File name: L5_budget_hierarchy_SCO.txt
Structure definition:
L1 Code (mandatory) (extraction only L1 not empty)
L1 Description (mandatory)
L2 Code (mandatory)
L2 Description (mandatory)
L3 Code (mandatory)
L3 Description (mandatory)
L4 Code (mandatory)
L4 Description (mandatory)
L5 Code (mandatory)
L5 Description (mandatory)
Scope (mandatory)
OH_COCT17 - F2G Anaplan - L5 Link Cost Center SCO
File name: L5_link_cc_SCO.txt
Structure definition:
CC Code (mandatory)
CC Description (mandatory)
LVL5 Code (mandatory)
BSA (not mandatory)
Scope (mandatory)