Overview

When a company that operates in one of Syensqo main SAP ERP systems is sold or liquidated, Finance team updates specific tables linked to the Company Code maintenance in SAP PRS system PF2_050, with information acting the Company exit.

Refer to this procedure for more information : ZZF_T001_MGT_V - Company codes table maintenance

One of these tables is the ZZF_T001_MGT which is used as a source to BW, to update the authorization scope accordingly into the PRS Company Code master data C_COMPPRS, and other dependent master data.

Refer to BW - Authorization scope management

In certain M&A projects, where it has been agreed with buyers that Syensqo will provide a Transitional Service Agreement (TSA) for some reporting tools, it is necessary to keep in BW an authorization scope and consolidation method allowing this Company to be displayed properly in reporting.

Therefore, the information from table ZZF_T001_MGT must not be used in BW to set the Company as sold, preventing any display in reporting.

A new table ZFI_BW_TSA is maintained by Corporate team & Finance in SAP PRS system PF2_050 only if TSA is created between the external company and Syensqo else BW keep the existing data managed in ZZF_T001_MGT (% of integration =0). with the Company information to use to overwrite authorization scope and consolidation method in BW, as long as the Company data must be displayed in reporting.

Transition Service Agreement (TSA) is an agreement between buyer and seller companies (or divested entities), in which one entity provides services and support (e.g., IT, finance, HR, real estate, payroll) to another after a divestiture to ensure business continuity.


Once the TSA period is over, the Company information is deleted from table ZFI_BW_TSA, and the Company exit information is taken again from table ZZF_T001_MGT.

Refer to this procedure for more information : 

This page is explaining how this table is used in the BW data flow, and what is the procedure to follow for any new carve-out.


Contacts 

The main contact for IT SOURCING & TSA is sylvie.kramdi@syensqo.com

The main contact for MAC Data & Reporting is raquel.espadinha@syensqo.com

The main contact for Intercompany & Consolidation is guillaume.thevenet@syensqo.com


BW data flow 

The BW model is enhanced as below to consider the information coming from table ZFI_BW_TSA in SAP PRS system PF2_050.

BW updates are embedded in the Transfer Request OBDK900649 (4000000764: SNF Scope to display in BW queries).

Master Data C_T001MGT

Master Data C_T001MGT (Sold Company setting) is created to save the data from SAP table ZFI_BW_TSA in BW.

It is a Company Code type (CHAR 4), compounded with Source System (LOGSYS) and Company Scope (C_SCOPE).

Attributes are : 

C_CSMETH       Consolidation Method
K_INTRAT         Company Integration Rate
C_FLGINT         Intercompany Flag
0C_CTR_AREA  Credit Control Area


Do not use this Master Data in another object (ADSO structure, MD attribute..), since its content is fully deleted and replaced from the SAP source table.

Datasource DTS_ZFI_BW_TSA

Datasource DTS_ZFI_BW_TSA is created on SAP PRS system PF2_050 with table ZFI_BW_TSA as a structure.

The Datasource is replicated on BW, and used as the source to the Transformation into Master Data C_T001MGT.

Transformation TRSF: DTS_ZFI_BW_TSA -> C_T001MGT

Transformation TRSF: DTS_ZFI_BW_TSA -> C_T001MGT is created to load data from table ZFI_BW_TSA into Master Data C_T001MGT.

For Non ERP Company Code (Landscape NONERP), the LOGSYS field must be empty in target Master Data C_T001MGT.

Transformation TRSF: ZZR_0COMP_CODE_ATTR_PRS PRS -> C_COMPPRS

Transformation TRSF: ZZR_0COMP_CODE_ATTR_PRS PRS -> C_COMPPRS is updated in the Start Routine, to use the values from Master Data C_T001MGT in replacement to the incoming values from SAP.

The Datasource ZZR_0COMP_CODE_ATTR is retrieving scope and consolidation information from table ZZF_T001_MGT, in a dedicated Exit in source system (Include ZXRSAU02_ZZR_0COMP_CODE_ATTR).


