General presentation
Objective of the application
The objective of the application is to extract from WP1 & PF1 SAP systems Bill of Material data and explode BOM level by level with components data.
Then data are consumed by Dynasys application by generated flat file.
Tool Leader: Meire Santos
IT leader of the application: Meire Santos (PP), Craig Wanamaker (BW)
Reporting Coordinator: Meire Santos
Usage information
Number of users: tbd
Critical period: none
Geographical perimeter: worldwide
InfoArea:
History
This application is linked to a need of Dynasy Tool. Every month a manually extract is done of BOM Data from ERP SAP system. The goal is to extract these data from SAP to BW and generate automaticaly BOM data level by level by flat file and send this file to Dynasys for import.
Roles & Access
Roles and access
List of application role + menu role and explanation if we have several applications role with specials rules.
| Role Code | Role Description | Explanation |
|---|---|---|
Authorization objects
List of autorisation objects mandatory for the application.
| Authorization object | Explanation |
|---|---|
Dataflow overview
Reporting documentation drive folder:
https://drive.google.com/drive/folders/18VbVRgRTsredyh89a_qSECY7E0yzSKJJ
Dataflow overview :
Functional and Technical rules on Workbench + Reporting
Rules & Explanations
Specification Document for Dynasys flat file (Sheet BOM)
BOM Master Data
BOM Number master data (C_BOMNUM) is loaded by the datasource DTS_ZBW_V_MAST_STKO.
The Datasource is based on SAP tables MAST (Material to BOM Link) and STKO (BOM Header) => View ZBW_V_MAST_STKO
In view ZBW_V_MAST_STKO, we keep only entries from STKO with BOM Status (STLST) is not equal to 2 (inactive BOM) and BOM usage (STLAN from MAST) is equal to '1' (Production).
There are 2 fields used to filter data during extraction and loading on BW :
- AEDAT (STKO)
- ANDAT (MAST)
For more explanations, see part Data Loading.
BOM Item Master Data
BOM Item master data (C_BOMITM) is loaded by the datasource DTS_ZBW_EXTRACT_BOM_ITEM.
The datasource is based on specific function module ZBW_EXTRACT_BOM_ITEM.
In this function module we call the standard function CSAP_MAT_BOM_ITEM_SELECT to extract each item for a given material/plant.
There are 2 fields used to filter data during extraction and loading on BW :
- AEDAT (STPO)
- ANDAT (STPO)
For more explanations, see part Data Loading.
BOM Level determination
The most important need of this dataflow is to extract (and explode) all BOM items and components for a given product.
A specific BW extractor has been developed to build the Bill of Material from SAP WP1 source system : DTS_ZBW_MAST_BOM_LEVEL.
There are 2 fields used to filter data during extraction and loading on BW :
- AEDAT (STPO)
- ANDAT (STPO)
For more explanations, see part Data Loading.
The extractor is based on view ZBW_V_MAST and in particular from MAST table to keep all Bill of material to explode and the class ZDTS_ZBW_MAST_BOM_LEVEL is used to extand the datasource adding new fields.
In view ZBW_V_MAST, we keep only entries from STKO with BOM Usage (STLTY) = M (Material) and BOM Status (STLST) is not equal to 2 (inactive BOM).
In the class, we use the standard function module 'CS_BOM_EXPL_MAT_V2' to build the Bill of material and BOM level. The function module is used as recursive function, as long as BOM exists and have to be explode.
Today we only explode BOM at level 1 (Master material and its components at first level).
We filter records from MAST to have only data with :
- BOM usage (STLAN) is equal to '1' (Production).
- BOM deletion flag (LOEKZ) is not equal to 'X'.
- BOM valid from date (DATUV) is greater than current date.
Additional filter is done during extraction to keep only one alternative BOM for the material exploded.
To get this alternative BOM, we select the first valid production version (excluding locked production version) from MKAL table.
The equivalent to explode BOM level by level on SAP side is T-CODE CS11.
See below, main fields determined or calculated in the class :
- BMEIN - Base unit of Measure of BOM : It correponds to the Base unit of measure of the main product exploded (MATNR) linked to the main BOM (STLNR).
- BMENG - BOM Quantity : BOM quantity is converted on Base Unit of Measure of product exploded. The quantity is duplicated of each component line linked to this product.
- ZZMAT - BOM Head : If there is only 1 Product Level, Bom Head is equal to the main Product (MATNR). If there is several Product Level, BOM Head is equal to the component exploded (from previous level)
- ZZSTLNR - Bill of Material : is equal to the BOM linked to the BOM Head material.
- ZZSTLAL - Alternative BOM : Alternative BOM linked to ZZSTLNR
- ZZIDNRK - BOM Component : Component of the BOM Head Material
- ZZPOSNR - BOM Item : BOM Item linked to BOM Component
- ZZSTUFE - Product Level : is equal to 1 when we are at component level of the master product exploded, we increment this level when we are at component level and for each new product (BOM Head) exploded
- ZZMENGE - Component Quantity : Component quantity is converted on Base Unit of Measure of the component
- ZZMMEIN - Component Base Unit of Measure : Base Unit of measure of the component
- ZZFMENG - Fixed Quantity : This field is equal to X when the component is flagged as "Fixed quantity"
- ZZWOPRODVERS - Production Version Flag : This field is equal to X if there is no existing production version for the material exploded (Co-packing material).
Quantities conversion and recalculation
BOM quantities and component quantities are converted in KG between propagation and business layer.
Moreover, quantities are recalculated in order to have a BOM Base quantity equal to 1000 KG (1 TO), Component quantities are updated accordingly.
Fields with system extension
There are 3 fields stored in BOM Propagation and Business ADSO with a system extension :
- C_DYN_001 : Plant with System Extension
- C_DYN_005 : Material with System Extension
- C_DYN_052 : Component with System Extension
For more explanations see : BW OTC - Supply Chain- DPS (WBP)
Dependencies with other applications
BOM data are used by Dynasys tool (consumed by generated flat file).
ADSO ABDPDY50 is loaded by composite provider CPPPBO01.
Dynasys flat file is generated by reading ABDPDY50 data.
Data loadings
Info providers and objects loaded
Scope of data loaded
Both master data and acquisition layer ADSO AAPPBO02 are loaded by 2 FULL DTPs.
The fisrt one is based on creation date and the second on modification date of BOM.
We load for each of them from current date to current date - 7.
Note that DTP are different for each objects.
Master Data process chain
BOM Master Data are loaded by process chain PC_PP_BOM_01
BOM Level data process chain
BOM Master Data are loaded by following process chain :
- Acquisition layer : PC_PP_BOM_02
- Propagation layer : PC_PP_BOM_03
- Business layer : PC_PP_BOM_04
A global Master process chain load both part : PC_PP_BOM_05
Today the process chain is scheduled at 00:30 (CET), but at last it will be added to PP Master chain PC-PP-03.
Loading frequency
Daily loading.
Average performance
See below init data loading performed end of March 2020 :
BOM Level | ADSO AAPPBO02 |
|
|
Creation Date |
| Records | Time |
FROM | TO |
|
|
19000101 | 20021231 | 22 198 | 1m 46 s |
20030101 | 20031231 | 22 123 | 2m 30 s |
20040101 | 20041231 | 56 382 | 7 min |
20050101 | 20050630 | 57 635 | 6 min |
20050701 | 20051231 | 97 342 | 10 min |
20060101 | 20060630 | 55 422 | 5 min |
20060701 | 20061231 | 67 986 | 6 min |
20070101 | 20071231 | 55 522 | 5 min |
20080101 | 20081231 | 97 055 | 9 min |
20090101 | 20091231 | 38 092 | 4 min |
20100101 | 20101231 | 42 897 | 4min 30 |
20110101 | 20111231 | 35 829 | 4 min |
20120101 | 20121231 | 39 986 | 4min 30 |
20130101 | 20131231 | 38 968 | 4 min |
20140101 | 20141231 | 32 781 | 4min |
20150101 | 20151231 | 44 399 | 5min |
20160101 | 20161231 | 45 877 | 4min |
20170101 | 20171231 | 81 522 | 7min |
20180101 | 20181231 | 56 842 | 5min |
20190101 | 20191231 | 77 769 | 7min |
20200101 | 20201231 | 77 | 10s |
BOM Level | ADSO AAPPBO01 |
|
|
Creation date |
| Records | Time |
FROM | TO |
|
|
01.01.1900 | 31.12.2002 | 9.305 | 1m 11s |
01.01.2003 | 31.12.2003 | 8.400 | 4m 24s |
01.01.2004 | 31.12.2005 | 36.190 | 2m 29s |
01.01.2006 | 31.12.2007 | 24.327 | 1m 26s |
01.01.2008 | 31.12.2009 | 43.148 | 2m 8s |
01.01.2010 | 31.12.2011 | 49.418 | 2m 44s |
01.01.2012 | 31.12.2013 | 40.552 | 1m 52s |
01.01.2014 | 31.12.2015 | 30.683 | 1m 51s |
01.01.2016 | 31.12.2017 | 25.483 | 1m 23s |
01.01.2018 | 31.12.2019 | 19.326 | 1m 12s |
01.01.2020 | 31.12.2020 | 913 | 32s |
Record Keeping
Reporting
Queries End User Documentation
Main queries
There is actually no queries based on this BW dataflow.
Main functionalities
Broadcast
Maintenance
Known bugs
Recurring procedure
Planned Evolution
N/A.


