(warning)     (warning)     (warning)     (warning)

The new wiki link for this data flow is here:

Technical Documentation - COSTA

Please update the doc there and no longer here.

(warning)    (warning)       (warning)       (warning)


General presentation

Objective of the application

Teh objective of the application is to provide provide a cost visibility solution , improving the transparency and including: 

- External spend (excl. raw materials & energy) and all Labor 

- Providing both an Origin and Destination view

Build a “ZBB-like” foundation (zero based budgeting)

Supported via a user-friendly and flexible toolto help on decision-making

The application is based on 3 tools

  • BW  : for mreging different source of data , enriching the model with Business rules , providing Destination view of the costs
  • Qliksense : for the dashboard
  • ANAPLAN : to build teh budget


COSTA  model provide 2 views of the costs 

  • the Origin View
  • the Destination view


ORIGIN VIEW

DESTINATION VIEW




Tool Leader  : Gilles Madjarian  + IT leader of the application:


Usage information

Critical period : Closing period and Dashboard relaoding 


History

Roles & Access

Roles and access

List of application role + menu role  and explanation if we have several applications role with specials rules.

Role CodeRole DescriptionExplanation
ZR_RCS_CA_M731CT - COSTA Transactions

Role to have access to transaction below :

ZBW_ADJ_PERIM_COSTA
ZBW_BUD_COSTA
ZBW_COR_COSTA
ZBW_COSTA_SNAP
ZBW_CUST_COSTA
ZCOSTA_BRIDGE_FILE







Authorization objects

List of autorisation objects mandatory for the application.

Authorization objectExplanation






Dataflow overview

Composites providers:

CPCOCT05 (uses calculation view  CV_FMCO_CO_CT_UNION_COSTS_TRANSPARENCY_DEST).


Architecture & Data Flow Desciption for :

  • Co$Ta At Origin : Overall Architecture and concepts
  • Co$Ta At Origin : COOM (CCA, OPA, WBS) Technical specifications
  • Co$Ta At Origin : COPA Technical specifications
  • Co$Ta At Destination :
    • Architecture and concepts
    • Scheduling
    • Technical specifications

Functional and Technical rules on Workbench + Reporting

Where used list variables from master data global filter

Flat files loading - Transaction ZBW_CUST_COSTA


Adjustment perimeter

  • Program: ZBW_COSTA_CORRECTIV
  • Process Chain: PC_CT_CORRECTIVE_2_01
  • InfoProvider: APCOCT20
  • Flat file format:

Corrective flow

  •  Program: ZBW_CORR_FLOW 
  • Process Chain: PC_CT_CORREC_01
  • Infoprovider: APCOCT07
  • Flat file format:

Zero Based Budgeting

Resp. Cost Center Determination

Investment Reason WBS

Bridge Perimeter

  • Program: ZBW_COSTA_FILE
  • Process chain:  PC_CT_PERICH_01 
  • Infoprovider: APCOCT23
  • Query: 
  • Flat file format:

Corrective Flow destination

  • Program: ZBW_CORR_FLOW_2 
  • Process chain: PC_CT_CORREC_02
  • Infoprovider: APCOCT24
  • Flat file format:




Order Capex Opex

Percentage inflation

Rules & Explanations

Cluster GBU

Clusters and sub clusters come from PF1_050, datasource DTS_BW_REPO_BU_CLU_SCLU. This datasource uses module function ZFM_BW_REPO_BU_CLU_SCLU).

We extract data into adso APCOCT14 and then load the attributes and textes in master data CPFCTR1_2, C_CLUSTER & C_SUBCLUS (loadings done in process chain PC_CT_MD_01).

Group of function

Goal:

Add in master data C_COSTCTR two attributes: group function and GBU function extracted from hierarchy Z013ZCBS_GRP (WP1 system). The link between cost center and hierarchy is C_FUNCT_2 (attribute from cost center and level 4 in hierarchy Z013ZCBS_GRP).

Steps: 