The Intercompany Flag and Integration Rate populated are C_FLGINT and K_INTRAT, which are used for consolidation view = 1 in queries.

The C_FLGIN02, C_FLGIN03 and K_INTRA02, K_INTRA03 are used for consolidation view = 2 and consolidation view = 3, and are not overwritten by this specific process.


*** Start Add NGC20260204
* Loading of the C_T001MGT Master Data in internal table.
* It gives the Sold Companies setting to use to overwrite SAP source
* setting from ZZF_T001_MGT table.
    SELECT LOGSYS /BIC/C_SCOPE /BIC/C_T001MGT
          /BIC/C_CSMETH /BIC/K_INTRAT /BIC/C_FLGINT C_CTR_AREA
    INTO TABLE itb_t001mgt
    FROM /BIC/PC_T001MGT
    WHERE objvers 'A'.
*** End of Add NGC20260204

* If Scope = 00 then retrieve value scope from C_COMPPRS Master Data
* To avoid overwitting manual assignment done directly in C_COMPPRS
LOOP AT SOURCE_PACKAGE ASSIGNING <SOURCE_FIELDS>.
  IF <SOURCE_FIELDS>-SCOPE 00 OR <SOURCE_FIELDS>-SCOPE ''.
    READ TABLE ITB_COMPPRS ASSIGNING <fs_compprs>
    WITH TABLE KEY /BIC/C_COMPPRS <SOURCE_FIELDS>-BUKRS.
      IF SY-SUBRC 0.
        <SOURCE_FIELDS>-SCOPE <fs_compprs>-/BIC/C_SCOPE.
      ENDIF.
*** Start Add NGC20260204
* If Scope <> SOLV and SYEN and Company/Scope exists in C_T001MGT
* => Retrieve setting from Sold Company Master Data
  ELSEIF <SOURCE_FIELDS>-SCOPE NE 02 AND <SOURCE_FIELDS>-SCOPE NE 03.
    READ TABLE itb_t001mgt ASSIGNING <fs_t001mgt>
    WITH TABLE KEY LOGSYS <SOURCE_FIELDS>-SNDPRN
                   /BIC/C_SCOPE <SOURCE_FIELDS>-SCOPE
                   /BIC/C_T001MGT <SOURCE_FIELDS>-BUKRS.
      IF SY-SUBRC 0.
        <SOURCE_FIELDS>-METHOD  <fs_t001mgt>-/BIC/C_CSMETH.
        <SOURCE_FIELDS>-CONTROL <fs_t001mgt>-/BIC/K_INTRAT.
        <SOURCE_FIELDS>-CONSO   <fs_t001mgt>-/BIC/C_FLGINT.
      ENDIF.
*** End of Add NGC20260204
  ENDIF.
ENDLOOP.

Infopackage IP: 0FI_AR_9 PRS - Full -> C_CST_CA2 (ZPAK_4WRPN8OTGSDVUYD8VVYHV4H0Z)

Addition of a dynamic selection on Credit Control Area (KKBER), populated with distinct C_CTR_AREA values from Master Data C_T001MGT.

*** Start Add NGC20260204
* C_T001MGT Master Data internal table.
TYPESBEGIN OF t_t001mgt,
         c_ctr_area TYPE /bi0/oic_ctr_area,
       END OF t_t001mgt.
DATA itb_t001mgt TYPE SORTED TABLE OF t_t001mgt
      WITH UNIQUE KEY c_ctr_area.
FIELD-SYMBOLS<fs_t001mgt> TYPE t_t001mgt.
*** End of Add NGC20260204

* Loading Distinct Credit Control Areas from C_T001MGT
* Sold Companies setting to use to overwrite SAP source
* setting from ZZF_T001_MGT table.
  CLEAR   itb_t001mgt.

  SELECT DISTINCT c_ctr_area
  INTO TABLE itb_t001mgt
  FROM /bic/pc_t001mgt
  WHERE objvers 'A'.

  DELETE itb_t001mgt WHERE c_ctr_area IS INITIAL.

