General presentation
Objective of the application
SPRINT stands for Solvay Purchasing Reporting INTelligence
SPRINT is a project launched early 2014, with the main purpose to build and deliver a reporting application to cover both the Purchasing and the PtP reporting needs.
It is hosted in WBP server, collecting information from PF1-050 (PRS), PF1-020 (Solvay legacy ERP), WP1-400 (Rhodia legacy ERP) and RHO-020 (Acetow ERP).
SPRINT application is available for the two “family” of users
- Purchasing & Supply Chain function
- SBS PtP
each one having a dedicated Menu in WBP with the respective queries.
Tool Leader + IT leader of the application:
Contact on ECC side for MM => Henri OLLIVIER
Usage information
History
SPRINT is a project launched early 2014. The roadmap of the project has been sliding in time and at the current date (January 2016) the Purchasing solution has been live for 9 months (first deployment made in March 2015 for APAC users, second deployment made in April 2015 for NAM users, third deployment between May and June 2015 for EMEA users and forth deployment in June 2015 for LAM users); the SBS PtP solution is partially deployed since June 2015.
One of the major objectives of the project is to have and maintain a reporting solution that is kept simple, meaning, that unlike what happened with GSV (where more than 80 queries exist due to multiple copies made for each user request), the aim for SPRINT is to keep the number of queries limited.
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 |
|---|---|---|
| ZR_RCS_CA_M04 | SPRINT - Purchasing | role menu |
| ZR_RCS_CA_M31 | SPRINT - SBS - PTP | role menu |
| ZR_RCS_CA_M54 | SPRINT - Supplier Credit | role menu |
| ZR_RCS_SPRINT2_A01 | SPRINT 2 - End User role | role menu for Sprint, gives access to all cubes under infoarea IA_PUR_* Authorization Object ZBI_SPRINT2 / Authorization on zone, GBU, Plant, Company Code This role has to be used with the role menu Purchasing or PtP |
| ZBI_RCS_SC_A01 | SPRINT - Supplier Credit | role menu for Supplier credt, gives access to all cubes under infoarea IA_SC_* Object ZBI_SPRNT_SC / Authorization only on Company Code This role has to be used with the role menu ZR_RCS_CA_M54 / SPRINT - Supplier Credit |
NB: The role menu ZR_RCS_ALL_MENU "Role composite with all role Menu and perimeters" gives access to all role menu. When asking for a new role menu, do not forget it is added to that one.
NB: ZR_RCS_SPRINT_A01 & ZR_RCS_SPRINT_A02 are obsolete
Authorization objects
List of autorisation objects mandatory for the application.
| Authorization object | Explanation |
|---|---|
Zone (C_PZONE) | ZR_*_CA_P11 Authorizations exist on this object, but all users have access to all (role ZR_TOUT2_CA_P11), this authorization on Zone is abandoned. NB: ZR_TOUT_CA_P11 is obsolete |
GBU (C_SUBACT2__CPFCTR1_2) | ZR_*_CA_P05 |
| Plant (C_PLANT) | ZR_*_CA_P02 ZR_7866_CA_P02 => Plant 7866 - Chalampé (ex 7027) - (Cie ZFR9) ZR_TOUT_CA_P02 => All Plants "Solvay" |
| Company Code (C_COMPCDE) | ZR_*_CA_P01 ZR_ZFR9_CA_P01 => BUTACHIMIE - ( ZFR9) (ex 0560) ZR_TOUT_CA_P01 => All Companies "Solvay" |
See also file maintained by Authorization team : BW Catalog of Roles / link: https://drive.google.com/open?id=10GEfKYqrT1eeTO_uHYAheL1GX7L5y_pvH0KQU64qh5I
Dataflow overview
See SPRINT Dataflow https://drive.google.com/open?id=1G0eplgqwvDwJjtYoziwdE2NPT5YtSjm72fUXXlPcEhM
See also previous technical dataflow : SPRINT - Technical Data Flow.pptx
https://drive.google.com/open?id=0BzuKacO6n43ic2tUNjhKelRsWWc
Reporting documentation drive folder:
https://drive.google.com/drive/folders/0B0qn89R0RGdqYkZZOFZyYXlXVkE
Exemple of dataflow overview :
Functional and Technical rules on Workbench + Reporting
Rules & Explanations
Data Mappings
Directory 01. Data Mapping https://drive.google.com/open?id=0B6ePM5y2xkfkLU1WV1JHUjFEdTQ
SPRINT - Data Mapping - Master Data
https://drive.google.com/open?id=1ECdjg6yFQ_v6bTEWbjuUni8NRNbSvGw0EAApb8XA358
SPRINT - Data Mapping - Purchase Schedule Line V2
https://drive.google.com/open?id=1-TqvFdKifRXQU5vwdBFEXcW9rje9PDNs3EMfCpZf7dc
Masterdata RULE1 on Vendors (C_VENDID) / Class attribut (C_VENCLS)
This rule concerns only Solvay vendors (from PF1) P*, which are employees not existing in PRS.
These vendors are partly created in Solvay PF1 and it is then not possible to set Class = 'X' in Solvay PF1.
For those vendors, the class has to be set to 'X' in BW.
The intervall of vendor is managed in Global Filter (C_GLBFILT). Currently P000000000 to PZZZZZZZZZ
Masterdata RULE2 on Realigned Material Group (C_MATPUR2)
All realigned material group are existing on Solvay, descriptions are then filled from PF1 only. Only english description are required.
Masterdata RULE3 on Terms of Payment (C_PMNTTRM)
Terms of Payment on SAP side are managed into 2 tables. TVZBT for sales (customers), T052U for purchasing (vendor).
Payment terms can be common. On BW there is only one object for Payment Terms. T052U has to be loaded first. The description of common terms will be then TVZBT's one.
Note that keys are differents, no matters, the last description is kept.
ReadSoft DataFlow
SPRINT - Data Mapping - Read Soft https://drive.google.com/open?id=1YV_8OtL4M16bszi1fqVE99O19fPk7EsEYhc9UK4DoP0
WBS determination reading Settlement Rules
This rule concerns only RCS & Solvay FIAP data (transformation between DBFIAP01/2 et DB_FIAP1/2). Acetow is not concerned.
The Settlement rules (table COBRB) are loaded every days by another application (RCS : Dso DSRCOBRB / Solvay : Dso DSSCOBRB).
Reuse of rule between ODS_PMEN to DBFICS02.
Case WBS element is already determined for the FIAP record => keep it, no further determination.
Case WBS element is empty and CO order is filled => read settlement rules
First check is a previous determination has been done (lookup on Dso)
=> If yes, take the WBS element stored
=> if no, read settlement rules
The check is done to avoid dupplicates as the WBS element is part of the key, and settlment rules can be changed even for the past.
NB: the check can be skip for performance purpose essentielly (case of an initialization for example) => Flag in Global Filter SPRINT/DB_FIAP1 or DB_FIAP2/ put Y in low value and Y. Do not forget to put it back to N afterwards.
Segmentation Domaine/Segment
LeadTime
Lead Time https://drive.google.com/open?id=0By6hfdCwPGY_a09sQWJ4NHlWcnc
Material Group (C_MAT_GRP)
The material group can be found at different places:
- masterdata C_MATNR2 : loaded via datasource 0MATERIAL_ATTR.
- masterdata C_PO_ITM : loaded via datasource DTS_BW_PO_ITM. Caution special rule for Item Category 9 "Service" (EKPO-PSTYP) or empty material group (EKPO-MAKTL)
- Schedule line Dsos/Cubes : load via 2LIS_02_SCL, extended. Caution same special rule, but Abap coded slightly differently => DO NOT use it, material group is not always correct.
- FIAP Dsos/Cubes : a lookup is done on Business level of Schedule line => DO NOT use it, material group is not always correct.
Usage of tables :
- Z1M_BW_MAT_GRP for Solvay PF1
- ZWPUT042 for RCS WP1 and Acetow RHO
https://drive.google.com/open?id=1tJe9gPLtq-L6L813vybQq5Lk7nYUJ5PseWDq_a9_RSY
Important : The Material Group in schedule line and FIAP Dsos & Cubes is partly false.
Currently Core & QV queries is using C_MAT_GRP from FIAP or Schedule lines. It has to be changed with C_PO_ITM attribut when Business validates it.
- Solvay cases (the list might be not exhausted)
- Issue for S1.2009
Example PO 4511000082/1340 => Document date 31.03.2009 => FI document 6311201583/5835/2015
Only one part of PO for S1.2009, having a schedule line over 2013 have been loaded into BW. On may 2015 initialization, the PSA was not well loaded, and no action have been done to correct it, so part of S1.2009 is missing. No correction have yet been done as Business DSO for schedule line is using ratio in addition, and a whole re-initialization would take several weeks. - PO with schedule line previous to 2013 but in actual FI documents
Example PO 3100441596 => document date 09.07.2012 => Good Receipt / MM Invoice en 2012 => FI document 6311603854 / 5782 / 2015. These PO have not been loaded into BW. The FI documents do not have PO information. - Deleted PO items
Example PO 3100578083/20 => 2 FI documents created (6311642636/0292/2014 and 6311644101/0292/2015) before the PO item deletion the 22.12.2015.
The deleted PO items are not kept into BW (0PROCESSKEY non kept between Propa & Business DSOs). The FI documents have been reloaded several times in 2016. As the PO item is not existing anymore in the business DSO, the FIAP document can not be filled with PO information
- Issue for S1.2009
- Rhodia cases (the list might be not exhausted)
- Shipment Cost Number archived or other for service PO
Example PO 4502271249
PO 4502271249 => entry sheet 1005459308 => Shipment Cost 2164736
This PO has had a determined material group 0433 when the Shipment Cost was existing on WP1 (table VFKP)
Today the shipment 2164736 can not be displayed anymore in WP1, so is not existing anymore in table VFKP. Are the shipment costs archived at anytime? et just deleted some how?
The material group can not be determind any more when the PO schedule line was loaded again when the invoices were created the 02/05/2016
The material group is also available in masterdata C_PO_ITM.
For this PO 4502271249, the material group is 0433. No modifications on the PO have been detected, so no additional loading even when the invoices were created. The material group remains 0433. Caution, if the masterdata C_PO_ITM is reloaded today, the material group would be reset to empty! - Missing combination in table ZWPUT042
Example 4502642333. Empty also in masterdata C_PO_ITM as no corresponding value for 9008/12/0003 is existing in table ZWPUT042
Caution, if the combination is added in table ZWPUT042, previous PO will not be updated, and masterdata C_PO_ITM can not be fully reloaded because Shipment Costs Number are archived or deleted.
- Shipment Cost Number archived or other for service PO
Dependencies with other applications
Data loadings
Info providers and objects loaded
See Global Filters (C_GLBFILT) part, it is possible to hold loadings from one or several souce systems.
Main Chains
| Process Chain | Code | Type | Frequency | Comments |
|---|---|---|---|---|
| SPRINT: Daily Loading | PC_SPRINT_DAILY | MAIN |
| Not iso with WBD one. Avoid transport |
| SPRINT : Domain / Segment (Global) | PC_SPRINT_TR_DS1 | MAIN |
| |
| PUNCH : Global Process Chain | PC_PUNCH_GLOBAL | MAIN |
|
Slave Chains
| Process Chain | Code | Type | Frequency | Comments |
|---|---|---|---|---|
| SPRINT : Propagation (Rhodia) | PC_SPRINT_TR_P1 | slave | Not iso with WBD one. Avoid transport | |
| SPRINT : Propagation (Solvay) | PC_SPRINT_TR_P2 | slave | Not iso with WBD one. Avoid transport | |
| SPRINT : Propagation (Acetow) | PC_SPRINT_TR_P3 | slave | Not iso with WBD one. Avoid transport | |
| SPRINT: Business Layer (Rhodia) | PC_SPRINT_TR_B1 | slave | Not iso with WBD one. Avoid transport | |
| SPRINT: Business Layer (Solvay) | PC_SPRINT_TR_B2 | slave | Not iso with WBD one. Avoid transport | |
| SPRINT: Business Layer (Acetow) | PC_SPRINT_TR_B3 | slave | Not iso with WBD one. Avoid transport | |
| SPRINT: Business Layer (PRS) | PC_SPRINT_TR_B4 | slave | OK. Aligned DEV/QAS/PROD | |
| SPRINT Reporting Layer (Rhodia) | PC_SPRINT_TR_R1 | slave | Not iso with WBD one. Avoid transport | |
| SPRINT Reporting Layer (Solvay) | PC_SPRINT_TR_R2 | slave | Not iso with WBD one. Avoid transport | |
| SPRINT Reporting Layer (Acetow) | PC_SPRINT_TR_R3 | slave | Not iso with WBD one. Avoid transport | |
| SPRINT : Domain / Segment (Business Layer) | PC_SPRINT_TR_DS2 | slave | Not iso with WBD one. Avoid transport caution : direct scheduling on WBP | |
| SPRINT : Domain / Segment (Reporting Layer) | PC_SPRINT_TR_DS3 | slave | Not iso with WBD one. Avoid transport caution : direct scheduling on WBP | |
| PUNCH : Master Data Attributes | PC_PUNCH_MD_ATTR | slave | ||
| PUNCH : Business Layer (Rhodia) | PC_PUNCH_TR_B1 | slave | ||
| PUNCH : Propagation layer (Solvay) | PC_PUNCH_TR_P2 | slave | ||
| PUNCH : Business Layer (Solvay) | PC_PUNCH_TR_B2 | slave | ||
| PUNCH : Reporting Layer (Solvay) | PC_PUNCH_TR_R2 | slave | ||
| PUNCH : Reporting Layer (Rhodia) | PC_PUNCH_TR_R1 | slave | ||
| PUNCH : Master Data Texts | PC_PUNCH_MD_TEXTS | slave | ||
| PUNCH : PSA and Change Log Deletion | PC_PUNCH_PSA_CHG_LOG_DEL | slave | ||
Other Chains
| Process Chain | Code | Type | Frequency | Comments |
|---|---|---|---|---|
Loading frequency
Process Chain PC_SPRINT_DAILY runs daily, Sunday night to thursday night, around 5am.
Process Chain PC_SPRINT_TR_DS1 runs weekly on sundays at 12am
Average performance
| Key Figure | Estimation |
|---|---|
| ~ Average Process Chain Runtime | Daily Main Process Chain lasts around 2 hours 1/2 Weekly Process Chain lasts around 1 hour |
| ~ Average nb of rows loaded per load | |
| ~ Total nb of rows loaded (if full) | |
| ~ Average Runtime for 10k lines |
Record Keeping
Reporting
Queries End User Documentation
SPRINT training & SPRINT presentation
https://drive.google.com/a/solvay.com/folderview?id=0B5Ivsv4WTtUbVktFZlNVRkNYU1k&usp=sharing
Main queries
Main functionalities
Terms of Payment
| SPRINT | DPO | |
|---|---|---|
| Vendor / Company Code view (LFB1) | C_VENDCOM__0PMNTTRMS | C_VENDCOM__C_PMNTTRM |
| Vendor / Purchasing view 1 (LFM1) | C_VENDPRG__C_PMNTTRM | C_VENDPRG__C_PMNTTRM |
| Vendor / Purchasing view 2 (LFM2) | C_PO_ITM__C_PMNTRM2 | C_VENPRG2__C_PMNTTRM |
| In Purchase Order (PO) | C_PO_ITM__C_PMNTTRM | C_PO_ITM__C_PMNTTRM |
| In Accounting Document (DOCT) | C_PMNTTRM | C_PMNTTRM |
MaintenanceBroadcast
No Broadcast implemented
Known bugs
Recurring procedure
Variables (TVARV/Global Filters)
Variable (TVARVC)
| Variable | Explanation |
|---|---|
LOGSYS_A , LOGSYS_R, LOGSYS_S A= Acetow, R=Rhodia, S=Solvay | Bex variable V_LOGSYS_0007 used to fill query prompt => SE24 ZCL_BIU001_V_0LOGSYS_0007 |
Global Filters (C_GLBFILT)
| Stream | Rule | Explanation |
|---|---|---|
| SPRINT | DB_FIAP1 DB_FIAP2 | Variable used in transformation (start routine) between DBFIAP01/2 => DB_FIAP1/2. Aim : skip the DSO DB_FIAP1/2 lookup. In case of a reloading of FIAP, this look-up in not usefull. To optimize loading time, set the filter to Y. Do not forget to put it back to N afterwards. |
| SPRINT | SEGMENTAT | Variable used in DTP filter to define the number of year to consider for segmentation redetermination DSOs : DB_FIAP1/2/3 + DB_PUHD1/2/3 + DB_PUSL1/2/3 |
| SPRINT | CLASS_X | Variable used in transformation to load Vendor number from DataSource 0VENDOR_ATTR / Solvay currently : interval P000000000 and PZZZZZZZZZ |
| SPRINT | ACETOW RHODIA SOLVAY PRS | Theses variables are used in Process Chains. After the loading of the attributes of the master data, there is a decision (one by source system) to launch or not the loading of the transactionnal data |
FIAP Reloading
FIAP for SPRINT Dsos (CR_PUAP1/2/3), and Cubes (CR_PUAP1/2/3) have been reloaded several times since project golive.
At least is requested : current exercice + 3 previous ones.
Example 2016 => 2016 + 2013 to 2015
See ModOp SPRINT reloadings https://drive.google.com/open?id=1qSUGEl6v1Iftdc9N1CP7ytFxW2ew2lGO0eEmy4Gvwk0
It is important to check image Before/After. Only opened periods could be differents.
FIGL Reloading
Caution, take into account special periods 013 to 016, overwise December figures will be wrong.
Special periods 013 to 016 are at last stored on period 012.
See ModOp SPRINT reloadings https://drive.google.com/open?id=1qSUGEl6v1Iftdc9N1CP7ytFxW2ew2lGO0eEmy4Gvwk0
It is important to check image Before/After. Only opened periods could be differents.
ReadSoft Reloading
See ModOp SPRINT reloadings https://drive.google.com/open?id=1qSUGEl6v1Iftdc9N1CP7ytFxW2ew2lGO0eEmy4Gvwk0
For information, at the reloading of readsoft there have been issue during activation of data in DSO DB_RDSF1 & DB_RDSF2.
Somes rows had currency = USA, chinese character in field wc user and "!" in the beginning of field Reference document number.
So there is an exclusion in DTPs when currency = USA and routines to clear stranges characters for wc user and reference document number.
Planned Evolution
Useful transactions / programs
| Transaction | Description | Corresponding table | Comments |
|---|---|---|---|
| XK03 | Display Vendor (Central) | LFA1 | |
| MK03 | Display Vendor (Purchasing) | LFM1/LFM2 | |
| FK03 | Display Vendor (Company Code) | LFB1 | |
| ME23N | Display Purchase Order | EKKO/EKPO | |
| ME53N | Display Purchase Request | EBAN | |
| FB03 | Display Accounting Document | MKPF/BSEG BSIK/BSAK | |
| ME13 | Display Purchase Info Record (PIR) Afficher Fiche Info Achat (FIA) | to display scale (barême) choose "conditions" then icon "steps (marches) example RCS : Info Record 53002260253 or 5300260253 | |
| ME03 | Display Source List | source d'approvisionnement example RCS : material 1050025 / plant 7822 | |