1) Extract Z013ZCBS_GRP hierarchy in master data C_FUNCT_2 where: (done in process chain PC_CT_MD_01).

  • C_FUNCT_2 = level 4 in Z013ZCBS_GRP (without controlling area).
  • C_FUNCT_2__C_GRPFUNC = Level 3 in Z013ZCBS_GRP.
  • C_FUNCT_2__C_GBUFUNC = Level 2 in Z013ZCBS_GRP.

2) Load attributes C_GRPFUNC & C_GBUFUNC in master data C_COSTCTR (with look up on C_FUNCT_2)


Cost package derivation from:

Material Group

In adso APCOCT04 we use data from master data C_MAT_GRP to determine cost sub package (C_CTSBPKG).

This loading is done in process chain PC_CT_TR_01.

Segment

In adso APCOCT05 we use data from master data C_SEGT to determine cost sub package (C_CTSBPKG).

This loading is done in process chain PC_CT_TR_01.

Cost Element:

In adso APCOCT06 we use data from adso APCOCT16 (only landscape ERPSOLV and ERPRCS)  to determine cost sub package (C_CTSBPKG) associated to cost element.

This loading is done in process chain PC_CT_TR_01.


Investment Reason for PM Order

Goal: in master data c_coorder add three new attributes C_GEN_REA & C_INV_REA & C_ORD_TYP

C_GEN_REA & C_INV_REA come from C_WBS_EL2 and C_WBS_EL2 comes from dso ABCOCT01 & ABCOCT02.



Main rules:

  • Developments are done in transformtions:
    • Transf: 0COORDER_ATTR -> C_COORDER
    • Transf: 0COORDER_ATTR -> C_COORDER Solvay
  • The filters used are defined in master data global filter we stream "C_COORDER".
  • By default the period to read adso ABCOCT01 is current month -1. But it's possible to make the look-up with several month with definition of period in master data global filter: 

Start routine:

  1. Define all filters.
  2. Do a select in internal table to take data from adso ABCOCT01 or ABCOCT02 with filters on CALMONTH, C_PSOBJTY, C_DESTTY and C_PTOBJTY.
  3. Aggregation with keys LOGSYS /BIC/C_PSOBJ /BIC/C_PTOBJ BIC/C_WBS_EL2 of data from DSO ABCOCT0* in internal table sorted by ascending.
  4. Search the attributes C_INV_REA & C_GEN_REA in master data C_WBS_EL2 for all entries of internal table.
  5. Create new table to have PSOBJ (coorder) and WBS_EL2 + Attributes in same table.
  6. Select current GEN_REA, INV_REA, ORD_TYP from master data C_COORDER to be able to keep current data if nothing was found in dso ABCOCT01 or C_WBS_EL2

End routine:

If C_COORDER___0ORDCATEG = 30 feed C_INV_REA & C_GEN_REA & C_ORDR_TYP

Else feed only C_ORDR_TYP

If nothing was found, no change, keep the current attributes in master data C_COORDER.

Investment Reason for WBS

Goal is to determine "General reason for investment"(C_GEN_REA) from mapping table APCOCT17 for CO-OM WBS part flow and Corr Flow.

A program has been created ZBW_COSTA_INV for upload file as link:

aDSO:

  • APCOCT17

Process Chain:

  • PC_CT_INV_REA_01

Impacted HANA Views:

  • CV_FMCO_CO_CT_AT_DEST_CORR
  • CV_FMCO_CO_CT_CORR_FLOW
  • CV_FMCO_CO_CT_WBS6_RHODIA
  • CV_FMCO_CO_CT_WBS6_SOLVAY

Example for HANA Views CV_FMCO_CO_CT_WBS6_RHODIA, left join has been made with 0LOGSYS and C_INV_REA and get C_GEN_REA:

ANAPLAN/F2G SCOPE

In scope of Costa data, it's necessary to define which data are for COSTA, F2G or ANAPLAN. The idea is to exclude some records not in scope of ANAPLAN or F2G.

