Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Define which payer is a priority based on its history and the due amount.

 


Tool Leader: David TONDA

IT leader of the application: Guillaume THEVENET

...

  • 134 - PROJECT - PCM
    COMP_PCM


History

In Mar 2020, the data flow was updated to PCM 2.0

In 2021, BW change the source system SDK_PCM (SQL) to BigQuery(#4749200)

In Feb 2023, Po2 project requires to segregate data of Eco/Sco, therefore, company master data file is modified to add C_AUTHMA(authorization scope) to the openhub OH_PCM_05

In Dec 2023, Po2 spin off project has the new  credit controlling area (CCA) = SYEN.  DTP of DBFIAR20 need to add CCA = SOLV and SYEN and master data of c_compcde and c_custid are need to add c_scope field in order to use to calculate interco in BQ

Roles & Access

Aligned on FIAR Roles & Access

Dataflow overview

Summary

The dataflow can be divided in 3 main steps:

  1. check that no other run are in progress (a) and then extract data from BW to PCM SQL database PCM 
    1. Extract master data in full mode to csv files through openhub (b)
    2. Load FIAR and CAMS data into specific DSO build for PCM project (DBFIAR20 and DBFIAR21),then extract to csv through openhub
    3. launch ksh script (c) to execute treatment on PCM SQL database side (through OS Command (d))
  2. treatment on PCM SQL database side
  3. load data from PCM SQL database  to BW
    1. when OS command is finished (meaning that treatment are finished), load the status table (e)
    2. if code in status table is 0, load PCM data into 2 specific DSO, DPFIAR10 and DPFIAR11, else regenerate file or put process chain in error

 

 

DBFIAR20 loading process

 Image Removed

Architecture Overview

Image Removed

Reporting documentation drive folder:

    1. Load the data from the file via Talend 
  1. treatment on PCM GCP
  2. Load full with deletion DPFIAR13 from Big Query with new data source DTS_FI_PCM_01 by PC_FI_PCM_10. SQL server was replaced by Big Query

Image Added

BW to Talend

 Image Added

Big Query to BW

DPFIAR13 data loading

Data source DTS_FI_PCM_01 get from remote source GBQ_Predict_Credit and get from table core_perimeter_future_bw (GCP project predict-credit-mgt-v2-prod)

Image Added

Report to get back from BigQuery after calculate by Data Science

Image Added Image Added

WIth new version 2.0, BW get only 3 key figures

PRED_NOT_PIM     → K_PFNPI
PROBA_NOT_PIM  → K_PPNPI
AMOUNT_EUR      → 0DEB_CRE_LC

Note: DPFIAR14  is obsolete

Architecture Overview


Image Added

Obsolete 

Image Added

SQL server was replaced by Big Query and after files are generate, they will be loaded by Talend by Data Engineering teamhttps://drive.google.com/drive/folders/0B0qn89R0RGdqYkZZOFZyYXlXVkE

Functional and Technical rules on Workbench + Reporting

...

  • Extraction of BW data (master and transactional data) in flat files (csv with "|" separator)
  • copy and loading of these file into a SQL database
  • Calculation of predictive information on SQL side to produce two table which define Priority per Amount & Priority per Payer
  • Loading of these data in BW to be used on standard reporting

Program (a)

(created in SE38)

2 program to update the TVARVC variable Z_BW_PCM_PC_STATUS

The purpose of these program is to avoid launching process chain twice if previous run is still active.

Image Removed

Image Removed

If the process chain is already running, the process chain will fail requiring deeper analysis (normal duration should be less than one hour - only init run should exceed this duration)

Openhub (b)

7 openhub have been created for master data and 2 for transactional data

Openhub

Updated on 12 Mar 2021: 18 Openhub (2 Transactional and 16 Master data)

Open HubOpen Hub NameSource of Open HubProcess ChainFilenameDetail of file
OH_PCM_01PCM: DBFIAR20DBFIAR20 (replace by v2)PC_FI_PCM_01dbfiar20_delta.csvFIAR: Line Item with Delta - PCM - All systems
OH_PCM_21PCMV2: DBFIAR20DBFIAR20PC_FI_PCM_V2dbfiar20_delta.csvFIAR: Line Item with Delta - PCM - All systems
OH_PCM_02PCM: GL_ACCOUNTATTRIBUTES 0GL_ACCOUNTPC_FI_PCM_01gl_account_full.csvAttribute of GL account
OH_PCM_03PCM: C_CUSTIDATTRIBUTES C_CUSTIDPC_FI_PCM_01c_custid_full.csvAttribute of Customer
OH_PCM_04PCM: COUNTRYATTRIBUTES 0COUNTRYPC_FI_PCM_01country_full.csvAttribute of Country
OH_PCM_05PCM: C_COMPCDEATTRIBUTES C_COMPCDEPC_FI_PCM_01c_compcde_full.csvAttribute of Company
OH_PCM_06PCM: C_CST_CA2ATTRIBUTES C_CST_CA2PC_FI_PCM_01c_cst_ca2_full.csvAttribute of Customer credit control area
OH_PCM_07PCM: TCURRDTS_TCURRPC_FI_PCM_01tcurr_full.csvAttribute of Currency
OH_PCM_08PCM: DBFIAR21DBFIAR21PC_FI_PCM_01dbfiar21_delta.csvFIAR: Credit blocked - PCM - All systems
OH_PCM_09PCM: G_CWWE01ATTRIBUTES 0G_CWWE01PC_FI_PCM_01g_cwwe01_full.csvAttribute of sub activity (IECRA)
OH_PCM_10PCM: 0CLM_CLSP TextsTEXTS 0CSM_USERPC_FI_PCM_010CLM_CLSP_TEXT.csvText of Collection specialist
OH_PCM_11PCM: C_COMPCDE TextsTEXTS C_COMPCDEPC_FI_PCM_01c_compcde_text.csvText of Company
OH_PCM_12PCM: C_SALEMP TextsTEXTS C_SALEMPPC_FI_PCM_01c_salemp_text.csvText of Sales employee
OH_PCM_13PCM: C_PMNTTRM TextsTEXTS C_PMNTTRMPC_FI_PCM_01C_PMNTTRM_TEXT.csvText of payment term
OH_PCM_14PCM: CPFCTR1_2 TextsTEXTS CPFCTR1_2PC_FI_PCM_01CPFCRT1_2_TEXT.csvText of GBU
OH_PCM_15PCM: CPFCTR2_2 TextsTEXTS C_FACUBUPC_FI_PCM_01CPFCTR2_2_TEXT.csvText of BFC group of activity
OH_PCM_16PCM: 0G_CWWE01 TextsTEXTS 0G_CWWE01PC_FI_PCM_010G_CWWE01_TEXT.csvText of  sub activity (IECRA)
OH_PCM_17PCM: C_PM_MTHD TextsTEXTS C_PM_MTHDPC_FI_PCM_01C_PM_MTHD_TEXT.csvText of payment method
OH_PCM_18PCM: 0REPR_GROUP TextsTEXTS 0REPR_GROUPPC_FI_PCM_010REPR_GROUP_TEXT.csvText of credit management representatives group

...


All master data openhub are loaded in full mode. All extract data from master data except the TCURR one which is connected to a datasource.

All transactional data openhub are loaded in delta mode. (remark delta is not possible with multiprovider). 


All openhub use a "|" separator because some field already contain ";" in the value and openhub doesn't encapsulate data.

...

All openhub use logical file name defined through FILE transaction. All files are stored in the following folder

KSH script (c)

KSH script have been build by D3S/adagio team.

They are stored in the following folder

Image Removed

pacm-ping.ksh is the initial test for the PCM project (not used anymore).

pacm-reset_db.ksh allow to reset SQL database from BW.

pacm-run.ksh is the script which launch treatment on SQL database side. It generate a log in the following folder: /exploit/TA/tmp/${STAMP}_log_run_$server.log

This scripts awaits two parameter:

Image Removed

OS Command (d)

(created in SM49)

Image Removed

The ZPCM_RUN launch a .bat file which load extracted file in the D3S SQL database. It's included in process chain through the following variant:

Image Removed

This variant has been modified directly in WBP to launch treatment on the SQL production server

Image Removed

The ZPCM_RESET_DB reset the database. It's not included in process chain

Status table (e)

The status table is loaded in DSO DPFIAR12

Image Removed

C_COMMAND should be used to run the "ZPCM_RUN" or the "ZPCM_RESET" depending on the value sent by SQL database. This functionality is not used and by default the process chain always launch the RUN. If the RESET is required, then it needs to be launched manually.

C_CODSTAT can take 3 different value which are checked in the process chain:

  • 0: "normal" process
  • 1: problem with file generated, the process chain will try to generate file again (only once)
  • 2: other error, the process chain will fail and deeper analysis is required

These value are checked in the process chain through "Enhanced decision"

Image Removed

Dependencies with other applications

PCM data are loaded on top of FIAR data.

Data loadings

Info providers and objects loaded

Target folder

Image Removed

Loading frequency

Average performance


Data loadings

Info providers and objects loaded

PC_FI_PCM_07 (Main PC) modify by ticket 5915436

  PC_FI_PCM_01 Generate 18 files from Open Hub by job RSPROCESS weekday at 10:00 AM CET

  PC_FI_PCM_11 Same as PC_FI_PCM_01 just in case 01 can't generate files completely

  PC_FI_PCM_10 Delete DSO then load data to DPFIAR13 from BigQuery  and DPFIAR14 from SDK_PCM  job RSPROCESS weekday at 11:00 AM CET

  PC_FI_PCM_V2 generate 1 file:/exploit/BW/PREDICTCM/V2/dbfiar20_<DATE>_<TIME>_delta.csv from Open Hub by job RSPROCESS 3 times( 7am, 1pm , 7pm CET) per weekday

Target folder

Image Added


Loading frequency

  PC_FI_PCM_01 load by job RSPROCESS workday at 10:00 AM CET

  PC_FI_PCM_10 load by  job RSPROCESS workday at 11:00 AM CET

  PC_FI_PCM_V2 load by  job RSPROCESS workday at 7am, 1pm , 7pm CET

      Schedule by PC at 7 AM and schedule by program on job name BI_PROCESS_TRIGGER_1PM  and BI_PROCESS_TRIGGER_7PM

Average performance

...


Key FigureEstimation
~ Average Process Chain Runtime
 

~ Average nb of rows loaded per load
 

~ Total nb of rows loaded (if full)
 

~ Average Runtime for 10k lines
 

Record Keeping

DSO are loaded with full historical data but we only send today - 3 years to SQL server.

...

Queries End User Documentation

...


Main queries

Main functionalities

...

Known bugs

Recurring procedure

If the service account:bqtobw@predict-credit-mgt-v2-dev.iam.gserviceaccount.com in Google Cloud Platform is expired, then the configuration of remote source:GBQ_Predict_Credit in BW/HANA should be adapted accordingly.

Planned Evolution

  1. Copy the new JSON file to the folder defined in gbqadapter_prod.properties on dp agent server (acew1dhcahca1)
  2. Change the KeyFilePath to the folder of the new JSON file (JSON file provide by DataOps team: dataops@solvay.com )

Remote source in BW configuration is not required to change.

Image Added

The properties file in dp agent server is required to change if the project name or the location to keep the JSON file is changed.  

The new JSON file must be the same as the detail in the properties file at KeyFilePath

Image Added

Planned Evolution

...