cancel
Showing results for 
Search instead for 
Did you mean: 

Issue with Message Mapping Element

YouriC
Participant
0 Kudos

Hi,

I'm currently in a strange situation.
I created a Service Interface from a WSDL in the ESB.
For one operation (retrieveDocument) I have an Element <document> with a type "UBLDocumentType"

In this <document> I can found different UBL structure like Invoice, CreditNote, ...
But no informations about these structures in the WSDL.

I know the UBL format, but I don't know how to use this Type : UBLDocumentType.

Anyway, I tried some mappings :

But without result ...
I tried "Return as XML" in the mapping of the tag <document> ... but finally nothing interesting.
In my backend (ABAP SProxy), fields <UBLVersionID> & <ID> are always empty.

Response looks like (SOAPUI test) :

I want to know if there is a solution without JAVA or XSLT mapping, only with the Visual Message Mapping ?
I can also work with an ABAP Code in my backend system...
But my goal is to use the ESB Message Mapping if I can.

Regards,
Youri

Accepted Solutions (1)

Accepted Solutions (1)

vinaymittal
Contributor
0 Kudos

If you know the UBLDocument structure make a new data type similar to that UBLDocument and generate xsd and then you can play around with the xsd as you will be able to use it then inside your main xsd

YouriC
Participant
0 Kudos

I create my own Data Type and Message Type and I don't use External Message Type. That's right ?

I don't know if it's ok for the Service Interface.

vinaymittal
Contributor

Hi

What i meant was make a new DT only with the fields of missing UBLdocumentType

then generate the xsd for that DT.

then copy the xsd:complexType for UBLDocumentType(DT) and insert it into the wsdl manually may be in a notepad

then re import the wsdl

Answers (2)

Answers (2)

former_member207703
Active Participant
0 Kudos

Hi,

There must be some XSD for UBLDocumentType, you need to import it also and provide that location in External reference for WSDL ED. Please check it.

In WSDL you can get schemaLocation="someLocationName". If its a link, just go to that link and download it. Else, as the WS host team to provide its XSD. As other suggested, you can also able to create DT and export it XSD and import in ED as XSD. Then you get a field called Souce, provide any value there. Then maintain same source in WSDL External Reference.

Regards,

Anoop Rai

sugata_bagchi2
Active Contributor
0 Kudos

UBL Document schemas are very complex in nature, You have to do a mass import of all the UBL schemas provided. After that you also need to make some references to imported schemas. They are inter-dependent. In one of my project I spent 2 days to find the correct external reference for schema I imported 🙂 . You may refer this blog -

https://blogs.sap.com/2013/07/18/importing-xsd-s-schema-with-external-references-step-by-step-guide/

UBL specs -

http://docs.oasis-open.org/ubl/prd3-UBL-2.1/UBL-2.1.pdf

Thanks

Sugata

YouriC
Participant
0 Kudos

Hi Sugata,

I tried this solution, but I found no reference for the DataType : UBLDocumentType (UBL2.1).

I think it's a custom DataType defined by the provider.

I found this in the WSDL :