Pergunta

Considere o seguinte PV1 segmento em um HL7v2 mensagem.

PV1|1|E|MYLOC||||55555^Doctor^Doc^D^^Dr^^DOCT|||||||HO||||ER||BC|||||||||||||||||||VALUE||REG|||201406270627||||||||55555^Doctor^Secondary^H^^Dr^^DOCT2|

Há 52 campos de lá.Nossa Meditech sistema envia sempre fora de campo 52 (PV1_52_OtherHealthcareProvider) nesta interface, que é representado aqui pelo 55555^Doctor^Secondary^H^^Dr^^DOCT2.Eu tenho que configurar para que Permitir Delimitadores À Direita é SOBRE.Como você pode ver, há um delimitador à direita neste segmento, no entanto isto é, após o final do campo no segmento, que passa a conter os dados mostrados acima.

Este será sempre o caso, Meditech é sempre acrescentando um delimitador à direita nesta interface.

Nenhum dos outros segmentos de dados no campo final, por isso é que ainda não executar para esse problema com eles, apesar deles terem delimitadores à direita.No PV1 segmento, estamos recebendo uma mensagem de erro:

Error happened in body during parsing 
Error # 1
Segment Id: PV1
Sequence Number: 1
Error Number: 100
Error Description: Segment sequence error (Unexpected end of message body found)
Encoding System: HL79999

Acontece que este é devido ao delimitador à direita, porque remover manualmente o delimitador e reenviando, o erro não ocorre.Também se eu modificar o esquema para adicionar um manequim (PV1_53_ExtraField) de campo, a mensagem é permitido.

A minha pergunta é esta:O que é o comportamento esperado de permitir delimitadores à direita neste caso?É suposto para permitir que um delimitador à direita em todos casos, ou não se aplicam somente para os segmentos onde o campo final é nula de dados (ou seja:campos extras no final do segmento)?

Foi útil?

Solução

No pipeline de recebimento que você não pode ter o delimitador após o último campo no segmento.Parece que este é um bug no HL7 acelerador.esta propriedade parece ter algum efeito em enviar apenas do lado que também só se dentro de delimitadores são definidos pelo número de campos.

Gostaria de sugerir para lidar com isso de receber o componente de pipeline e elevá-la com a de suporte da Microsoft

Outras dicas

Embora ainda Mensagens HL7 Versão Padrão 2.6 não alargar o PV1 segmento com outros campos e, portanto, seu código original foi correta do ponto de apoio de apenas 52 segmento de campos

1. É perfeitamente válido para estender o protocolo de mensagens HL7 com campos personalizados e segmentos personalizados, proporcionando que esta extensão é acordado por todas as partes envolvidas e documentado no HL7 declaração de conformidade (você pode encontrar algumas explicações links aqui e aqui)

2. A sua análise e o processamento de mensagens de código deve ser compatível com os antigos e algumas versões futuras do protocolo.O número de segmentos, os seus nomes e a ordem e o número de campos e o número de componentes em campos pode ser determinada e tratada de forma dinâmica.A sintaxe de mensagem foi projetado para oferecer suporte a ele.Codificar coisas como "haverá 52 campos na PV1 segmento, independentemente do que o HL7 versão em campo MSH-12 contém" não é muito boa abordagem, pois não irá escala

..O que é o comportamento esperado de permitir delimitadores à direita, neste caso?..

O comportamento esperado é que o aplicativo não irá falhar, não vai bloquear o processamento de dados, se os dados viajam através de seu código para outro sistema, você não deve soltar e remover os campos que você não entende (é mais ou menos escrito no HL7 especificação em algum lugar..)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top