cancel
Showing results for 
Search instead for 
Did you mean: 

IDOC_ERROR_METADATA_UNAVAILABLE

0 Kudos

Hi All,

We are facing an intermittent issue in GTS system while sending outbound IDOCs to the SAP PO middleware.

Error Message - IDOC_ERROR_METADATA_UNAVAILABLE

Scenario is that few IDOCs are getting through successfully but few fail and get stuck in GTS end itself.

We have checked the below things and they are looking fine:

  • RFC destination in GTS system pointing towards the SAP PO system (TCP/IP - type T) - Working
  • IDOC metadata in PO system's IDOC monitoring - Available

  • Ping test for Sender IDOC_AAE channel (between GTS and PO system) - Working

  • Adapter Specific Attributes of the Business system in SAP PO - Available


I found one blog for the similar kind of issue "https://answers.sap.com/questions/694224/idocerrormetadataunavailable-the-meta-data-error.html" which suggests to maintain the multirepository and the Adapter Specific Attributes correctly after system restart.

We have not taken any restart of the system and also have both these things maintained correctly (Probably the reason why few IDOCs are getting through) but unable to figure out why few of the IDOCs fail intermittently with Metadata error.

Kindly help! Please let me know if anything is required from my end to get this resolved.

Appreciate your help in advance.

NOTE - This is a new GTS system which has been added recently in the landscape. We have taken care of the Partner Profile, PORT creation, RFC destination. Incase we are missing on anything, please let us know.

Accepted Solutions (1)

Accepted Solutions (1)

Harish
Active Contributor
0 Kudos

Hi Akash,

The IDoc Metadata cache in the AS Java is not persistent. This means that after the system/server node restart the cache is cleared and the metadata of the different IDoc types is loaded again. The load is done on demand during runtime processing on separate server nodes. IDoc metadata from different systems is loaded into separate repositories via RFC destinations. Each repository contains IDoc metadata for the processed IDoc types which is read from the corresponding system. Note that different repositories may contain different metadata for the same IDoc types. From which system the metadata will be read and/or which repository in the AS Java IDoc Metadata cache will be used is defined by the used RFC Destination, which in turn is determined by the DestinationName , multiRepository and CustomDestMap properties The multiRepository property contains a list of RFC dest inations to be used depending in the sender system id (SID) in case the resource adapter accepts calls from several systems.

As you already mention about maintaining the required configuration of multiRepository and CustomDestMap properties. Then the only option is to maintain the IDOC structure in both SAP system, this will avoid metadata error on runtime.

regards,

Harish

0 Kudos

Thanks Harish!
Issue seems to be fixed after maintaining the IDOC in both SAP systems.

Answers (5)

Answers (5)

0 Kudos

Hi Akash!

Create two destinations in NWA: XI_IDOC_DEFAULT_DESTINATION_ECC and XI_IDOC_DEFAULT_DESTINATION_GTS.

Regards, Evgeniy.

0 Kudos

Hi Evgeniy,

We already have multiple business systems from where we are receiving inbound IDOCs (wrt to SAP PO) despite having single destination defined in inboundRA.

Moreover, this issue is not persistent rather intermittent. As soon as we Preload the metadata, IDOCs start flowing again.

Anyways I'll check the feasibility with my team on adding a dedicated destination for GTS system and get back to you. Thanks for your time!

0 Kudos

As far as I remember, when adapter needs to get metadata updated from particular system, it uses destination XI_IDOC_DEFAULT_DESTINATION_<SID> for that. If such destination can't be found - default destination XI_IDOC_DEFAULT_DESTINATION is used.

Regards, Evgeniy.

0 Kudos

Hi Evgeniy,

We have the second destination (for GTS) defined in the multirepository as shown below (one for ECC and another for GTS):

Do we need to create another property in inboundRA as "DestinationName" for GTS destination or this multirepository will take take care of that?

kottiyil_ramnath
Participant
0 Kudos

Hi Akash,

You said, it's a new SAP ERP, So is PI/PO connected to both old and new SAP ERP or only the new SAP ERP? If both are connected, then try different idoc destination names for old and new.

Also is the IDoc has an extension?

Regards,

Ramnath

0 Kudos

Hi Kottiyil,

Apologies! Mistakenly I mentioned it as a new ECC system. It's a new GTS system which has been integrated with the middleware (basically a new Business System in SAP PO) , not a new ERP.

I have updated the statements in my question as well.

Regarding the IDOC, yes it's a customized IDOC that Abap has created in GTS.

kottiyil_ramnath
Participant
0 Kudos

Hi Akash,

Recommended using 2 different IDoc destination names, One towards ERP and one towards GTS. and in ERP and GTS sm59, use unique program IDs. Once these program IDs are maintained, maintain these 2 program IDs under InboundRA properties.


Then, In IDoc MetaData Monitor, Load the Custom IDoc if not done already. If it's done, try to reload it to reflect any new changes from GTS.



Regards,

Ramnath

0 Kudos

Hi Ramnath,

We already have multiple business systems from where we are receiving inbound IDOCs (wrt to SAP PO) despite having single destination defined in the inboundRA.

Moreover, this issue is not persistent rather intermittent. As soon as we Preload the metadata, IDOCs start flowing again.

Anyways I'll check the feasibility with my team on adding a dedicated destination for GTS system and get back to you. Thanks for your time!

0 Kudos

Hi Ramnath,

We already have the second destination (for GTS) defined in the multirepository as shown below (one for ECC and another for GTS):

0 Kudos

Hi Akash!

You could also try to delete IDoc metadata using IDoc Metadata Monitor and load it once again.

Regards, Evgeniy.

0 Kudos

Hi Evgeniy,

Tried that already. I have Deleted, Preloaded and Refreshed the metadata of this IDOC in IDoc Metadata Monitor. After this, it works for sometime and the IDOCs reach the middleware successfully.

However, if the interface remains dormant for sometime, new incoming IDOCs fail with METADATA error in GTS system. If we Preload the metadata again in PO system, it starts working again.

Regards,

Akash

kottiyil_ramnath
Participant
0 Kudos

Hi Akash,

Check whether the InboundRA is working and started under Jobs?

Regards,

Ramnath

0 Kudos

Hi Kottiyil,

Yes the inboundRA is working fine. We are receiving few IDOCs successfully from the GTS system but in between for few IDOCs it starts giving this issue. Moreover, it's the same IDOC (currently only one type of IDOC is configured for the integration). For the same type of IDOC, some get passed and some get stuck.

Screenshot of inboundRA for reference:

Regards,

Akash

0 Kudos

Hi!

Is the destination named "XI_IDOC_DEFAULT_DESTINATION" correctly configured in your SAP PO system?

Regards, Evgeniy.

0 Kudos

Hi Evgeniy,

Yes, the destination is configured correctly and ping test is also working. Screenshot below for your reference:

However, I have one doubt!

We are facing the issue when the IDOC is going from GTS to SAP PO (outbound wrt to GTS).

Will this RFC destination play any role in our scenario since it will be used while sending the IDOCs to the GTS system from SAP PO (Inbound to GTS).

Regards,

Akash

Hi Akash!

This destination is used for IDoc metadata retrieval from respective backend system as well.

Regards, Evgeniy.

0 Kudos

Thanks!
I was not aware of this. Anyways, this is also working..