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

Compare with Current View Page History

« Previous Version 38 Next »

General presentation

Objective of the application

Functional Specification Document:


Training:

Tool Leader + IT leader of the application: 

Usage information

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_M69MS - Model S  Role for queries and workbook






Authorization objects

List of autorisation objects mandatory for the application.

Authorization objectExplanation
 C_COMPCDE__C_AUTHMA Query authorization object
  CPFCTR1_2 Query authorization object
 C_COMPCDE__C_MNGAREA Query authorization object
C_COMPPRSQuery authorization object

Dataflow overview

Material stock - ABMMIC01 (WP1_400) data flow - Be carrefull ABCOMMIC01 has key figure in summation mode.

Model S data flow

Functional and Technical rules on Workbench + Reporting

Rules & Explanations

Main steps:

  1. Extract quantity total stock from ADSO ABMMIC01 in ADSO APCOMS01 with help of query BW_QRY_ABMMIC01_0001.

    The principal thing to know here it's about the way to extract the data.

    The goal is to extract and stock in APCOMS01 "Quantity Total Stock" 0TOTALSTCK from ABMMIC01. Info object 0TOTALSTCK is not physically stored in invenotry DSO. The only way to extract the key figure is to use a query as datasource (BW_QRY_ABMMIC01_0001).

    In query BW_QRY_ABMMIC01_0001 we used a variable "V_CALMONTH11" based on class ZCL_BIU001_V_0CALMONTH_0031.

    The class determine the month to load from current date and more or less x month(s). To know the number of months to add or removre from current date, the class read master data global filter (C_GLBFILT) on stream "STOCK_LOG":

    Normally, by default the month to load in ADSO APCOMS01 is current month - 1. To load other month it's necessary to change fields "low" and / or "hight" in master data.
    It's in ADSO APCOMS01 where we define by default C_SOURCE = LOGISTIC. We will use this field in filters to extract data from caclulation views to separate LOGISTIC data and WORKING CAPITAL (equal TRANSIT) data.

  2. Use calculation views to consolidate the different data sources.
    1. See details on calculation views here.
      To use calculation views to load ADSO APCOMS04 we have eleven infopackages:
      • Ten infopackages to extract "logistic" data (filter on field C_SOURCE = LOGISTIC), each IP are in full mode for previous current month and splitted by plant range ([0-1000] - [1001-2000] - [2001-3000] etc...).
      • IP: DTS_CV_FMCO_CO_MS_IM_FINAL - Full -WC-LastDayPrevMonth → filter on posting date to have by default the last day of previous month and filter on C_SOURCE to have only "WORKING CAPITAL" data (equal TRANSIT data, from DBFIGL13).

  3. Cross System Material definition
    We can have some cases called "cross system" when for a batch his source system is different of the source system from his manufacturing plant.
    The goal is to determine the batch concerned and then for each material associated, find the associated material from the other system.
    1. C_BATCH2 cross system
      We determine if a batch is cross system or not.
      We compare manufacturing plant from c_batch2 with plant "of c_plant and if we found a different source system, the batch is considered like a source system and we fill object C_FLGCROS "Flag Cross System" with X.
      The definition of batch cross system is done during the daily delta loading for PF1 and WP1 system.
      There is also a transformation from c_batch2 to c_batch2 to reload all batch2 and define the cross system (using only for historical batch). 


      Manufacturing plant were we force the flag cross system for the associated batch:
      In the transformations to fill the cross system in the master data C_BATCH2, there is a rule to force for specifcs manufacturing plant the cross system associated (defined in global filter master data):



      When we have defined which batch are cross system, we can use the  following rules to find the material cross system associated.

    2. aDSO cross system
      After to have identified the C_BATCH2 with a cross system (C_FLGCROS = X), we can load the material associated in a aDSO ABMD001 to have the correspondence / conversion of materials between the systems.
      In aDSO - "Material Cross System" there is the list of all materials with a cross system.

      To find the conversion for a material we have two solutions, using a table from MPG system and use the old material attribute from master data c_matnr2.
      The result found with the MPG table has priority over the result founded with old material number. It's why during the loadings it's important to load (and activate) before the data from master data c_matnr2  and then the data from MPG system, like that the MPG cross system will be the last "vision" of cross system.

      1. Rule with old material (from master data c_matnr2).
        The idea here is to find all material with an old material number who starts with "PF1" or "WP1".

        If we found a result and if the source system from material is different from the start of old material number, it's a cross system, so the material cross system for material WP1_400/139669 is PF1_020/167181.
        And it means also the cross system for material PF1_020/167181 it's WP1_400/139669 (if the reverse (old material number not filled for example) is not directly present in master data c_matnr2, we need to calculate it during the transformation between c_matnr2 and ABMD001).
        Result in ABMD001:


      2. Rule with MPG data.
        We extract table Z4R_MDG_T_TARSYS from MPG system in propagation aDSO APMD001 In this table there is the conversion of the material by system.


        In This exemple PF1(ERPSOLV)  000000000000030156 is related to WP1 (ERPRCS) 000000000000139212 material code because both are link to the same MPG material code 000000000000300001
        For MPG material code it's a perfect example, it means the material 30156 from PF1 has as cross system material 139212 from WP1 and vice versa, 139212 from WP1 has as cross system metrial 20156 from PF1.
        In business aDSO ABMD001 we will have this result:


        When in table table Z4R_MDG_T_TARSYS from MPG system we have only one line by MPG Material, it means there is no cross system.

      1. Flat file for manual update.
        It's possible to update directly data in aDSO ABMD001 to force some cross system. It may be necessary in cases where master data c_batch2 is not well completed.
        For that it's necessary to create a flat file (xls fromat) with this columns:

        Load the file in aDSO APMD002 with help of Infopackage IP: DTS_APMD002_0001 - PC_FILE. Then load aDSO ABMD01.

    3. Module Function
      A module function exists to know if a material is cross system or not:
      Z_CROSS_SYSTEM_MATERIAL
      It's necessary to have in enter parameters the logsys and material and also the target system of the cross system. needed.
      If there is a cross system associatem, the module function will find it and tell us the orign of the cross system (MPG, old material or flat file).


      In case of multiple "origin" and the multiple cross system result, the priority is cross system from flat file, then from MPG system and at the end the cross system from old material number.


  4. Load PF1 (UPIS) Data - Propagation - aDSO APCOMS02


    Extraction from PF1 system table Z1K_BATCH3 (normally once a month, extraction of previous month in full mode).

  5. Calculate the cross sytem Model S - PF1 (UPIS data) - aDSO ABCOMS03

    The goal in this aDSO is to have the data considered as cross system. If a line is cross system, it means we need to take the cost unit not from the source (PF1) but from the cross system source system, so WP1 (ODS_PCP4).

    In transformation before the infosource, we will extract from aDSO APCOMS02 the data where the C_BATCH2 is considered like cross system (C_FLGCROS = X), and where the module function Z_CROSS_SYSTEM_MATERIAL find a cross system material in result. 

    At this step, we have only data considered as cross system, we do a lookup in ods ODS_PCP4 with links:

    WP1 data (ods_pcp4)
    PF1 data (APCOMS02)
    material=

    material cross system

    plant=

    manufacturing plant cross system

    costing date=

    first day calmonth UPIS

    cost var<>ZIP

    If we found a correspondance in ODS_PCP4 we can continue, if not, the records will be not loaded in this aDSO.

    In the second transformation (after the infosource) we will convert in EUR the cost units WP1 collected from ODS_PCP4. And then we can calculate the Integrated Margin (CP, CNP, AMO, Duty and Freight):

    IM = Sotck from PF1 * cost unit from WP1.
    Example File.

  6. Calculate the cross sytem Model S - WP1 (Logistic and Transit data) - aDSO ABCOMS04

    First, we need to define the records from APCOMS04 considered like cross system in function of C_BATCH2 (C_FLGCROS = X) and where the module function Z_CROSS_SYSTEM_MATERIAL return a valid result.
    When we have a valid material cross system (PF1) we do a lookup in aDSO ABCOMS2 with links:

    PF1 data (ABCOMS02)
    WP1 data (APCOMS04)
    material=

    material cross system

    PLANT=

    manufacturing plant cross system

    calmonth=Calmonth - 1

    To take the stock and cost unit KPI from ABCOMS02 aggregated by Material, Plant and Month (if we don't find result, we don't load the record in ABCOMS04).
    When it's done, we calculate the Integrated Margin KPI from PF1:

    PF1_CP_IM = EUR_CONSO_VAR/ TOTQTY

    PF1_CNP_IM =EUR_CONSO_FIX/TOTQTY

    PF1_AMO_IM =eur_CONSO_DEP/ TOTQTY

    PF1_FREIGHT_IM =EUR_DUTY / TOTQTY

    PF1_DUTY_IM =EUR_TST/ TOTQTY

    Then, we can take the sotck from WP1 associated (with help of material cross system and manufacturing plant associated) to calculate the IM valuation:

    Sotck from WP1 * IM from PF1.

    Example file.

  7. Load and calculate key figuress for Model S - WP1 (Logistic and Transit data) - ADSO ABCOMS01.
    Last step is to caculate all key figures for Model S report, It's done in transformation TRSF: APCOMS04 -> ADSO ABCOMS01.

    In start routine, we delete some lines according to their company code or plant. Company code and plant to exclude are defined in master data global filter (C_GLBFILT) in stream "MODEL S" and rule "PLANT" or "COMPCDE":


    During the loading, the transformation will convert the unit and currencies key figures with help of conversion type UOM_MATNR2 (units) and CTK_MODELS (currencies).

    The important point here is to normally, the cross system data (calculated in ABCOMS04) will be not loaded in this aDSO.


  8. Load and calculate key figuress for Model S - PF1  - ADSO ABCOMS02.

    The important point here is to normally, the cross system data (calculated in ABCOMS03) will be not loaded in this aDSO.



