Show TOC

Message Selection FilterLocate this document in the navigation structure

Use

This function enables you to define filters to select messages that you do not want to process immediately, but for a later event.

Integration

Together with the functions for defining the required senders and receivers and the corresponding processing jobs , this function gives you the option of event-driven message processing . You can stop specific messages and postpone processing until a later event occurs.

Prerequisites

You have chosen Configuration → Configure Event-Driven Message Processing in the Integration Engine menu and are on the message filter definition screen.

Features

A message filter consists of a number of selection criteria and can be used in the following locations:

  • Integration Engine (sender system)
  • Integration Server (inbound Channel)

    This only applies to messages with quality of service EO (Exactly Once) since at this point no receiver is known.

  • Integration Server (outbound channel)

    Here, you can also filter out messages that are to be processed in packages, not individually. The receiver of such packages must be an IDoc receiver. Therefore, the messages must be processed by the IDoc adapter.

    Caution

    If the receiver of a message package is not an IDoc receiver, this can lead to unpredictable results.

  • Integration Engine (receiver system)

All messages are checked at the selected usage site to see if they meet the message filter criteria. If they do, processing is stopped.

The choice of usage site depends on whether the client you are working in is configured as a business system or as the Integration Server.

Activities

Besides the activities listed below, you can also (de)activate, delete, update, and reset a message filter.

The Sender and Receiver columns enable you to display the sender/receiver IDs that are already defined.

Adding a Filter

New filters are always appended to the list of existing filters, and therefore are located at the end of the sequence.

The filter criteria that you can specify vary according to the filter usage site:

  • The sender or receiver, or both

    The sender or receiver or both must be specified and must have defined sender/receiver IDs. They can then be selected by using the input help.

  • Job ID

    The job ID must be specified. You need the job ID to define a job to schedule and trigger message processing. At this stage it is irrelevant whether this job already exists or if you still have to define it.

  • Message Size

    Specification of message size is optional. If you specify a message size, in the Smaller/Larger field, you can determine whether messages that are smaller or larger than the size specified will be filtered.

  • Package Size

    If you want to process messages with quality of service EO (Exactly Once) in packages, you must specify a package size. This specifies the number of messages above which a package is to be scheduled for processing.

    Once the specified package size is reached, a package can be processed immediately. If you want to do this, specify this in the corresponding field.

    Note

    Message packages can only be sent to a unique receiver. This must be either an IDoc receiver or an IDoc system as a receiver of ALE audits that are returned as acknowledgments by an IDoc receiver.

    Note

    Due to performance reasons, you can only process small messages in packages. Therefore, you must also specify a corresponding message size.

  • Message queue

    If you want to filter out messages with quality of service EOIO (Exactly Once In Order), you have to specify the name of the queue that identifies these messages. You can also enter an asterisk (*) here, on its own or in the form ABC*. This stops the corresponding message queues and the messages contained are not processed any further.

Changing a Filter

You can change all filter properties except the filter usage site by using change mode.

To change a filter, you must first deactivate it, change it, and then reactivate it. You cannot change active message filters.

Specifying a Filter Sequence

Generic filter specifications can result in a message being sorted by several filters. Therefore, you can define a sequence for the defined filters, to ensure that the filter you want to use is applied. To do this, choose Select and Move To.

Testing a Filter

To test whether a filter functions as required, choose Enter Test Message, which simulates an inbound message. This always determines the first filter in the filter sequence that meets the criteria of the simulated message. If the message is sorted by a filter other than the one you want to use, you have to change the filter sequence accordingly.

On the Integration Server, an input help containing the normalized address data (identifiers) is available to help you enter the message data. You can also use the alternative address data from the Integration Directory. You must use the alternative identifiers for IDocs because no normalized data is available.

There is no input help available in an Integration Engine. You have to enter the communication channel data specified in the Integration Directory manually in this case.

More information: Communication Profile .

Specifying Minimum Package Size

You use this function to specify a minimum package size as a percentage of the value of the maximum, filter-specific package size.

The minimum package size is only evaluated in immediate package processing. Job-driven package processing is unaffected.

If the number of messages reaches the maximum package size, then packages will be created with the maximum number of messages. This may leave some messages left over. If the number of remaining messages is greater or equal to the minimum package size, then a package will be created for them immediately. If additional messages are received in the meantime, these must wait for the next package to be created.

Note

You can also set the minimum package size using the MIN_PACK_SIZE configuration parameter in the TUNING category.

Splitting Up Packages

You use this function to split up the message packages of a filter for individual processing. The messages are then processed individually.

To do this, select the corresponding filter and choose Split Up Package.

Note

You can also split up message packages for each job. Use the program SXMS_UNPACK_MESSAGES to schedule the corresponding job.

We only recommend this if an error situation is to be expected, for example, if packages are not processed as desired.