none
x12 850 Flat File Schema

    Question

  • Hi,

    I am new to biztalk. I want to send the output (X12 850) from BizTalk as text file. Something like this(ISA*00*          *00*          *01*.....). The input is from SQL. I can able to load the data into BizTalk.

    When i use the schema given in the BizTalk 2009 folder and set the output type as flat file, i jst get the XML output in the text file. so how & where to configure the output format to get what i need. X12 Flat file.

    Wednesday, March 10, 2010 12:57 PM

Answers

  • Hi,


    1. will a single mapping between Input(SQL XML data) to output (X12 850) will fit all parties. How to efficiently handle if a particular field mapping varies between parties, which require creating separate map for each parties.
    ---->>Single map can be used to process.If only a single field mapping changes among various parties you can use a assignment shape after the transform shape in the orchestration based on some condition in the decision shape and using xpath provide the value.But if there is a huge difference in assigned fields you can use different maps in diffeent send ports to which you have assigned different parties

    2. For trouble shooting purpose we need those flat file output to be placed in a duplicate location. How to make the BizTalk send a copy of the message to another location.

    >----You can use create many send ports with the same filter to get the same message .

    3. where to include the decision logic to select the vendor(parties) to send to. The decision should be based on a column value from the Input data.

    >>You can assign the Destinationpartynname property for  the messsage  in the orchestration like msgout(edi.destinationpartyname)="value"  ,so that it automatically gets assigned the parties properties .Also if you have a send port for each party automatically the party properties get assigned when the send port receives the message
    http://msdn.microsoft.com/en-us/library/bb259945%28BTS.20%29.aspx


    You can use role links for this purpose also

    http://blog.biztalk-info.com/archive/2006/10/25/BizTalk_Role_Links_explained.aspx


    Thanks

    Alok MCTS Please set answered or vote helpful if the post answered the question
    Friday, March 12, 2010 5:21 AM

All replies

  • Hi,

    To send or receive edi in biztalk you have to use EDireceive or EDIsend pipelines  .So in your case in  the send port properties give EDisend pipeline  and in the file property give output as *.txt.
    Also to assign the edi properties create parties here you can define the isa and gs segments properties

    http://msdn.microsoft.com/en-us/library/bb743276(BTS.10).aspx

    Alok Please set answered or vote helpful if the post answered the question
    Wednesday, March 10, 2010 1:40 PM
  • Thanks for your reply.

    Also please verify these steps are correct.

    1. After mapping I have to add a send pipeline.
    2. In the pipeline Assemble drop EDI Assembler.
    3. Configure other properties like (ISA, GS) in BizTalk Server Administrator.

    Thursday, March 11, 2010 7:48 AM
  • Hi,

    1. After mapping I have to add a send pipeline. ----  Yes This is required to convert the xml message to EDI message
    2. In the pipeline Assemble drop EDI Assembler.--This is not required if you dont have any custom processing to be done.When you  click on new send port option ,in the pipeline option you will see a default edi send pipeline,but if you are not seeing this verify Biztalk edi application is deployed to your server or not.If it is   add reference to it.

    Otherwise as you specified create your own custom pipeline and add the edi asembler in the assembler stage.Use this pipeline in the send port
    3. Configure other properties like (ISA, GS) in BizTalk Server Administrator.---Yes this properties give the values to the isa and gs segments if you dont specify it will take the global edi properties

    Alok MCTS Please set answered or vote helpful if the post answered the question
    • Marked as answer by Apsar Thursday, March 11, 2010 12:46 PM
    • Unmarked as answer by Apsar Thursday, March 11, 2010 2:20 PM
    Thursday, March 11, 2010 9:51 AM
  • create sendport
    create party where you can assign the send port otherwise later you can assign the party at send port level

    Right click Party - select EDI properties

    EDI properties will populate

    Go to X12 Interchange Processing Properties under X12 properties
    fill ISA5-6 & ISA7-8

    Then select ISA segment Definition
    fill ISA5-6 & ISA7-8

    at last, GS and ST segment Definition
    fill values for "For ST1 to GS8"

    Note : Make sure you BizTalk EDI Application is running up and also your project have to refer.


    Thanks, Raja
    Thursday, March 11, 2010 9:58 AM
  • Thanks Alok,

    I am bit releived to get this answered. I have few more clarifications. sorry to bother.

    Another requirement is to create multiple parties. I know from Admistration Console we can add/configure multiple parties. For every parties we are going to send 850. My questions are,

    1. will a single mapping between Input(SQL XML data) to output (X12 850) will fit all parties. How to efficiently handle if a particular field mapping varies between parties, which require creating seperate map for each parties.

    2. For trouble shooting purpose we need those flat file output to be placed in a duplicate location. How to make the BizTalk send a copy of the message to another location.

    3. where to include the decision logic to select the vendor(parties) to send to. The decision should be based on a column value from the Input data.

    thanks.
    Thursday, March 11, 2010 1:46 PM
  • Hi,


    1. will a single mapping between Input(SQL XML data) to output (X12 850) will fit all parties. How to efficiently handle if a particular field mapping varies between parties, which require creating separate map for each parties.
    ---->>Single map can be used to process.If only a single field mapping changes among various parties you can use a assignment shape after the transform shape in the orchestration based on some condition in the decision shape and using xpath provide the value.But if there is a huge difference in assigned fields you can use different maps in diffeent send ports to which you have assigned different parties

    2. For trouble shooting purpose we need those flat file output to be placed in a duplicate location. How to make the BizTalk send a copy of the message to another location.

    >----You can use create many send ports with the same filter to get the same message .

    3. where to include the decision logic to select the vendor(parties) to send to. The decision should be based on a column value from the Input data.

    >>You can assign the Destinationpartynname property for  the messsage  in the orchestration like msgout(edi.destinationpartyname)="value"  ,so that it automatically gets assigned the parties properties .Also if you have a send port for each party automatically the party properties get assigned when the send port receives the message
    http://msdn.microsoft.com/en-us/library/bb259945%28BTS.20%29.aspx


    You can use role links for this purpose also

    http://blog.biztalk-info.com/archive/2006/10/25/BizTalk_Role_Links_explained.aspx


    Thanks

    Alok MCTS Please set answered or vote helpful if the post answered the question
    Friday, March 12, 2010 5:21 AM
  • Can you please explain me how & where to set
    msgout(edi.destinationpartyname)="value" in detail. I tried few things & unable to find it.

    I want to do this in BizTalk2009

    Thanks in advance...
    apsar
    Monday, March 15, 2010 7:45 AM
  • Hi,

    Add reference to the assembly Microsoft.BizTalk.Edi.BaseArtifacts.dll

    in C:\Program Files (x86)\Microsoft BizTalk Server 2009  or
    C:\Program Files\Microsoft BizTalk Server 2009


    thanks
    Alok MCTS Please set answered or vote helpful if the post answered the question
    Monday, March 15, 2010 10:47 AM