Applies to version: 2021.1.x and above; author: Adrian Baszak
WEBCON BPS applications frequently require integration with external systems. SAP is one of the popular systems that requires integration with WEBCON BPS workflows.
Business scenarios
Below you can find some examples of areas shared by Microsoft Dynamics system and WEBCON BPS.
Frequently SAP and WEBCON BPS share the cost invoice workflow. Data necessary for the workflows to function is collected from SAP into dictionaries, for example:
The invoice data such as header data, i.e., invoice number, invoice issuance data, and cost assignment is immediately sent to SAP.
Another example of sharing data by SAP and WEBCON BPS is holidays. In the workflow one can create and approve a leave request and later send its data to SAP. SAP can also deliver data sources such as employee’s leave limits, types of leaves, holidays and days-off as well as bank holidays.
Purchase order requests for material or services sent to SAP can be considered another area for integration. Returned data on the procurement status can be used for verifying settlements and associating purchase orders with invoices. WEBCON BPS-SAP integration may also refer to the process of collecting and transferring information about stocks or goods receipts or service performance.
Obviously, it is not the end of the list of SAP-WEBCON BPS integration possibilities. The list can be expanded by such processes as, e.g., business trip workflow, consumer data synchronisation (suppliers and customers), project and investment management, sales orders generation.
Integration solution methods
SAP-WEBCON BPS integration can be handled with several methods. The method applied depends usually on the data collection and transfer between the systems.
Dictionary data from SAP, e.g., dictionary of Customers can be introduced into the workflow as SQL views. Such solution allows for constant updating, regular refreshing the workflow dictionary data after changes in the source system.
Data can be also transferred with the use of other methods, e.g., in the form of Web service. The dictionary data is delivered from the SAP system via a web service or SQL tables according to some predefined cycle (e.g. once per 24h, at night). This solution has some weaknesses, but sometimes the priority is to ease the load on system resources. In the case of a query for one value from the source data, periodic synchronisation may not be required. For example, checking the employee’s leave limits (each and every time only leave limits of the same person are checked).
Here is an example of data that can be returned within the REST service
Input data
Parameter |
Type of data |
Comments |
Employee code |
string |
SAP employee number |
Year |
Int |
Year in which leave limits are to be returned |
Output data
Leave limits
Parameter |
Type of data |
Comments |
Employee code |
string |
SAP employee number |
Year |
Int |
Year the respective limit refers to |
Number of leave days |
Int |
Number of all leave days available in the respective year. |
Number of leave days from the previous year |
Int |
Number of leave days remaining from the previous year. |
Number of leave days taken |
Int |
Number of leave days taken in the respective year. |
Example of the action configuration in WEBCON BPS Designer Studio
Input data
Output data
Column |
Type of data |
Comments |
ID |
int |
Column with unique values |
Procurement ID |
string |
SAP procurement identifier |
External system ID |
string |
Workflow purchase order identifier (document number). |
Status |
string |
Procurement status, for example:
|
Data transfer to SAP
Data entry into SAP can be made with the use of several options. Data can be entered into SAP via Web service: REST or SOAP. This is a synchronous solution and when you decide to select this option, a response on data transfer is sent immediately. REST Web services is the recommended SAP integration method.
Another integration solution method of the discussed systems is data entry via buffer tables which are filled out with SQL views with the workflow data from WEBCON BPS. When SAP processes the line with the respective element, the status of the element entry is returned in one of the columns, and alternatively some sort of a return message (e.g. in case of an error). Such integration solution method requires some form of control on the side of the workflow - to check whether the respective element has been transferred to SAP correctly.
The data entry may differ depending on the given SAP configuration and WEBCON BPS application in the respective organisation. For example, invoice data transfer to SAP can be carried out by invoking a Web service twice: first for opening a file; and second for filling in the given data. Another option is to enter the header data and update the analytical breakdown entry. Obviously, the simplest option is to make the entire entry during one invocation but sometimes employing two invocations is required. Such procedure does not affect operation of a WEBCON BPS application.
Below you can find an example of the data used for a simple invoice entry.
Header
Parameter |
Type of data |
Comments |
ID WEBCON |
int |
|
Document No. |
string |
WEBCON document number for simple pairing the document between the systems |
Receipt date
|
date |
|
Issuance date |
date |
|
Sales date |
date |
|
Invoice No. |
string |
|
Customer ID |
int |
ID from the Customer dictionary |
Bank account ID |
int |
ID from the Bank accounts dictionary |
Payment method |
int |
ID from the Payment method dictionary |
Payment date |
date |
|
Net amount |
decimal |
Amount in currency |
Gross amount |
decimal |
Amount in currency |
Currency code |
string |
NBP code |
Cost assignment
Parameter |
Type of data |
Comments |
Cost Centre |
string |
Value from the Cost Centre dictionary |
Category |
string |
Value from the Category dictionary |
Net amount |
decimal |
Amount in currency |
Gross amount |
decimal |
Amount in currency |
Currency code |
string |
NBP code |
Description |
string |
Description of the respective item |
Returned parameters
Parameter |
Type of data |
Comments |
Status |
string |
Information whether the entry is correct, e.g. 0-success, 1-error |
Document ID |
string |
When a correct entry, ID of the document entered into SAP is returned |
Message |
decimal |
When an error, an error message is returned |
Configuration of the WS REST entry in WEBCON BPS