* Get from C_T001MGT
  LOOP AT itb_t001mgt ASSIGNING <fs_t001mgt>.

    l_t_range-sign 'I'.
    l_t_range-option 'EQ'.
    l_t_range-low <fs_t001mgt>-c_ctr_area.
    CLEAR l_t_range-high.

    APPEND l_t_range.

  ENDLOOP.

  p_subrc 0.

Transformation TRSF: 0CUSTOMER_TEXT PRS -> C_CST_CA2

Update End Routine in Transformation to add an English description for each distinct Credit Control Area from Master Data C_T001MGT.

 *** Start add NGC20260204
* Loading Distinct Credit Control Areas from C_T001MGT
    CLEAR itb_t001mgt.

    SELECT DISTINCT c_ctr_area
    INTO TABLE itb_t001mgt
    FROM /bic/pc_t001mgt
    WHERE objvers 'A'.

    DELETE itb_t001mgt WHERE c_ctr_area IS INITIAL.
*** End of add NGC20260204

    LOOP AT RESULT_PACKAGE INTO wa_result.
      wa_result-c_ctr_area 'SOLV'.
      wa_result-langu      'EN'.
      APPEND wa_result TO it_result.
      wa_result-c_ctr_area 'SYEN'.
      APPEND wa_result TO it_result.

*** Start add NGC20260204
*     Set Credit Conttrol Area from C_T001MGT
      LOOP AT itb_t001mgt ASSIGNING <fs_t001mgt>.
        wa_result-c_ctr_area <fs_t001mgt>-c_ctr_area.
        APPEND wa_result TO it_result.
      ENDLOOP.
*** End of add NGC20260204
    ENDLOOP.

Infopackage IP: ZZFCM_EXPOSURE_BY_GBU Solvay - Full -> C_CREDEXP (ZPAK_4X5ZBU1J279B50SQ26GLWACRU)

Addition of a dynamic selection on Credit Control Area (KKBER), populated with distinct C_CTR_AREA values from Master Data C_T001MGT.

Infopackage IP: ZZFCM_EXPOSURE_BY_GBU Rhodia - Full -> C_CREDEXP (ZPAK_4YIY97XPYB8516PA9MEJC0HY7)

Addition of a dynamic selection on Credit Control Area (KKBER), populated with distinct C_CTR_AREA values from Master Data C_T001MGT.

*** Start Add NGC20260204
* C_T001MGT Master Data internal table.
TYPESBEGIN OF t_t001mgt,
         c_ctr_area TYPE /bi0/oic_ctr_area,
       END OF t_t001mgt.
DATA itb_t001mgt TYPE SORTED TABLE OF t_t001mgt
      WITH UNIQUE KEY c_ctr_area.
FIELD-SYMBOLS<fs_t001mgt> TYPE t_t001mgt.
*** End of Add NGC20260204

* Loading Distinct Credit Control Areas from C_T001MGT
* Sold Companies setting to use to overwrite SAP source
* setting from ZZF_T001_MGT table.
  CLEAR   itb_t001mgt.

  SELECT DISTINCT c_ctr_area
  INTO TABLE itb_t001mgt
  FROM /bic/pc_t001mgt
  WHERE objvers 'A'.

  DELETE itb_t001mgt WHERE c_ctr_area IS INITIAL.

* Get from C_T001MGT
  LOOP AT itb_t001mgt ASSIGNING <fs_t001mgt>.

    l_t_range-sign 'I'.
    l_t_range-option 'EQ'.
    l_t_range-low <fs_t001mgt>-c_ctr_area.
    CLEAR l_t_range-high.

    APPEND l_t_range.

  ENDLOOP.

  p_subrc 0.

Transformation TRSF: DBFIAR07 -> C_CREDEXP

Update End Routine and 0RATING routine in Transformation to derive Rating field from Credit Control Area from Master Data C_T001MGT.

