...
The filter expression is getting Forecast Dynasys lines (PLANNED_PURCH_MAT), for Novecare, Technology Solutions, and Aroma data, on periods after current month of loading.
("CPFCTR1_2" = 'CS' or "CPFCTR1_2" = 'TS' or "CPFCTR1_2" = 'PA') AND
"C_DATATYP" ='PLANNED_PURCH_MAT'
AND "0CALMONTH" >= "ZACTUALDATE"
...
The filter expression is getting Novecare, Technology Solutions, and Aroma data only.
"CPFCTR1_2" = 'CS' or "CPFCTR1_2" = 'TS' or "CPFCTR1_2" = 'PA'
Projection P_OPEN_PO : Extract all the Purchase Orders with quantity left to deliver. Built on CV_FMCO_OPEN_PO.
The filter expression is getting Novecare, Technology Solutions, and Aroma data only, and exclude orders without any quantity left to deliver.
("CPFCTR1_2" = 'CS' )
and or "CC_OPEN_CPFCTR1_2" = 'TS' or "CPFCTR1_2" = 'PA')
and "CC_OPEN_PO">0
Projection P_INVENTORY : Extract list of Material/Plant with Standard Price from Master Data C_MATPNT3.
...
The filter expression is getting Novecare, Technology Solutions, and Aroma data only.
"CPFCTR1_2" = 'CS' or "CPFCTR1_2" = 'TS' or "CPFCTR1_2" = 'PA'
This projection is full outer joined in J_CRITICAL_MAT with the Union of previous lines from Dynasys Forecast, in order to display Materials any Material without any Forecast in the query.
A set of 11 calculated columns CC_ is merging data from Critical Raw Mat or Dynasys Forecast, thanks to Formulas.
Detail of CV_Detail of CV_FMCO_OPEN_CO :
Aggregation AG_PUSL1 and AG_PUSL2 : Extraction of Purchase documents from Rhodia source system (DB_PUSL1) and Solvay source system (DB_PUSL2), with the PO quantity to use (CC_PO_QTY).
...
Further Projections are used in Joins to get Standard Price from C_MATPNT3, and unit conversion ratio from UOMCAMT2.
BW Data Flow
Dependencies with other applications
There is a dependency from data flows:
InfoObjects: C_COMPCDE, C_PLANT, C_PO_ITM, C_SUBACT2, C_AGRITM and C_FLRMAT, C_GLBFILT, C_MATPNT3.
...
BW Logic
From HANA Datasource with all Purchase documents identified for Raw Material Forecast, data is handled in several BW layers to deliver a detailed view of Forecast in one hand, and an overall view in another hand.
The global logic is as follow (see ABAP code comments for detail) :
Bullet 1 : Datasource DTS_FMCO_CO_PC_CV_FI_FL_FRAWMA built on HANA source CV_FMCO_RAW_MAT.
Bullet 2 : Consolidation of data into APCOPC02
Start Routine :
→ Creation of fake Raw Mat lines on current period, for Raw Mat without Forecast on any of the coming 12 months.
→ Deletion of all Forecast lines on period above current month + 12.
Bullet 3 : Price calculation of data into ABCOPC08
End Routine :
→ Creation of internal tables for each type of incoming lines (Forecast FOR, Order ORD, Contract CON, Standard Price INV)
→ Extrapolation of each Raw Material / Plant combination on all missing periods from current to current + 12 (with Forecast quantity null).
→ Loop at all Forecast lines (FOR) for each Raw Material / Plant combination, and read corresponding documents (ORD, CON) to determine quantity consumption, and compute each price accordingly.
→ Price conversion in Buyer currency (CAR3)
Path to the Overall view of data
Bullet 5/6 : Aggregation and distribution of fields into ABCOPC02
For each Raw Material / Plant combination, transposition of quantities and prices in columns, according to each type of source document (ORD, CON, INV, FOR).
End Routine :
→ Compute Unit Forecast Price for each Raw Material / Plant combination
→ Force Standard Unit Price if no Forecast quantity on period
Bullet 10 : Adjust structure for Planning layout into ABCOPC01
This is the object with BI Planning functionalities, used as a source of query.
It is encapsulated in Composite Provider CPCOPC11, used in Aggregation Level ALCOPC13 on which the query is built.
This is the source of Manufacturing data flow, started monthly on 7th.
Bullet 7 : Retrieve and adjust Business updates into ABCOPC02
Conversion of quantities and prices updated by Business in workbook, according to Buyer information from Critical Raw Material C_FLRMAT.
Path to the Detail view of data
Bullet 11 : Detailed structure of Price calculation ABCOPC08 (Bullet 3) is used as source in Composite Provider CPCOPC01, on which the detail query is built.
Reporting
A global workbook BW_WBK_FL_RMAT_FORCAST is built on 2 queries :
- Overall view query BW_QRY_ALCOPC13_0001
- Detail view query BW_QRY_CPCOPC01_001
See details in Reporting layer.
Dependencies with other applications
There is a dependency from data flows:
InfoObjects: C_COMPCDE, C_PLANT, C_PO_ITM, C_SUBACT2, C_AGRITM and C_FLRMAT, C_GLBFILT, C_MATPNT3.
Infoproviders: DB_PUHD1, DB_PUHD2, DB_PUSL1, DB_PUSL2, ABDPDY53 and AAMMIM02S.
Critical Raw Material source in SAP
Master Data C_FLRMAT is used in the data flow to get critical information for Raw Materials.
Information are extracted from SAP source systems PF1 and WP1.
Transactions and tables used in SAP to handle those data are :
Transaction ZCRIT
Table ZFI_ICM_CRITIC for Novecare data.
Transaction ZCRIT_TS
Table ZFI_ICM_CRI_TS for Technology Solutions data.
Transaction ZCRIT_PA
Table ZFI_ICM_CRI_PA for Aroma data.
Currency Conversion in BW
...
The exchange rate type used is read from Master Data C_GLBFILT (Global Filter) thanks to parameters below :
C_STREAM = ‘FMCO_COPC’
C_RULE = ‘EXCHGE_RT’
C_GLBFILT = ‘000’
C_SIGN = ‘I’
C_OPTION = ‘EQ’
C_LOW = ‘CAR3’
C_ACTIVE = ‘Y’
The Exchange Rate Type value was 'M' until October 2022.
Propagation Layer
Data Loading from Datasource DTS_FMCO_CO_PC_CV_FI_FL_FRAWMA built on CV_FMCO_CS_RAW_MAT.
Target Infoprovider APCOPC02
Transformation Logic
If a monthly forecast price is unconfirmed by Business, it is extrapolated from the first previous confirmed price at the time of pushing this Forecast into Manufacturing data flow.
This process takes place in the Transformation ABCOPC01 on itself.
Loading frequency
Daily
Business Layer
Data Loading:
Infoproviders ABCOPC01, ABCOPC02 and ABCOPC08:
Loading frequency
Daily
Reporting
Two queries are available in the Workbook : the Query Overall and the Query Detail.
The first one allows to modify the value of the Forecasted Price and automatically filters the second one to a more detailed view.
...
C_GLBFILT (Global Filter) thanks to parameters below :
C_STREAM = ‘FMCO_COPC’
C_RULE = ‘EXCHGE_RT’
C_GLBFILT = ‘000’
C_SIGN = ‘I’
C_OPTION = ‘EQ’
C_LOW = ‘CAR3’
C_ACTIVE = ‘Y’
The Exchange Rate Type value was 'M' until October 2022.
Propagation Layer
Data Loading from Datasource DTS_FMCO_CO_PC_CV_FI_FL_FRAWMA built on CV_FMCO_CS_RAW_MAT.
Target Infoprovider APCOPC02
Transformation Logic
If a monthly forecast price is unconfirmed by Business, it is extrapolated from the first previous confirmed price at the time of pushing this Forecast into Manufacturing data flow.
This process takes place in the Transformation ABCOPC01 on itself.
Loading frequency
Daily
Business Layer
Data Loading:
Infoproviders ABCOPC01, ABCOPC02 and ABCOPC08:
Loading frequency
Daily
Reporting
Two queries are available in the Workbook : the Query Overall and the Query Detail.
The first one allows to modify the value of the Forecasted Price and automatically filters the second one to a more detailed view.
- The Query Detail is the detailed view of the Raw Material per month with a Forecast quantity for a minimum of one year. All documents (Purchase Order, Contract, and Inventory) are available for each month as well as the forecast price calculated for the forecast quantity.
- The Query Overall is the global view of the Raw Material aggregated by month without the detail by documents. The Forecast price is calculated from the detail and aggregated by month and Raw Material. The Quantity Assigned for each document is available in columns. This is the view where Business must confirm the proposed prices.
Only Raw Materials flagged as Critical are displayed in the queries.
The field “Critical flag” (C_FLRMATF) is used as global filter.
Available values for the field are :
“ “ : Not critical
“X” : Critical
“B” : Critical No BOM
“I” : Critical Internal
“E” : Critical External
...
Reporting Layer
Aggregation Level
...
Variable Name | Info-object | Selection Type | Required | Description/Explanation |
|---|---|---|---|---|
| CALMONT2 | 0CALMONTH | Interval | Yes | Calendar Year/Month |
| V_C_PLANT_0012 | C_PLANT | Authorization with Input | No | Plant |
| V_CPFCTR1_2_0006 | CPFCTR1_2 | Authorization with Input | No | Global business Unit |
| V_C_MATNR2_0001 | C_MATNR2 | Select Option | No | Raw Material |
| V_FLRMATF_0001 | C_FLRMATF | Single Value | No | Critical Raw Material Only (. 'X ')', or 'B', or 'I', or 'E' |
| V_C_BNAME_0001 | C_BNAME | Select Option | No | Buyer Name |
| V_C_AUTHMA_0001 | C_PLANT__C_AUTHMA | Authorization | No | Authorization Scope |
Variable Sequence
Filters
Key figures
Characteristics
...
Variable Name | Info-object | Selection Type | Required | Description/Explanation |
|---|---|---|---|---|
| CALMONT2 | 0CALMONTH | Interval | Yes | Calendar Year/Month |
| V_C_PLANT_0012 | C_PLANT | Authorization with Input | No | Plant |
| V_CPFCTR1_2_0006 | CPFCTR1_2 | Authorization with Input | No | Global business Unit |
| V_C_MATNR2_0001 | C_MATNR2 | Select Option | No | Raw Material |
| V_FLRMATF_0002 | C_FLRMATF | Select Option | No | Critical Raw Material Only (. 'X' and, or 'B' ), or 'I', or 'E' |
| V_C_AUTHMA_0001 | C_AUTHMA | Authorization | No | Authorization Scope |
Variable Sequence
Filters
Key figures
Characteristics
...









