Pular para o conteúdo principal

Discussão TISSNet

Galera estarei postando aqui uma dúvida de uma pessoa que encontrou em contato comigo para falar do TISS (Troca de Informações em Saúde Suplementar). Estarei postando neste post a Dúvida dessa pessoa e, logo abaixo, responderei a mesma.
Pergunta: ========================================
Gostei da idéia do TISS e acho muito boa a iniciativa de montarmos um grupo para quem está desenvolvendo isso, principalmente em Java. Na verdade nosso sistema que cuida desta parte é feito em Qt, mas estou pensando em implementar esta parte em Java mesmo, acho o suporte a XML melhor. Bom, vamos às minhas dúvidas mais "críticas": 1) Vocês irão transmitir os dados para uma operadora, certo? O que será usado, comunicação ponto-a-ponto ou webservices? No caso da comunicação ponto-a-ponto, será utilizado o próprio Tissnet? E no caso de webservices, o que estarão utilizando? Tem como utilizar o Tissnet também ou precisaram criar uma solução própria? No caso de solução própria, reutilizaram as APIs da ANS? 2) Não consegui entender direito como estarão distribuidas as guias dentro do arquivo. No nosso caso, a guia vem em branco para o nosso faturamento preencher manualmente (o papel tbm será obrigatório, certo?), mas nas nossas agências transfusionais (que ficam dentro de diversos hospitais) não há como preencher isso... O que acontece é que um determinado serviço ou produto derivado de sangue que seja necessário para um paciente, pode incluir implicitamente diversos outros exames e serviços, os quais devem ser cobrados também. Assim, nosso sistema relaciona apenas um único número de guia (no caso a SADT) a cada ficha de requisição de transfusão/exames. Devo ter um único arquivo XML para cada guia? Posso unificar o envio de diversos itens (relacionados a um mesmo paciente, mas distribuidos em varias guias) em um unico número e relacionar tudo dentro do XML? Isso porque existe também o problema da guia SADT ter espaço para apenas 5 procedimentos... 3) Qual a estratégi que você utilizou para mapear os campos que vão para o xml? Os schemas são, digamos.... GRANDES DEMAIS. Sei que escrevi demais e tenho bastante dúvidas, mas se puder me ajudar (e quem sabe eu também ajudá-lo...) ficaria muito agradecido. Mais uma vez obrigado pela força! Abraço, ===============================================

Comentários

Rafael Martins disse…
Galera estarei agora respondendo às dúvidas postadas acima, enviadas a mim pelo companheiro Cássio. Onde em contato com ele, achamos melhor que fosse criado um tópico de discursão para que todos possamos nos ajudar.

Resposta: ========================================

1)
Certo, iremos transmitir os dados para uma operadora.
Iremos usar Web Services, mas pelo padrão Tiss estaremos preparados para as duas formas de transmissão, ponto-a-ponto e Web Services.
Na comunicação ponto-a-ponto usaremos o TISSNet.
Na comunicação via Web Services pode-se usar o TISSNet sim, mas estaremos usando uma 'solução própria' em web Services. Onde estaremos usando a lib do Tiss, para que assim nao fujamos ao padrão da ANS. Como API estou usando também o AXIS para auxilio na criação dos clientes de Web Services, visto que, terei além de disponibilizar serviçoes para que as Operadoras consumam, irei criar clientes que consumam os serviços disponibilizados pelas Operadoras(por exemplo, quando for solicitar alguma prorrogação de procedimento).


2)
Sobre as guias, você pode enviar um Lote de Guias. E não apenas um XML por vez.

3) A estratégia que usamos para mapear os campos do XML, foi o de utilizar a própria estrutura do Tiss, usando sua lib e instanciando um objeto do tipo MensagemTISS você consegue obter todos os campos necessários no XML.

Para te ajudar nisso, vou te dar uma dica que me foi passada quando ingressei neste projeto.
Se já baixou o TISSNet no site da ANS (Agência Nacional de Saúde), dentro dele em docs tem um manual do TissNet 3.0. Este documento explica tudo que se deve fazer e dependendo do que for tem exemplos de como deve-se implementar.

===============================================

Cássio, espero ter ajudado com o pouco que sei.
Qualquer coisa que eu possa ajudar, sinta-se a vontade de perguntar.

Abração

Postagens mais visitadas deste blog

História do Assembly

Provavelmente a primeira linguagem de programação. O Assembly surgiu em meados da década de 50. Os computadores ainda usavam válvulas. Considerada uma grande evolução na linguagem de computação, pois se utilizou de grandes abstrações, aumentando produtividade e segurança. O Assembly substitui uma instrução em linguagem de máquina por um comando legível ao ser humano. Exemplos de instruções em Assembly: add, mul, div, and, not, or. Pondendo-se ainda, o usuário, criar variváveis e lidar com elas através dessas instruções e algumas outras existentes na linguagem Assembly. A linha de instrução "add x, y" significa dizer que estou mandando somar os valores de x e y. Esse resultado deve ser armazenado em um registrador. Registradores são áreas dentro de um processador mais rápidas que operadores de memória. São 8 registradores gerais: EAX, EDX, ECX, EBX, ESI, EBP, ESP e EDI. Programando, devemos utilizar apenas 6 destes registradores, devido a os registradores ESP e EBP serem uti...

DISTINCT x UNIQUE, existe diferença?

Não. "Utilize DISTINCT ou UNIQUE se você quiser que o Oracle retorne apenas uma cópia de cada conjunto de linhas duplicadas selecionadas (estas duas palavras-chave são sinônimos). As linhas duplicadas são aquelas com valores correspondentes para cada expressão na lista de seleção." UNIQUE é uma função do ORACLE e não funcionará em outros bancos de dados (MySQL, PostgreSQL, etc...) Fonte: Oracle9i SQL Reference Release 2

Problemas para criar cliente java de um webservice gerado no delphi

Neste post irei relatar aqui problemas que ocorreram quando tentava criar um cliente em Java de um webservice gerado no Delphi. Por algumas vezes já precisei trabalhar com Webservices, como servidor e como cliente. Sempre usando tecnologias do JAVA, algumas vezs .NET. Recentemente, precisei criar um cliente para um serviço desenvolvido em Delphi executado a partir de uma dll. Para minha surpresa tive problemas na implementação, para uma surpresa ainda maior encontrei muitos programadores na internet com este mesmo problema que será aqui relatado. Essa dificuldade e o pouco material encontrado sobre o assunto serviram de motivação para publicá-lo aqui. Problema: Comecei salvando o wsdl do serviço, como sempre faço, e através do Eclipse (IDE de desenvolvimento Java) com alguns plugins, WSDL2Java, da API do APACHE AXIS 1.3 tentei gerar o cliente e não obtive êxito. O erro apresentado era sempre esse: IWAB0399E Error in generating Java from WSDL: WSDLException (at /definitions/binding/ope...