Specifications
The following happens when invoking the ShowAndPublishEvent() method:
- If no subscription exists for the business object then nothing is done. Otherwise the following steps are executed.
- The request is enqueued. After committing the transaction, the request is picked up by a publisher process, which executes the next steps.
- The public identifying attribute value(s) are determined based on the protected identifier.
- The Show method is invoked to retrieve the object instance. The filter and selection as specified in the subscription from the event consumer are used. If the object instance does not match the filter then nothing is published.
- The PublishEvent() method is invoked to do the actual publishing, depending on the existing subscription.
Note:
- Error handling: The method will not fail and consequently will not return an error. Instead, if an error occurred the message is published to the error handler that is linked to the destination. For example, if the specified identifying values can not be translated to a valid public identifier, or if the Show invocation failed. If the environment (or package combination) does not contain an Adapter for LN or if it contains a version that does not support event publishing then a log entry is written in the $BSE/log directory.
- The method must be called
from within a database transaction.
See section Introduction.
- Every business object that has a PublishEvent() method also has a ShowAndPublishEvent() method. The ShowAndPublishEvent() must not be modeled in the LN Studio and cannot be customized. You cannot define method hooks, for example.