Particular shift of month definition:

Transaction ZBW_SHIFT_MONTH (linked with program ZBW_LOAD_FLAT_FILE_MODELS):

Shifts of month will be used in calculations views CV_FMCO_CO_MS_DBFIGL13_REFMONTH and CV_FMCO_CO_MS_APCOMS01_REFMONTH.

They are used to manage some exceptions when we define the month on which we will read the data to retrieve the data Transit and Logistic.

Flat file template (xls format):

Data in production:


At least Source system, GBU, shift of month Logistic and shift of month Transit are mandatory.

Procedure to use the transaction:


Dependencies with other applications

Mains data sources:

Logistic data: ADSO ABMMIC01 - "Material stock".

Transit data: DBFIGL13 - "IM from FIGL: Line Items for G/L Acct (S) - Rhodia Level 2".

Integrated Margin data: ODS_PCP4 - "CCR: Integrated margin".

Data loadings

Info providers and objects loaded

Process Chain - Technical NameProcess Chain - DescriptionStarterComment
PC_CO_MS_0006MS: TD - M - Model S - GlobalEvent: Z_EVT_PC_CO_MS_0006 triggered in process chain PC_INT_MARGINStarts arround 3:30 AM during working day D+3.
PC_CO_MS_0008MS: TD - M - Cross System Material