https://drive.google.com/file/d/1hNM9ZWVDHCp4yIVWyOTv46dIfytFWwqF/view

To do that, it's necessary to define the rule of exclusion in a table: ZCOSTA_ANAPLAN

This table could be maintened with SM30 or transaction ZMAINT_COSTA_ANAPLAN.


09/07/2023 : PO2 Project impact : ZCOSTA_ANAPLAN has been enhanced but adding an New Key : Authorization Scope. Now the flag determination is dependent on the scope (SCO or ECO) . For D1 (06/2023) all businness rules has been duplicated are are similar for SOLVAY. ECO or SCO. But in the future , the rules can be independant .

Special case : interco flag

  • For SOLVAY  we check the  SOLVAY INTERCO FLAG (C_FLGINT)
  • For ECO  we check the  ECO INTERCO FLAG (C_FLGIN02)
  • For SCO  we check the  SCO INTERCO FLAG(C_FLGIN03)

In "J_FLAG_1_R2" in CV_FMCO_CO_CT_UNION_COSTS_TRANSPARENCY_DEST we added this calculated column to determine which exclusion reason used:

If in source of data of the CV the attribute C_FLGIN02 from C_PCOMPAN is equal to X and C_AUTHMA is ECO and the Exclusion reason is not null (it means the join between ZCOSTA_ANAPLAN table and source of data in CV with C_FLGINT and C_AUTHMA is working), the C_CTEXR_A_FLGINT_CALC = C_FLGINT_ECO.

Else, if the C_CPCOMPAN__C_FLGIN03 (from source of data in CV) = X and C_AUTHMA is SCO and the Exclusion reason is not null the C_CTEXR_A_FLGINT_CALC = C_FLGINT_SCO.

Else, if the C_CPCOMPAN__C_FLGINT (from source of data in CV) = X and C_AUTHMA is SOLVAY and the Exclusion reason is not null the C_CTEXR_A_FLGINT_CALC = C_FLGINT.

Else C_CTEXR_A_FLGINT_CALC is null.


We use this table in calculation view CV_FMCO_CO_CT_UNION_COSTS_TRANSPARENCY_DEST.

To apply the exclusion flag anaplan or F2G:

  • We do a projection of table ZCOSTA_ANAPLAN, filtered on one type of C_CTEXR_A or C_CTEXR_F.
  • Create a full outer join with costa data and ZCOSTA_ANAPLAN on the necessary field(s) to find which records match with the filter, if there is a match we add a new column with the C_CTEXR_A or F.
  • Repeat the join for each type of filter.

  • At the end we can define a global column for exclusion flag and exclusion reason (anaplan and F2G).


Level 5 - Responsible Cost center

Level 5 responsible cost center is retreived in CV_FMCO_CO_CT_UNION_COSTS_TRANSPARENCY & CV_FMCO_CO_CT_UNION_COSTS_TRANSPARENCY_DEST.

1 - Projection of adso APCOCT18 where L5 are stored.

2 - Join with costa (co_area, c_resp_cc) to have calday (calculated with the first day of the costa period) from costa data in same line of L5.

3 - Projection of L5 with filter on L5 date from and L5 date to with help of calday.

4 - Rank to take only one L5 by co_area, c_resp_cc and date.

5 - Join to add the L5 in costa table with join on CO_AREA, C_RESP_CC and CALDAY.


GBU Global

In calculations views

CV_FMCO_CO_CT_COOM_DEST_RHODIA
CV_FMCO_CO_CT_COOM_DEST_SOLVAY
CV_FMCO_CO_CT_COMPOSITE_RHODIA
CV_FMCO_CO_CT_COMPOSITE_SOLVAY
CV_FMCO_CO_CT_AT_DEST_COR
CV_FMCO_CO_CT_AT_DEST_SAMPLE
CV_FMCO_CO_CT_COST_NON_ERP
CV_FMCO_CO_CT_COPA_COMPO_RHODIA
CV_FMCO_CO_CT_COPA_COMPO_SOLVAY

