Page tree


You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 25 Next »


Access Management 

Roles & Access

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

Role CodeRole DescriptionExplanation

ZR_RCS_CA_M11

PS - Project Costs

Role menu for COPC - Production Costs queries

ZBI_RCS_CO_A05

Production Costs Analysis - End User role

    • End User rights
    • gives access to infoproviders of Infoarea: AREA_F_COPC*, IA_FMCO_COPC*, IA_LEVEL2_VIRTUAL
    • Gives access to multiprovider below InfoArea: AREA_F_COPC*, IA_FMCO_COPC*
    • BI Analysis Authorization "ZBI_COPC" 
ZR_RCS_CA_M122P&L - Integrated CostAccess to transaction Z_INT_COST
Authorization Objects
Authorization objectExplanation
GBUZR_*_CA_P05
PRS CompanyZR_*_CA_P07
PRS Area(C_COMPCDE__C_MNGAREA)ZR_*_CA_P08
GL Type(0GL_ACCOUNT__C_GL_TYPE)ZR_*_CA_P10
Plant (C_PLANT)ZR_*_CA_P02
Company (C_COMPCDE)ZR_*_CA_P01
Authorization Scope (C_AUTHMA)ZR_*_CA_P00

DataFlow Overiew 

https://drive.google.com/open?id=1BiVUn_ILyg-EXmJm-I7Rgd7OA2k8Q1HMtbI_8Tj9kyc


MVCOPA01 (WBP)

For multiprovider MVCOPA01, not all cubes aossciated are used for integrated margin report.

Only the providers vith IM in red are concerned:

https://docs.google.com/drawings/d/1_bZQSa3q9qeu8DtpC16P7_QsesvPyaNre2dLXNw1M1I/edit?usp=sharing


https://docs.google.com/drawings/d/1rkJ3QZtkWZ5B4rhG7v5ydvaYP0ZV3GAvF_vpnL1SzAk/edit?usp=sharing


https://docs.google.com/drawings/d/1edj9_RmC71Q8bjWUQGLxQN0xRLvSVEPMDnZm8E_UBMY/edit?usp=sharing


WP1

Updated dataflow after Solstice update (Rules are unchanged except for the Solstice split)

PQ1:

PQ1 flows are kept only for historical data, they are replaced by PF1 flows since 01.2018.


PF1:

NON ERP:


Infoarea & Infoprovider

Infoarea Name

Infoarea Techname

Product Cost Controlling

AREA_F_COPC

ODS: Product Cost Controlling

AREA_F_COPC_ODS

CCR: Market Margin

AREA_F_COPC_MM

Infoprovider Name

Infoprovider Techname

Material Units

IST_PCMA

CCR: Cost elements matrix

ODS_PCP2

CCR: released costs estimates

ODS_PCP3

CO-PC: list of materials of utilities (10)

ODS_PC1A

CO-PC: list of materials of utilities (30)

ODS_PC2A

CO-PC: order header quantity (10)

ODS_PC1B

CO-PC: order header quantity (30)

ODS_PC2B

CCR : Product Cost Planning - All Cost Estimates

CUB_PCP01

CCR Exploded Itemization

CUB_PCP02

CO-PC: Manufacturing Costs per Process Order (10)

CUB_PC001

CO-PC: Manufacturing Costs per Process Order (30)

CUB_PC002

CO-PC: Manufacturing Costs per Process Order

MPR_PC001

Stock valorisation by costing

MPR_ICPC1

CCR : plant transfert - cost transport

ODS_PCP5

Transport Costs & DutiesDBCOPA24

CCR: Integrated margin

ODS_PCP4

CCR: Integrated margin first-calculation ( Direct Update )

ODS_PCP6

CCR: Product Cost Items

ODS_PCP1

Cost Components for Cost of Goods Mfd

ODS_PCP7

Resource's Unit Price

ODS_PCP8

CCR: Product Cost Items (Market Margin)

DSO_PCP1

Purchase Price (Market Margin)

DSO_PCP2

CCR: Released Costs Estimates (Market Margin)

DSO_PCP3

Technical rules

Integrated Margin for EP & PI

Core Query Name

Core Query Techname

Infoprovider Name

Infoprovider Techname

BW - Integrated Margin (Core Query)

BW_QRY_ODS_PCP4_0001

CCR: Integrated margin

ODS_PCP4

BW - Integrated Margin (Core Query)

BW_QRY_ODS_PCP4_2

CCR: Integrated margin first-calculation

ODS_PCP6

Infoprovider Name

Infoprovider Techname

Source System

Source Infoprovider Name

Source Inforprovider Techname

CCR: Integrated margin

ODS_PCP4

WBP_400

CCR: Integrated margin first-calculation (Direct Update)

ODS_PCP6

