Enterprise Service
Creating an Enterprise Service from a Function Module
Provided Services
OPTIMAL SYSTEMS provides an associated enterprise service in the transport for enaio® data2ecm for the following function modules. If these are used, then generating an additional enterprise service is unnecessary.
Function module | Enterprise service/service definition | Use case |
---|---|---|
/OSGMBH/D2S_MOVE_DOCUMENT | /OSGMBH/d2s_move_document | Moving a document to a technical cabinet |
/OSGMBH/D2S_DOCUMENT_POST | /OSGMBH/d2s_document_post |
Posting an incoming FI invoice The function module contains a call of BAPI_ACC_DOCUMENT_POST followed by COMMIT WORK. |
/OSGMBH/D2S_INCOMINV_CREATE | /OSGMBH/d2s_incominv_create |
Posting an incoming MM invoice The function module contains a call of BAPI_INCOMINGINVOICE_CREATE followed by COMMIT WORK. |
/OSGMBH/D2S_INSERT_CONNECTION | /OSGMBH/d2s_insert_connection | Creating a link between a document in a technical cabinet and an SAP® object |
Other Services
A functioning RFC-enabled function module is the starting point for generating another enterprise service.
In the SE80 transaction, depending on the version, a wizard can be called via a function module's context menu using the menu function Create | Web Service or Create | Enterprise Service.
The first step is to specify a name for the new service and provide a short description of it.
The next step requires the specification of the module for which a web service is to be generated. Since the wizard was called via the function module’s context menu, the name of the module has already been entered. It is recommended to have the names of the function module parameters mapped to WSDL-friendly parameters (CamelCase) by marking the Map name checkbox. See SAP® note 2204838.
The checkbox must be either set or not set in all affected SAP® systems and each time the enterprise service is regenerated (for example, after making changes to interfaces or making system copies) in exactly the same way, otherwise all parameter names in the externally visible interface will change and the programs/scripts interacting with them will have to be extensively adapted.
The wizard’s third window defines the security level. As a security profile, the security level Authentication with user and password, no transport guarantee is reasonable. Protection via SSL can be configured in the subsequent step.
The next step is to assign the new object to a development class and a transport request.
Once that is done, the generation process can be concluded. The generated object is visible in the SE80’s object list under the heading Enterprise Services.
The enterprise service/service definition generated via this route is a workbench object and can be transported to other systems using the usual SAP® means.
A checked should be performed in the enterprise service/service definition generated via this route to make sure that the call is made synchronously, and if necessary, the appropriate adjustments should be made to ensure that it is.
Reliable messaging should be turned off.
Note that changes to the function module or enterprise service usually do not have a direct impact in the SOA Manager because it uses a design time cache that may first have to be cleared and updated again. Therefore, it is important to correctly configure the above-mentioned settings on the first attempt in order to avoid additional effort in the subsequent step.