Start Routine

** Start Add NGC20260204
* Loading Distinct Credit Control Areas from C_T001MGT
    CLEAR   itb_t001mgts_t_rangel_t_range.

    SELECT DISTINCT c_ctr_area
    INTO TABLE itb_t001mgt
    FROM /bic/pc_t001mgt
    WHERE objvers 'A'.

    DELETE itb_t001mgt WHERE c_ctr_area IS INITIAL.

* Set Credit Control Areas from C_T001MGT in range
    LOOP AT itb_t001mgt ASSIGNING <fs_t001mgt>.
      s_t_range-sign 'I'.
      s_t_range-option 'EQ'.
      s_t_range-low <fs_t001mgt>-c_ctr_area.
      CLEAR s_t_range-high.
      APPEND s_t_range TO l_t_range.
    ENDLOOP.
*** End of Add NGC20260204


0RATING Routine

    IF l_t_range[] IS INITIAL.        "NGC20260204+

* ONLY FOR 'SOLV' CREDIT CONTROL AREA
* WE PICK THE 1ST CHARACTER OF 0RISK_CATEG
      IF SOURCE_FIELDS-c_ctr_area 'SOLV' OR
        SOURCE_FIELDS-c_ctr_area 'SYEN'.
        RESULT SOURCE_FIELDS-risk_categ(1).
      ENDIF.
** Start Add NGC20260204
* Set Risk Categ for SOLV or SYEN or any Crdt Areas from C_T001MGT
    ELSE.
      IF SOURCE_FIELDS-c_ctr_area 'SOLV' OR
        SOURCE_FIELDS-c_ctr_area 'SYEN' OR
        SOURCE_FIELDS-c_ctr_area IN l_t_range.
        RESULT SOURCE_FIELDS-risk_categ(1).
      ENDIF.
    ENDIF.
*** End of Add NGC20260204

Transformation TRSF: C_CREDEXP -> C_CREDEXP

Addition in Start Routine of a dynamic selection on Credit Control Area C_CTR_AREA values from Master Data C_T001MGT.

 ** Start Add NGC20260204
* Loading Distinct Credit Control Areas from C_T001MGT
    CLEAR   itb_t001mgts_t_rangel_t_range.

    SELECT DISTINCT c_ctr_area
    INTO TABLE itb_t001mgt
    FROM /bic/pc_t001mgt
    WHERE objvers 'A'.

    DELETE itb_t001mgt WHERE c_ctr_area IS INITIAL.

* Set Credit Control Areas from C_T001MGT in range
    LOOP AT itb_t001mgt ASSIGNING <fs_t001mgt>.
      s_t_range-sign 'I'.
      s_t_range-option 'EQ'.
      s_t_range-low <fs_t001mgt>-c_ctr_area.
      CLEAR s_t_range-high.
      APPEND s_t_range TO l_t_range.
    ENDLOOP.

    IF l_t_range[] IS INITIAL.
*** End of Add NGC20260204

* Loading of the C_CST_CA2 Master Data in the internal table
      SELECT c_ctr_area /bic/c_cst_ca2 cred_limit CURRENCY
        INTO TABLE itb_cst
        FROM /bic/mc_cst_ca2
        WHERE objvers 'A'
        AND c_ctr_area 'SOLV' OR
              c_ctr_area 'SYEN' ).
** Start Add NGC20260204
    ELSE.
* Loading of the C_CST_CA2 Master Data in the internal table
*  for SYEN or SOLV or any Crdt Ctrl Area in C_T001MGT master data
      SELECT c_ctr_area /bic/c_cst_ca2 cred_limit CURRENCY
        INTO TABLE itb_cst
        FROM /bic/mc_cst_ca2
        WHERE objvers 'A'
        AND c_ctr_area 'SOLV' OR
              c_ctr_area 'SYEN' OR
              c_ctr_area IN l_t_range ).
    ENDIF.
*** End of Add NGC20260204

How to update the BW scope 

