Solicitação de Exames - Integração do Sistema do Solicitante via Arquivo XML 1. Introdução A Solução S_Line de Transferência Eletrônica de Solicitação e Resultado de Exames implementa características de INTEGRIDADE e GERENCIAMENTO, tornando eficiente, seguro e ágil o processo de envio da Solicitação de Exames de um Solicitante (outro Laboratório ou Empresa) ao Laboratório de Apoio e o Retorno da Solicitação de Exames ao Solicitante. Neste documento trataremos do fluxo do processo no Solicitante, que faz e envia a Solicitação de Exames e posteriormente recebe o Retorno da Solicitação de Exames enviado pelo Laboratório de Apoio. 2. Geração da Solicitação de Exames no Solicitante Para cada processo de geração de solicitação de exames que o Solicitante for enviar para o Laboratório de Apoio, o Sistema de Informação do Solicitante irá gerar um arquivo padrão XML, conforme a estrutura apresentada abaixo. • Cada Solicitação de Exames deve corresponder a um arquivo com qualquer nome, que não se repita e com extensão xml. Recomenda-se que seja a própria identificação da Solicitação de Exames e Chave do Laboratório de Apoio (Exemplo: 001003459802-LABAPOIOX.xml); • Os arquivos podem estar armazenados em qualquer diretório em um drive disponível para o acesso pelo Sistema da S_Line, desde que este diretório seja EXCLUSIVO e esteja liberado para leitura, escrita e exclusão dos arquivos ali existentes; • As tags devem ser escritas sempre em letras minúsculas. Parâmetro Tipo Tam. Obrig. Descrição versao string 4 Sim Versão do layout utilizado na S_Line. Usar “1.00”; chaveapoio string 20 codigose string 20 nomepaciente string 50 Sim Chave do Laboratório de Apoio que vai receber a Solicitação de Exames, conforme cadastro na S_Line; Sim Identificação da Solicitação de Exames (ou Número da Requisição, Protocolo, Ordem de Serviço, Amostra, Atendimento, etc.) no Solicitante; Sim Nome do Paciente; codpaciente string 20 tipoidade string 1 Não Código do Paciente no Solicitante que pode interessar ao Laboratório de Apoio como referência do Paciente no Solicitante; Não Tipo da Idade: A=Ano, M=Mês, S=Semana ou D=Dia; qtdidade string 3 Não Idade em Anos, Meses ou Dias datanascimento date Não Data de Nascimento do Paciente (AAAA-MM-DD); sexo string 1 Não F=Feminino; M=Masculino; S=Sem sexo pesokg string 3 Não Peso do Paciente em quilograma (kg); alturacm string 3 Não Altura do Paciente em centímetro (cm); dataultmenstr date Não Data da última menstruação, p/ SL_SEXO=F (AAAA-MM-DD); infose xml Não Informações textuais da Solicitação de Exames; tipoinfose string textoinfose text insereexame xml 1 Sim Define o Tipo da Informação, podendo ser: "C": Dados Clínicos inerentes ao Paciente; "E": Endereço do Paciente (veja XML abaixo); "I": Identificação do Paciente (veja XML abaixo); "M": Medicamento que o Paciente possa estar tomando; "O": Observação inerente ao Paciente; Sim Texto conforme o tipo definido. Incluir a tag ![CDATA [textoinfose]]; Sim Exames da Solicitação a inserir; www.sline.com.br - [email protected] Página 1 / 9 Av. Nossa Sra. da Penha, 699, SL 516, Ed. Century Tower - Torre A, Santa Lúcia - Vitória - CEP. 29.055-131 - TELEFAX (0xx27) 3315-1689 Solicitação de Exames - Integração do Sistema do Solicitante via Arquivo XML string 20 Sim Código do Exame, conforme utilizado no Solicitante; descrcomplementar string 50 medico string 50 Não Descrição complementar ao exame solicitado, visando à perfeita identificação da análise a ser feita no exame; Não Nome do Médico Solicitante do exame; crm string 8 material string 30 conservante string 30 volumemat string 3 Não Nome do conservante utilizado (meio físico ou químico a que o material coletado é submetido); Não Quantidade Coletado do Material em Mililitros (ml); periodocoleta string 2 Não Período em horas que o material foi coletado (Isolado = 0); diluicaomat string 3 convenio string 20 Não Numérico maior ou igual a 1. Se não informado (em branco), assumirá diluição 1:1 para a amostra; Não Número ou Código do Convênio utilizado para solicitar o exame; plano string 10 datacoleta prioridade date time string 1 parametro string 50 parametroapoio string 50 codexame subexame xml string 20 parametrosubex string 50 codsubexame Não CRM do Médico Solicitante no formato NNNNNNUF. N é o número do CRM (completar com zeros à esquerda) e UF a sigla do estado; Sim Nome Simplificado do material coletado para exame; Não Número ou Código do Plano do Convênio utilizado para solicitar o exame. Estes campos são normalmente usados quando a solicitação é feita num Posto de Coleta e vai ser inserida na Matriz; Sim Data e Hora que a coleta foi realizada (AAAA-MMDDTHH:MM:SS); Sim Nível de Prioridade (U=Urgente; R=Rotina (Normal)); Não Parâmetro do Exame que o sistema do Solicitante pode usar para facilitar o registro do Retorno da Solicitação (Resultado do Exame). Incluir a tag ![CDATA [parametro]]; Não Parâmetro do Exame que o sistema do Solicitante pode usar para facilitar o registro desta no sistema do Apoio. Incluir a tag ![CDATA [parametroapoio]]; Não Exames que fazem parte de um exame superior. O caso típico é o Hemograma que apresenta resultado de sub-exames. Só será preenchido se tiver sub-exame e interessar informar parâmetros adicionais sobre os mesmos; Sim Código do Sub-Exame, conforme utilizado no Solicitante; Sim Parâmetro do Sub-Exame que o sistema do Solicitante pode usar para facilitar o registro do Retorno da Solicitação (Resultado do Exame). Incluir a tag ![CDATA [parametrosubex]]; Exemplo do XML tipoinfo - "E": Endereço do Paciente: <tipoinfo-e> <logradouro></logradouro> <numero></numero> <complemento></complemento> <bairro></bairro> <cidade></cidade> <estado></estado> <cep></cep> <fone></fone> <email></email> </tipoinfo-e> www.sline.com.br - [email protected] Página 2 / 9 Av. Nossa Sra. da Penha, 699, SL 516, Ed. Century Tower - Torre A, Santa Lúcia - Vitória - CEP. 29.055-131 - TELEFAX (0xx27) 3315-1689 Solicitação de Exames - Integração do Sistema do Solicitante via Arquivo XML Exemplo do XML tipoinfo - "I": Identificação do Paciente: <tipoinfo-i> <cpf></cpf> <rg></rg> </tipoinfo-i> Exemplo do XML (Só conterá uma Solicitação de Exames): <?xml version="1.0" encoding="ISO-8859-1" ?> <inserese versao="1.00" chaveapoio="KKAPOIO" codigose="1000ad10" nomepaciente="Luís Carlos Testeste" codpaciente="" tipoidade="A" qtdidade="46" datanascimento="1961-01-25" sexo="M" pesokg="65" alturacm="180" dataultmenstr=""> <infose tipoinfose="M"> <textoinfose><![CDATA[Amoxicilina 500 mg de 12 em 12 horas]]></textoinfose> </infose> <infose tipoinfose="I"> <textoinfose><![CDATA[<tipoinfo-i><cpf>62170015787</cpf></tipoinfo-i>]]></textoinfose> </infose> <insereexame codexame="EXP" descrcomplementar="" medico="Maria da Silva R. Euzébio" crm=”002457ES” material="Sangue" conservante="" volumemat="" periodocoleta="" diluicaomat="" convenio="" plano="" datacoleta="2006-12-07T07:23:00" prioridade="R"> <parametro><![CDATA[]]></parametro> <parametroapoio><![CDATA[]]></parametroapoio> <subexame codsubexame=""> <parametrosubex><![CDATA[]]></parametrosubex> </subexame> </insereexame> </inserese> www.sline.com.br - [email protected] Página 3 / 9 Av. Nossa Sra. da Penha, 699, SL 516, Ed. Century Tower - Torre A, Santa Lúcia - Vitória - CEP. 29.055-131 - TELEFAX (0xx27) 3315-1689 Solicitação de Exames - Integração do Sistema do Solicitante via Arquivo XML 3. Validação do Arquivo de Solicitação de Exames O Sistema S_Line, instalado no ambiente do Solicitante irá ler cada arquivo gerado no diretório especificado como de Envio, validará o mesmo e caso tenha qualquer inconsistência será movido para o diretório “Arquivos-Errados”, não enviando a SE ou qualquer Exame da mesma, e irá gerar um histórico de todos os “Erros de Validação”, que podem ser: Tabela de Erros Possíveis Arquivo sem conteúdo (vazio). Falta de Exame para a Se (tem que ter pelo menos um exame). Campo obrigatório não preenchido (indicar o campo não preenchido). Poderá existir mais de uma ocorrência. 4. Envio da Solicitação de Exames à S_Line O Sistema S_Line, após validar os arquivos, irá envia-los à Central S_Line, logicamente se o Solicitante tiver autorização de envio ao Laboratório de Apoio. Caso tenha qualquer inconsistência com a base de dados, o arquivo será movido para o diretório “Arquivos-Errados”, não enviando a SE ou qualquer Exame da mesma, e irá gerar um histórico de todos os “Erros de Validação”, que podem ser: Tabela de Erros Possíveis Exame não cadastrado pelo Solicitante. Exame não fornecido pelo Laboratório de Apoio. Exame não autorizado pelo Laboratório de Apoio. 5. Captura do Retorno da Solicitação de Exames no Solicitante O Sistema S_Line, instalado no ambiente do Solicitante irá buscar cada Retorno de Solicitação de Exames (RS) existente na Central S_Line e gerar, para cada uma, um arquivo no diretório especificado como de Recebimento. Parâmetro Tipo Tam. Obrig. Descrição versao string 4 Sim Versão do layout utilizado na S_Line.; chaveapoio string 20 Sim Chave do Laboratório de Apoio que enviou o RS; codigose string 20 datarecebeuse date time xml Sim Identificação da Solicitação de Exames (ou Número da Requisição, Protocolo, Ordem de Serviço, Amostra, Atendimento, etc.) no Solicitante; Sim Data e Hora que o Laboratório de Apoio recebeu a Solicitação de Exames em seu sistema (AAAA-MM-DDTHH:MM:SS); Sim Retorno com os Resultados dos Exames Solicitados; string 20 Sim Código do Exame, conforme utilizado no Solicitante; codexamesuperior string 20 unidadeexame string 20 datarecebeumat codsituacao date time date time string 5 decrsituacao string 50 Não Código do Exame Superior, que é usado quando tem sub-exames. O caso típico é o Hemograma que apresenta resultado de sub-exames. Este campo só será preenchido se for sub-exame; Não Unidade relativa ao Resultado do Exame e é obrigatório se o codexamesuperior estiver preenchido; Não Data e Hora que o Laboratório de Apoio recebeu o Material para fazer o exame (AAAA-MM-DDTHH:MM:SS); Não Data e Hora (AAAA-MM-DDTHH:MM:SS). Utilizada para informar ao Solicitante a situação que se encontra o exame no Lab. de Apoio; Não Código da Situação que se encontra o exame, sendo um código livre, mas que normalmente e utilizado para a comunicação entre sistemas; Não Situação que se encontra o exame (Ex.: Em análise; Atrasado por falta de material; etc.); rsexame codexame datasituacao www.sline.com.br - [email protected] Página 4 / 9 Av. Nossa Sra. da Penha, 699, SL 516, Ed. Century Tower - Torre A, Santa Lúcia - Vitória - CEP. 29.055-131 - TELEFAX (0xx27) 3315-1689 Solicitação de Exames - Integração do Sistema do Solicitante via Arquivo XML dataliberacao dataenviors parametro infors date time date time string 50 xml tipoinfors string textoinfors text 1 Não Data e Hora que o resultado foi liberado pelo Laboratório de Apoio (AAAA-MM-DDTHH:MM:SS); Sim Data e Hora que o retorno com o resultado foi enviado pelo Laboratório de Apoio (AAAA-MM-DDTHH:MM:SS); Não Parâmetro do Exame que o sistema do Solicitante pode usar para facilitar o registro do Retorno da Solicitação (Resultado do Exame). Tem a tag ![CDATA [parametro]]; Não Informações textuais do Retorno da Solicitação de Exames; Sim Define o Tipo da Informação, podendo ser: "B": Etiqueta do Código de Barra; "C": Comentário do resultado; "M": Método utilizado na apuração do resultado; "O": Observação inerente ao resultado; "R": Referência do resultado; "T": Quando se quer enviar o resultado completo em formato Texto, que contempla todas as informações do resultado do exame (Valor, Referências etc.); "V": Valor do resultado; "W": Complemento do resultado; "X": Resultado descritivo; Sim Texto conforme o tipo definido. Tem a tag ![CDATA [textoinfors]]; Exemplo do XML (Só conterá o Retorno de uma Solicitação e a tag RSEXAME se repetirá para cada exame do Retorno da Solicitação): <?xml version="1.0" encoding="ISO-8859-1" ?> <recebersexame versao="1.00" chaveapoio="KKAPOIO" codigose="1000ad10" datarecebeuse="2006-12-07T15:47:00"> <rsexame codexame="EXP" codexamesuperior="" unidadeexame="mcg/dl" datarecebeumat="2006-12-08T08:10:00" datasituacao="" codsituacao="" descrsituacao="" dataliberacao="2006-12-09T10:23:00" dataenviors="2006-12-09T10:35:00"> <parametro><![CDATA[]]></parametro> <infors tipoinfors="B"> <textoinfors><![CDATA[ON,D Q240,1 R-304,0 q360 S2 D7 ZT JF N A0,0,0,3,1,1,N,"Lab Teste Apoio" B0,30,0,2,2,4,65,B,"009514715428" A0,130,0,2,1,1,N,"*U|AC.FP*" A0,155,0,2,1,1,N,"" A0,195,0,2,1,1,N,"Luís Carlos Testeste" P1]]></textoinfors> </infors> <infors tipoinfors="V"> <textoinfors><![CDATA[2,3]]></textoinfors> </infors> <infors tipoinfors="W"> <textoinfors><![CDATA[<]]></textoinfors> www.sline.com.br - [email protected] Página 5 / 9 Av. Nossa Sra. da Penha, 699, SL 516, Ed. Century Tower - Torre A, Santa Lúcia - Vitória - CEP. 29.055-131 - TELEFAX (0xx27) 3315-1689 Solicitação de Exames - Integração do Sistema do Solicitante via Arquivo XML </infors> <infors tipoinfors="X"> <textoinfors><![CDATA[NEGATIVO]]></textoinfors> </infors> <infors tipoinfors="M"> <textoinfors><![CDATA[Imunofluorimetria]]></textoinfors> </infors> <infors tipoinfors="R"> <textoinfors><![CDATA[[Negativo……..: Menor ou igual a 2,0 mcg/ml Positivo..……..: Maior ou igual a 2,0 mcg/ml]]></textoinfors> </infors> <infors tipoinfors="C"> <textoinfors><![CDATA[[[Exame realizado pelo equipamento de automação.]]></textoinfors> </infors> <infors tipoinfors="O"> <textoinfors><![CDATA[[Resultado repetido e confirmado 1 vez.]]></textoinfors> </infors> </rsexame> </recebersexame> www.sline.com.br - [email protected] Página 6 / 9 Av. Nossa Sra. da Penha, 699, SL 516, Ed. Century Tower - Torre A, Santa Lúcia - Vitória - CEP. 29.055-131 - TELEFAX (0xx27) 3315-1689 Solicitação de Exames - Integração do Sistema do Solicitante via Arquivo XML 6. Captura do Resultado Avulso, sem Solicitação de Exames, no Solicitante O Sistema S_Line, instalado no ambiente do Solicitante irá buscar cada Resultado de Exames Avulso (RA), para as Solicitações de Exames que foram incluídas na Central S_Line diretamente pelo Laboratório de Apoio, e gerar, para cada uma, um arquivo no diretório especificado como de Recebimento. Parâmetro Tipo Tam. Obrig. Descrição versao string 4 Sim Versão do layout utilizado na S_Line.; chaveapoio string 20 Sim Chave do Laboratório de Apoio que enviou o RS; codigose string 20 datacoleta prioridade date time string 1 Não Identificação da Solicitação de Exames (ou Número da Requisição, Protocolo, Ordem de Serviço, Amostra, Atendimento, etc.) no Solicitante. Só estará preenchida se foi digitada no Lab. de Apoio; Sim Data e Hora que a Coleta foi realizada (AAAA-MMDDTHH:MM:SS); Sim Nível de Prioridade (U=Urgente; R=Rotina (Normal)); nomepaciente string 50 Sim Nome do Paciente; tipoidade string 1 Não Tipo da Idade: A=Ano, M=Mês, S=Semana ou D=Dia; qtdidade string 3 Não Idade em Anos, Meses ou Dias datanascimento date Não Data de Nascimento do Paciente (AAAA-MM-DD); sexo string 1 Não F=Feminino; M=Masculino; S=Sem sexo pesokg string 3 Não Peso do Paciente em quilograma (kg); alturacm string 3 Não Altura do Paciente em centímetro (cm); dataultmenstr date Não Data da última menstruação, p/ SL_SEXO=F (AAAA-MM-DD); datarecebeuse date time infose xml Sim Data e Hora que o Laboratório de Apoio recebeu a Solicitação de Exames ou a data que digitou em seu sistema (AAAA-MMDDTHH:MM:SS); Não Informações textuais da Solicitação de Exames; tipoinfose string textoinfose text rsexame 1 Sim Define o Tipo da Informação, (veja detalhes no item 2); Sim Texto conforme o tipo definido. Incluir a tag ![CDATA [textoinfose]]; Sim Retorno com os Resultados dos Exames Solicitados; xml string 20 Sim Código do Exame, conforme utilizado no Solicitante; codexamesuperior string 20 unidadeexame string 20 datarecebeumat medico date time string 50 Não Código do Exame Superior, que é usado quando tem sub-exames. O caso típico é o Hemograma que apresenta resultado de sub-exames. Este campo só será preenchido se for sub-exame; Não Unidade relativa ao Resultado do Exame e é obrigatório se o codexamesuperior estiver preenchido; Não Data e Hora que o Laboratório de Apoio recebeu o Material para fazer o exame (AAAA-MM-DDTHH:MM:SS); Não Nome do Médico Solicitante do exame; crm string 8 material string 30 conservante string 30 volumemat string 3 Não Nome do conservante utilizado (meio físico ou químico a que o material coletado é submetido); Não Quantidade Coletado do Material em Mililitros (ml); periodocoleta string 2 Não Período em horas que o material foi coletado (Isolado = 0); diluicaomat string 3 Não Numérico maior ou igual a 1. Se não informado (em branco), assumirá diluição 1:1 para a amostra; codexame Não CRM do Médico Solicitante, no formato NNNNNNUF. N é o número do CRM (completar com zeros à esquerda) e UF a sigla do estado; Sim Nome Simplificado do material coletado para exame; www.sline.com.br - [email protected] Página 7 / 9 Av. Nossa Sra. da Penha, 699, SL 516, Ed. Century Tower - Torre A, Santa Lúcia - Vitória - CEP. 29.055-131 - TELEFAX (0xx27) 3315-1689 Solicitação de Exames - Integração do Sistema do Solicitante via Arquivo XML codsituacao date time string 5 decrsituacao string 50 dataliberacao date time date time xml datasituacao dataenviors infors tipoinfors string textoinfors text 1 Não Data e Hora (AAAA-MM-DDTHH:MM:SS). Utilizada para informar ao Solicitante a situação que se encontra o exame no Lab. de Apoio; Não Código da Situação que se encontra o exame, sendo um código livre, mas que normalmente e utilizado para a comunicação entre sistemas; Não Situação que se encontra o exame (Ex.: Em análise; Atrasado por falta de material; etc.); Não Data e Hora que o resultado foi liberado pelo Laboratório de Apoio (AAAA-MM-DDTHH:MM:SS); Sim Data e Hora que o retorno com o resultado foi enviado pelo Laboratório de Apoio (AAAA-MM-DDTHH:MM:SS); Não Informações textuais do Retorno da Solicitação de Exames; Sim Define o Tipo da Informação (veja detalhes no item 5); Sim Texto conforme o tipo definido. Tem a tag ![CDATA [textoinfors]]; Exemplo do XML (Só conterá o Resultado de uma Solicitação e a tag RAEXAME se repetirá para cada exame do Resultado Avulso): <?xml version="1.0" encoding="ISO-8859-1" ?> <recebera versao="1.00" chaveapoio="KKAPOIO" codigose="1000ad10" datacoleta="2006-12-07T07:23:00" prioridade="R" nomepaciente="Luís Carlos Testeste" tipoidade="A" qtdidade="46" datanascimento="1961-01-25" sexo="M" pesokg="65" alturacm="180" dataultmenstr="" datarecebeuse="2006-12-07T15:47:00"> <infose tipoinfose="M"> <textoinfose><![CDATA[Amoxicilina 500 mg de 12 em 12 horas]]></textoinfose> </infose> <infose tipoinfose="I"> <textoinfose><![CDATA[<tipoinfo-i><cpf>62170015787</cpf></tipoinfo-i>]]></textoinfose> </infose> <raexame codexame="EXP" codexamesuperior="" unidadeexame="mcg/dl" datarecebeumat="2006-12-08T08:10:00" medico="Maria da Silva R. Euzébio" crm=”002457ES” material="Sangue" conservante="" volumemat="" periodocoleta="" diluicaomat="" datasituacao="" www.sline.com.br - [email protected] Página 8 / 9 Av. Nossa Sra. da Penha, 699, SL 516, Ed. Century Tower - Torre A, Santa Lúcia - Vitória - CEP. 29.055-131 - TELEFAX (0xx27) 3315-1689 Solicitação de Exames - Integração do Sistema do Solicitante via Arquivo XML codsituacao="" descrsituacao="" dataliberacao="2006-12-09T10:23:00" dataenviors="2006-12-09T10:35:00"> <infors tipoinfors="B"> <textoinfors><![CDATA[ON,D Q240,1 R-304,0 q360 S2 D7 ZT JF N A0,0,0,3,1,1,N,"Lab Teste Apoio" B0,30,0,2,2,4,65,B,"009514715428" A0,130,0,2,1,1,N,"*U|AC.FP*" A0,155,0,2,1,1,N,"" A0,195,0,2,1,1,N,"Luís Carlos Testeste" P1]]></textoinfors> </infors> <infors tipoinfors="V"> <textoinfors><![CDATA[2,3]]></textoinfors> </infors> <infors tipoinfors="W"> <textoinfors><![CDATA[<]]></textoinfors> </infors> <infors tipoinfors="X"> <textoinfors><![CDATA[NEGATIVO]]></textoinfors> </infors> <infors tipoinfors="M"> <textoinfors><![CDATA[Imunofluorimetria]]></textoinfors> </infors> <infors tipoinfors="R"> <textoinfors><![CDATA[[Negativo……..: Menor ou igual a 2,0 mcg/ml Positivo..……..: Maior ou igual a 2,0 mcg/ml]]></textoinfors> </infors> <infors tipoinfors="C"> <textoinfors><![CDATA[[[Exame realizado pelo equipamento de automação.]]></textoinfors> </infors> <infors tipoinfors="O"> <textoinfors><![CDATA[[Resultado repetido e confirmado 1 vez.]]></textoinfors> </infors> </raexame> </recebera> 7. Importação do Retorno da Solicitação de Exames e Resultado Avulso no Solicitante O Sistema de Informação do Solicitante irá ler os arquivos com os Retornos das Solicitações de Exames (RS) e Resultados Avulsos (RA), no diretório especificado como de Recebimento, e irá armazená-las em seu banco de dados, excluído os arquivos do diretório. www.sline.com.br - [email protected] Página 9 / 9 Av. Nossa Sra. da Penha, 699, SL 516, Ed. Century Tower - Torre A, Santa Lúcia - Vitória - CEP. 29.055-131 - TELEFAX (0xx27) 3315-1689