Overview 

In order to manage authorization of BW data, we start to use C_AUTHMA (Scope) attribute of master data to manage the authorization of Carve out in BW (like from PAX project). 

As we have following authorization objects (this document managed by authorization team) to control all applications, therefore, we need to add C_AUTHMA into the following master data as attributes:

0COMP_CODE0PLANT0PROFIT_CTRC_AGRITMC_COMPCDEC_COMPPRSC_COSTCTRC_PLANTC_PMORDERC_PMORDRC_WBS_EL2C_WBS_ELE0EHS_AUTH0EHS_SPECC_SCOPE

In all BW sensible applications, the GBU Master data + company code or/and plant or minimum GBU as added as authorization objects to split the data to follow the authorization rules. All BW query must have C_AUTHMA as authorization object. 

Contacts 

The main contact for SBS is caroline.mathieu-stoissich@solvay.com  about all divestment or merge 

The main contact for SBS about PAX is maria.pasquale@solvay.com

How to update authorization scope (Version 2)

1. Update flat file

At the moment, we need to update the authorization scope to 3 companies objects (C_COMPCDE, 0COMP_CODE, and C_COMPPRS) by flat file 

            1.1 Modify scope in flat file. The format of the file is here  (can change only impacted companies)

Note:

C_COMPCDE, it is required to check on each system. Since the source systems are not the same.

0COMP_CODE will equivalent for source system WP1 since the loading come from WP1 only

In case, COMPCDE <> COMPPRS, we need to change on the C_COMPPRS field = C_COMPCDE__C_COMPPRS

eg.  C_COMPPRS = 6115 =  C_COMPCDE__C_COMPPRS / C_COMPCDE = 6111 (WP1_400)

2. Upload files to BW

We have to  upload these files by program SE38 : ZBW_FILE_TRANSFERT to

Logical path = Z_C_AUTHMA = /exploit/BW/authorization_scope/

C_COMPCDE    <- DTS_AUTH_C_COMPCDE    (file Z_C_COMPCDE_C_AUTHMA = C_COMPCDE_Auth_MA.csv)

0COMP_CDOE <- DTS_AUTH_0COMP_CODE (file Z_0COMP_C0DE_C_AUTHMA = 0COMPCDE_Auth_MA.csv)

C_COMPPRS    <- DTS_AUTH_C_COMPPRS     (file Z_C_COMPPRS_C_AUTHMA = C_COMPPRS_Auth_MA.csv)

**Company PRS code need to check on C_COMPCDE to know the code of PRS that need to be changed

(warning) To update in WBD/WBQ/WBV, file C_COMPCDE is required to change the source system ID according to the BW system

3. Update global filter

      3.1  Excepted plant,  in case Solvay sold a company but some plant still belong to Solvay, we need to add this exception in global filter

                          Rule C_PLANT for C_PLANT object, which required first 3 letters of source system

                          Rule 0PLANT for 0PLANT object, which is required only plant code

Note: C_PLANT, we need to have first 3 characters of source system following with "_" (under scroll) as well while 0PLANT does not need

       3.2 Impacted company, we can specific company to reload in order to speed up the reload all master data.

                       Rule IMPCOMP to use in DTP to filter to reload only these company code

        3.3 Impacted plant, we can specific plant to reload in order to speed up 

                       Rule IMPPLANT to use in DTP to filter to reload only these plant code → get the list of plant in the C_PLANT master data

Note: point 3.2 and 3.3 are required to set flag "Global Filter Active" as "N" or delete it after reload completed

4. Run process chain PC_C_AUTHMA

 Run process chain PC_C_AUTHMA it will update all master data attributes regarding the global filter on company code and plant that we selected only.

5. Check Authorization

Check with authorization team that the new roles are assigned to the impacted users already if required.


How authorization scope is updated (Version 3)

This will be automatic by getting new field from PF1_050.  This is plan.  Will review the plan again after M2C project in Oct 2021 

Company Scope assignment

Instead of using flat files to update the Authorization scope in BW, the company scope assignment is now retrieved for the table ZZF_T001_MGT in the PRS (PF1_050) system.



