none
How to receive an EDIFACT message (This is driving me nuts) RRS feed

  • Question

  • Ok, I have done the following.

    1. Created a schema from the quotes schema that comes with BizTalk (EFACT_D02A_QUOTES).
    2. If I remove the line with UNB (First line) and UNZ (last line) I can validate an Instance.
    3. So I created a receive pipeline in my project with the EDI Disassembler an a XML Validator

    Deploy project

    1 Create rec loc, select my pipeline.
    2. Drop in a file...

    And I get this in the eventlog....

    Event Type: Error
    Event Source: BizTalk Server 2006 EDI
    Event Category: None
    Event ID: 4100
    Date:  7/10/2009
    Time:  3:33:48 PM
    User:  N/A
    Computer: BA34O
    Description:
    The interchange with id 'EC060926', with sender id '8714231145400', receiver id '8714231140214' had structural error. A likely cause is invalid segment terminator due to missing Carriage Line and/or Line Feed seperators. The part after the error is being suspended, refer to Suspended Queue for details

    For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

    And then

    Event Type: Error
    Event Source: BizTalk Server 2006 EDI
    Event Category: None
    Event ID: 8116
    Date:  7/10/2009
    Time:  3:33:48 PM
    User:  N/A
    Computer: BA34O
    Description:
    Error encountered during parsing. The Edifact interchange with id 'EC060926', with sender id '8714231145400', receiver id '8714231140214' had the following errors:

    Error: 1 (Miscellaneous error)
     33: Invalid occurence outside message, package or group


    For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

    However it is exactly the same document as I am validating in Visual studio ( Except for the first and last line )
    If i add a reference to dethe BizTalk EDI solution and use that pipeline i get the same error.

    Just to be clear...

    - I don't want a sequence check
    - I Don't want party resolution
    - I just want the schema to parse to xml

    Am I missing something...


    Well0549
    Friday, July 10, 2009 1:46 PM

Answers

  • The complete solution was to add the correct line termination and stuff, so in de EDI receive pipeline i changed the Default Edifact delimiters to

    0x3A, 0x2B, 0x2E, 0x3F, 0x2A, 0x27, 0x0D, 0x0A

    ( notice the las two 0x0D and 0x0A).

    After I put this into my pipeline everything worked as axpected.

    Thanks guys for the help.


    Well0549
    • Marked as answer by Well0549 Monday, July 13, 2009 7:46 AM
    Monday, July 13, 2009 7:46 AM

All replies

  • Not clear what you are doing. You say you strip off the outer envelop and parse it in visual studio; but when dropping to Biztalk you say "it is exactly the same document as I am validating in Visual studio ( Except for the first and last line )" - What does that mean? Are you dropping with the outer envelope to Biztalk?
    Friday, July 10, 2009 2:25 PM
  • In visual studio, you must remove the envelope segments from an instance before validating the instance or before using it to test a map.

    When dropping an instance for processing through the EDI pipeline you must have the full interchange including the envelope segments.


    Jim -- Pro Mapping in BizTalk 2009, Apress Books, March 23, 2009
    Friday, July 10, 2009 2:38 PM
  • In visual studio, you must remove the envelope segments from an instance before validating the instance or before using it to test a map.

    When dropping an instance for processing through the EDI pipeline you must have the full interchange including the envelope segments.


    Jim -- Pro Mapping in BizTalk 2009, Apress Books, March 23, 2009

    He's saying he's using a custom pipelinebuilt for that message, not the EDI pipeline.  But then it sounds like he is dropping the Message with the EDI envelope and expecting it to parse in his custom pipeline...  The Original Poster needs to better clarify exactly what he is doing. 
    Friday, July 10, 2009 3:52 PM
  • i dropped a message with envelope in the receive folder.

    neither my own nor the edi pipeline would process the message...

    since there are no parties configured, line termination was misconfigured......

    After i added that everything worked
    Well0549
    Friday, July 10, 2009 4:35 PM
  • The complete solution was to add the correct line termination and stuff, so in de EDI receive pipeline i changed the Default Edifact delimiters to

    0x3A, 0x2B, 0x2E, 0x3F, 0x2A, 0x27, 0x0D, 0x0A

    ( notice the las two 0x0D and 0x0A).

    After I put this into my pipeline everything worked as axpected.

    Thanks guys for the help.


    Well0549
    • Marked as answer by Well0549 Monday, July 13, 2009 7:46 AM
    Monday, July 13, 2009 7:46 AM