none
Receive Unicode characters in EDI 850 and DESADV

    Question

  • Hi ,

    Please help me solve this issue.

    We are receiving EDI 945 having greek and russian characters in the address loop for the document.This causing a erro in EDIReceive pipeline causing the message to get suspended with the foolwing error.

    "Microsoft.BizTalk.Edi.MessageCore" in receive pipeline "Microsoft.BizTalk.Edi.DefaultPipelines.EdiReceive, Microsoft.BizTalk.Edi.EdiPipelines, Version=3.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" is suspended due to the following error:

    Not in valid state.

    The EDI Interchange as receiver has utf8/unicode in envelope generation tab for thr party.The receive EDI pipeline has  UTF8 specified as charset .

    When i process a file without the unicode characters it gets processed.

     


    Alok
    Friday, October 21, 2011 1:01 PM

Answers

  • I have tried it myself now for Edifact.

    I am pretty sure that your edifact and x12 files are saved as unicode and not UTF-8. 

    Apparently non of the encodings supports this, at least not for edifact. Edifact is ONLY supporting UTF-8.

    I am not 100% sure about X12. If X12 should work with unicode, I guess you should change "CharacterSet" on the EDIReceive pipeline component to UTF-16 (Note: haven't tried this myself since I don't have any X12 samples right now).

    Morten la Cour 

    Friday, October 21, 2011 7:12 PM

All replies

  • EDIFACT:

    Edifact is self describing  and therefore the encoding needs to be supplied in the UNB segment. If the sender of an EDIFACT document wants to send UTF-8 characters the encoding needs to be at least UNOD.

    UNB+UNOD....

     

    X12

    X12 is not self describing  and therefore needs to be configured as this link describes.

    http://msdn.microsoft.com/en-us/library/bb246115(v=bts.70).aspx

     

    Morten la Cour

    Friday, October 21, 2011 1:36 PM
  • Hi La Cour,

    I checked the pipeline properties and in charset utf8 is set for the x12 interchange.But this setup is failing a file with  unicode characters.Can you specify which character set encoding should be set to allow  greek,russian,chinese,western european characters.

     Also using this segment also is failing a EDIFACT message UNB+UNOD:3+

    I am using biztalk server 2009


    Alok
    Friday, October 21, 2011 2:34 PM
  • Can you submit the two examples and I will try to run them through my 2009 Server. Also specify what encoding the two files was saved as.

     

    Morten la Cour

    Friday, October 21, 2011 3:03 PM
  • I have tried it myself now for Edifact.

    I am pretty sure that your edifact and x12 files are saved as unicode and not UTF-8. 

    Apparently non of the encodings supports this, at least not for edifact. Edifact is ONLY supporting UTF-8.

    I am not 100% sure about X12. If X12 should work with unicode, I guess you should change "CharacterSet" on the EDIReceive pipeline component to UTF-16 (Note: haven't tried this myself since I don't have any X12 samples right now).

    Morten la Cour 

    Friday, October 21, 2011 7:12 PM
  • I tried saving the files in UTF-8 and then posted it to biztalk.This file were posted sucessfully.

    So  i should ask the partners who are sending us the EDI files to save them in UTF-8 format and post to us.

    Only Concern will this solution applicable to all languages .  .

    Thanks

    alok


    Alok
    Tuesday, October 25, 2011 7:08 AM
  • UTF-8 holds all the characters in the unicode character set, so it will be applicable to all languages.

    Also If your partners cannot save as UTF-8, I believe you could make some sort of "encoding-changer" pipeline component and apply that in the decode stage of a recieve pipeline before the message hits the EDI-disassembler. 

    But of course if the partners can save them correctly this will be the preferred choice, since saving them as unicode does not conform with the standard.

     

    Morten la Cour


    • Edited by la Cour Tuesday, October 25, 2011 10:48 AM
    Tuesday, October 25, 2011 8:58 AM