External start only (via API or metachain)

Triggered in PC_CO_MS_0006


PC_CO_MS_0002MS: TD - M - Solvay UPIS Stock Valuation (Propagation Layer)

External start only (via API or metachain)

Triggered in PC_CO_MS_0006


PC_CO_MS_0007MS: TD - M - Solvay UPIS (Business Layer)

External start only (via API or metachain)

Triggered in PC_CO_MS_0006


PC_CO_MS_0003MS: TD - M - Model S Propagation APCOMS01

External start only (via API or metachain)

Load ADSO APCOMS01 with query BW_QRY_ABMMIC01_0001 in source.

PC_CO_MS_0004MS: TD - M - Model S Propagation - APCOMS04

External start only (via API or metachain)

Triggered in PC_CO_MS_0006


PC_CO_MS_0005MS: TD - M - Model S Businesss

External start only (via API or metachain)

Triggered in PC_CO_MS_0006

Trigerred when PC_CO_MS_0005 AND PC_CO_MS_0007 are finished.
PC_CO_MS_0001MS: TD - D - Shift of Months: Models S (Propagation Layer)

External start only (via API or metachain)


PC_CO_MS_0009MS - TD - M - Solvay UPIS - Monthly

Starts at 7:00 AM and 2:00 PM (french time) during working day D+3.

The starter in defined at 7:00 AM and the job is job scheduling is repeated at 2:00 PM (see more details here).

Independant Process Chain, not in PC_CO_MS_0006. Used to take new lines cretaed in PF1 during the morning of working day D+3.

PC_CO_MS_0006 - MS: TD - M - Model S - Global:

Loading frequency

The loading is done after the process chain PC_INT_MARGIN - "Integrated Margin 2" normally once a month in the 3th workday.

Points to be careful during the loading:

  • Be carrefull ABCOMMIC01 has key figure in summation mode. If there is an error during the calculation of Model S and the issue not comes from stocks, don't re-execute all the process chain but just the part needed. For example just UPIS part & Model S propagation and the Model S business part.
  • If there are errors during process chain integrated margin, the model s process chain will not starts, for example if PC_INT_MARGIN not scheduled (error in CPX system).
  • Extraction of stock with query  BW_QRY_ABMMIC01_0001 takes time.
  • Infopackages to extract data from calculation view to load ADSO APCOMS04  can dump because of the calculation views which take too long or which have too large volumes. It's why there are several IP for logistic data. In case of errors it will be necessary to extract the data by smaller groups.

Average performance

 

The process chain PC_CO_MS_0006  tooks 2 hours (including one hour and a half to charge the adso APCOMS01 (extraction of stock with query from adso ABMMIC01).

She starts arround 3:30 am and finish at 5:30 am (French time)

Give details if any historisation is done, example: keep only data greater than beginning of Y-3 Record Keeping

Reporting

Queries End User Documentation


Main queries

BW_QRY_ABMMIC01_0001 - BW - Material Stock for extract model S (Core Query)

BW_QRY_CPCOMS01_0001 - Stock margin elimination report (Core Query)

BW_QRY_CPCOMS01_0002 - Stock Margin Elimination report 2 (Core Query)

Main functionalities

Broadcast

Maintenance

Known bugs

Recurring procedure

Planned Evolution

 Query BW_QRY_ABMMIC01_0001 →  find a way to improve the loading time.


  • No labels