none
How to send GS02 from 850 back as GS03 in 855? RRS feed

  • Question

  • We have a BizTalk 2010 setup and our partner requires that the GS02 value in the incoming 850 must be returned as the GS03 value in the outgoing 855. Normally I would set this value in the X12 agreement with the party under Transaction Set Settings - Envelopes - GS3. However if I do that, it is hardcoded and I need to GS03 to always be dynamic (what was passed in as GS02 in the 850)
    I found out how to set the 855's GS03 dynamically using the EdiOverride.OverrideEDIHeader and EdiOverride.GS03 in an orchestration. What I dont know how to do is capture the GS02 on the incoming 850 and persist it through my various send and receive ports so it is available and can be set in this orchestration.

    Do I need a new orchestration when I receive the 850 to capture it? If so, how do I persist it so it is available in the orchestration when I send the 855 out?

    If that is now how I should be doing it, please give me the best approach to accomplish this.

    Thanks

    Wednesday, May 16, 2012 1:14 PM

Answers

  • We do something similar with claims. What we did was create a reporting table that will grab all the values from your step 1. Basically, this table will hold informaiton such as sender, receiver, transaction id, and any other information you can use for reporting and for the response file. We even store the xml that comes in just for backup purposes. What you can do is that once you have the data inside the reporting table, on your step 6, you query that table and get all the values you need for your response. This is a very common thing you are trying to do and it is very easy. I do not recomend another orchestration. I just have one orchestration that you will use to drop all your files. You can pull the data out with the same orchestration, or a separate one. Though, I recomend using the same one since it will make things simpler.

    Please Indicate "Mark as Answer" if this Post has Answered the Question

    Wednesday, May 16, 2012 7:19 PM

All replies

  • Yes, in the same orchestration, you can capture all the values you want and assign them to the variables. Below is a sample of how you can do it.

    ISA06 = Incoming_MSG(EDI.ISA06);


    Please Indicate "Mark as Answer" if this Post has Answered the Question

    Wednesday, May 16, 2012 5:29 PM
  • Yes, in the same orchestration, you can capture all the values you want and assign them to the variables. Below is a sample of how you can do it.

    ISA06 = Incoming_MSG(EDI.ISA06);


    So I would need to set up an orchestration that runs immediately after I receive the 850, correct? In that one I would declare a variable and assign the value to it? Then in my orchestration that runs just before I send my 855 I can reference that variable (it will know about it even though it was declared and set in a different orchestration)? How do I declare a variable that will persist between two orchestrations?

    Wednesday, May 16, 2012 5:47 PM
  • Just to be clear, this is how our system currently works...

    1) Incoming 850 EDI get converted to our internal PurchaseOrder xml schema
    2) PurchaseOrder xml file is passed through various send/receive ports
    3) Purchase Order xml file gets passed into orchestration which converts it to our Order xml file
    4) Order xml file gets updated with the order information
    5) Order xml file gets converted to 855 EDI schema
    6) The newly created 855 EDI file gets passed into orchestration which sets the EdiOverride.OverrideEDIHeader and EdiOverride.GS03 to a custom value (right now I am just setting the GS03 to a hardcoded value until I figure out how to set it to the GS02 that was passed in the incoming 850)
    7) Orchestration sends the 855 out via AS2

    What I am thinking is I need another orchestration before step #1 which takes the incoming 850, grabs the GS02 from there, saves it **somewhere** and then continues step 1 (convert it to our PurchaseOrder xml schema). I just dont know how or where to save the GS02 so it will be available in the orchestration in step #6

    Wednesday, May 16, 2012 7:01 PM
  • We do something similar with claims. What we did was create a reporting table that will grab all the values from your step 1. Basically, this table will hold informaiton such as sender, receiver, transaction id, and any other information you can use for reporting and for the response file. We even store the xml that comes in just for backup purposes. What you can do is that once you have the data inside the reporting table, on your step 6, you query that table and get all the values you need for your response. This is a very common thing you are trying to do and it is very easy. I do not recomend another orchestration. I just have one orchestration that you will use to drop all your files. You can pull the data out with the same orchestration, or a separate one. Though, I recomend using the same one since it will make things simpler.

    Please Indicate "Mark as Answer" if this Post has Answered the Question

    Wednesday, May 16, 2012 7:19 PM