CCR: Integrated margin first-calculation (Direct Update)

ODS_PCP6

WBP_400

Updated by ABAP Program

1) Z_M_INT
2) Z_M_INT_IP

CCR: Product Cost Items (Market Margin)

DSO_PCP1

WP1_400
WBP_400

Cost components
CCR: Product Cost Items (Market Margin)

DTS_KEKO_CKIS
DSO_PCP1

CCR: Released Costs Estimates (Market Margin)

DSO_PCP3

WP1_400
WBP_400

Product Cost Planning: Released Calculations
CCR: released costs estimates (Markte Margin)

0CO_PC_PCP_02
DSO_PCP3

Purchase Price (Market Margin)

DSO_PCP2

DW2

Database: DW2 Table: GL_COST_PURCHASE

6DB_GL_COST_PURCHASE


KT file.

Some explanations on P&L wiki page.

Data Update Conditions for DSO_PCP1 from DTS_KEKO_CKIS

Data Source: DTS_KEKO_CKIS
Source System: WP1_400
Data Flow Version: BI 7.0
Transformation: RSDS DTS_KEKO_CKIS WP1_400 -> ODSO DSO_PCP1 (0K1O4SUXOC9DPNTS7R3JSO0DRSOF0BY9)
Start Routine: This start routine is to do 2 main tasks.
1) It is to delete all records where the amount and quantity is equal to zero.

2) It is to delete all records where the costing variants are not equal to ZFO, Z25 and ZEP.

After the start routine, each individual record will have fields that will be set with constant values or formulas.
Individual Constants:
1) Costing Variant is overwrited with the new costing variant value ZIP that is defined for this project.

2) Fiscal Variant is fixed to K4.

3) Cost Component Structure is fixed to Z1.

Individual Routines:
1) Fiscal Year/Period required some ABAP codings to convert the incoming data into the correct format to be updated.

2) For the key figure Variable Amount, a formula is required to take the total amount minus the fixed amount to get just the variable amount.

Data Update Conditions for DSO_PCP3 from 0CO_PC_PCP_02

Data Source: 0CO_PC_PCP_02

Source System: WP1_400

Data Flow Version: BI 7.0

Transformation: RSDS 0CO_PC_PCP_02 WP1_400 -> ODSO DSO_PCP3 (0CY1UWMKPVWXUI74VIAPF3V2S12PIYQ1)

Start Routine: This start routine is to do 2 main tasks.

1) It is to delete all records where the currency type is not equal to Company Currency (Value = 10).

2) It is to delete all records where the costing variants are not equal to ZFO, Z25 and ZEP.

After the start routine, each individual record will have fields that will be set with constant values or formulas.

Individual Constants:

1) Costing Variant is overwrited with the new costing variant value ZIP that is defined for this project.

Individual Routines:

1) For the key figure 0AMOUNT, we add the Fixed Amount (WERTF) and Variable Amount (WERTV) together.

2) For the key figure K_CCR_100 (100 Raw Materials), we add the Fixed Amount (WERTF) and Variable Amount (WERTV) together if the Cost Component (ELEMT) equals to 100.

3) For the key figure K_CCR_105 (105 Packaging), we add the Fixed Amount (WERTF) and Variable Amount (WERTV) together if the Cost Component (ELEMT) equals to 105.

4) For the key figure K_CCR_110 (110 Toll Manufacturing), we add the Fixed Amount (WERTF) and Variable Amount (WERTV) together if the Cost Component (ELEMT) equals to 110.

5) For the key figure K_CCR_120 (120 Utilities - VC), we add the Fixed Amount (WERTF) and Variable Amount (WERTV) together if the Cost Component (ELEMT) equals to 120.

6) For the key figure K_CCR_200 (200 Labor Costs), we add the Fixed Amount (WERTF) and Variable Amount (WERTV) together if the Cost Component (ELEMT) equals to 200.

7) For the key figure K_CCR_210 (210 Supplies & Misc.), we add the Fixed Amount (WERTF) and Variable Amount (WERTV) together if the Cost Component (ELEMT) equals to 210.

8) For the key figure K_CCR_220 (220 Maintenance), we add the Fixed Amount (WERTF) and Variable Amount (WERTV) together if the Cost Component (ELEMT) equals to 220.

9) For the key figure K_CCR_230 (230 Overheads), we add the Fixed Amount (WERTF) and Variable Amount (WERTV) together if the Cost Component (ELEMT) equals to 230.

10) For the key figure K_CCR_240 (240 Utilities -FC), we add the Fixed Amount (WERTF) and Variable Amount (WERTV) together if the Cost Component (ELEMT) equals to 240.

11) For the key figure K_CCR_300 (300 Depreciation), we add the Fixed Amount (WERTF) and Variable Amount (WERTV) together if the Cost Component (ELEMT) equals to 300.

