<< Click to Display Table of Contents >> SAP on-premises ECC or R/3 with BAPIs |
SAP will support the SAP connector with BAPIs until December 31, 2022. For further information about the SAP .NET connector, click here.
Bizagi’s SAP connector will continue working on your projects. However, it is important to mention that SAP will stop receiving support tickets and making improvements to that technology.
Bizagi will continue to provide support to Bizagi’s configuration such as inputs and outputs. Thus, we recommend using the SAP Cloud Platform connector instead. See SAP Cloud Platform using OData. |
Overview
Bizagi's built-in SAP connector provides the ability to interact with your SAP system and execute business functions, without the need for special coding.
This connector works with the SAP server by sending requests to it and by monitoring and responding to events that occur in the SAP server.
Bizagi integrates with SAP by sending requests (to query a customer record in a SAP table or to update an order document) and by receiving events from the SAP server (to be notified that a customer record has been updated). The connector creates a standard interface to the applications and data on the SAP server, so that Bizagi does not have to understand the lower-level details (the implementation of the application or the data structures) on the SAP server.
The connector supports SAP's BAPI integration interfaces:
BAPI (Business Application Programming) — BAPIs are the methods exposed by SAP business objects. This interface is used for real time queries and updates to and from the SAP system. BAPIs are SAP's recommended integration interface over RFCs (Remote Function Call).
Through the SAP connector, you configure your processes to invoke BAPI wrappers to either query, create or update records directly in SAP.
Integrate any of your SAP modules such as the Financial Accounting (FI), Sales and Distribution (SD), Material Management (MM), Human Resources (HR), or the Controlling module (CO), to name a few, in any part of your process: either from a button's click in the user interface or through a service task.
Benefits
SAP integration is configured by using powerful graphical mapping features for SAP inputs and outputs, avoiding the need of programming:
Using Bizagi processes that integrate to SAP is a great approach to leverage your existing SAP systems.
To view a video and introduction about Bizagi SAP connector's approach and how it benefits Bimodal IT objectives, refer to this video: https://vimeo.com/146790374.
Additional benefits of integrating through SAP connector, instead of integrating for instance, through web services are:
1. The SAP connector features a powerful capability to configure error handling.
Through this option you may configure special routing and treatment for functional errors (SAP exceptions predefined by the BAPIs themselves).
2. The SAP connector authenticates directly with an authorized SAP user, instead of delegating security to your web service setup.
Often, security configuration for the web service setup requires more time to achieve adequately (i.e. setting an appropriate security level which is not too restrictive to cause issues, nor too permissive to be prone to vulnerabilities). Such configuration does not provide the same maintainability advantages.
3. The SAP connector offers enhanced performance due to the RFC connection it relies on, instead of going over HTTP/HTTPS.
Similarly, the direct RFC connection is commonly set through a more secure channel which can also rely on hardened measures (such as restricted ports).
Getting ready to integrate with SAP
In order to use the SAP connector feature, you will need to make sure you install the SAP.NET assemblies provided by SAP (as specified in the below sections).
SAP.NET assemblies are those from SAP's .NET Connector (official documentation on this library at http://help.sap.com/saphelp_dm40/helpdata/de/e9/23c80d66d08c4c8c044a3ea11ca90f/content.htm).
Supported versions and prerequisites
The following table sums up versions, frameworks and prerequisites of the SAP assemblies supported by Bizagi:
Platform |
64 bits systems |
---|---|
.Net version |
4.0 |
Prerequisites |
Microsoft visual C++ 2010 redistributable |
SAP connector version |
3.0.23 or above (major versions changes are not supported) |
SAP assemblies |
•sapnco.dll •sapnco_utils.dll |
SAP supported systems |
•SAP R/3 installations (version 4.0B or higher). •SAP ECC version 5.0 or 6.0 (ECC being the version superseding R/3). |
Bizagi services that support the SAP connector |
•Bizagi Studio •Studio Collaboration Services •Automation Services •Automation Server |
Port |
By default the port number used is the 3300. If you need to change the port in cloud-based Bizagi services you must request the port with a support ticket. |
Getting the SAP.NET assemblies
The SAP.NET assemblies are requested from https://support.sap.com/en/product/connectors/msnet.html (authorized access by using your valid SAP credentials required).
Installing the SAP.NET assemblies
If your using Studio Collaboration Services or Automation Service, you must send a support ticket and send your associated x64 libraries . Our support team will install SAP for you in the cloud environment. If your SAP system is not exposed as a cloud-ready application, you must request a VPN (this implies extra charges). |
Once you have the SAP.NET assemblies called sapnco.dll and sapnco_utils.dll, make sure you install them in your machine's global assembly cache (GAC).
For this, you may rely on .NET's gacutil tool (by using gacutil /i "[assembly]") to make sure these are finally located at the 4.0 .NET GAC (by default at C:\Windows\Microsoft .NET\assembly\GAC_32\ or C:\Windows\Microsoft .NET\assembly\GAC_64\).
In the image below, gacutil is used to install 64-bit assemblies:
Once you have your assemblies installed, run an iisreset.
If you wish to use gacutil, you will need to install Microsoft Visual Studio along with the .Net Desktop development Workload. For more information on adding or removing workloads and components in Visual Studio, refer to https://docs.microsoft.com/en-us/visualstudio/install/modify-visual-studio?view=vs-2019.
After the installation is complete, you must run the Developer Command Prompt for VS as an administrator to use the gacutil tool for the installation of .NET assemblies in your machine's GAC. Bear in mind that the Windows default command prompt will not allow you to use the tool. For more information about the Developer Command Prompt for Visual Studio, refer to https://docs.microsoft.com/en-us/dotnet/framework/tools/developer-command-prompt-for-vs.
Similarly to the gacutil's install options, notice that you can also use this tool to uninstall assemblies (/u parameter) or list those installed (/l parameter). You can review the full Global Assembly Cache Tool options in https://docs.microsoft.com/en-us/dotnet/framework/tools/gacutil-exe-gac-tool. For example, use gacutil /l "sapnco_utils" and gacutil /l "sapnco" to verify if these assemblies were correctly installed. |
Important considerations
1. Supported SAP systems by this feature are:
•SAP R/3 installations (version 4.0B or higher).
•SAP ECC version 5.0 or 6.0 (ECC being the version superseding R/3).
What is important is that your system and infrastructure allows connectivity between Bizagi and SAP, based on SAP Remote Function Calls (RFC) and by relying on SAP Gateway configuration (i.e, port number 3300).
For other versions or editions not listed above, such as SAP Hana or SAP Business One (B1), the use of the SAP Connector is not supported.
In these cases, it is necessary to rely instead on the integration alternatives as recommended and supported by the vendor itself (SAP AG), which include the use of Web services or other APIs (e.g, DI API for Business One).
2. If your project is set up for teamwork collaboration, make sure that any team member working on this project who will be configuring integration with SAP, installs these SAP.NET assemblies as well in his/her machine's GAC.
3. If by any case, installing the SAP.NET assemblies into the machine's GAC is not possible, then you may copy and paste these assemblies into the paths specified below, but you will need to backup the assemblies before upgrading your Bizagi version (both for the Studio's installation and your project's version):
•At C:\Program files\Bizagi\Bizagi Studio\Studio\
For a .NET platform, for the processes execution:
•At C:\Bizagi\Projects\[Your_project]\WebApplication\bin\
•At C:\Bizagi\Projects\[Your_project]\Scheduler\
What you need to do in Bizagi
Once you have installed the SAP.NET assemblies, in order to use Bizagi SAP connector, follow these steps:
1. Configure the connection to your SAP system
In this step you define the connectivity details, making sure you use an authorized user having access your SAP BAPIs or RFC functions:
This is done from the external systems module in Bizagi Studio.
2. Test your connection
Once you complete the connectivity details, click Test connection. to make sure that the connection is successful.
If there is an error when validating the information, the pop up window shows the corresponding error.
Review the inputted information and try again. Once your connection is successful, click ok.
3. Configure in your Bizagi process, where you want to invoke your SAP BAPIs or RFC functions
You may do this anywhere in the process.
For instance, via a business rule connecting to SAP (recommended, especially by relying on service tasks and an asynchronous treatment):
Or through the UI by setting an action that connects to SAP, from a particular button:
4. Configure the inputs, outputs and error handling for your SAP BAPI
At this point you use the graphical mapping features in Bizagi's SAP Connector:
You will need to explicitly know what BAPIs or RFC functions you will invoke in SAP and the inputs, outputs and exceptions handled by it. This may require good expertise in using SAP (SAP Netweaver, SAP Logon).
Along with this, acknowledge which information you strictly require (import, export, or table parameters which are passed by reference) and what type of data these represent. |
Example
To see a typical example of how to integrate Bizagi with SAP through this connector, refer to the SAP integration example.
If you wish to integrate Bizagi with SAP via web services (i.e, using SAP PI), you may do so too and use standard HTTP or HTTPS ports for this type of integration. This means integrating Bizagi with SAP via web services, in which case you use Bizagi's WS Connector instead of the SAP connector featured here. To view an example for this scenario, refer to How to create a vendor in SAP from Bizagi. |