The following subsections provide suggestions for event handling problems.
If a subscribing business object is not being processed by the ABAP Extension Module, then:
If your connector is not picking up events from the SAP application:
If you have multiple connectors subscribed to the same business object, then one connector might be processing the wrong events. For more information on distributing events between multiple connectors, see ***..
Check the connector's event table in the SAP application to see if the event has a status of L (Locked). If the status is L, then you most likely have a problem in the SAP application and not the connector.
If the event did not make it to the destination, change the status from R to Q (Queued). Events with a status of Q are picked up by the connector at the next poll interval. To change the status from R to Q, go to the event table, select the event, and then click the Edit button. In the window that appears, change the Event Status field from R to Q.
If a business object fails to process successfully, check the connector log in the SAP application. Entries for failed events appear in red. Reprocess events using the reprocessing tool, which enables you to set breakpoints in the code as you step through the transaction.
Attention: Do not use the reprocessing tool in a production environment, because it causes the WebSphere business integration system and the SAP application to be out of sync.
The current event table and the future event table, may encounter a deadlock situation if there are many events being added at one time. This situation occurs if the provided indices for the event table are not used because of database tuning. Tuning normally occurs during off-peak hours when there are few or no events in the event table. When a database table has no or few entries, it is more efficient not to use an index for reading the table. To avoid a deadlock situation, exclude the current event and future event tables when running a database tuning utility.
Large objects may require additional changes to process successfully. ABAP Extension Module objects are converted to a flat structure before passing the data to the SAP application or converted from a flat structure when receiving the data from the SAP application. See Business object conversion to a flat structure for more information. This flat structure is held in memory with each attribute for an object instance being a row in the structure. For each attribute, 373 bytes of data are passed between the connector and the SAP application. The number of attributes multiplied by 373 gives an approximation of the size of the flat structure. As well, an instance of the object is also in memory. Therefore, an object with many child objects (segments) may require a change to the Java heap size in the startup script for the connector's Java process in order to avoid an out-of-memory error.
Windows |
---|
In the start_SAP.bat script, change the -mx128m Java heap size options parameter default value to a value large enough to handle the flat structure and the instance of the object. A value larger than the available memory on the machine running the Java process will also result in an out-of-memory error. The 128m represents a maximum Java heap size of 128 MB. |
Unix
The SAP application may also require changes to the ABAP timeout parameter to process a large object successfully.