The scope code (01, 02, 03…) is mapped to the corresponding Authorization scope (SOLVAY, ECO, SCO,…) in the table ZFI_T001_SCOPES in the PRS (PF1_050) system.

This table is used to populate data in the BW C_SCOPE Master Data with the datasource DTS_ZFI_T001_SCOPES from PF1_050.


The table ZZF_T001_MGT is read to populate data in the BW C_COMPPRS Master Data with the datasource ZZR_0COMP_CODE_ATTR_PRS from PF1_050. 

Especially the scope number assignment C_SCOPE.


Remark: The update of C_COMPPRS Master Data from PF1_050 (and from the MGT table) is conditionned to the monthly PRS freeze in all process chains.

This freeze is configured in the Global Filter GLOBAL / PRSFREEZE, by default from the 1st to the 20th of the month:


The scope number (C_SCOPE) is then used in several rules to define:

  • C_AUTHMA: Authorization scope (ECO, SCO, ACETOW…)
  • C_FLGIN02/03: Intercompany Flag for ECO or SCO
  • K_INTRA02/03: Integration Rate for ECO or SCO

These rules are applied when loading the C_COMPPRS Master Data.

NB: C_FLGIN02/03 & K_INTRA02/03 attributes are used in Finance application and loaded into several related master data by Finance specific Process chains (PC_FIWC_05, PC_FIWC_02,  PC_FIWC_03).

Authorization scope assignment in BW

Concerning the C_AUTHMA update, is it done ONLY IN the recursive transformation on the Master data C_COMPPRS, based on a C_SCOPE Master data lookup.

C_COMPPRS is the main entry point in BW for the authorization scope C_AUTHMA assignment.

This assignment is then loaded into other related Master Datas (C_COMPCDE, C_PLANT, C_WBS_EL2…) through lookups in the dedicated Process chain PC_C_AUTHMA (see details below).

Authorization scope assignment priority

For all the companies that are not maintained with a scope value in table ZZF_T001_MGT (with a valid date), the default value in BW will be:  

C_SCOPE = 00 --> C_AUTHMA = UNASSIGNED

That means that these unassigned companies will not be displayed anymore in the BW reports, except for the users authorized on all scopes (C_AUTHMA = *).

Although, it will still be possible to manually redefine in BW the C_SCOPE and C_AUTHMA values for these companies directly by maintaining MD C_COMPPRS on demand.


But to do so, the following rule in the transformation has been implemented: PRS_020/ZZR_0COMP_CODE_ATTR_PRS PRS -> C_COMPPRS

IF: the scope loaded from PF1_050 is equal to 00 (because missing in MGT table or past validity date)

THEN: keep the scope value already assigned in C_COMPPRS (to not overwrite any potential manual assignment by 00).


To conclude, the scope assignment priority will be the following:

P1: Scope assigned in the PRS / ZZF_T001_MGT

P2: Scope assigned directly in BW Master Data C_COMPPRS

Note: On D1: All company scopes assigned in ZZF_T001_MGT will be updated in BW. All other companies will be assigned to 00 UNASSIGNED (and removed from reports for most of users) till a manual assignment in BW is requested.

Process chain PC_C_AUTHMA

The PC_C_AUTHMA purpose is to refresh the Authorization Scope C_AUTHMA in the Master data C_COMPPRS from source table PRS (PF1_050) /  ZZF_T001_MGT, and to diffuse the the assignment to all other relevant Master Datas.

Based on the current Master Data load time in WBP, the chain PC_C_AUTHMA has scheduled on a DAILY basis at 08:00 am CET.
image.png


In order to limit the volumetry of some Master Data reload, the list of the company and plant to be reloaded are stored in the Global Filter : 

  • Stream = AUTHORIZMA / Rule = IMPCOMP
  • Stream = AUTHORIZMA / Rule = IIMPPLANT

These global filter lists are not manually maintained anymore.

It is automatically updated by a program triggered by the chain that will compare and list the company code for which the authorizations scope has changed.

