Troubleshoot issues with MII-ECC connectivity
The purpose of this document is to outline the most common issues which occur when connecting SAP MII to SAP ERP systems. This document outlines the configuration settings which can be checked in case these issues occur. The symptoms, the causes and the possible solutions are as stated below.
1) IDOCs sent from ECC are not received in MII. Netweaver logs have the following error:
com.sap.conn.jco.JCoException: (104) RFC_ERROR_SYSTEM_FAILURE: IdocException occurred
caused by: com.sap.conn.idoc.IDocMetaDataUnavailableException: (3)
IDOC_ERROR_METADATA_UNAVAILABLE: The meta data for the IDoc '<IDOC name>' is unavailable.#
This issue is generally caused because of an authorization problem at ECC. External systems such as MII do not usually know the current structure of the IDoc type used. You therefore need to load the meta data for these systems. This is normally done using a remote call of the SAP IDOCTYPE_READ_COMPLETE function module.
This function module returns structure information for an IDoc type and a specified release. However, if this information does not exist or if the user who makes the call does not have sufficient authorizations, the error message mentioned above is issued.
A quick check on whether an authorization issue exists can be done in MII by using JCO function action block trying to call IDOCTYPE_READ_COMPLETE. A possible resolution to this error is to ensure that the user has correct authorization objects assigned at ECC level. SAP note 16642 has a detailed introduction to IDOC authorization concept.
2) Program 'XXX' is not registered error message when connection is tested. "XXX" is program id defined when creating the TCP/IP connection.
This error message means that the program has not been registered on the SAP gateway due to some error in configurations.The resource adapter may have stopped due to this configuration error.Please make sure that you have not used rfcexec is not used to register server program.
In order to solve this issue the below steps should be tried out:
- Clear all fields except Binding key, Language and MaxReaderThreadCount. These should remain XMIIIDOC, En and 0 respectively.
- Restart the resource adapter which is in error condition
- Fill in the configurations again. Please make sure that MaxReaderThreadCount is greater than 0.
- When this adapter is saved, it should become green if all configurations are correct. The program will get registered on the gateway automatically.
3) IDOCs sent by ECC are not received in MII. The error "Bean IDOC_INBOUND_ASYNCHRONOUS not found on host" is logged in SM58.
The function module 'IDOC_INBOUND_ASYNCHRONOUS" is looked up for application link enabling. It is called by ERP system when you are sending or receiving IDOCs. If open ABAP workbench is opened in ECC you will find the function module does exist in ECC. In order to trouble shoot this issue here are a few settings which should be verified at MII and ECC.
a) Check max reader thread count setting at the resource adapter configured at Netweaver. It should be greater than 0.
b) The binding key of the configured resource adapter is the default one (XMIIIDOC)
c) Destination system as configured at ECC is set as unicode.
d) Program id configured on ECC and MII listener is same and is unique across landscape.
4) Connection test in SM59 was successful. When IDOCs are sent, the error "no Beans listening for name IDOC_INBOUND_ASYNCHRONOUS registered for <Listener name> on system <system name>
This issue indicates a problem with settings in MII listener configuration. As stated for previous error, here also, it should be made sure that program id is unique across landscape. Also, it should be made sure that the program id is not registered manually in Netweaver. In addition the program id is unique across system landscape.
5) Connectivity test succeeds in ECC. MII listener also shows "Server Connected" status. However, when IDOCs are sent,the error RFC_ERROR_PROGRAM: 'ashost' is missing" gets logged in Netweaver.
This issue indicates that Netweaver java application server is not able to reach ECC system. Check if the configured parameter at Netweaver is correct.The below steps can also be tried in order to resolve this error:
In all probability the configured resource adapter should be in 'Red' status.
1. Login to http://<J2EE Engine HostName>:nwa
2. Navigate to the path Operations Management - > Start and Stop
3. Select the Tab "Java EE Applications"
4. Filter on Name 'tc~sapjra~temp".
5. Stop and Start this application.
6. Filter on the Name of the resource adapter.
7. Stop and Start this application as well.
Check if the Adapter works fine now. An application server restart also helps in some cases.
6) IDOCs originating from ECC do not reach MII. No error gets logged.
The most common cause of this issue is duplication of program ids on multiple systems. The thumb rule to be followed while configuring program ids is that it has to be unique. Deletion of program id at one place(in case it is configured at two places) also does not work.
Another common mistake is manual registration of program ids which should never be done. Also, at MII end the Message listener status should be checked. It should be "Connected".