Resolvendo Erro Receive Pipeline Flat File: Unexpected data found while looking for: '\r\n'

Essa semana, aprendi que trabalhar com o Flat File nao é facil!

Ao receber um arquivo txt, ocorreu o seguinte erro no Event Viewer:

There was a failure executing the receive pipeline: "SampleFlatFile.Pipeline.rcvSampleFF, SampleFlatFile, Version=1.0.0.0, Culture=neutral, PublicKeyToken=cae7a2e7eb041c7b" Source: "Flat file disassembler" Receive Port: "RP_SampleFF" URI: "C:\PROJETOS\IN\*.txt" Reason: Unexpected data found while looking for:
'\r\n'
The current definition being parsed is Produtos. The stream offset where the error occured is 554. The line number where the error occured is 25. The column where the error occured is 14.

E a Receive Port ficou suspensa:

The Messaging Engine encountered an error during the processing of one or more inbound messages.

Causa:

Isso acontece quando o biztalk não consegue entender o final da mensagem. Geralmente quando não existe um enter no final do arquivo. Exemplo:

Arquivo que causa o erro:

image

Arquivo que o biztalk reconhece:

image

Aqui existe um enter no final da linha 10.

Solução:

Caso a propriedade Child Order do schema esteja como Infix, alterar a propriedade Allow Message Breakup at Infix Root para Yes.

image

Assim o Biztalk vai aceitar aquele primeiro arquivo sem o enter na linha 10.

Se essa opção estiver Yes e vir um arquivo com um enter no final, como o segundo exemplo, vai provocar o seguinte erro:

There was a failure executing the receive pipeline: "SampleFlatFile.Pipeline.rcvSampleFF, SampleFlatFile, Version=1.0.0.0, Culture=neutral, PublicKeyToken=cae7a2e7eb041c7b" Source: "Flat file disassembler" Receive Port: "RP_SampleFF" URI: "C:\PROJETOS\IN\*.txt" Reason: The remaining stream has unrecognizable data.

É, não se pode ter tudo nessa vida, =/ e conforme a necessidade, devemos escolher habilitar ou não, a propriedade Allow Message Breakup at Infix Root .

Espero que essa dica seja útil. =D

Seja o primeiro a comentar ;)

Postar um comentário

BizTalk 360

Visitas

Arquivo do blog