There are several steps to process to consider the new records from table ZFI_BW_TSA in BW.

  1. Check table ZFI_BW_TSA content in SAP PRS system PF2_050
  2. Load Master Data C_T001MGT
  3. Load dependent Master Data

1- Table  ZFI_BW_TSA

Check in SAP PRS system PF2_050 that table ZFI_BW_TSA is properly populated with the Company information to push in BW (exple below for SNF scope).

This information will overwrite the data coming from table ZZF_T001_MGT.

ClientPRS Company CodeScope CodeConsolidation methodConsolidation %BFC ConsoCredit control areaComment
MANDTBUKRSSCOPEMETHODCONTROLCONSOKKBERZCOMMENT
05064022110100X0143TSA until 12.2026
05064032110100X0143TSA until 12.2026
05064162110100X0143TSA until 12.2026
05078102110100X0143TSA until 12.2026

2- Update Master Data C_T001MGT 

The content of table ZFI_BW_TSA must be populated into the Master Data C_T001MGT (Sold Company setting) in BW.

This master data C_T001MGT is not used in any transactional structure in BW, which means that the content can be fully replaced without impact.

  1. Delete the content of Master Data C_T001MGT
  2. Execute the Full DTP to extract data from Datasource DTS_ZFI_BW_TSA into master data C_T001MGT and activate it.
  3. Check master data C_T001MGT content.

As long as there is no new update in the table ZFI_BW_TSA, there is no need to update Master Data C_T001MGT again.

3- Load relevant Master Data 

Now the sequence of reloading below can be processed to take the master data C_T001MGT information into account.

These loadings can be done with temporary IP+DTP filtered on relevant Company selection, or with daily IP+DTP used in Process Chains with Full/Delta selection.

According to the level of emergency, only the loading of C_COMPPRS (step 1) must be done manually, to confirm the proper scope and consolidation values, then all other loadings could be done automatically with the next daily night process.

Step 13, to load Master Data C_CREDEXP, is a weekly process scheduled every Sunday at 11 PM CET, but it is not a a requirement for any other loading.

  1. Load Master Data C_COMPPRS from Datasource ZZR_0COMP_CODE_ATTR_PRS (IP + DTP) + Activate (Dependent from C_T001MGT)
  2. Load Master Data C_COMPCDE from Datasource ZZR_0COMP_CODE_ATTR (IP + DTP) + Activate (Dependent from C_COMPPRS)
  3. Load Master Data C_COMPCDE from Datasource DTS_0COMP_CODE_ATTR (IP + DTP) + Activate (Dependent from C_COMPPRS)
  4. Load Master Data C_COMPCDE from Datasource C_COMPCDE + Activate (Dependent from C_COMPPRS)
  5. Load Master Data 0COMP_CODE from Datasource DTS_0COMP_CODE_ATTR + Activate (Dependent from C_COMPPRS)
  6. Load Master Data 0COMP_CODE from Datasource 0COMP_CODE + Activate (Dependent from C_COMPPRS)
  7. Load Master Data 0PLANT from Datasource 0PLANT + Activate (Dependent from C_COMPCDE)
  8. Load Master Data C_PLANT from Datasource C_PLANT + Activate (Dependent from C_COMPCDE)
  9. Load Master Data C_CST_CA2 from Datasource 0FI_AR_9 (IP with dynamic Credit Area + DTP) + Activate (Dependent from Credit Control Area of C_T001MGT)
  10. Load Master Data C_CST_CA2 from Datasource 0CUSTOMER_TEXT (IP + DTP) (Dependent from Credit Control Area of C_T001MGT only)
  11. Load Master Data C_CUSTPRS from Datasource 0CUSTOMER_ATTR (IP + DTP) + Activate (Dependent from C_COMPPRS)
  12. Load Master Data C_CUSTID from Datasource 0CUSTOMER_ATTR (IP + DTP) from both source systems + Activate (Dependent from C_CUSTPRS)
  13. Execute Process Chain PC_FIWC_04 to load DBFIAR07 and Master Data C_CREDEXP (Dependent from Credit Control Area of C_T001MGT + Dependent from C_CST_CA2)
  14. Load Master Data C_VENDPRS from Datasource 0VENDOR_ATTR (IP + DTP) + Activation (Dependent from C_COMPPRS)
  15. Load Master Data C_AGRITM from Datasource C_AGRITM (Dependent from C_PLANT)
  16. Load Master Data 0PROFIT_CTR from Datasource 0PROFIT_CTR (Dependent from C_PLANT)
  17. Load Master Data C_WBS_ELE from Datasource C_WBS_ELE (Dependent from C_PLANT)
  18. Load Master Data C_WBS_EL2 from Datasource C_WBS_EL2 (Dependent from C_PLANT)
  19. Load Master Data C_PMORDER from Datasource C_PMORDER (Dependent from C_PLANT)
  20. Load Master Data C_PMORDR from Datasource C_PMORDR (Dependent from C_PLANT)
  21. Load Master Data C_COSTCTR from Datasource C_COSTCTR (Dependent from C_PLANT)
  22. Load Master Data C_PMORDER from Datasource C_PMORDER (Dependent from C_PLANT)