12) For the key figure K_CCR_310 (310 N/A), we add the Fixed Amount (WERTF) and Variable Amount (WERTV) together if the Cost Component (ELEMT) equals to 310.

End Routine:

1) The purpose of this routine is to check if the current incoming record already exists in the DSO_PCP3 from the previous month loading. If it exists, delete the incoming record.

Data Update Conditions for DSO_PCP2 from 6DB_GL_COST_PURCHASE

Data Source: 6DB_GL_COST_PURCHASE

Source System: DW2

Data Flow Version: BI 7.0
Transformation: RSDS 6DB_GL_COST_PURCHASE DW2 -> ODSO DSO_PCP2 (07G0MUNSUYM2GSSZ09F9Q6CC9OF3LCOZ)
There are 3 individual rountines in this transformation to divide the following key figure values that are of currencies Korean Won (KRW) and Japanese Yen (JPY) by 100.

  • C_AMT_CP
  • C_AMT_CNP
  • C_AMT_AMO

Correction of IM costs - flat file dataflow (ODS_PCP4 from DTS_COPC_02)

This dataflow is used in order to correct directly the costs in ODS_PCP4.

DTS_COPC_02 extract the csv file from BW server, under the folowing logical path: Z_IM_CORRECTION (/exploit/BW/Integrated_Margin/IM costs correction.csv))

Due to recent archive process the file in the path Z_IM_CORRECTION (/exploit/BW/Integrated_Margin/IM costs correction.csv)) is archived.

We asked Basis team to restore the file and they created new folder and placed the files under the folder.

Folder /exploit/BW/DoNotDelete/

we have changed the logical path Z_IM_CORRECTION to the new location /BW/exploit/DoNotDelete/IM_costs_correction.csv

We have added the skip step for this one as it not required to load every month (will use it when required)

We created the same for WBD, now both WBP and WBD are aligned.

Here is an exemple of file to upload: https://drive.google.com/drive/folders/1UAeGGSXjEh1f4QlDOM0kU_5qfI96dnwv

The transformation into ODS_PCP4 is similar to the one from ODS_PCP6: it is direct mapping except the conversion of the lot size in Kilogram.

This file is loaded into ODS_PCP4 in the Process Chain after the loading from ODS_PCP6 so that the correction is not cleared after an historical recovery.

Read more information in :
https://drive.google.com/open?id=0BwtAGBKWM-z-cWdzQ0QyTTFpRHM 


Simple/Integrated/Market Margin

 The Simple Margin is the margin done between each transaction.
o Ex : Simple Margin from A to B = 10. Simple Margin from B to End Customer = 10.

 The Integrated Margin is the cumulated margin from the beginning of the chain.
o Ex : Integrated Margin at A = 10 (same as simple margin since nothing before that)

Integrated Margin at B = 20 because it “integrates” the margins done before.

The idea of integrated margin is to give you, when we sell goods to a customer an idea of the overall margin done at Solvay level, not only the vision at the last entity.
(For example you could have a negative margin between B and end customer, but a large margin between A and B so 
the group is still getting a good margin).

Unfortunately it’s not possible in the system to simply cumulate the simple margins, so instead the BO system recalculates all the cumulated costs and based on that recalculates the integrated margins :

Basically : Integrated Margin at B = (Sales B to EndCust) – B Costs – A Costs

The “Market Margin” is specifically used for the cases of sales between EP and PI GBU inside a legal entity.

Both GBU want to be able to distinguish their own margins, but the normal system doesn’t allow them to do this because usually there is no invoice between them : EP and PI are in the same entity and sometimes even the same plant, so they cannot create invoices.

To solve this BO has a system where EP/PI can upload a “Market Price” agreed between them. The “Market Margin” will therefore be recalculated taking this “Market Price” when there is a transfer of goods between EP and PI.


Data Loading

Info Providers and objects loaded 

Main Process ChainFinal Provider LoadingFrequencyTime startDuration
RSP_COPCP_MONTHLY

DSO_PCP2

DSO_PCP1 / ODS_PCP1

Monthly (2nd working day)11:30 pm20 minutes
RPC_CCR_PCP1_MTHLY_CHAINDSO_PCP3 / ODS PCP3 / CUB_PCP1 / Monthly (1st working day)11:30 pm45 minutes
PC_COPA_PL_46ODS_PCP5not executed since 2020

PC_COPA_PL_21DBCOPA24Dailyarround 2:15 amarround 15 minutes
PC_INT_MARGINODS_PCP6 / ODS_PCP4Monthly (3th working day) (after PC_CO_PC_MM_04 in CPX system)arround 00:30 amarround 3 hours

PC_CO_PC_MM_04 (CPX)

