cancel
Showing results for 
Search instead for 
Did you mean: 

XSD not refreshed in Message Mapping

Former Member
0 Kudos

Hello!

I have imported an updated XSD including a new field element as External Definition into the Integration Repository.

The XSD is referenced by another XSD which is used in a Message Mapping. The problem is that the new element is not displayed in the Message Mapping. If I open the source and select the changed XSD it is still showing the old XSD one without the new element field.

I have activated the changed XSD and I have also reimported the XSD referencing the changed XSD into the Message Mapping. What do I need to do to have the new element field displayed in the Message Mapping? Thanks for your help.

Regards, Tanja

Accepted Solutions (1)

Accepted Solutions (1)

agasthuri_doss
Active Contributor
0 Kudos

Hi Tanja,

I have come acrossed this kind of issue, When I refeshed the cache the problem was resolved.

Cache update and

a)Start transaction SXI_CACHE.

b)From the context menu XI Runtime Cache select Start Complete Cache Refresh.

c)Call transaction SM58 to check the status of the refresh process.

Many actions require to access System Landscape Directory content from the Integration Builder. To optimize performance, this content is loaded into a cache so that the System Landscape Directory does not have to be accessed directly each time that System Landscape Directory content is required.

However the cache is not automatically updated if changes are made to the content of the System Landscape Directory. For this reason, The cache is then filled each time that the System Landscape Directory is accessed. If we log on to the Integration Builder after we have made a change in the SLD, we do not need to delete the SLD cache.

To clear the SLD cache, from the Integration Builder main menu, choose Environment ® Delete Cache for SLD Data.

Once we have deleted the cache for SLD data, accessing objects in the SLD may take longer than usual initially.

Regardsd

Agasthuri Doss

Message was edited by: Agasthuri Doss Baladandapani

Former Member
0 Kudos

Hi!

I have tried what you suggested but it did not solve the problem. In my opinion SXI_CACHE only helps if you have caching problems at runtime but I have caching problems at design time. If I open the XSD as External Definition the new element field is displayed but if I go to the Message Mapping and open the source and then select the XSD the new element field is not there.

Regards, Tanja

former_member206604
Active Contributor
0 Kudos

Hi,

This is nothing related to Cache issue. Try creating a new message mapping and use that XSD and check if that field is showing. Also did you select the Message type again in the message mapping.

Thanks,

Prakash

Former Member
0 Kudos

Hi Prakash!

I think you are correct, this is no caching problem. When I created a new External Definition and a new Message Mapping the fields in the XSD still did not show up in the Message Mapping source.

The business partner from which I got the XSD added the following to the XSD:

<xs:simpleType name="proof_of_purchase_dt">

<xs:annotation>

<xs:documentation>Proof of Date Purchased</xs:documentation>

</xs:annotation>

<xs:restriction base="ckm_date">

<xs:minLength value="1"/>

<xs:whiteSpace value="collapse"/>

</xs:restriction>

</xs:simpleType>

<xs:element name="proof_of_purchase_dt" type="proof_of_purchase_dt"/>

I have imported the new XSD, activated it and dragged the External Definition referencing this XSD to the Message Mapping. But proof_of_purchase_dt is not displayed in the graphical view and I cannot find it when I search for it in the source view. Why can this happen? Is there a problem with the XSD the business partner provided?

Regards, Tanja

former_member206604
Active Contributor
0 Kudos

Hi,

XSD looks fine for me. Is it possible for you to try this way..

<xs:element name="proof_of_purchase_dt">

<xs:simpleType>

<xs:annotation>

<xs:documentation>Proof of Date Purchased</xs:documentation>

</xs:annotation>

<xs:restriction base="ckm_date">

<xs:minLength value="1"/>

<xs:whiteSpace value="collapse"/>

</xs:restriction>

</xs:simpleType>

</xs:element>

Also try changind ckm_date to date

Thanks,

Prakash

Message was edited by: Prakash Arunachalam

Answers (2)

Answers (2)

moorthy
Active Contributor
0 Kudos

Hi,

It may be the issue with Cache. Go to Mapping and Refresh the Mapping.

Still Problem, then good option is Reimport the External Definition into Mapping. Or just drag and drop the external definition into the mapping.

Go to Integration Builder->Administartion->Cache Overview->Refresh all the caches.

Regards,

Moorthy

Former Member
0 Kudos

Hi!

I have already refreshed the mapping in the Integration Builder and I also executed Integration Builder->Administartion->Cache Overview->Refresh all the caches. When I imported the External Definition referencing the changed XSD into the Message Mapping the new element field was still not displayed in the changed XSD in the Message Mapping source view.

Regards, Tanja

moorthy
Active Contributor
0 Kudos

As I mentioned, recreate the mapping or change the Message types in the mapping by selecting newly imported external defintion.

Thanks,

Moorthy

Former Member
0 Kudos

Hi Tanja,

A wild guess..

Go to Environment--> Clear SLD data cache in ur repository and try the import and activation again.

cheers,

Prashanth

P.S Please mark helpful answers

former_member206604
Active Contributor
0 Kudos

Hi,

Are yur sure you have imported both the XSD into IR. And the reference to the XSD is proper actually the reference will be just the XSD name.

Thanks,

Prakash