Authorization Analysis & Role

In addition to the Master Data updates, the authorization to display the scope must be granted to users, through a dedicated authorization analysis and a dedicated role .

In case of emergency, the new authorization scope value (from C_AUTHMA) can be added to all dimensions of the main SCO Authorization analysis ZP2SCOP00.

Example here for SNF scope added to the SCO scope for dimension 0COMP_CODE__C_AUTHMA.

This way, the authorization to display the new scope is automatically granted to all users already assigned to the SCO role ZP2_SCO_P00.


In a sustainable and flexible solution, the new authorization scope value must be added to a new Authorization analysis ZP2xxxP00, in copy of ZP2SCOP00, to get all relevant dimensions.

Then this new Authorization analysis ZP2xxxP00, must be assigned to a new dedicated role ZP2_xxx_P00, in copy of the SCO role ZP2_SCO_P00.

And finally, this new role ZP2_xxx_P00 must be assigned to the relevant users in charge of the scope in BW.


This process can only be done by the Authorization team in charge, and must be requested through a SAP Privilege Management Request as below, for all platforms from Development to Production.



BW Query updates

BW local queries 

Once the BW data reloading is done and the authorization enhancement assigned, BW queries are automatically taking the new scope into account.

The consolidation view to use is 1, when required in the prompt (even if not proposed in the field description).


The identified Finance queries are the following : 

BW_QRY_MVWISE01_0011   BW - WISE - Collection Global Overview (Core Query)
BW_QRY_MVFIAR01_0006    Aged Balance (Core Query)
BW_QRY_MVFIAR01_0008    Credit Exposure (Core Query)
BW_QRY_MVFIAR02_0001    Detailed Open/Cleared Items (Core Query)
BW_QRY_MVFIAR01_0002    Overdues (Core Query)
BW_QRY_MVFIAR01_0009    Payment Perfm. (Core Query)
BW_QRY_MVFIAR01_7001    DSO in acct. view (Core Query)
BW_QRY_MVFIAR01_7002    Overdue in acct. view (Core Query)

BW queries for external tools

When the Xtract tool is used to extract data from BW through queries, the filters below must be adapted to consider the new scope : 

The impacted queries are the following : 

QVSBS_BW_QRY_MVFIAR01_0006    BW - Credit Management Aged Balance (Core Query) - QV SBS KP
QVSBS_BW_QRY_MVFIAR01_0001    BW - Credit Mgt Outstanding/Not due for DSO (QV)
QVSBS_BW_QRY_MVFIAR01_0002    BW - Credit Mgt Turnover for DSO (QV)
QVSBS_BW_QRY_MVFIAR01_0010    BW - Payment Performance (QV SBS Query) QV SBS KPI

with Eric Fournel list