The global GBU is calculated in fuction of C_MAGNITU or C_RESP_CC:

If we don't have GBU in attribute of C_MAGNITU (destination GBU) we use GBU from C_RESP_CC (origin GBU).

Rule in calculation view: if(isnull("C_MAGNITU__CPFCTR1_2") OR "C_MAGNITU__CPFCTR1_2" = '',"C_RESP_CC___CPFCTR1_2","C_MAGNITU__CPFCTR1_2")


FI - Tab Sample COGS flow ECC WP1

Get ECC Sample COGS table in specific datasource and replicate it in BW part (Bex COSTA):


Needs column "S" of "Step 1 - Axis , Filters and authorization excel file":



aDSO creation has been made : 

  • APCOCT08 with PK:
    1. 0LOGSYS
    2. C_COMPCDE
    3. 0CALYEAR
    4. 0AC_DOC_NO
    5. 0ITEM_NUM


Rules In start routine: 


SITER field determination, with dso DPCOMPCD(DSO : Company Code Specific Attributes Purchasing) with company code 

and 0PLANT master data with plant


in target part for master data C_SITER:


First get C_SITE data in 0PLANT (internal table IT_PLANT) and if no data get C_SITER in dso DPCOMPCD (internal table IT_SITER)



For DTP :  full loading.


Process chain get data to ECC and load the aDSO APCOCT08 - PC_CT_TR_SAMPLE

This process chain has been put in COSTA global Process chain PC_CT_META_01 and load every day.


aDSO is used in calculation view CV_FMCO_CO_CT_SAMPLE and get in left join several fields.

There are calculated columns in projection P_FORMAT:



this calculation view is used in composite provider CPCOCT01.


Non ERP flow CYTEC CBS

Goal: Load from CYTEC Non ERP data (Bex COSTA) for cost center and cost element to:

  • cube CUB_FC007 (ods ODSBCCA9)
  • master data 0C_COSTCTR
  • master data 0COSTELMNT

Needs column "Y" of "Step 1 - Axis , Filters and authorization" excel file:

Loading is made in program ZBW_CYTEC_CBS and download in AL11 directory with csv file:

  • /exploit/BW/Cytec/cbs_function_costs_cytec_NARAUJO.csv

3 process chain are used for load NERP data in cube and 2 master data:

  • PC_FC_CYTEC_003
  • PC_FC_CYTEC_002
  • PC_FC_CYTEC_001

PSA deletion has been made in program with process chain:

  • PC_FC_CYTEC_003A
  • PC_FC_CYTEC_002A
  • PC_FC_CYTEC_001A


NERP BW Flow:


dso is used in calculation view CV_FMCO_CO_CT_NERP_COMPO and get in left join several fields.

There are calculated columns in projection P_FORMAT:


this calculation view is used in composite provider CPCOCT01.


Budget flow loading by flat file


Goal is to upload with flat file budget COSTA data and import it in BW (Bex COSTA) from program ZBW_COSTA_BUDGET


Needs column "AF" of "Step 1 - Axis , Filters and authorization" excel file:

Template of Budget flat file :

https://drive.google.com/file/d/12_rgc58981MmPmEnRO-rpk7hThCFSudz/view

aDSO has been created for get Budget data from AL11 folder:

  • APCOCT12
  • /exploit/BW/COSTA/budget_costa.csv

An event have been created for data loading in BW side:

  • Z_EVT_START_PC_CT_BUDGET_01

Process chain is:

  • PC_CT_BUDGET_01

Budget BW flow:


aDSO APCOCT12 is used in calculation view CV_FMCO_CO_CT_BUDGET_FLOW and get in left join several fields.

There are calculated columns in projection P_FORMAT:


this calculation view is used in composite provider CPCOCT01.


IFRS16 FIAP lease Rhodia and Solvay

Goal is to get data in dso DBFIPA10 CAPEX Rhodia - FIAP Lease and DBFIPA11 CAPEX Solvay - FIAP Lease.

