Skip to main content

Hi,

Trying to get my head around inbound integration from a 3rd Party.

I have an sample inbound message (Screen shot below) the 3rd Party can send us. I’d like to receive the data and then map it to a single custom table taking the relevant data points that have been passed.

 

 

Is that possible to do? Or would I have to create a custom table for each object i.e. carData, deviceData and then into the functions?

Ideally I have data_table and column_a, column_b etc and use the mapping to obtain the data I need.

 

Any help if anyone has done something similar would be appreciated.

 

Cheers Ady

Hi ​@AdrianEgley 

Yes, you can achieve your requirements. You can start with 

  • Look at the smart client's ‘Integration Map - XML’ screen.
  • In the documentation, look at the ‘XML Messages’ chapter.

Cheers!

 


Hi ​@Shneor Cheshin,

 

I have indeed checked the Integration Map XML Screen. I have a Map in place where I can receive a  perform_inbound_integration message with a basic XML from the screenshot above for just the cardData. The moment I add in <general> or <deviceData> data then no data is mapped. So how can that be handled on the same Inbound Map as the Primary Path I have is /carData? Can it handle multiple 

 

So from a XML perspective I need to handle multiple root elements, then map the elements I want inside each of them.

I don’t think the OOTB Documentation would cover that scenario.

 

Ady

 

 


Hi ​@AdrianEgley 

It is hard to analyse screenshots, please add the XML code here in your message.

Please share your configurations. Not sure what you are doing.

Cheers!


Hi ​@Shneor Cheshin,

The XML I am receiving is attached along with a JSON version too.

From a mapping perspective all I am interested in getting at the moment from the data is the carData.

 

That map above is working if I only pass the carData Element through.

But with how their data is structured as soon as I add 

<general>
    <id>105196096</id>
</general>

or 

<deviceData>
    <productName>mega macs X</productName>
    <deviceNo>12486</deviceNo>
</deviceData>

as extra elements then the Map fails.

I am testing this via XML Poster using <perform_inbound_integration>. 

So based on the attached, how can I handle multiple objects i.e. General, carData, deviceData, functions etc.

Ady


Hi ​@AdrianEgley 

I think you are missing a ‘/’ in the Primary path.

Try ‘//carData’

Besides that looks OK to me. But might need some more investigation.

Cheers!


@Shneor Cheshin - I love the most simplistic solutions.

I can now go and bring data in from other elements.

Out of interest that’s the handling XML message in the perform message.

If the 3rd party is sending a payload in JSON format, how can I handle that when the parameter is asking for xml_import?

 

Thanks again, Ady


@AdrianEgley 

I am not 100% sure, but as far as I know, there is a layer in FSM that converts the JSON message into XML format. So it can be processed by the integration layer.

Cheers!


Reply