Skip to end of metadata
Go to start of metadata

Contents


 

How to Create a Service Group

A service group defines which services a consumer application needs. Service groups collect consumer proxies that are configured together to access a provider system. In this way, the consumer proxies within a service group can access different services offered by the same provider.
Service groups are transported by the standard ABAP transport system.

Concept

The outbound Web service call is made using the name of the service group together with routing information.
The name of the service group is the logical surrogate for the name of the logical port. When a service group is used, it is not necessary to know the specific name of the logical port – only the name of the service group is needed. To call a specific Web service on a specific provider, a consumer application does not need all the information - it only needs a business context or a technical name.

Prerequisites

To create a service group, at least one activated consumer proxy must be available in your ABAP system.

Constraints

Service groups are only used for business scenario configuration and cannot be used within single service configuration. Service groups replace the former concept of logical ports but need more entities such as a profile, a provider system, logon data management, and business scenarios in order to allow the automated way of configuration.

Service groups will also support Central Configuration of closed ABAP landscapes. 

Procedure

Service groups are created in ABAP Workbench. Once a service group is created, you need to configure the desired design time attributes and assign consumer proxy objects.

To create service groups in an ABAP back-end system, perform the following steps:

  1. Start the Object Navigator (transaction code SE80).
  2. Locate the package in which you want to create the service group.
  3. Right-click on the package to open the context menu.
  4. From the context menu, choose Create.
    A wizard is started.
  5. Select ServiceGroup.
  6. Choose Continue.
  7. Specify a name for the new service group, a Display Name and a Description.
  8. Choose Continue.
  9. Specify the following options:
    1. Package
      Either choose a transportable package or select Local Object to assign this object to your $TMP package.
    2. Request/Task
      Select a request from your transport system. If you selected Local Object, no Transport Request is needed.
  10. Choose Continue.
  11. Choose Complete.
    An overview of the information that you specified is displayed in the Properties tab.
  12. On Tab "Properties" general properties and routing relevant information is shown. Tab "Classifications" allows you to assign classification values to the service group. This can be used in future in case service groups are published to Services Registries. On the "Consumer" tab, you have to assign consumer proxies. At least one consumer proxy has to be assigned to a service group.

    Logical Receiver Determination

    If you wish to use this service group with logical receiver determination (LRD), specify an LRD Filter in the Characteristics section. The LRD filter is an ABAP Dictionary structure that is passed from an application to LRD at runtime filled with context data used for logical receiver determination.
    The following options are also available for logical receiver determination:

    • Configuration Scenario allows multiple receiver assignments
      At configuration time, multiple provider systems or business applications can be assigned to the service group in business scenarios. If this option is not selected, only one provider system or business application can be assigned to a service group.
    • Logical Receiver Determination allows multiple receivers
      At runtime, multiple provider systems or business applications can be returned by LRD. If this option is not selected, at runtime only one provider system or business application is allowed. If multiple provider systems or business applications are determined, an exception is raised to the application.
  13. Choose Save.
    The service group is saved and added to the Enterprise Services/ServiceGroups folder.
    If you have set an LRD filter, an ABAP class is automatically generated and displayed in the field Generated Class.
  14. Choose Activate.

ServiceGroup Characteristics

 
 ServiceGroup characteristics enable logical routing of consumer side calls. Therefore three settings can be made in order to distinguish five use cases:

  • No LRD Filter, Flag "Configuration Scenario allows multiple receiver assignments" not set, Flag "Logical Receiver Determination allows multiple receivers" not set.
    Only technical receiver determination is possible with this combination. During configuration one provider system/business application can be assigned to the service group and with TRD API the provider system/business application can be retrieved at runtime.
  • No LRD Filter, Flag "Configuration Scenario allows multiple receiver assignments" set, Flag "Logical Receiver Determination allows multiple receivers" not set.
    Only technical receiver determination is possible with this combination. During configuration multiple provider systems/business applications can be assigned to the service group and with TRD API the provider system/business application can be retrieved at runtime.
  • LRD Filter maintained, Flag "Configuration Scenario allows multiple receiver assignments" not set, Flag "Logical Receiver Determination allows multiple receivers" not set.
    Only technical receiver determination is possible with this combination. During configuration multiple provider systems/business applications can be assigned to the service group and with TRD API provider system(s)/business application(s) can be retrieved at runtime. Application program can then decide which provider system/business application is to be called. As here only one provider system/business application is allowed it is really only a filter but not a routing. The result is either the maintained provider system/business application or no provider system/business application.
  • LRD Filter maintained, Flag "Configuration Scenario allows multiple receiver assignments" set, Flag "Logical Receiver Determination allows multiple receivers" not set.
    Logical and technical receiver determination is possible with this combination. During configuration multiple provider systems/business applications can be assigned to the service group and routing information can be maintained in logical receiver determination. With both TRD API and LRD API the provider system/business application can be retrieved at runtime. If LRD API is used the business context can be passed with the LRD Filter structure and then the LRD routing(s) will be processed. The result is either one of the maintained provider system(s)/business application(s) or no provider system/business application.
  • LRD Filter maintained, Flag "Configuration Scenario allows multiple receiver assignments" set, Flag "Logical Receiver Determination allows multiple receivers" set.
    Logical and technical receiver determination is possible with this combination. During configuration multiple provider system/business application can be assigned to the service group and routing information can be maintained in logical receiver determination. With both the TRD API and the LRD API the provider system/business application can be retrieved at runtime. If the LRD API is used the business context can be passed with the LRD Filter structure and then the LRD routing(s) will be processed. As here multiple provider systems/business applications are allowed to be returned at runtime this it is really a routing. The result is either one or multiple of the maintained provider system(s)/business application(s) or no provider system/business application.

Example

Creation of a new service group

Start the wizard in SE80

Specify name, display name and a description
 

Specify the package information
 

 

Finish the wizard
 

 

Service Group properties are shown as created by the wizard
 

 

Add consumer proxy to service group 
 

 

Save and activate the service group. Now the generated class name is also shown and navigation to the class is possible

Save and activate the service group. Now the generated class name is also shown and navigation to the class is possible 

Result

The new service group is saved and active.
Next, you need to configure the new service group.

More Information

Logical Receiver Determination