Connector for SAP Business Suite - Developer's Manual part 1

Requirements

This documentation supports you in integrating SAP into your Intrexx portal. You require at least Intrexx 7 and SAP with a Basis release better than 4.6x (e.g. SAP R/3 4.6c) to implement the examples described here. The Connector for SAP Business Suite must be configured in the portal. Systems based on SAP Gateway, such as SAP CRM, SAP BW and the like, are also supported. However, most example scenarios are based on an ERP-R/3 data model.

Selecting the right technology

SAP can be integrated into Intrexx portals with various methods:

  • External data group

    Read and modify SAP data.

  • Scripting

    Use the SAP in processes using Groovy script or in applications using Velocity. Licensing: at least View & Write.

  • Remote services

    SAP can access the Intrexx portal database. Read and manipulate portal data within jobs and similar, licensing: Developer API.

  • Web services

    Possible as of SAP Basis 6.40. Connected with reservations, both in Intrexx and in SAP.

  • Single Sign On SAPGUI Integration

    Integration of SAP internet pages or call of the SAPGUI without logging in again; authorization of the portal user against SAP. Licensing: Developer API.

Integration with external data groups

When integrating SAP databases, Intrexx uses the external data group concept. Direct read and write access to the SAP system's database would undermine the foundational concepts of SAP systems such as permissions and business logics. For this reason, the usual method via RFC (remote functional calls) was selected for the Connector for SAP Business Suite. An SAP Portal Plugin (SAPPOPI) was developed for SAP for this, this is installed as a transport on the SAP systems that are to be connected. The SAPPOPI Plugin for SAP from SAP R/3 4.6c is freely available and can also be used for integrating other external systems into SAP. Additional information about the plugin can be found in the SAP API Developer's manual. The SAPPOPI provides a lean RFC API which implements the most important API methods for accessing SAP objects in table-like formats:

  • Get_MetaInfo

  • Get_List

  • Get_Detail

  • Modify

  • Delete

An Intrexx portal directs accesses to SAP external data groups to this RFC API via the SAP middleware (SAP Java Connector).

The accesses are processed in SAP via special handlers.

A generic handler is available for accessing tables and views. This handler enables the integration of tables or views in SAP without programming. With this, displaying, for example, the SAP customer base (ERP table KNA1) can be done in a few moments without any programming. If the access to tables and views is not sufficient or you would like to switch to write access, the object-oriented expansion concept in the SAP Portal Plugin can be used. The SAP API Developer's manual contains comprehensive information and examples about the implementation of such handlers.

Integration with scripting

Groovy script provides the best options for accessing SAP BAPI functions or RFC-capable functional modules without having to use the integration with external data groups. A Script Generator is available to speed up the implementation of the necessary script. Especially with complex SAP functional modules, errors are avoided because the required Java coding for populating complex SAP structures and tables is generated automatically.

Integration with remote services

Remote services enable the SAP system to access the Intrexx portal. With this functionality, information recorded in the portal in the batch job can be read and processed in SAP, for example. All write accesses (create, modify, delete) from SAP to the portal are also only available via the remote services. This generally refers to the replication of SAP objects (e.g. master data) in the corresponding Intrexx data groups if accessing SAP using external data groups is not wanted. In the simplest case, an event in SAP (e.g. order is modified) is used to transfer the current status (e.g. "delivered") to the portal.

Integration with web services

Using web services is often connected to conceptional limitations or effort. Intrexx can consume almost every web service. Intrexx can consumeYou should check where data from web services is required and how this can be integration into the user interface. almost every web service. Not all of the options available when using external data groups are available here. Every Intrexx data group can be used as the provider of web services. However, this can also be a limitation if the data is not available within data groups. In the SAP environment, consuming external web services always requires development even though a lot can be generated here. It should however be noted that there were a lot of changes between Basis release 6.40 and 7.10 meaning that effort is to be expected after installing support packages or upgrades. As the consumer of SAP web services, you can potentially draw on the large amount of readily available SAP web services (e.g. SAP ERP 2005 – ECC 6.0). If no usable web services are available, the same applies as when you're consuming foreign web services.

More information

Developer's Manual part 2
API Developer's Manual