none
how to add Multiple UNH in EDIFACT RRS feed

  • Question

  • is it possible to add multiple UNH in single EDIFACET schema.

    read the multiple UNH in input file then I have to save the output into oracleDB. so for each UNH,i have to save the output based on conditions.

    sample Input:

    ************

    UNB+UNOA:1+UAODSCT:2+MSC+090905:1813+0741’
    UNH+1+CODECO:D:95B:UN:ITG14’
    BGM+34:::GATE IN REPORT++9’
    TDT+20+46A+1++MSC:172:20+++ZDFE6:103:11:MSCPIONEER’
    RFF+VON:46A’
    LOC+9+UAODS:139:6+HPC-UKRAINA:TER:ZZZ’
    DTM+133:200909101500:203’
    NAD+MS+HPC-UKRAINA’
    NAD+CF+MSC:160:20’
    EQD+CN+MEDU1249325+22G1:102:5++2+5’
    TMD+3’
    DTM+7:200909051723:203’
    LOC+165+UAODS:139:ZZZ+HPC-UKRAINA:TER:ZZZ’
    MEA+AAE+G+KGM:22250’
    SEL+6054443+SH’
    SEL+6123013’
    TDT+1++3+++++TRUCK:147’
    LOC+11+TRIST:139:6’
    EQD+CN+MEDU1704780+22G1:102:5++2+5’
    TMD+3’
    DTM+7:200909051728:203’
    LOC+165+UAODS:139:ZZZ+HPC-UKRAINA:TER:ZZZ’
    MEA+AAE+G+KGM:29290’
    SEL+6123070+SH’
    TDT+1++3+++++TRUCK:147’
    LOC+11+TRIST:139:6’
    EQD+CN+GLDU5094683+22G1:102:5++2+5’
    TMD+3’
    DTM+7:200909051753:203’
    LOC+165+UAODS:139:ZZZ+HPC-UKRAINA:TER:ZZZ’
    MEA+AAE+G+KGM:29080’
    SEL+6123062+SH’
    TDT+1++3+++++TRUCK:147’
    LOC+11+TRIST:139:6’
    CNT+16:3’
    UNT+35+1’
    UNH+2+CODECO:D:95B:UN:ITG14’
    BGM+36:::GATE OUT REPORT++9’
    TDT+20+29R+1++MSC:172:20+++V7EK4:103:11:MSCDIMAN’
    RFF+VON:29R’
    LOC+11+UAODS:139:6+HPC-UKRAINA:TER:ZZZ’
    DTM+178:200908250805:203’
    DTM+133:200908270630:203’
    NAD+MS+HPC-UKRAINA’
    NAD+CF+MSC:160:20’
    EQD+CN+MSCU1664145+22G1:102:5++3+5’
    DTM+7:200909051733:203’
    LOC+165+UAODS:139:ZZZ+HPC-UKRAINA:TER:ZZZ’
    MEA+AAE+G+KGM:26489’
    SEL+01063995’
    SEL+3174501+SH’
    TDT+1++3+++++TRUCK:147’
    LOC+9+TRIST:139:6’
    EQD+CN+MSCU9717489+45G1:102:5++3+5’
    DTM+7:200909051748:203’
    LOC+165+UAODS:139:ZZZ+HPC-UKRAINA:TER:ZZZ’
    MEA+AAE+G+KGM:24109’
    SEL+75876+SH’
    SEL+006377’
    TDT+1++3+++++TRUCK:147’
    LOC+9+TRIST:139:6’
    EQD+CN+TGHU2544016+22G1:102:5++3+5’
    DTM+7:200909051753:203’
    LOC+165+UAODS:139:ZZZ+HPC-UKRAINA:TER:ZZZ’
    MEA+AAE+G+KGM:8450’
    SEL+0066900+O’
    SEL+317042+SH’
    TDT+1++3+++++TRUCK:147’
    LOC+9+TRIST:139:6’
    CNT+16:3’
    UNT+35+2’
    UNZ+2+0741’

    I have the following questions.

    1.is it possible to add multiple UNH in single schema

    2.if yes, do I need to use EDI batches

    3..do I need to configure any other settings in map/orchestration.

    4.for each UNH,i should pass the output to oracledb..so does looping functoid  can achieve this

    5.In receive pipeline have to use edibatchrcvpipeline

    correct me if I am wrong. Please guide me.


    Thanks, Archana

    Tuesday, June 11, 2013 9:55 AM

Answers

  • The default setting for Detect Multiple Interchanges is True so no worries there.  In fact, downstream, you really wouldn't notice any difference other than the value of some of the EDI context properties would change.  However, that's only related to having multiple UNB's in a single stream.

    Multiple UNG/UNH are absolutely supported.  How they're handled, debatching wise, is an Agreement property.  The default is to split on UNH/ST so you'd get one message per UNH/ST.

    As for the second question, if you want to do multiple updates, as in one per EQD from the same message, then you actually have a Composite Operation for the WCF Oracle adapter.  The wizard generates the schemas assuming a single Operation.  It's the same with SQL Server.

    See http://msdn.microsoft.com/en-US/library/dd788415%28v=BTS.10%29.aspx

    • Marked as answer by Pengzhen Song Wednesday, June 19, 2013 8:41 AM
    Tuesday, June 11, 2013 12:57 PM

All replies

  • Yes, it's perfectly possible to receive that message in BizTalk. You can use the standard EdiReceive pipeline of BizTalk, that pipeline will split your incoming batch into multiple messages. (Do not forget to put the property - Detect Multiple Interchanges to True). You can then map each of those messages to your OracleDb schema and store it in the database.

     

    More information about receiving multiple interchanges in a single message can be found here: http://msdn.microsoft.com/en-us/library/bb728134%28v=bts.10%29.aspx


    Glenn Colpaert - MCTS BizTalk Server - Blog : http://blog.codit.eu

    Tuesday, June 11, 2013 10:27 AM
  • thanks GlennColpaert.i have one more question. Please guide me

    how to set in mapping that..

    for each message[EQD],single entry[insert] should be present in oracle table. What functiod perfectly match my scenario.

    please refer my post.

    http://social.msdn.microsoft.com/Forums/en-US/biztalkgeneral/thread/781ac045-ba60-4d47-82e5-fd4dcd3d5c6b

    i am totally new to BizTalk.


    Thanks, Archana


    Tuesday, June 11, 2013 11:08 AM
  • The default setting for Detect Multiple Interchanges is True so no worries there.  In fact, downstream, you really wouldn't notice any difference other than the value of some of the EDI context properties would change.  However, that's only related to having multiple UNB's in a single stream.

    Multiple UNG/UNH are absolutely supported.  How they're handled, debatching wise, is an Agreement property.  The default is to split on UNH/ST so you'd get one message per UNH/ST.

    As for the second question, if you want to do multiple updates, as in one per EQD from the same message, then you actually have a Composite Operation for the WCF Oracle adapter.  The wizard generates the schemas assuming a single Operation.  It's the same with SQL Server.

    See http://msdn.microsoft.com/en-US/library/dd788415%28v=BTS.10%29.aspx

    • Marked as answer by Pengzhen Song Wednesday, June 19, 2013 8:41 AM
    Tuesday, June 11, 2013 12:57 PM