Problem with Message tab in Message mapping
Hi,
My scenario is JDBC to RFC.
For each row I get from JDBC i need to call RFC that many times.
For example I am getting 10 rows from database I should run RFC 10 times but in the mapping the occurrence of RFC is 1..1.
I tried to change the occurence of RFC to 0..Unbounded in Messages tab of Message mapping ,but when I run this interface it is getting error in message mapping, because of extra XML tags messages and message1 in the source structure.
Could you please help me with this.
Well,
1. Are you adding these extra tags in your test data? You should not add (if you are adding) because at run time (when you run scenario) these extra tags are taken care automatically.
2. If you are testing in Test TAB in Message Mapping then you have to add these extra tags there only.
Regards,
Sarvesh
Similar Messages
-
Problem with message mapping ...
Hello,
I have problem with message mapping. I implemented SOAP-to-RFC scenario. The source message is of type http://sntcz.cz/xmlns/holidays:MT_Holiday, the target message of type urn:sap-com:document:sap:rfc:functions:Z_GET_SUPERIOR. But some error is still generated in Request Message Mapping step:
com.sap.aii.utilxi.misc.api.BaseRuntimeException: RuntimeException in Message-Mapping transformation: Cannot produce target element /ns1:Z_GET_SUPERIOR/USR. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd at com.sap.aii.mappingtool.tf3.AMappingProgram.start(AMappingProgram.java:403) at com.sap.aii.mappingtool.tf3.Transformer.start(Transformer.java:142) at com.sap.aii.mappingtool.tf3.AMappingProgram.execute(AMappingProgram.java:102) at .....
This is XSD definition of source message:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://sntcz.cz/xmlns/holidays" targetNamespace="http://sntcz.cz/xmlns/holidays">
<xsd:element name="MT_Holiday" type="DT_Holiday" />
<xsd:complexType name="DT_Holiday">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
030495e1742f11dd963600301875333b
</xsd:appinfo>
</xsd:annotation>
<xsd:sequence>
<xsd:element name="SinceDay" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
fba049b067aa11dd8be6eee20abb2a3f
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="SinceMounth" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
fba293a067aa11dda311eee20abb2a3f
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="SinceYear" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
fba293a167aa11dd9b4eeee20abb2a3f
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="UntilDay" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
fba293a267aa11ddc352eee20abb2a3f
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="UntilMounth" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
fba293a367aa11ddc33aeee20abb2a3f
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="UntilYear" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
fba293a467aa11dda8cfeee20abb2a3f
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
<xsd:element name="UserId" type="xsd:string">
<xsd:annotation>
<xsd:appinfo source="http://sap.com/xi/TextID">
fba293a567aa11dd9698eee20abb2a3f
</xsd:appinfo>
</xsd:annotation>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
This is XSD definition of target message:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:sap-com:document:sap:rfc:functions" targetNamespace="urn:sap-com:document:sap:rfc:functions">
<xsd:element name="Z_GET_SUPERIOR">
<xsd:complexType>
<xsd:all>
<xsd:element name="USR" type="xsd:string" minOccurs="0" />
</xsd:all>
</xsd:complexType>
</xsd:element>
</xsd:schema>
It's strange that if I use Message Mapping Test it works fine. But in pipeline not.
Do you have any idea where could be the problem?
Thank you in advance!
Best regard,
ZbynekHi,
To know the correct error Take the Inbound Payload from MONI and Test it in Mapping Test TAB. then u will come to know the exact error.
Procedure to take the Payload
goto MONI-Double click on MessageInbound Message ( CENTRAL ) --Payloads ---Double click on MainDocument ( application/xml ) -Just Right Click on the second window-View Source
then now Copy this and paste it in Mapping Test and Execute.
REgards
Seshagiri -
Problems with message mapping in XI
Hi,
I'm having a problem with my message mapping . I get the error
"Cannot produce target element /ns0:GovTalkMessage/ns0:Body/ns1:IRenvelope. Check xml instance is valid for source xsd and target-field mapping fulfills requirements of target xsd"
Can you please tell me how I can resolve this error?
Regards,
Aditi NaikHi,
The source structure is:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns1="http://www.govtalk.gov.uk/taxation/EOY/08-09/1" xmlns="http://www.govtalk.gov.uk/CM/envelope" targetNamespace="http://www.govtalk.gov.uk/CM/envelope">
<xsd:import namespace="http://www.govtalk.gov.uk/taxation/EOY/08-09/1" />
<xsd:element name="IDAuthentication">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="SenderID" type="xsd:string" minOccurs="0" form="qualified" />
<xsd:element name="Authentication" maxOccurs="unbounded" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Method" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="clear" />
<xsd:enumeration value="MD5" />
<xsd:enumeration value="W3Csigned" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Role" type="xsd:string" minOccurs="0" form="qualified" />
<xsd:element name="Value" type="xsd:string" minOccurs="0" form="qualified" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="GovTalkMessage">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="EnvelopeVersion" type="xsd:string" form="qualified" />
<xsd:element name="Header" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="MessageDetails" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Class" form="qualified">
<xsd:simpleType>
<xsd:restriction base="UnicodeNameString">
<xsd:maxLength value="32" />
<xsd:minLength value="4" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Qualifier" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="request" />
<xsd:enumeration value="acknowledgement" />
<xsd:enumeration value="response" />
<xsd:enumeration value="poll" />
<xsd:enumeration value="error" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Function" minOccurs="0" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="list" />
<xsd:enumeration value="read" />
<xsd:enumeration value="delete" />
<xsd:enumeration value="add" />
<xsd:enumeration value="submit" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="TransactionID" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:minLength value="0" />
<xsd:maxLength value="32" />
<xsd:pattern value="[0-9A-F]{0,32}" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="AuditID" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:minLength value="0" />
<xsd:maxLength value="32" />
<xsd:pattern value="[A-F0-9]{0,32}" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="CorrelationID" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:minLength value="0" />
<xsd:maxLength value="32" />
<xsd:pattern value="[0-9A-F]{0,32}" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ResponseEndPoint" minOccurs="0" form="qualified">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute name="PollInterval" type="xsd:integer" default="2" />
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="Transformation" minOccurs="0" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="XML" />
<xsd:enumeration value="HTML" />
<xsd:enumeration value="text" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="GatewayTest" type="xsd:integer" minOccurs="0" form="qualified" />
<xsd:element name="GatewayTimestamp" type="xsd:dateTime" minOccurs="0" form="qualified" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="SenderDetails" minOccurs="0" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="IDAuthentication" minOccurs="0" />
<xsd:element name="X509Certificate" minOccurs="0" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:base64Binary" />
</xsd:simpleType>
</xsd:element>
<xsd:element name="EmailAddress" minOccurs="0" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="129" />
<xsd:minLength value="3" />
<xsd:pattern value="[A-Za-z0-9\.\-_]{1,64}@[A-Za-z0-9\.\-_]{1,64}" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="GovTalkDetails" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Keys" minOccurs="0" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Key" minOccurs="0" maxOccurs="unbounded" form="qualified">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:token">
<xsd:attribute name="Type" type="UnicodeNameString" use="required" />
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="TargetDetails" minOccurs="0" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Organisation" minOccurs="0" maxOccurs="unbounded" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:minLength value="1" />
<xsd:maxLength value="64" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="GatewayValidation" minOccurs="0" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Processed" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="no" />
<xsd:enumeration value="yes" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Result" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="pass" />
<xsd:enumeration value="fail" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="ChannelRouting" minOccurs="0" maxOccurs="unbounded" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Channel" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="URI" type="xsd:anyURI" minOccurs="0" form="qualified" />
<xsd:element name="Name" type="xsd:string" minOccurs="0" form="qualified" />
<xsd:element name="Product" type="xsd:string" minOccurs="0" form="qualified" />
<xsd:element name="Version" type="xsd:string" minOccurs="0" form="qualified" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="ID" minOccurs="0" maxOccurs="unbounded" form="qualified">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute name="Type" type="xsd:string" use="required" />
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="Timestamp" type="xsd:dateTime" minOccurs="0" form="qualified" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="GovTalkErrors" minOccurs="0" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Error" maxOccurs="unbounded" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="RaisedBy" type="xsd:string" form="qualified" />
<xsd:element name="Number" type="xsd:integer" minOccurs="0" form="qualified" />
<xsd:element name="Type" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="fatal" />
<xsd:enumeration value="recoverable" />
<xsd:enumeration value="business" />
<xsd:enumeration value="warning" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Text" type="xsd:string" minOccurs="0" maxOccurs="unbounded" form="qualified" />
<xsd:element name="Location" type="xsd:string" minOccurs="0" maxOccurs="unbounded" form="qualified" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="GatewayAdditions" minOccurs="0" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##local" processContents="strict" />
</xsd:sequence>
<xsd:anyAttribute namespace="##local" processContents="strict" />
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="Body" minOccurs="0" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="ns1:IRenvelope" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:simpleType name="UnicodeNameString">
<xsd:restriction base="xsd:string">
<xsd:pattern value="[\p\p_\-\(\)\{\}]*" />
</xsd:restriction>
</xsd:simpleType>
</xsd:schema>
The target structure is:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns1="http://www.govtalk.gov.uk/taxation/EOY/08-09/1" xmlns="http://www.govtalk.gov.uk/CM/envelope" targetNamespace="http://www.govtalk.gov.uk/CM/envelope">
<xsd:import namespace="http://www.govtalk.gov.uk/taxation/EOY/08-09/1" />
<xsd:element name="IDAuthentication">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="SenderID" type="xsd:string" minOccurs="0" form="qualified" />
<xsd:element name="Authentication" maxOccurs="unbounded" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Method" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="clear" />
<xsd:enumeration value="MD5" />
<xsd:enumeration value="W3Csigned" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Role" type="xsd:string" minOccurs="0" form="qualified" />
<xsd:element name="Value" type="xsd:string" minOccurs="0" form="qualified" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="GovTalkMessage">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="EnvelopeVersion" type="xsd:string" form="qualified" />
<xsd:element name="Header" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="MessageDetails" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Class" form="qualified">
<xsd:simpleType>
<xsd:restriction base="UnicodeNameString">
<xsd:maxLength value="32" />
<xsd:minLength value="4" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Qualifier" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="request" />
<xsd:enumeration value="acknowledgement" />
<xsd:enumeration value="response" />
<xsd:enumeration value="poll" />
<xsd:enumeration value="error" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Function" minOccurs="0" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="list" />
<xsd:enumeration value="read" />
<xsd:enumeration value="delete" />
<xsd:enumeration value="add" />
<xsd:enumeration value="submit" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="TransactionID" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:minLength value="0" />
<xsd:maxLength value="32" />
<xsd:pattern value="[0-9A-F]{0,32}" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="AuditID" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:minLength value="0" />
<xsd:maxLength value="32" />
<xsd:pattern value="[A-F0-9]{0,32}" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="CorrelationID" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:minLength value="0" />
<xsd:maxLength value="32" />
<xsd:pattern value="[0-9A-F]{0,32}" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="ResponseEndPoint" minOccurs="0" form="qualified">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute name="PollInterval" type="xsd:integer" default="2" />
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="Transformation" minOccurs="0" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="XML" />
<xsd:enumeration value="HTML" />
<xsd:enumeration value="text" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="GatewayTest" type="xsd:integer" minOccurs="0" form="qualified" />
<xsd:element name="GatewayTimestamp" type="xsd:dateTime" minOccurs="0" form="qualified" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="SenderDetails" minOccurs="0" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="IDAuthentication" minOccurs="0" />
<xsd:element name="X509Certificate" minOccurs="0" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:base64Binary" />
</xsd:simpleType>
</xsd:element>
<xsd:element name="EmailAddress" minOccurs="0" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="129" />
<xsd:minLength value="3" />
<xsd:pattern value="[A-Za-z0-9\.\-_]{1,64}@[A-Za-z0-9\.\-_]{1,64}" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="GovTalkDetails" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Keys" minOccurs="0" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Key" minOccurs="0" maxOccurs="unbounded" form="qualified">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:token">
<xsd:attribute name="Type" type="UnicodeNameString" use="required" />
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="TargetDetails" minOccurs="0" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Organisation" minOccurs="0" maxOccurs="unbounded" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:minLength value="1" />
<xsd:maxLength value="64" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="GatewayValidation" minOccurs="0" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Processed" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="no" />
<xsd:enumeration value="yes" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Result" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="pass" />
<xsd:enumeration value="fail" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="ChannelRouting" minOccurs="0" maxOccurs="unbounded" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Channel" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="URI" type="xsd:anyURI" minOccurs="0" form="qualified" />
<xsd:element name="Name" type="xsd:string" minOccurs="0" form="qualified" />
<xsd:element name="Product" type="xsd:string" minOccurs="0" form="qualified" />
<xsd:element name="Version" type="xsd:string" minOccurs="0" form="qualified" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="ID" minOccurs="0" maxOccurs="unbounded" form="qualified">
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base="xsd:string">
<xsd:attribute name="Type" type="xsd:string" use="required" />
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
<xsd:element name="Timestamp" type="xsd:dateTime" minOccurs="0" form="qualified" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="GovTalkErrors" minOccurs="0" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Error" maxOccurs="unbounded" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="RaisedBy" type="xsd:string" form="qualified" />
<xsd:element name="Number" type="xsd:integer" minOccurs="0" form="qualified" />
<xsd:element name="Type" form="qualified">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="fatal" />
<xsd:enumeration value="recoverable" />
<xsd:enumeration value="business" />
<xsd:enumeration value="warning" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="Text" type="xsd:string" minOccurs="0" maxOccurs="unbounded" form="qualified" />
<xsd:element name="Location" type="xsd:string" minOccurs="0" maxOccurs="unbounded" form="qualified" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="GatewayAdditions" minOccurs="0" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:any namespace="##local" processContents="strict" />
</xsd:sequence>
<xsd:anyAttribute namespace="##local" processContents="strict" />
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="Body" minOccurs="0" form="qualified">
<xsd:complexType>
<xsd:sequence>
<xsd:element ref="ns1:IRenvelope" />
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:simpleType name="UnicodeNameString">
<xsd:restriction base="xsd:string">
<xsd:pattern value="[\p\p_\-\(\)\{\}]*" />
</xsd:restriction>
</xsd:simpleType>
</xsd:schema> -
Upgrading from XI/PI7.0 to 7.1 having problems with message mapping
Hello,
We are in the process over the past week of testing our XI/PI functionality after upgrading our 7.0 XI/PI environment to PI7.1; in particular several maps that were accessible in 7.0 will not open or diaplay in 7.1 complaining of a missing node in the mapping structure. Currently working with SAP on a possible fix but wanted to know if anyone else has done a true migration on top of an existing XI/PI7.0 system and experiencing similar issues (note: the maps can execute in the runtime environment but we can't display the maps source within message mapping; this also does not occur for all maps and there is no clear consistant theme to those that can be displayed and those that can't).
The lattest issue just encountered related to message mapping is that in test mode of a map (that can be displayed) attempting to display the data queue for the mapped elements are blank no data being displayed giving an error noting that the source text of object message mapping: name of the map; has syntax errors, java area import line x, package ibm.com.xi.mapping does not exist/ import ibm.com.xi.mapping UDF:
Has anyone upgraded from PI7.0 to 7.1 and experienced errors with existing maps that worked ok (ans still work in our QX/PRD systems) in their 7.0 envirinment but encountereing strange errors once upgrated to 7.1?
Thanks
Dereck Purnell
NewellRubbermaidHere is the solution we received from SAP to address the issue, there were several mapping related issues we started havng from maps that worked in our 7.0 system prior to the upgrade to PI 7.1. I will try to encorporate the solutions in this response.
a) From Customer to SAP
1. We are unable to open some massage mapping, it is throwing
exception
2. Number Format functions throw exception.
But following issue is still unresolved:
3. When we display message queue, it throws exception
***) 05.02.2009 - 12:34:33 CET - Reply by SAP
The patch has been released at the Service Marketplace.
Please update the scas described in the note 1264871.
The "FormatNum" function issue has also been taken care in this patch.
Please go through the Note 1264871 for other behaviour changes after
upgrade. Let us know if you need any further help.
Regards,
B) From Customer to SAP
04.02.2009 - 00:23:44 CET - Info for SAP
We discovered another issue with mapping.
For some of the mappings, we are unable to display mapping queue. When
we execute, Interface mapping and Massage mapping, it works fine. But
display queue throws exception. Itu2019s not able to recognize libraries
used from dependent software component.
Please find document "Display Mapping Queue Issue" providing example
problem.
25.02.2009 - 07:05:28 CET - *Reply by SAP*
Thank you for your update. I wanted to check with "CopyValue"
function's index. It has to take an input integer and the problem that
found while debugging the opening of your mapping is that the input
was empty thus causing the exception.
I was going to suggest the intended use of "CopyValue" function.
When the input to "copyValue" is a constant, "copyValue" is totally
not necessary. Thus constant can be directly mapped to other function.
When the input is a node with values in context, you can treat one of
values say input[0] to used in mapping by using CopyValue[0].
But please make sure that input[0] will always produce a value.
Note 877964 will describe in detail on Copyvalue usage.
I am marking this Message as complete. Please confirm. -
Severe Problem With Message Mapping
Hi,
I have got a message mapping which results in the following XML:
<?xml version="1.0" encoding="UTF-8"?>
<ns14:expost_generation xmlns:ns14="http://mywebsite.xsd">
<timeStamp>2006-03-15T15:27:16</timeStamp>
<source name="xyz">
<generation date="abc" value="def" />
<generation date="abc" value="def" />
<generation date="abc" value="def" />
</source>
</ns14:expost_generation>
My problem is that I have to suppres the ns14 prefix. The opening tag should be: <expost_generation xmlns="http://mywebsite.xsd">
The closing tag: </expost_generation>
Does anybody know how to achieve this?
Kind regards,
HeikoHi Heiko,
on the level of the expost_generation-Tag the two definitions you gave are logically equivalent. Hence, no software consuming the XMLs should prefer one style.
However, when we look at the subelements there is a great difference.
In the xml you posted first all subelements (timeStamp, source,...) lie in no namespace.
On the other hand when you declare the tag expost_generation as you described afterwards (with a default namespace declaration) and then proceed as in the first example, then all the subelements will lie in this namespace, too (unless you again reset the default namespace in all these elements).
I assume that the Schema you use in the Message Mapping describes a document with only the root being namespace qualified but the service consuming the document expects a document with all tags being namespace qualified.
Greetings
Stephan -
Problem with Message-Mapping: Loop over Elements possible?
Hi all,
I want do create a Message-Mapping for an IDoc-to-File Scenario. In the Source Structure there are some Elements which can appear more than once (1..unbounded). I need a mechanism which loops over these elements and search for specified values. From the Element which contains an element with this specified value the mapping should write a value in the target structure.
Here a simple example (source structure) for better understanding:
<root>
<invoice>
<number> 10 </number>
<sum> 200.00 </sum>
</invoice>
<invoice>
<number> 20 </number>
<sum> 150.00 </sum>
</invoice>
<invoice>
<number> 30 </number>
<sum> 120.00 </sum>
</invoice>
</root>
Now the duty of the Mapping should be to search in the elements <invoice> for the number 30. And then the sum of the invoice with the number 30 should be written in a field of the target structure.
I tried it out with a constant togehter with an equalsS-function and an ifWithoutElse-function, but it is working only then, if the invoice with the number 30 has the first position in the root context.
Can anybody help me? Thanks
With kind regards
ChristopherHi,
Write a UDF to sum the required values and map to target node.
See while writing the UDF select the type as queue.
number -- removecontext-UDF targetnode
sum----removecontext--/
number abd sum or the two inputs
in UDF
int nsum = 0;
for(int i;i < number.length;i++){
if number(i).equals("30") then
nsum = nsum + valueOf(sum(i));
result.addValue(nsum); // convert the nsum into string
Regsrds
Chilla -
Problem in message mapping index.
HI All,
I am doing idoc to file scenario.
I have a problem in message mapping.
Issue is,
pallet1
palletheader(here i used counter to increment the value)
palletline(here i used INDEX to increment the value)
pallet linenumber1(it should be 1)
pallet linenumber2(it should be 2)
so on )
so on
pallet2
palletheader
palletline
pallet linenumber1(here again it should be 1)
pallet linenumber2(here again it should be 2)
so on )
so on
In INDEX we have option called reset index in that we have two radio buttons
one is "reset index to intial value with each new context"
and next one is "donot reset index to intiak value"
if i use the first radio button which is working fine in only one pallet and more pallet lines but not more than one pallet.
If i use the second radio buttton which is working fine in more than one pallet but not satisfying the more pallet lines in one pallet.
Can you please help me on the issuemy requirement is like this.
IF DELVRY05/IDOC/E1EDL20/E1EDL24/POSNR equals to /DELVRY05/IDOC/E1EDL20/E1EDL37/E1EDL44/EXIDV
then map to 'pallet line' .
I tried to keep posnr context as E1EDL20 and also IDOC level.
And at the same way to EXIDV too.
pallet(1 to unbounded)
pallet header(1 to 1)
pallet lines(1 to 1)
in sub level pallet line(1 to unbounded) (here i applied the index logic)
The out put should be pallet line 1,2,3,----- so on
In the second pallet the pallet lines should be again 1,2,3,4-------so on .
But when i try to apply thsi logic,
I am getting only one pallet line instead of two.
second is not comming .
please help on this i am facing this problem for the long time back.
if i solve then i can complete my scenario. -
How to do this with message mapping in PI ?
Hi All,
Field 1 = 100 characters having values in first fifty characters and last 50 characters blank . I need to remove all the first 50 characters with blank and pass 100 blank characters .How to do this with message mapping
ThanksAdding to that, since usually a tab = 8 spaces. What you can do is to open notepad, press tab 4 times. Copy it and paste 3 times, afterwards press space 4 more times and you get 100 spaces.
Regards,
Mark -
[b]Problem with message choice[/b]
Hi, all, I have a problem with message choice because when I get the value it returns the value of index row.
For example I have this message choice:
<messageChoice model="${bindings.Dept}" readOnly="false" required="no" name="dpt">
<contents childData="${bindings.Dept.displayData}">
<option model="${uix.current}"/>
</contents>
</messageChoice>
If I select the first data of message choice it returns 0, if I select the second data it returns 1 and so on. But I want to return the value of field dept and in message choice I show the dept_name field.
Can anyone tell me how do this? It's urgent because I haven't much time to do this work.
Thanks, Matteo.Matteo,
Maybe this works for you as well:
<messageChoice model="${bindings.DeptLOV}" name="dpt">
<contents childData="${bindings.DeptList.rangeSet}">
<option value="${uix.current.dept}" text="${uix.current.dept_name}"/>
</contents>
</messageChoice>
where DeptLOV is a LOV List type binding, and DeptList is a Range type binding that is based upon the Dept iterator. If one of these three does not exist in your project yet, you should create them manually via the Structure palette. -
hello ,
I have problem with message count, in my inbox there are more than 0 messages but i got result of
Folder inbox = store.getFolder("Inbox")
int c =inbox.getMessageCount()
of c is 0
i.e i got c as zero rather than 5.I am seeing the same thing and I agree with MathiasF's observation. My count seems to increase when I do a search for mail on the server. This has happened previously (iOS 5.x) but ending the Mail app always fixed it. The only way I can correct the count now is if I turn off sync for Mail on the Exchange account and re-enable. This clears my mail and causes my phone to go out and redownload. Rebooting and resetting the iPhone has not helped.
I'm on Sprint - 32GB White iPhone 4S running iOS 6.0 (10A403) -
Strange Problems with Messages
I've been experiencing some strange problems with Messages.
1) Sometimes my messages are displayed on screen. I type into the input box and hit enters. Then message disappears and does not show above in the chat box. I later find out that the message was delivered yet it doesn't show up in my chat.
2) Sometimes I see duplicate Chat windows on the left rail for the same contact, this is usually in conjuction with error #1.
3) Sometimes I can unable to dlete chat windows. I click the x and it does nothing. I right click and choose Close Chat and it does nothing
4) When searching the left rail for open chats, the app gets really confused and show strange results, when deleting the search the chat window gets really odd order, nothing to do with sort or recent chatsNobody else is experiencing these problems?
-
I have a problem with cross tab.
When I do grouping on date according to month and summarize the units I am getting the result as 58
while I do grouping without the croos tab generally in the details section I get the result to be 64.
I am not able to understand where is the problem.
Even when I write a query i get the answer as 64.Hi,
Summarizing with a Cross-tab and creating a summary of a group are one and the same; I mean, the summary results are always the same.
Could you check the summary operation in the crosstab, could you confirm if it is not count or something else?
Also, create a summary and place it on the Group Header/Footer. It should be same as the Crosstab results for the that particular group.
-Abhilash -
Problem with switching tabs in top level navigation for Roles
Hi,
I've created two tabs (based on two roles) in the portal top level navigation menu. When clicking the first one it opens as it should. Then when clicking on the second tab it will not open, instead the first tab open up again, it sort of switches back automatically.These two roles are basically consists of worksets and iviews(accessing to r/3).
Does anyone have any expericene with this type of problem?
please suggest me
Thanks
AravindaHi Aravinda
Please check this link
Re: Problem with switching tabs in top level navigation
Regards
Geogi -
Single Line Data Type to Collection Data type, Problem in Message mapping
I have a csv file, the file has the following lines
hdr1
line1
line2
lineN
hdr2
line1
lineN
I want it to map it to an object with the ff structure
root object 1..1
object 1..1
subobject 0...n
hdr 1..1
line 1...n
How is the mapping of the said data types? Is it possible? Please help....thanks in advanceHi Raymond,
as you have two different strutures:
- HEAD
- ITEM
and the occurences of the structures are not fix (say: e.g. HEADER occurs always 3 times), you need a key-field, which identifies each row as HEAR or ITEM.
If you do not have a key-field, you must design a "generic structure" that fits to both:
HEAD & ITEM. After the conten-conversion into this generic structure you need a message-mapping that identifies your HEADs and ITEMs.
File content conversion sites
/people/venkat.donela/blog/2005/03/02/introduction-to-simplefile-xi-filescenario-and-complete-walk-through-for-starterspart1
/people/venkat.donela/blog/2005/03/03/introduction-to-simple-file-xi-filescenario-and-complete-walk-through-for-starterspart2
/people/arpit.seth/blog/2005/06/02/file-receiver-with-content-conversion
/people/anish.abraham2/blog/2005/06/08/content-conversion-patternrandom-content-in-input-file
/people/shabarish.vijayakumar/blog/2005/08/17/nab-the-tab-file-adapter
/people/venkat.donela/blog/2005/03/02/introduction-to-simplefile-xi-filescenario-and-complete-walk-through-for-starterspart1
/people/venkat.donela/blog/2005/03/03/introduction-to-simple-file-xi-filescenario-and-complete-walk-through-for-starterspart2
/people/venkat.donela/blog/2005/06/08/how-to-send-a-flat-file-with-various-field-lengths-and-variable-substructures-to-xi-30
/people/anish.abraham2/blog/2005/06/08/content-conversion-patternrandom-content-in-input-file
/people/shabarish.vijayakumar/blog/2005/08/17/nab-the-tab-file-adapter
/people/jeyakumar.muthu2/blog/2005/11/29/file-content-conversion-for-unequal-number-of-columns
/people/shabarish.vijayakumar/blog/2006/02/27/content-conversion-the-key-field-problem
/people/michal.krawczyk2/blog/2004/12/15/how-to-send-a-flat-file-with-fixed-lengths-to-xi-30-using-a-central-file-adapter
/people/arpit.seth/blog/2005/06/02/file-receiver-with-content-conversion
http://help.sap.com/saphelp_nw04/helpdata/en/d2/bab440c97f3716e10000000a155106/content.htm
Regards Mario -
Issue with message mapping.
HI All,
I am working on a JDBC-XI-RFC scenario.
I have two data types, two message types and two message interfaces.
now, i have created the message mapping and mapped the fields of both sender and reciever message types.
To test with sample data now, if i press the "test" tab, in the right side, i can see the "Instance" with the sender message type and its fields.
Later i entered the values to test the sample.
Affter this move, i am not able to see anything in the right side of the screen (RESULT)...
What might be the reason for this....???
Please help me......
Regards
PavanHi Pavan,
Start Transformation button is used to execute the object. Its on the left hand bottom of the scrren, near to Trace Level you will find a button named "Start Transformation". Click on this and you will get the output once the transformation is complete.
There is some problem in the Sender message mapping named: sender_mm | http://jdbcrfcns
Please check where is the problem.
Regards,
Subhasha
Maybe you are looking for
-
I have downloaded the creative cloud I have bought illustartor on a 1 year membership I have downloaded illustartor into the creative cloud When I click on the app to open it, I am directed to a web page on the adobe.com website letting me download t
-
Hi Support, I am doing archiving project. Now I am doing tests in development system. The archiving object is MM_EKKO, archiving location is at a directory in same server. In variant I mentioned a single purchase document. The background job is finis
-
My adobe/ PDF documents are password protected. How can I remove the password?
@My adobe/ PDF documents are password protected. How can I remove the password?
-
Best way to recreate iPhone album in iPhoto?
My wife's 4S (running IOS6) has about 500 photos in the camera roll. These have over time been synced to iPhoto but she kept them on her phone also. We'd like to organize them in an iPhoto album so it can be managed from the Mac and get them out of h
-
Number of palette for a shipment
hello can anybody tell me wats meant by the number of palette for a shipment? if you know, can you please tell me how the calculation is done plz?