There are not specific program but there are calculation view with several left join to get several fields.

Needs column "V" and "W" of "Step 1 - Axis , Filters and authorization" excel file:


dso are used in calculation view CV_FMCO_CO_CT_WCFI_LEASE_COMPO_RHODIA and CV_FMCO_CO_CT_WCFI_LEASE_COMPO_SOLVAY get in left join several fields.


There are calculated columns in projection P_FORMAT:

this calculation view is used in composite provider CPCOCT01.


Corrective Flow

Goal is to actual and quantity correction in COSTA flow.

Needs column "AD" of "Step 1 - Axis , Filters and authorization" excel file:


Template of file for program ZBW_CORR_FLOW (transaction ZBW_COR_COSTA):

https://drive.google.com/file/d/1A9cxFofRBGiyUNW9_97p2u_NJItUQCE1/view


Loading is made in program ZBW_CORR_FLOW and download in AL11 directory with csv file:

  • /exploit/BW/COSTA/CORR/corr_costa.csv

aDSO have been created:

  • APCOCT07

No event have been created for data loading in BW side:

  • loading is made on demand

Process chain is:

  • PC_CT_CORREC_01

Budget BW flow:

aDSO APCOCT07 is used in calculation view CV_FMCO_CO_CT_CORR_FLOW and get in left join several fields.

There are calculated columns in projection P_FORMAT:

this calculation view is used in composite provider CPCOCT01.


PCARD flow


Goal identify with a flag all CO document (at header level) link to PCARD Flow( COOM flow Solvay and Rhodia).

PCARD GL Account is put in table C_GLBFILT for determine relative CO document GL Account for PCARD, GL Account can be changed :


There are 2 HANA views, CV_FMCO_CO_CT_COOM_SOLVAY and CV_FMCO_CO_CT_COOM_RHODIA for determine PCARD flag:


Networks substitution by WBS


Goal Before Origin/Destination Process replace the partner Object for 0NWA posting by WBS object.

Only for PF1 Solvay

For do this datasource have been used:

  • 0ACTIVITY_ATTR
  • 0NETWORK_ATTR    

2 master data have been created:

  • C_NETACT → compounding 0LOGSYS & C_NETWORK 
  • C_NETWORK → compounding 0LOGSYS



DTP's have been created on ODP. 

Transformation's are on direct mapping without trasnformation rules.

Loading has been made in process chain PC_CT_MD_01 (daily loading)

Impacted HANA views:

  • CV_FMCO_CO_CT_DEST_R0_CCA_SOLVAY
  • CV_FMCO_CO_CT_DEST_CCA_TO_WBS_SOLVAY

Left join has been made between source table ODS6CCA9 and master data(MD) C_NETACT join on:

  • (SOURCE) LOGSYS = (MD) LOGSYS
  • (SOURCE) PIOVALUE = (MD) CC_PIOVALUE_MD
  • (SOURCE) PIOBJSV = (MD) CC_PIOBJSV_MD

PIOVALUE network value 

PIOBJSV type of partner (here 0NWA)


Substitution have been made (0NWA "Network"→ 0POS "WBS") if in source (ODS6CCA9) PIOBJSV = "0NWA" and DB_CR_IND =" H"

Calculated columns for J_NET_TO_WBS node of view:


get only PIOBJSV = 0NWA of source table if match with LOGSYS and PIOVALUE(network value) get WBS from C_NETACT and put 0POS for PIOBJSV

Result after join with C_NETACT:


Result before join with C_NETACT:



Default Responsible Cost Center


Goal is to determine Responsible Cost Center with complex condition for CO-PA and FI flow.

This complex condition has been translated into technico-functional algorithm:


Datasource with AL11 file link:


File has been created and downloaded with program ZBW_COSTA_RCC (template https://drive.google.com/file/d/1lGDkT4e7LFBnwnFci_27u3maKelt4o0r/view) and AL11 file data it's loaded in aDSO APCOCT15 with process chain PC_CT_RCC_01.

Impacted HANA Views:

  • CV_FMCO_CO_CT_COPA_COMPO_RHODIA
  • CV_FMCO_CO_CT_COPA_COMPO_SOLVAY
  • CV_FMCO_CO_CT_FI_COMPO_RHODIA
  • CV_FMCO_CO_CT_FI_COMPO_SOLVAY

Example with HANA View CV_FMCO_CO_CT_COPA_COMPO_RHODIA (same development for others HANA Views)

:


For determine "Responsible Cost Center" there are 6 steps:

Step 1:

  • Get aDSO(APCOCT15) with uploaded data with program ZBW_COSTA_RCC
  • Aggregation node with source data only with fields of aDSO:

Step 2:

  • inner join with 2 nodes on CO_AREA and CPFCTR1_2 (GBU) because GBU and CO_AREA are always in condition. 

Step 3:

  • Responsible Cost Center determination with complex condition with priority indicator creation 1 to 7

µ

Step 4:

  • Aggregation node for get min of PRIORITY field (if i have 1 and 4 indicator for same keys i priorize indicator 1 not 4)
  • without cost center and attributs fields

Before aggregation:


After aggregation:

Step 5:

  • Get coster and attributs fileds with left join


Step 6:

  • left join with source data and step 5 node and get all others source data


Granularity it's the same between source node and semantics nodes


Result:



GBU Billing


Goal is to get user fields in table PRPS in ERP side:

  • ZZ_LANDCSAPE : Partner CO Object Landscape (can be different of syslog)
  • ZZ_CO_ACC_ASGN_TYPE : Acc Asgn Type (type for WBS = 'PR', ORDER = 'OR', COST = 'KS')
  • ZZ_CO_ACC_ASGN : WBS, ORDER, COST

Data source are PF1 and WP1:

  • ZZ_PRPS_USER_FIELDS : all fields of PRPS have been retrieved.


BW side:


There are 2 datasource 1 for PF1 and 1 for WP1.

There are 2 transformation 1 for PF1 and 1 for WP1.

There are 2 dtp 1 for PF1 and 1 for WP1.

There is 1 infosource (1 transformation) for process 2 flow 

aDSO APCOCT19


Rules:

In 2 transformation (PF1 and WP1) i populate:

  • C_WBSBILL : with type ZZ_CO_ACC_ASGN_TYPE = 'PR' and put ZZ_CO_ACC_ASGN (conversion exit have been made)
  • C_COCBILL : with type ZZ_CO_ACC_ASGN_TYPE = 'KS' and put ZZ_CO_ACC_ASGN 
  • C_ORDBILL : with type ZZ_CO_ACC_ASGN_TYPE = 'OR' and put ZZ_CO_ACC_ASGN 


Infosource:

in infosource transformation a process have been made for populate fields C_RCCBILL, C_GBUBILL, C_COABILL for WP1 and PF1 together.



3 select has been made in start routine:

  • /bic/mc_costctr
  • /bic/mc_coorder
  • /bic/Pc_wbs_el2

Read table has been made in C_WBS_EL2 target field and used in appropriate fields.

Loading has been made in daily PC_CT_MD_01 procces chain.



Snapshots for Control Check

Composite Provider CPCOCT08 allows users to compare current data with weekly/on demand snapshot saved in ADSO ABCOCT07.

ABCOCT07 is loaded from Composite Provider CPCOCT09, copy of CPCOCT01 without Input Parameters. The Input Parameters "Fiscal Period From" and "Fiscal Period To" are restored in Calculation View CV_FMCO_CO_CT_ABCOCT07, to facilitate union between Snapshot data and Current data.

Each Snapshot is timed and dated, and named following the pattern "Pyymmdd". Snapshots past a certain time (in months, stored in C_GLBFILT 001 for Stream COSTA and Rule SNAPSHOT) are deleted from history.

A snapshot is taken every Saturday though Process Chain PC_CO_CT_01, but one can also be taken manually through Transaction ZBW_COSTA_SNAP.

Users can access the data through query BW_QRY_CPCOCT08_0001 "COSTA - Snapshot vs Current Comparison (Core Query)"

Should snapshot data appear to be doubled/tripled, display C_TIMEP (Snapshot Time) to check that multiple snapshots were not taken the same day, which would explain that result in the query.

Note: Data should be loaded through DTP without "SAP HANA Extraction" checked. That check changes the way data is extracted from CPCOCT09 and generates erroneous totals for K_INTRAT.

Anaplan Budget & BE Import

Anaplan sends its Budget and Best Estimate data, both for Origin and Bridge Destination, to a folder on Application Server: /export/BW/Anaplan_inbound.

Origin data is collected through ADSOs APCOCT21 and ABCOCT08.

Bridge Destination data is collected through ADSOs APCOCT22 and ABCOCT09.

Both dataflows are loaded in parallel using the same Process Chains, one for Budget data and one for Best Estimate

Process ChainProcess Chain DescriptionPeriod
PC_CO_CT_05COSTA - TD - Anaplan Best Estimate DestinationMonthly on 13th workday of the month in Calendar 50
PC_CO_CT_06COSTA - TD - Anaplan Budget Destination

Yearly on 13th workday of July in Calendar 50

Users can request to have either chain running in addition to these default periods.

For Budget, initial load is done in July, with corrective/definitive values entered between September and November (daily updates required during that period).


Each source Flat File is assigned to a C_SRC_ANA (Source Anaplan) value, which is used to identify the dataflow, and offers a single KF for the Propagation ADSO associated.

For example, DTS_ANAPLAN_BESTIMATE_ADJ, DTS collecting adjustments for Origin Best Estimate, initiates KF K_ADJ_BESTIM in APCOCT21, with C_SRC_ANA = 'SRC_ADJ_BESTIM'.

Most important line of code at this level is this, identical in all transformations to APCOCT21/22, except for the name of the KF and the values of C_SRC_ANA (see above) and C_VERSN2 (F01 for BE and 000 for Budget):

This code sets all existing entries from the same source to Flag Obsolete = 'X', while the transformation loads actual data with Flag Obsolete = ''. Thus, all data deleted from the source file are marked as obsolete in the Propagation ADSO once the transport is complete. The transformation of the ADSO on itself (APCOCT21 → APCOCT21 and APCOCT22 → APCOCT22) set RECORDMODE = D to all obsolete entries, so they are removed from Business level when the Delta load runs.

The quarters of the period to be flagged as obsolete in Propagation layer (and then to be deleted) are manually maintained in the Global Filter : one for Budget (COSTA/PERIOD_000) and one for BE (COSTA/PERIOD_F01).

These values must be manually adapted when changing the loaded year.



For each monthly run, Best Estimate history is saved by moving existing data from version F01 to F02. Whether this save is done or not depends on the value of Global Filter COSTA/RELOAD_F02 above. Low Value should be 'Y' by default, changed to 'N' when manually reloading Best Estimate data.

Dependencies with other applications

Data loadings


List of process chain

Process chain descrptionProcess chain technical nameStarter
COSTA - Adjustment Perimeter Flow PC_CT_CORRECTIVE_2_01  ZBW_COSTA_CORRECTIV
COSTA - At Destination Alloc Matrix Loading PC_CT_DEST_SCHE_02  Sub Chain from PC_CT_DEST_SCHE_01  
COSTA - At Destination scheduling process 

Daily - 9am - but full process chain only between 3rd and 7th day of month.

COSTA - Budget Flow PC_CT_BUDGET_01  ZBW_COSTA_BUDGET
COSTA - CORRECTIVE Flow PC_CT_CORREC_01  ZBW_CORR_FLOW 
COSTA - CORRECTIVE Flow 2 - Destination PC_CT_CORREC_02  ZBW_CORR_FLOW_2 
COSTA - Cost Center Determination PC_CT_RCC_01  ZBW_COSTA_RCC
COSTA - Costs Sub-Package - ZBB PC_CT_TR_05  ZBW_COSTA_C_CTSBPKG_ZBB
COSTA - F2G Anaplan - Extraction PC_CO_CT_03  Daily - 5 am
COSTA - Hierarchy Level 5 - Responsible Cost center  PC_CT_LEVEL5_HIER When necessary
COSTA - Inflations PC_CT_TR_04  ZBW_COSTA_INFLATION
COSTA - Investment Reason WBS PC_CT_INV_REA_01  ZBW_COSTA_INV
COSTA - Mater Data 01 PC_CT_MD_01  Daily 1:30 am
COSTA - Order Group OPEX/CAPEX PC_CT_TR_03  ZBW_COSTA_ORDER_CAPEX_OPEX
COSTA - Perimeter s Bridge flow  PC_CT_PERICH_01 ZBW_COSTA_FILE
COSTA - SAMPLE Flow PC_CT_TR_SAMPLE  Daily 1:30 am
COSTA - TD - Anaplan Best Estimate Destination PC_CO_CT_05  Monthly on 13th workday of the month in Calendar 50
COSTA - TD - Anaplan Budget Destination PC_CO_CT_06  Yearly on 13th workday of July in Calendar 50
COSTA - Transactionnal Data 01 PC_CT_TR_01  Daily 1:30 am
COSTA - Transactionnal Data 02 (Screen Pckg) PC_CT_TR_02  Daily 6:30 am
COSTA Metachain 01 PC_CT_META_01  Daily 1:30 am
COSTA: TD - M - Anaplan Origin Costs Extraction PC_CO_CT_04  When necessary
COSTA: TD - T - Manual Snapshots PC_CO_CT_02  ZBW_COSTA_FLAT_FILES
COSTA: TD - W - Snapshots  PC_CO_CT_01 Each wenesday at 9am

Destination manually loading

There is a decision in processs chain PC_CT_DEST_SCHE_01 to not load data outside a range of day, so if necessary change the range of day in master data global filter:

1) Update TVARV table