ABCOMM06Monthly (3th working day) (after RSP_COPCP_MONTHLY)arround 00:00 amarround 20 mins


Update with project 8612 - Solstice (CPX)

BW - CO - Integrated Margin

In scope of project 8612 - Soltice we put in place a link between WBP and CPX system to take into account the vault data in calculation of Integrated Margin.

To do that, we have three steps:

1 - Transfert source data from WBP to CPX.

2 - Calculation of IM in CPX side with data from WBP and WPX.

3 - Transfert the result of IM in CPX to WBP and take it into account in the calculation of IM in WBP.

CPX data flow

DSO correspondance WBP - CPX :

CPXWBP
ABCOMM01ODS_PCP1
ABCOMM02ODS_PCP2
ABCOMM03ODS_PCP3
ABCOMM04ODS_PCP5
ABCOMM05ODS_PCP6
ABCOMM06OSD_PCP4
ABCOPA01DBCOPA24
ABMARM01

ODS_MARM

Details:

To put in place these three steps we had to split the chain RSP_COPCP_MONTHLY in two chains:


RSP_COPCP_MONTHLY to load the source of data and  PC_INT_MARGIN to retreive result of IM from CPX (in dso ABDSOPCP1) and calcul the IM in WBP side.


More details about the split here:

https://docs.google.com/document/d/1QbjsKm0qxUuWNk2E7gntCDq1NIirYi8huKzaSJRp9zU/edit#


1 - transfert from WBP to CPX:

We use datasource from WBP dso to load data in CPX side.

At the end of process chain RSP_COPCP_MONTHLY there is a process "Remote process chain" to launch process chain PC_CO_PC_MM_04 in CPX.


2 - calculation of IM in CPX:

The principle is similar to what we done in WBP. We load data from WPX and WPB in ABDSOPCP1 and after we execute program ZBW_M_INT to calculate the Integrated Margin. All is done in meta chain PC_CO_PC_MM_04 (CPX).

ZBW_M_INT in CPX is a copy Z_M_INT in WBP, so if there is a change in Z_M_INT it may be helpful to make the same change in ZBW_M_INT.


3 - Transfert the result of IM in CPX to WBP and take it into account in the calculation of IM in WBP:

After the calcultion of IM in CPX, a webmethods will sent a flat file with results (/exploit/BW/Integrated_Margin/OH_COMM01.CSV) in WBP and execute the chain PC_INT_MARGIN to load dso DSO ABDSOPCP1 with data from CPX, and after load this in ODS_PCP1 and do the calculation of IM.

If an error occurs in CPX system or with WebMethods, there is a process chain PC_INT_MARGIN_TEST (Integrated Margin - test if Integrated Margin 2 is scheduled) which runs every D+3 at 1 a.m. to check if PC_INT_MARGIN is running or not:

If not, we can suppose there was a problem and we force the execution of process chain PC_INT_MARGIN.


If yes, there is no problem, it's not necessary to force the execution of PC_INT_MARGIN.


The calculation of IM has same principle than before, there are two things that change with CPX data.

  • Webmethods load data from CPX with a flat file and this flat file is loaded in DSO AADSOPCP1 → APDSOPCP1 → ABDSOPCP1 and ABDSOPCP2 for historical save.

    Data from DSO ABDSOPCP1 are loaded in ODS_PCP1, like that we have the source from WBP (WP1) and CPX (WPX) to calculate the IM.


    Between DSO APDSOPCP1 and ABDSOPCP1 we transpose the data to adapt the source to the next target (ODS_PCP1). Some values of ABDSOPCP1 are defined in master dat global filter (C_GLBFILT) on stream "DSO_PCP1"

  • In program Z_M_INT we calcul the  Integrated Duty and the  Integrated Freight with data from CPX (assigned in cost component 400 and 500 in loading of DSO ABDSOPCP1) (this calculation is not done in CPX side with prorgam ZBW_M_INT).




Data Quality Control

Data come from SAP system. To compare data between BW and sources systems, check propagation layers.


Operational Documentation

Procedures

<Describe the recurring procedures needed to operate the application (eg. start/pause/terminate/restart the app processes, data preparation, data ingestion, ETL, data visualization, data export, other manual activities)>

Scheduling

<Describe the scheduling in place for the application (eg. existing jobs, trigger time/event based, dependencies)>

Monitoring

<Describe the monitoring checks to confirm the application is performing well (eg. check the overall status, check performance metrics like runtime/data volume/memory/disk/CPU, maintain and react to alerts/notifications)>

Error Handling

<Describe how to handle errors (eg. error codes, description and respective resolution, alert users)>

Known Bugs

<List the existing bugs, its criticity, workarounds and resolution plan.>

Roadmap

<List past & future evolutions for the application (including links to MED/FSD/TSD)>