Remarks:

  • The entries AUTHORIZMA / 000 with Company and Plant code = DUMY must not be removed or disabled. It purpose is to restrict the DTP filters to avoid unnecessary FULL reload when no scope update is detected
  • The entries AUTHORIZMA / from 001 to 999 are automatically erased and re-inserted  by the program ‘ZBW_C_AUTHMA_UPDATE_GLBFILT’ with the company/plant codes to be updated (see detailed steps below)

Detailed steps of the process chain PC_C_AUTHMA

  1. Reload C_SCOPE master data from PRS (PF1_050) ZFI_T001_SCOPES table
  2. Reload C_COMPPRS from PRS (PF1_050) datasource with extraction enhancement from table ZZF_T001_MGT to get assigned attributes: scope numbers, intercompany flags, integration rates…
    NB: This update
    is conditioned to the monthly PRS freeze, configured in the Global Filter GLOBAL / PRSFREEZE, by default from the 1st to the 20th day of the month.


  3. Reload of C_COMPPRS using recursive transformation to update Authorization scope C_AUTHMA attribute (based on C_SCOPE Master data lookup)

  4. Run of program: 'ZBW_C_AUTHMA_UPDATE_GLBFILT':
    1. Compare updated /BIC/PC_COMPPRS-C_AUTHMA vs non updated /BIC/PC_COMPCDE-C_AUTHMA
    2. List company codes (values of /BIC/PC_COMPCDE-C_COMPCDE) that have different values for field C_AUTHMA
    3. Update Company list in global filter (AUTHORIZMA / IMPCOMP) used to restrict volume for Master Data update 
    4. Update Plant list in global filter (AUTHORIZMA / IMPPLANT) by reading /BIC/PC_PLANT : C_COMPCDE - C_PLANT (distinct)

  5. Reload C_COMPCDE from both source systems PF1 & WP1 updating all attributes, including C_AUTHMA based on C_COMPPRS Master data lookup.
  6. Reload of C_COMPCDE using recursive transformation to update Authorization scope C_AUTHMA attribute based on C_COMPPRS Master data lookup.

    This myself reload is filtered on the companies that have been listed by the program in the Global (AUTHORIZMA / IMPCOMP).
    NB.: This recursive loop will update all records having a valid link to C_COMPPRS (even non-ERP entries).

  7. Reload 0COMP_CODE from source systems WP1 updating all attributes, including C_AUTHMA based on C_COMPCDE Master data lookup.
    Reload of 0COMP_CODE using recursive transformation to update Authorization scope C_AUTHMA attribute based on C_COMPCDE Master data lookup.
    This myself reload is filtered on the companies that have been listed by the program in the Global Filter (AUTHORIZMA / IMPCOMP).

  8. Reload of 0PLANT using recursive transformation to update Authorization scope C_AUTHMA attribute based on 0COMP_CODE Master data lookup.
    This myself reload is filtered on the companies that have been listed by the program in the Global Filter (AUTHORIZMA / IMPCOMP).

  9. Reload of C_PLANT using recursive transformation to update Authorization scope C_AUTHMA attribute based on C_COMPCDE Master data lookup.
    This myself reload is filtered on the companies that have been listed by the program in the Global Filter (AUTHORIZMA / IMPCOMP).

  10. Additional Master Data reload using recursive transformation to update Authorization scope C_AUTHMA attribute based on:
    1. C_COMPCDE Master data lookup, and filter on listed companies in the Global Filter (AUTHORIZMA / IMPCOMP) :

      • C_AGRITM
      • C_COSTCTR
    2. 0PLANT Master data lookup, and filter on listed plants in the Global Filter (AUTHORIZMA / IMPPLANT) :
      • C_WBS_ELE
      • C_PMORDER
    3. C_PLANT Master data lookup, and filter on listed plants in the Global Filter (AUTHORIZMA / IMPPLANT) :

      • C_WBS_EL2
      • 0PROFIT_CTR
      • C_PMORDR


Important document

Main control carve out files starting from 2021


PAX project kick off

GBU structure for PAX

8095 PAX, EIRENE & JV - Structures (official)


Documentation shared to BASF, Alsachimie and Domo


V3 Documentation:

Authorization scope update in MD - Test Document for PC_C_AUTHMA and program ZBW_C_AUTHMA_UPDATE_GLBFILT










  • No labels