Use um nó do GenericHL7Output para preparar uma mensagem para o aplicativo de destino.
Recomenda-se que o nó HL7DFDLOutput seja usado para aplicativos novos e atualizados, se possível, pois o modelo de mensagem DFDL apresenta os benefícios a seguir.
Para obter informações adicionais sobre o nó HL7DFDLOutput, consulte Nó HL7DFDLOutput.
O nó do GenericHL7Output recebe uma mensagem do HL7 no domínio MRM e abre conexões com um aplicativo de destino que esteja atendendo em uma porta TCP/IP. Quando a conexão é estabelecida, a mensagem do HL7 é enviada com um fim de registro que é configurado para o delimitador de propriedade Bytes MLLP à direita, que possui um valor padrão de 1C0D. Se os dados não tiverem sido enviados com sucesso dentro do limite de tempo especificado pela propriedade Tempo limite ao enviar registro de dados (segundos) do nó, a mensagem é passada para o Terminal de Falha.
Após enviar a mensagem com sucesso, o nó do GenericHL7Output aguarda uma confirmação (ACK) do aplicativo de destino. Uma confirmação do HL7 é dividida em bytes MLLP, analisada e o código de retorno é verificado. Se ocorrer um erro no nó do GenericHL7Output, a mensagem é passada para o terminal Nova Tentativa de Log ou o terminal Falha.
Se a entrega for bem-sucedida e um código AR for retornado na confirmação, a mensagem será passada para o terminal Nova Tentativa de Log se o limite de novas tentativas não tiver sido excedido.
Se a mensagem for entregue e um código AE for retornado na reconhecimento ou se nenhuma confirmação válida for recebida, a mensagem será passada para o terminal Falha.
Se a mensagem não for entregue, será presumido que o destino não está disponível, a mensagem será passada para o terminal Nova Tentativa de Log se o limite de nova tentativa não tiver sido excedido.
Se o terminal Nova Tentativa de Log não estiver conectado ou se o caminho terminar com sucesso, a entrega será tentada novamente. Se o terminal Nova Tentativa de Log estiver conectado e uma exceção for lançada como recebimento de dados, a mensagem não será tentada novamente e a mensagem será passada para o terminal Falha.
Se o terminal Falha não estiver conectado, uma exceção será lançada.
Para obter informações sobre o HL7, consulte Health Level Seven International.
O nó do GenericHL7Output está contido na gaveta Assistência Médica da paleta de nó do fluxo de mensagens e será representado no IBM Integration Toolkit pelo ícone a seguir:
Um exemplo de como usar o nó do GenericHL7Output é mostrado no padrão integrado do Assistência Médica: HL7 para HL7 na categoria de Assistência Médica no visualização Explorador de Padrões.
Quando um nó do GenericHL7Output é usado em um fluxo de mensagens, o nó espera localizar uma mensagem na árvore MRM que foi analisada na mensagem do HL7 no Conjunto de mensagens HL7v25P. Se não estiver certo de que as mensagens passadas para o nó do GenericHL7Output estão corretas, é possível configurar a propriedade Validar para forçar a análise antes de o processamento começar. Se a mensagem for enviada com sucesso para o destino configurado e uma confirmação do processamento bem-sucedido for retornada do destino, a confirmação será passada para o terminal Externo do nó.
Se desejar que o nó tente enviar a mensagem novamente após uma falha, você deverá configurar o valor da propriedade Limite de novas tentativas para o número de vezes que deseja que o nó tente enviar a mensagem. Se também desejar registrar cada nova tentativa, você deverá selecionar a propriedade Nova tentativa de log. Quando a propriedade Nova tentativa de log for selecionada, a mensagem será passada para o terminal Nova Tentativa de Log para cada tentativa. O ambiente retém os valores que podem ser usados em sua mensagem de log, consulte a tabela Ambiente a seguir.
Se conectar o terminal Nova Tentativa de Log, o encadeamento do fluxo de mensagens terminará com sucesso e novas tentativas adicionais serão feitas. Se exceções não capturadas forem lançadas neste encadeamento, as novas tentativas não continuarão.
Se uma mensagem for passada para o terminal Falha, seu fluxo de mensagens atuará de acordo com seus procedimentos de manipulação de erros. O terminal Falha deverá estar conectado para que o erro seja registrado e os dados salvos, uma exceção lançada ou ambos. Se o terminal Falha não estiver conectado, o erro causará a falha silenciosa, nenhuma exceção será lançada e nenhum evento será registrado no log de eventos. Para códigos de erro e outras informações que podem ser usados em sua manipulação de erros, consulte a tabela Erro a seguir.
Se tiver ocorrido uma falha no nó do GenericHL7Output, a mensagem será passada para o terminal Falha. LocalEnvironment.HL7 contém os campos mostrados na tabela Ambiente a seguir. Esses campos dão informações que são usadas para construir uma confirmação negativa (NACK) ou criar uma mensagem de erro.
Campo | Descrição |
---|---|
FlowMilestoneReached | Indica onde ocorreu o erro |
Tentar Novamente | Indica se esta ação pode ser tentada novamente |
ErrorCondition | Dá uma descrição textual do erro |
Tentativa | Se o erro ocorrer em um loop de nova tentativa, esta variável conterá o texto a seguir: Attempt <i> of <n> |
RetryCount | Indica a nova tentativa atual |
RetryLimit | Indica o número de novas tentativas permitidas |
A tabela Erro a seguir indica os códigos de erro que podem ocorrer.
Erro | Terminal | Tentar Novamente | Código | Texto do erro |
---|---|---|---|---|
O nó falhou ao analisar a mensagem recebida usando o Conjunto de mensagens HL7v25P e o formato da mensagem do HL7. | Defeito | Não | BADHL7 MESSAGE | A mensagem HL7 recebida não pode ser analisada. |
O nó falhou ao enviar a mensagem para o destino configurado. | Nova Tentativa de Log | Sim | SENDHL7 | Erro de TCP/IP. A mensagem HL7 não foi enviada. |
O nó falhou ao analisar a confirmação. | Defeito | Não | ACKPARSE ERROR | Erro de MSH enquanto a mensagem ACK estava sendo analisada. |
A confirmação foi recebida, mas nenhum código de confirmação está presente. | Defeito | Não | ACKERROR | Erro de análise ou validação de MSA: MSA 1. O código de confirmação é nulo. A ACK contida na mensagem de erro a seguir: error_message |
A confirmação foi recebida, mas nenhum ID de controle de mensagem está presente. | Defeito | Não | ACKERROR | Erro de análise ou validação de MSA: MSA 2. O MessageControlID é nulo. A ACK enviou a mensagem de erro a seguir: error_message |
Nenhuma confirmação foi recebida no período de tempo limite. | Defeito | Não | TIMEOUT | O nó falhou ao receber a mensagem ACK no tempo limite especificado. |
O nó falhou ao receber a confirmação. | Defeito | Não | RECEIVE ACK | Erro de TCPIP. O nó falhou ao receber a mensagem ACK. |
O nó tentou entregar a mensagem, mas o nó atingiu o limite de novas tentativas configurado. | Defeito | Não | SENDHL7 TOOMANY REPEATS | O nó falhou ao receber a mensagem ACK. |
O nó recebeu confirmações AR, mas o nó atingiu o limite de nova tentativa configurado. | Defeito | Não | ACKAR TOOMANY REPEATS | O nó tentou enviar a mensagem e não pode entregar a mensagem com sucesso. |
Quando tiver incluído uma instância de um nó do GenericHL7Output em um fluxo de mensagens, será possível configurá-lo
Todas as propriedades obrigatórias para as quais é necessário inserir um valor (propriedades que não possuem um valor-padrão definido) são marcadas com um asterisco.
Terminal | Descrição |
---|---|
In | O terminal de entrada que aceita uma mensagem do HL7 para que o nó processe. |
Defeito | O terminal de saída ao qual a mensagem é encaminhada se o nó falhar em enviar com sucesso a mensagem e falhar em receber uma confirmação de processamento bem-sucedido. |
Out | O terminal de saída ao qual a confirmação é encaminhada se uma mensagem tiver sido enviada com sucesso ao destino e uma confirmação de processamento bem-sucedido for recebida. |
Nova Tentativa de Log | O terminal de saída ao qual a mensagem é encaminhada se o nó falhar em envia com sucesso a mensagem ou falhar em receber uma confirmação de processamento bem-sucedido e a contagem de nova tentativa não estiver excedida. |
As tabelas a seguir descrevem as propriedades do nó. A coluna titulada M indica se a propriedade é obrigatória (marcada com um asterisco se você dever inserir um valor quando nenhum padrão estiver definido); a coluna titulada C indica se a propriedade é configurável (é possível alterar o valor ao incluir o fluxo de mensagens no arquivo de archive do broker (BAR) para implementá-lo).
Propriedade | M | A | O padrão | Descrição |
---|---|---|---|---|
Nome de Nó | Não | Não | GenericHL7Output | O nome do nó. |
Descrição Breve | Não | Não | Uma breve descrição do nó. | |
Descrição detalhada | Não | Não | Texto que descreve a finalidade do nó no fluxo de mensagens. |
Propriedade | M | A | O padrão | Descrição |
---|---|---|---|---|
Detalhes da Conexão | Sim | SIM | localhost:2222 | A conexão de TCP/IP para o aplicativo de destino no formato hostname:port |
Registro de dados de envio de tempo limite (segundos) | Sim | Sim | 60 | O tempo em segundos que o nó aguarda ao tentar enviar dados ou receber uma confirmação. |
Bytes MLLP à esquerda | Sim | SIM | 0B | O byte MLLP à esquerda, que é incluído em registros de saída do HL7 e removidos de confirmações recebidas. |
Limite de nova tentativa | Sim | Sim | 5 | O número máximo de vezes que o nó tenta entregar uma mensagem do HL7 ao aplicativo de destino. |
Nova tentativa de log | Sim | Sim | Selecionados | Especifica se cada tentativa de entregar uma mensagem é passada para o terminal de Nova Tentativa de Log para permitir a criação de log. |
Propriedade | M | A | O padrão | Descrição |
---|---|---|---|---|
Delimitador | Não | Não | Delimitador customizado | Esta propriedade não é editável. |
Bytes MLLP à direita | Sim | Sim | 1C0D | Os bytes MLLP à direita que são usados como um delimitador de registro do HL7. Esses bytes MLLP à direita são incluídos pelo nó do TCPIPClientOutput. |
Propriedade | M | A | O padrão | Descrição |
---|---|---|---|---|
Delimitador | Não | Não | Delimitador customizado | Esta propriedade não é editável. |
Bytes MLLP à direita (Confirmação) | Sim | Não | 1C0D | O delimitador do HL7 que é usado para detectar o fim de confirmações recebidas. |
Propriedade | M | A | O padrão | Descrição |
---|---|---|---|---|
Validate | Não | Sim | Nenhum(a) | Esta propriedade determina o nível de validação da mensagem recebida do HL7 no domínio MRM. Valores válidos são:
|