SAP PI Troubleshooting
SAP NetWeaver Process Integration (SAP PI) is a component of the Netweaver product group used to facilitate the exchange of information among a company’s internal software and systems and those of external parties . Here are some of the errors and its resolution which will definitely be useful.
1. Cache Update Problems :-
Use transaction SXI_CACHE to update the Integration Directory cache. Alternatively, you can use the following URLs to update the CPA cache. Use XIDIRUSER to refresh the cache.
For complete cache refresh –
For delta cache refresh –
If this does not solve the issue, check transaction SLDCHECK to ensure that connection to SLD is available. If the connection fails, check the configuration in the transaction SLDAPICUST. Make sure that the password maintained is correct and the maintained service user is not locked.
Now in the Integration Repository go to Environment → Clear SLD Data Cache. Also go to Integration Directoy and clear the cache using menu Environment → Clear SLD Data Cache.
Open the XI Start Page and click on Administration. On the Repository tab, choose Cache Overview. Refresh the cache using the buttons/icons on the right. Use XIDIRUSER to refresh the cache. Carry out cache refresh in the same way on the Directory and Runtime tabs.
If you are facing cache update problems in your BPM (say you have modified the BPM, but when executed old version of the BPM is picked up instead of the new one), run the transaction SWF_XI_CUSTOMIZING and press F9 carry out automatic BPM/Workflow Customizing.
2. Routing Errors :-
- NO_RECEIVER_CASE_BE or NO_RECEIVER_CASE_ASYNC
This means no receiver could be found. Check your Receiver Determination. Activate and update cache. Asysnchronous messages can be manually restarted.
More than one receiver found. Check your ID configuration to ensure that there is exactly one receiver for the synchronous message. Multiple receivers for synchronous interfaces are not permitted.
3.Mapping Errors :-
Check whether RFC destination AI_RUNTIME_JCOSERVER is correctly configured
Ensure that mapping program exists and is activated. If it exists then update the cache.
This error occurs due to erroneous XML formatting. Check your mapping program and ensure that you supply valid input data.
4. Messages stuck in queues
Check the queues using transactions SMQ1 (outbound)/SMQ2 (inbound). Resolve the displayed errors. You can cancel the messages from SXMB_MONI. Execute LUW if necessary and avoid deleting entries manually.
Unable to convert the sender service XXXX to an ALE logical system
This error occurs in case of scenarios with IDoc adapters. Whenever you use business systems, make sure that the corresponding logical system name is maintained in the SLD.
Open your business system in the Integration Directory. Switch to Change mode. Access the menu path Service → Adapter Specific Identifiers. Click the button that says ‘Compare with System Landscape Directory’ and chose Apply. Save and activate your change list.
In case of business services, you can manually type a logical system name in the Adapter Specific Identifiers if required. This name should match the corresponding logical system name defined in the partner SAP system’s partner profiles.
4.Errors on the outbound side
Sometimes the link between SAP XI and the target system (say ERP) goes down and messages fail on the outbound side. It may not be possible to restart them from using RWB or the transactions like SXI_MONITOR/SXMB_MONI . In such case generally, messages are picked up and sent via SAP XI when the link returns. However, in some scenarios, it may be possible that SAP XI server could not finish conversation with ERP. Main status of messages is “Processed successfully” – but there is an error in the outbound side as shown below. (Transactions – SXI_MONITOR/SXMB_MONI).
These messages do not get picked up automatically – and it is not possible restart them from using RWB or the transactions like SXI_MONITOR/SXMB_MONI.
Such messages could be processed in the following way:
- Send data directly to Integration Engine
- Change the status of failed message
This example shows how to solve the problem – two error messages are shown and one of them is solved here.
Step 1: Send data directly to Integration Engine
Go to Component Monitoring in SAP XI Runtime Workbench. Click on the Test Message tab for the Adapter Engine. Specify the URL of SAP XI Integration engine to send the message to e.g. http://<XIServer>:<J2EE Port>/sap/xi/engine?type=entry
Specify the header Information. Copy payload of the message using SXI_MONITOR/SXMB_MONI and paste it into Payload area in RWB.
Send the message using Send Message button.
Step 2: Change the status of failed message
Call the transaction SWWL.
Delete appropriate work items.
Check that the messages are complete in SXI_MONITOR/SXMB_MONI.
Another simpler way to accomplish this is to use transaction SXMB_MONI_BPE . Select Continue Process Following Error under Business Process Engine -> Monitoring and Execute (F8). Update the selection criteria as required and Execute (F8). Choose the appropriate line item and click on Restart workflow button.
In these ways we can reprocess the messages failed on the outbound side. If the messages do not participate in BPM process, then they can still be traced via outbound queues or SM58 logs and restarted.
Hope this helps . Happy reading 🙂