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

Compare with Current View Page History

« Previous Version 35 Next »

General presentation

Objective of the application

The iCare application was migrated from PQ1 to WBP in October 2017 by PQ1 decommissioning project and consist in developing a BW flow and Function Modules, regarding Accounts, Pending Orders and Overdues to be sent to Salesforce (SF). 

Function Modules(FM) are used, through multiple type of operations, to synchronized Salesforce & BW.

WebMethods (WM) is used as a Middleware between both .

Tool and IT leaders of the application are:

  • RtR : Guillaume Thevenet (Process Chain & Overdue's DSO)
  • OtC : Craig Wanamake (Pending orders & Account on BW)
  • Salesforce : Emmanuel Gaheri
  • WebMethods : Reiner Hellstern
  • Project manager : Anon Kasemvilas
  • Developer:  Dan Messas

Usage information

This project have only Salesforce users.

History

This project consist on a migration of existing Function Modules and BW objects from PQ1 to WBP.

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
   
   
   

Authorization objects

Authorization to access report is managed by Salesforce because the reports are in salesforce platform.  For BW, it is only preparing data on tables and DSO in order to load to SF

Dataflow overview

Reporting documentation drive folder:

https://drive.google.com/drive/folders/0B8xksr4mF3-aZFNVY3V3TF9DVFE

Functional and Technical rules on Workbench + Reporting

 

Rules & Explanations

As WebMethods is used as a Middleware, it triggers every steps of each application (BW, SF), and send data from a side to the other.

1. Accounts : FM Z_ZSF_GET_ACCOUNT_DATA

This interface has been done to provide Customers information from SAP (Sold To) to Salesforce (Accounts) and Products from Salesforce to SAP-BW.
The Scope for Accounts is limited to Specialty Polymers Customers, however all Products in SFDC are being sent to BW.
The data will be automatically refreshed once a day (during the night) - starts at 22:00 CET.
There are 4 steps (Operations) :
  1. Operation U : WM (WebMethods) extract from SF (Salesforce) the account list that are already synchronized and send it ton BW through de FM. On BW side in the ZSF_ACCOUNTS table, all entry are flagged as "Deleted". If SF ID in found, the flag is unchecked.
  2. Operation N : WM extract from SF the account list that are not yet synchronized and send it to BW. It will fill the BW table with the SF ID. Then it generate the S_SF_UPDATE_TIME job to run PF1 Function Z_ZSF_CHECK_UPDATE_TIME which will read PRS table ZZR_CUST_CRM to map SFDC ID with Sold to. PF1 Function will get Credit information to be inserted in BW table ZSF_ACCOUNT and then Copy PRS table ZZR_CUST_CRM to BW table ZSF_SOLDTOS Fills BW tables ZSF_ACCOUNTS and ZSF_SOLDTOS. Marks entries as ‘must be sync’. Table ZSF_PRODUCT is filled in with SFDC Products.
  3. Operation S : BW reads entries from table ZSF_ACCOUNTS with flag ‘must be sync’ and where delete is null. SF receives response from BW (through WM) and include entries that are included in the temporary mapping to be updated. Sends the Ack to WBP (via WM) starting operation ‘A’. 
  4. Operation A : BWP updates 'last sync' field of ZSF_ACCOUNTS and SF updates entries.

Other operations :

      • Operation T :  Update the last update time from SalesForce (Variable :  WA_ZSF_LOGS)
      • Operation D :  Delete the table content (No variables)
      • Operation I   :  Init the synchronization for an ACKID (Variables :  IE_ACKID)
      • Operation H :  Init the synchronization for date (Variables :  IE_ACKID)
      • Operation G :  Change entries in DB for test purpose (No variables)

Monitoring : 

In SAP WBP_400 :
➔Check if job is complete with success : Transaction SM37 → Job name: S_SF_UPDATE_TIME
➔Check if SAP table ZSF_ACCOUNTS has records to sync.Field ‘MUSTBE_SYNC’ = ‘X’ and DELETED = empty.

 

2. Overdues : FM Z_ZSF_GET_OVD_INVOICES

The aim of the interface is to daily load the invoices in overdues from SAP into Salesforce CRM.
The scope is limited to the invoices and will present the purchase orders and the materials associated to the invoice for GBU Specialty Polymers.
The data will be automatically refreshed once a day (during the night) starts in SFDC at 02:00 CET.
Every day, all overdues data are deleted from SFDC and loaded from SAP into SFDC.
There are 5 steps :

    1. Process Chain : PC_SFDC_OVD_01 load the overdues in DSO DBFIAR22. At the end of the PC, FM is triggered with Operation U : Empty the 3 tables ZSF_OVD_INVC,  ZSF_OVD_INVC_MAT and  ZSF_OVD_INVC_PO, and then those tables are filled from DBFIAR22 DSO.
    2. Operation S : Salesforce deletes all the overdues, and then syncronized them. BWP generate an ackid for each of them. SF insert the entries and send a ack to validate the received entries.
    3. Operation A : WBP update the Ack in the overdues table (from WM).
    4. Operation I : SF send to BWP the couple ID/External ID for each overdue
    5. Operation P : BWP send to SF informations about material & PO.

Other Operations : 

  • Operation J :  Update by job (No variables)
  • Operation U :  Update data from the ODS (No variables)
  • Operation H :  Init the synchronization for date (Variables :  IE_ACKID)
  • Operation R :  Delete table contents (No variables)

 

Monitoring : See 'Dependencies with other applications > Salesforce' Chapter.

missing monitor PC and table in WBP 

 

3. Pending Orders : FM Z_ZSF_GET_PENDING_ORDERS

 This interface has been done to provide Sold and Pending information from SAP and link it with Salesforce Accounts.
The Scope is limited to Specialty Polymers Customers.
The data will be automatically refreshed once a day (during the night) - start in SAP at 11:00 pm CET (00:00 CEST) and starts in SFDC at 10:00 CET (11:00 CEST).
There are 3 steps (Operations) :

  1. Program Z1F_ZSF_PEND_ORDERS_DATA_V3 is triggered on PF1 to fill ZSF_OPEN_ORDS table on WBP.
  2. Operation S : WebMethods reads entries from table ZSF_OPEN_ORDS to check if the first line contains number of records. SF delete all entries and receives response and creates new entries, then sends the Ack to WBP, starting operation ‘A’.

  3. Operation A : WBP receives ack from WM and Updates ACKID and LAST_SYNC fields of ZSF_OPEN_ORDS. SF updates entries.

Other Operations :

    • Operation J : Update by job (Variables :  i_origin)
    • Operation U :  Update data from the query (Variables :  i_origin)
    • Operation H :  Init the synchronization for date (Variables :  IE_ACKID)
    • Operation I :  Put entries for the be synch (Variables :  i_origin)
    • Operation B :  Copy Backup Table to S&P Table (No variables)
    • Operation C :  update table S&P from PF1 (No variables)

Monitoring : 

    In SAP PF1_020 :

➔Check the job status in transaction SM37. Job name: ‘SF_PEND_ORDERS’
➔Check table ZSF_LOGS

   In SAP WBP_400 :

➔Check in table ZSF_OPEN_ORDS if there are entries to synchronize (MUSTBE_SYNC = ‘X’)

 

Function Module Variables :

I_ORIGIN - Possible values are : 'P' (Perform actions) and 'S' (Simulation)

I_OPERATION : Different operations previously explained ('S', 'A', 'I', 'P' for Overdues)

Dependencies with other applications

Salesforce : is the CRM which receives data from SAP (PRS/PF1 → BWP → SF)
Monitoring :

WebMethods : is the middleware which triggers the step from SAP and SF.

  • In case of failure : create a freshdesk ticket and assign it to IS-CAPG-ERP group

Data loadings

Info providers and objects loaded

There is only one process chain on this project. It's for the overdues : PC_SFDC_OVD_01. It loads data from DSOs DBFIAR02 & DBFIAR16 to the newly created DSO : DBFIAR22.

Loading frequency

The process chain is running every day at 2AM.

Average performance

 

Key FigureEstimation
~ Average Process Chain Runtime30 minutes
~ Average nb of rows loaded per load7300
~ Total nb of rows loaded (if full)7300
~ Average Runtime for 10k lines 

Record Keeping

Reporting

Queries End User Documentation

The reports are available only on Salesforce

Main queries

Main functionalities

Broadcast

Maintenance

Known bugs

Recurring procedure

Planned Evolution

 

  • No labels