Montar uma mensagem HL7 envolve a criação de um formato específico que inclui um cabeçalho (header) e segmentos de conteúdo. Os segmentos são separados por carriage return (\r), e cada segmento contém campos que são separados por caracteres pipe (|). Além disso, se os campos contiverem subcampos, eles são separados por caret (^). A seguir, descreverei passo a passo como construir essa mensagem.
1. Criando o Segmento MSH (Message Header)
O primeiro segmento em qualquer mensagem HL7 é o MSH, que define as informações básicas sobre a mensagem. A estrutura do MSH geralmente inclui os seguintes campos:
MSH-1: Field Separator (geralmente “|”)
MSH-2: Encoding Characters (geralmente “^~&”)
MSH-3: Sending Application
MSH-4: Sending Facility
MSH-5: Receiving Application
MSH-6: Receiving Facility
MSH-7: Date/Time of Message
MSH-8: Security
MSH-9: Message Type (exemplo: ADT^A01)
MSH-10: Message Control ID
MSH-11: Processing ID
MSH-12: Version ID
Um exemplo de como isso pode ser formatado é:
MSH|^~&|SendingApp|SendingFacility|ReceivingApp|ReceivingFacility|20241109120000||ADT^A01|123456|P|2.3|
2. Criando Outros Segmentos
Após o MSH, você pode adicionar outros segmentos conforme necessário. Um exemplo comum é o PID (Patient Identification), que contém informações sobre o paciente:
Exemplo do Segmento PID:
PID|1||123456^^^Hospital^MR||Doe^John^^^Mr.|Smith|19800101|M|||123 Main St^^Anytown^NY^12345||(555)555-5555|||N|
3. Montando a Mensagem Completa
Agora que temos o MSH e um segmento PID, podemos combinar tudo em uma única mensagem HL7:
MSH|^~&|SendingApp|SendingFacility|ReceivingApp|ReceivingFacility|20241109120000||ADT^A01|123456|P|2.3\rPID|1||123456^^^Hospital^MR||Doe^John^^^Mr.|Smith|19800101|M|||123 Main St^^Anytown^NY^12345||(555)555-5555|||N|
Considerações Finais
Ao montar mensagens HL7, é importante garantir que todos os campos obrigatórios estejam presentes e que estejam no formato e ordem conforme esperado para evitar problemas na comunicação entre os sistemas de saúde sendo integrados.