ÅTGÄRD: EDI-meddelandebearbetning från XML till flat file misslyckas när den innehåller en tom nod i en underslinga i BizTalk Server

Gäller för
BizTalk Server 2016 Branch BizTalk Server 2016 Developer BizTalk Server 2016 Enterprise BizTalk Server 2016 Standard BizTalk Server 2013 R2 Branch BizTalk Server 2013 R2 Developer BizTalk Server 2013 R2 Enterprise BizTalk Server 2013 R2 Standard

Symptom

Anta att du använder EDI (Electronic Data Interchange) i Microsoft BizTalk Server. När du bearbetar EDI-meddelandet från XML (Extensible Markup Language) till en flat fil i EDI-sändningspipelinen kanske du märker att processen misslyckas om meddelandet innehåller en tom nod i en underloop. Noden betecknas till exempel som< ns0:DTM_SubLoop/> i stället för <ns0:DTM_SubLoop></ns0:DTM_SubLoop>.

Dessutom kan du få ett felmeddelande som ser ut ungefär så här:

Obs

  • Loggnamn: Program
  • Källa: BizTalk Server
    Datum: Datum/tid
    Händelse-ID: 5743
    Aktivitetskategori: BizTalk Server
    Nivå:
    Varning nyckelord:
    Klassisk användare: EJ TILLÄMPLIGT
    Dator: Datornamn
    Beskrivning: Adaptern kunde inte överföra meddelandet som går till att skicka porten "SendPort1" med URL:en "FilePath\FileName". Den kommer att överföras igen efter det angivna återförsöksintervallet för den här sändningsporten. Information:"Det går inte att läsa strömmen som produceras av rörledningen.
  • Information: Fel: 1 (fel på segmentnivå)
    SegmentID: AMT
    Position i TS: 36 2:
    Oväntat segment ".
    Händelse-XML: <Händelsen xmlns="FilePath\FileName">  
    <System>    
    <Leverantörsnamn="BizTalk Server" />    
    <EventID Qualifiers="32960">5743</EventID>    
    <Nivå>3</nivå>    
  • <Uppgift>1</Uppgift>
    <Nyckelord>0x80000000000000</Nyckelord>
    <TimeCreated SystemTime="Datum/tid" />    
    <EventRecordID>1159013</EventRecordID>    
    <Kanalprogram></kanal>    
    <Dator>DatorNamn</Dator>    
    <Säkerhet />  
    </System>  
    <Händelsedata (på engelska)>    
    <Data>SendPort1</Data>    
    < <Data>/Data>    
    <Data>Det går inte att läsa dataströmmen som produceras av pipelinen.
     Information: Fel: 1 (fel på segmentnivå) SegmentID: AMT-position i TS: 36 2: Oväntat segment< /Data></EventData></Event>

Lösning

Det här problemet åtgärdas i följande kumulativa uppdateringar för BizTalk Server:

Kumulativ uppdatering 7 för BizTalk Server 2013 R2

Kumulativ uppdatering 3 för BizTalk Server 2016

Status

Microsoft har bekräftat att detta är ett problem i de Microsoft-produkter som anges i avsnittet "Gäller".

Referenser

Om du vill veta mer om service pack och kumulativ uppdateringslista för BizTalk Server klickar du på följande artikelnummer och läser artikeln i Microsoft Knowledge Base:

2555976 Service Pack och kumulativ uppdateringslista för BizTalk Server

Om du vill veta mer om snabbkorrigeringar för BizTalk Server klickar du på följande artikelnummer och läser artikeln i Microsoft Knowledge Base:

2003907 Information om snabbkorrigeringar för BizTalk och Service Pack-support