→ SM30 → TVRAV

In parameter, check current run is equal to 0, macimum number run equal 7 and put X to init mode.

In selection option, if necessary change the date (by default is the current month - 1):

2) Execute process chain  PC_CT_DEST_SCHE_01 (with transaction se37 → RSPC_API_CHAIN_START).

Info providers and objects loaded

Loading frequency

Average performance


Key FigureEstimation
~ Average Process Chain Runtime
~ Average nb of rows loaded per load
~ Total nb of rows loaded (if full)
~ Average Runtime for 10k lines

Record Keeping

Reporting

Queries End User Documentation


Main queries

BW_QRY_CPCOCT05_0001: Cost Transparency  - A destination View
BW_QRY_CPCOCT05_0002: COSTA - Cost Transparency - Destination view
BW_QRY_CPCOCT05_1001: COSTA - Cost Transparency - Origin view
BW_QRY_CPCOCT05_1002: COSTA - Tool to track PO Material Group change
QV_BW_QRY_CPCOCT05_0002: QV Cost Transparency
QV_BW_QRY_CPCOCT05_1001: COSTA - QV Cost Transparency - Origin view
QV_BW_QRY_CPCOCT05_1002: QV - Cost Transparency - Origin - Perimiter Change
QV_QRY_CPCOCT05_0001: QV Cost Transparency  - A destination View (POC)

Main functionalities

Broadcast

Maintenance

Known bugs

Recurring procedure

Planned Evolution

Anaplan Budget & BE Import

1) Process Chain Budget will likely be modified to run daily, with test process to either execute dummy program or complete PC run depending on a Global Filter to be set manually OR through event when new file is added to AL11.

2) The way Budget adjustments are handled, with Top-Down and Bottom-Up adjustments on multiple levels, will be updated and simplified later this year (2022).



  • No labels