Commerce Gateway Integration

Hi All. I am trying to use the CG / Biztalk tools for sales order import. I looked at the XML Document-Receive codeunit that comes with Navision. In there it looks like it is ready to go, if I can get Navision to field the messages. I have managed to construct an inbound channel in biztalk which maps my customer’s flat file into one of the standard SO definition files installed with CG, and went on to write an AIC that uses the CG MSMQ busadapter to submit the MSMQ messages. So far so good, as Navision now seems to get the message, but upon closer inspection of the XML Document-Receive codeunit, I find that it is looking for nodes (/NFRequest/RequestType, ) that don’t exist in the standard SO definition files provided! I had seen this and supposed it must be added to the message via a trasformation by the bus adaptor / or the communications component,but apparently that is not so. I have scoured the documentation, and grepped my HD for files containing 'NFRequest’to no avail. Isn’t this documented anywhere? I find it hard to believe that a product as expensive as this comes with less documentation than the average game. Does anyone know how you are to use the out-of-the-box Navision Biztalk Sales Order codeunits? I would appreciate any input! dd

Hi Darryl, I’m a little confused… Are you trying to create sales orders in Navision based on a flat file or are you trying to import sales orders from vendors through a flat file?? Also why did you need to write an AIC for this?? Commerce Gateway provides that AIC needed for integrating your inbound file and Navision.

Hi Thanks for replying. The first question sounds like 2 ways of saying the same thing to me. I get a flat file with several orders, one per line. I run that through Biztalk, mapping it to the standard DocSpecs\Commerce Gateway\NavisionSO.xml definition file provided by Navsion, and then post it to MSMQ. As far as the AIC provided goes, it doesn’t seem to be using MSMQ, which I thought was the prescribed way of posting to Navision. But there is the problem, as there is no real document that teelss me what the correct method is of doing anything, I am trying to reverse engineer the inbound XML order code in the 9900xxxx range of codeunits. So are you inferring that I should be using the TCP port BusAddapter, and forget about MSMQ? Even so, are we supposed to take the provided XML definition files and add the nodes that the standard code is looking for? I am trying to do things right, but there is very little in the way of direction/prescription. Any input is most welcome. I can go ahead and create records in my own staging tables, but that seems pretty stupid with all the existing code there… dd

Hi Darryl, This is the overall flow. I have taken this from the class manual: Navision Application Server has received a BizTalk Sales Order. The communication component raises an event that triggers the DataAvailable event procedure in codeunit 99008528, BizTalk NAS Startup. The DataAvailable event calls the Run procedure in codeunit 99008515, XML Document-Receive to transfer the document to the inbound tables. The following two tables are used for sales documents: · Table 99008500, Inbound Sales Document Header · Table 99008501, Inbound Sales Document Line If you are using automatic acceptance of BizTalk Sales Order documents, the DataAvailable event procedure calls the Run procedure in codeunit 99008529, XML Document-Accept to accept the BizTalk Sales Order. If the BizTalk Sales Order can be accepted, Navision creates a sales order. So what you need to do is map your document to NavisioSO.xml. If you are not altering the NavisionSO.xml document, it should go straight into the inbound tables in Navision. And yes, if you need additional fields other than provided by NavisionSO.xml you need to alter the document and the receive codeunit in Navision along with adding the fields in the inbound tables. Further more you need to alter the accept function on the inbound tables to transfer your custom field to the actual sales orders. Hope this helps you.

Hi all. I thought I should update this topic with what I discovered for the benefit of others to follow. My biggest problem was that I had somehow gotten the idea that I had to write an AIC to submit documents to MSMQ. This was probably due to the numerous postings on the subject. Now I see that it is a potentially cheaper alternative to buying BizTalk and the related modules. I say potentially, because then of course you have to write all the code that come with the Commerce Gateway module. :frowning: Anyway, thanks to those who took the time to try and help out!