on 04-18-2016 11:09 AM
Hi Experts.
I've got a new software version of a pre existing external software for a pre existing interface. This existing interface didn't do what the business wanted (split tax over line items), so I've decided to develop a new Interface.
The interfaces is a Flat file (tab csv) to proxy. But just to get it working/ testing, I'm initially going to do CSV to XML, just to prove my new SWCV works and my content conversion is OK.
IN the SLD I created a new Software component version, the original is called saffron v.1, this new one is called saffron v2.0. In SLD I assigned the business sytems that exist in SWCV 1.0 to 2.0 as ultimately I don't think I should have to create new instances of the TS/BS. Correct me if I am wrong.
The Sender:
The receiver:
I imported the New SWCV into ESR. I began creating the DT/MT and SI for the sender, then the same for the receiver. I've done the basic mapping/ OM.
I've activated it all. And am now in the Business system and when I double click on the business system name, to see the interfaces in the sender tab I can see the SI that's assigned to my new business system. But when clicking the receiver tab I cannot see that new SI. I was able to create a Integrated Config for the scenario / test it. But it bothers me that I cant see the receiver SI in the business system....This is my first question -
Should I be able to see it?
Secondly, I wasn't sure about the content conversion and running in a test shows me I've messed this up a bit. My source fields:
My sample Invoice file:
The file will contain multiple invoices and the field that will tell PI it is a new line is the Value 'INV'
My XSD for the source MT is attached as a txt file.
My File content conversion is split over two images due to the length of the FCC:
I ran in a test file and am getting the error:
This suggests that the xml.keyfieldName is missing, but I'm not sure what should be that field in my dt/mt's? I've had a look at existing FCC we've got and nothing states the xml.keyfieldName ?
Many thanks.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Thanks for your help so far.
Interesting. It picks the file up. But it isn't writing it out to an XML as per my Integrated Config.
The message is written to a archive director as specified. But not written out by the receiver file adaptor.
In mesmon its said its picked up the file:
But its not in my outbound/receiver directory.
I've tried opening all the design, re reading operations, changed the config description then saved to reactivate it. But still not getting an outbound.
I thought id made a mistake and removed column 1 in teh source file that has the X / Gl / INV / but ran this in and got the same error.
I then thought I might have the key fields specified incorrectly so made them match the names in the data file... So changed the fcc so the key field name included inv, gl and tax..
#
But still no luck.
George ,
Try the below things.
Keep the recordset as *
Add the keyfield in the structure or ignore it using the below parameter.
NameA.keyFieldInStructure
Converting Text Format in the Sender File/FTP Adapter to XML - Advanced Adapter Engine - SAP Library
I was advised to try doing 1 level at a time, so I rebuild the dt/mt and did the inv level. I got the inv level working and have ingested a utf8 file and exported a xml....
As seen here:
However, when I created a 2nd instance, using 2 tiers, the INV and GL. When running the file in I only get the GL stuff out and the message sits in Mesmon with the generic mapping error:
It suggests that a values missing in the queue context. So I went into the MesMapping and ran through a set of tests. It passed data for all fields, xml tags included. So not sure if this is a red herring.
When I examine the xml here, it has also only parsed the GL tags and missed the INV header tag:
Which is odd, as in the 1 tier it passed INV ok. At least it passes multiple instances of GL tag, which is a bonus.
Some more input would be gratefully received...
I've tried that. It didn't work.
When I set it to 1, it worked ok. Odd. So I checked my source DT/MT and noticed that my Source DT and MT were incorrectly bounded. I.e. I had the fields within the INV se to 1 - unbounded, but they should be set to 1, and not unbounded. The recordset file should only be the field set to 1-unbounded as I am expecting multiple files per .csv file.
It still doesn't work and am now getting a mapping error...
I don't understand as my mapping is 1:1 direct mapping:
My source file has no gaps, no misplaced pipes, so should be OK . Cant understand why its saying that it cant create the target element /ns1:saffroninvoicefile/INV and that values are missing. when theyre quite clearly being passed.. As per:
And as you can see my queue context is passing the value..
Any ideas?
HI
Thanks for your persistence with this, much appreciated !
When I post with Recordset Structure for the GL field sets to 1, It works, as per the image below, my xml.
But as I want to have more than 1 GL node I have to have the recordset structure set to *.
That is when I get the mapping error.
My FCC is:
Hi
Yes as per the image, I do have it like: INV,1,GL,*
when I specify it like that is when I get the mapping issue !! When I specify it as INV,1,GL1, it works but I can then only have 1 GL line item when I am expecting to receive many.
OK that makes sense. I just find it a bit odd that when adding in the GL stuff It causes the INV bit to error when alone, the INV piece works...
Anyway, I checked the INV bit. and the mapping works with the GL data in the Messagemapping test:
George,
Last try ,compare with the below link.I am not finding anything wrong,Just check once
User | Count |
---|---|
86 | |
10 | |
10 | |
9 | |
6 | |
6 | |
6 | |
5 | |
4 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.