TISS
Agradeço desde já.
Rosianeterra
Melhor post
Briciosm
20/03/2007
Um xml que esteja funcionando da versão 2 do padrão tiss.
Pois estes que vieram junto com o tissnet dão erro. Mesmo eu alterando alguns formatos que estão errados no arquivo como data e hora, continua o erro.
Obrigado!
Mais Respostas
Aerreira
10/03/2007
Recomendo você dar uma olhada com bastante atenção em todo o conteúdo do hotsite sobre TISS no site da ANS ([url]www.ans.gov.br[/url]).
Procure baixar o aplicativo TissNet, dentro do ZIP tem alguns arquivos de exemplo que te ajudarão. Caso não esteja familiarizada, convém uma lida em XML/Schemas.
Havia um outro tópico aqui no forum sobre o assunto, porém não estou encontrando mais.
Rosianeterra
10/03/2007
Rosianeterra
10/03/2007
Baixei o aplicativo mas não encontrei os exemplos, poderias me informar em qual parte do sistema esta.
Agradeço desde já.
Aerreira
10/03/2007
\TISSNet-3.1\mensagens_teste (tem 3 exemplos lá, veja um abaixo:)
<?xml version="1.0" encoding="ISO-8859-1" ?> - <ans:mensagemTISS xmlns="http://www.w3.org/2001/XMLSchema" xmlns:ans="http://www.ans.gov.br/padroes/tiss/schemas"> - <ans:cabecalho> - <ans:identificacaoTransacao> <ans:tipoTransacao>SOLIC_STATUS_PROTOCOLO</ans:tipoTransacao> <ans:sequencialTransacao>25</ans:sequencialTransacao> <ans:dataRegistroTransacao>2006-02-19</ans:dataRegistroTransacao> <ans:horaRegistroTransacao>06:30:00</ans:horaRegistroTransacao> </ans:identificacaoTransacao> - <ans:origem> <ans:codigoPrestadorNaOperadora>123456789</ans:codigoPrestadorNaOperadora> </ans:origem> - <ans:destino> <ans:registroANS>987654</ans:registroANS> </ans:destino> <ans:versaoPadrao>2.01.01</ans:versaoPadrao> </ans:cabecalho> - <ans:prestadorParaOperadora> - <ans:solicitacaoStatusProtocolo> <ans:registroANS>987654</ans:registroANS> - <ans:dadosPrestador> - <ans:identificacao> <ans:cpf>34534534567</ans:cpf> </ans:identificacao> <ans:nomeContratado>JOAO DOS ANJOS</ans:nomeContratado> </ans:dadosPrestador> <ans:dataSolicitacao>2006-02-19</ans:dataSolicitacao> - <ans:detalheProtocolo> <ans:numeroProtocolo>100200300400</ans:numeroProtocolo> <ans:numeroProtocolo>400200300400</ans:numeroProtocolo> </ans:detalheProtocolo> </ans:solicitacaoStatusProtocolo> </ans:prestadorParaOperadora> - <ans:epilogo> <ans:hash>835df707a3b0c4d4efdc57be2b380578</ans:hash> </ans:epilogo> </ans:mensagemTISS>
Rosianeterra
10/03/2007
Rosianeterra
10/03/2007
Verifica_elegibilidade.xml: Mensagem inválida: XML do arquivo não obedece ao esquema do TISS:cvc-enumeration-valid value´is not facet-valid with respect to enumeration´[645,001,002,501,004,005,472,654,465,007,008,651,015,470,009,011,010,012,013,014,496,012,571,017,023,495,481,
019,021,503,....] .It mus be a value from the enumeration.
Não consigo achar de qual campo esta gerando este erro, alguem já teve este erro.
Rosianeterra
10/03/2007
Alguém tem alguma idéia de como resolver este erro?
Aerreira
10/03/2007
Tente aqui: [url]http://tools.decisionsoft.com/schemaValidate/[/url]
Aerreira
10/03/2007
Interpretando seu erro: algum campo está com conteúdo ´´ (nada) onde esperava-se que tivesse 645 ou 001 ou 002 ou ...., vendo o schema dos SimpleTypes, esse deveria ser o conteudo de ´st_tipoLogradouro´ que está em branco, ou seja, vc precisará modificar sua aplicação para tratar esse tipo de coisa, por exemplo: 645 = Acampamento, 001 = Acesso, 002 = Adro, .... ??? = Rua, ??? = Avenida, etc...
Será que ajudei?
Rosianeterra
10/03/2007
Aerreira
10/03/2007
Rosiane, como está gerando seu XML? Via ClientDataSet, manualmente como se fosse um TXT ou de outra forma?
Rosianeterra
10/03/2007
Funcionou o xml de elegibilidade.
Aerreira
10/03/2007
Ótimo...
Já está conseguindo testar com o webservice de alguma operadora?
Aerreira
10/03/2007
Ok, agora precisa partir para uma segunda etapa que é gerar isso automaticamente por sua aplicação delphi, (certo?) e submeter o XML para o respectivo webservice da operadora.
Rosianeterra
10/03/2007
Briciosm
10/03/2007
Estou no início ainda....estudando como vou fazer. Sou programador de um hospital.
A principio vou ver os campos que ainda não possuo e criar na minha base de dados.
E depois começar com a exportação.
Aqui na empresa trabalhamos com delphi 5.
Acredito que a melhor solução seja gerar como se fosse um txt.
Não sei como vocês estão trabalhando?
Pelo que vi também este envio via xml é só em questão de faturamento.
Veja se é isso....Após o faturamento gerar a fatura do convênio, vou fazer a exportação de todas as guias e despesas em um único arquivo xml. Isso?
Estas guias elas são preenchidas manualmente e depois alguém terá que digitar elas no sistema, isso? Para poder fazer a exportação?
Não preciso fazer nenhuma impressão de guia no formato tiss? correto?
Aguardo ajuda!
Obrigado!
Sremulador
10/03/2007
As operadoras de saúde devem disponibilizar estes documentos para os prestadores, com todo caso eu irei disponibilizar as impressões no sistemas/ com o devidos campos preenchidos...
Jagged
10/03/2007
Então, também tô nessa do TISS. No meu caso minha equipe é de 1 homem só rs.
Trabalho numa empresa que possui RIS, PACS e coisas do tipo.
Estou meio (bem) perdido com relação ao desenvolvimento desse padrão TISS. Vou dizer o pouco que entendi, espero estar correto até aí:
Criei uma tabela correspondente a cada uma das guias utilizadas, e nas que se fizeram necessário criei tabelas referentes aos itens delas tratando com chaves estrangeiras.
Comecei a desenvolver a aplicação no Delphi com apenas uma dessas guias por enquanto (no caso, uma consulta da guia de SP/SADT, que avalio ser a mais importante para começar). A partir daí começarei a tentar desenvolver a parte de importação do XML, que pra mim está sendo a coisa mais complicada...
O TISSNet, o programa de envio de mensagens deles, está me mostrando um erro estranho quando arrasto qualquer um dos dois xml´s de teste que eles disponibilizaram junto com o programa. A mensagem que ele me mostra é:
É assim mesmo ou estou fazendo algo errado?
Abraços!
Briciosm
10/03/2007
Só vou criar as tabelas pequenas que precisam com o tiss.
Mas a minha dúvida é a seguinte:
Os campos que não são obrigatórios nas guias tenho que colocar no arquivo xml ou não precisa?
Aguardo ajuda!
Obrigado!
Aerreira
10/03/2007
Está bem claro na documentação do TISS que existem campos obrigatórios assim como campos não obrigatórios, ou seja, os não obrigatórios não precisam estar no XML, são opcionais.
Por exemplo no modelo da Guia (em papel) de SP-SADT existem campos com fundo branco que são obrigatórios, e campos com fundo cinza que NÃO são obrigatórios, conforme documento ´Legenda da Guia de SP-SADT´.
Aerreira
10/03/2007
Estou fazendo algo parecido. Estou analizando todo meu banco à procura de lacunas (dados que não existam) ou não estejam de acordo com o padrão TISS, remodelando o banco e adaptando as aplicações. Criando também diversas tabelas de domínio para ajudar na validação de dados antes do envio, em alguns casos farei algumas buscas nos dominios do tiss para não mudar demais o sistema e gerar a informação correta no XML. Além de usar as tabelas de dominio-tiss para dar retorno textual dos erros e retornos dos webservices de cada operadora dos dados enviados.
Briciosm
10/03/2007
Gostaria de saber onde posso encontrar um exemplo de envio das guias, com resumo de internação, ...
Alguém já fez?
Outra dúvida: Ao gerar a minha fatura para um determinado comvênio, o arquivo xml gerado será um só?
Com todas as guias, ...de todos os pacientes?
Obrigado!
Rodrigomy
10/03/2007
É assim mesmo ou estou fazendo algo errado?
[/quote:284c30fad1]
Deixa eu me apresentar tb, primeiro post... e na verdade eu não manjo nada de Delphi, só entrei aqui pq me aparece a discussão mais atualizada sobre o TISS que eu achei hehe
Sobre seu erro Jagged, provavelmente eh fruto de um descuido de quem fez o schema. Tente, dentro da sua tag <ans:codigoPrestadorNaOperadora>, coloca mais uma tag identica (<ans:codigoPrestadorNaOperadora>), e aí então, dentro desta, inserir o código. Deve funcionar.
Briciosm
10/03/2007
Estou montando um arquivo xml manual primeiro. Mais simples. E gostaria de saber se realmente estou seguindo certo....
Estou naquela tag de prestador para operadora. Ali estou alterando as informações.
Em vez do status protocolo vou colocar loteguias. Vi que as informações do loteguias estão em um outro arquivo.
Para continuar com o xml, abri o arquivo onde tem as guias para entender o processo.
E vi esta parte no arquivo:
<complexType name=´ct_loteGuias´>
<sequence>
<element name=´numeroLote´ type=´ans:st_inteiro12´/>
<sequence maxOccurs=´unbounded´>
<element name=´guias´>
<complexType>
<complexContent>
<extension base=´ans:ct_guias´/>
</complexContent>
</complexType>
</element>
</sequence>
</sequence>
</complexType>
Então vou colocar o nr do lote.
E na sequencia começo com as guias. Crio a tag guias.
E neste arquivo que abri das guias o ct_guias tem que escolher se se é do faturamento ou revisão de glosa.
E na sequencia as guias: de consulta, resumo, ... e seus campos...
Para cada cliente tenho que ficar repetindo se é de faturamento ou de revisão? Isso?
E depois as guias?
É isso mesmo?
Aguardo ajuda!
Briciosm
10/03/2007
Peguei o exemplo.xml. Que é um exemplo de solcitação de status do protocolo.
Olha abaixo o erro que está dando.
Eles lançaram já com erro?
O que está errado????
XML Schema Validator
Well Formed: INCOMPLETE
Schema Validation: INCOMPLETE
The following errors were found:
TYPE LOC MESSAGE
Validation 16, 66 src-resolve: Cannot resolve the name ´ans:st_tipoTransacao´ to a(n) ´type definition´ component.
Validation 18, 65 src-resolve: Cannot resolve the name ´ans:st_data´ to a(n) ´type definition´ component.
Validation 19, 65 src-resolve: Cannot resolve the name ´ans:st_hora´ to a(n) ´type definition´ component.
Validation 26, 44 src-resolve: Cannot resolve the name ´ans:ct_motivoGlosa´ to a(n) ´type definition´ component.
Validation 38, 88 src-resolve: Cannot resolve the name ´ans:ct_identificacaoPrestador´ to a(n) ´type definition´ component.
Validation 40, 62 src-resolve: Cannot resolve the name ´ans:st_registroANS´ to a(n) ´type definition´ component.
Validation 48, 92 src-resolve: Cannot resolve the name ´ans:st_codigoPrestadorNaOperadora´ to a(n) ´type definition´ component.
Validation 50, 62 src-resolve: Cannot resolve the name ´ans:st_registroANS´ to a(n) ´type definition´ component.
Validation 54, 55 src-resolve: Cannot resolve the name ´ans:st_versao´ to a(n) ´type definition´ component.
Validation 68, 131 src-resolve: Cannot resolve the name ´ans:ct_demonstrativoAnaliseConta´ to a(n) ´type definition´ component.
Validation 69, 129 src-resolve: Cannot resolve the name ´ans:ct_demonstrativoOdontologia´ to a(n) ´type definition´ component.
Validation 70, 125 src-resolve: Cannot resolve the name ´ans:ct_demonstrativoPagamento´ to a(n) ´type definition´ component.
Validation 74, 96 src-resolve: Cannot resolve the name ´ans:ct_protocoloRecebimento´ to a(n) ´type definition´ component.
Validation 75, 88 src-resolve: Cannot resolve the name ´ans:ct_StatusProtocolo´ to a(n) ´type definition´ component.
Validation 79, 61 src-resolve: Cannot resolve the name ´ans:ct_autorizacaoProcedimento´ to a(n) ´type definition´ component.
Validation 95, 97 src-resolve: Cannot resolve the name ´ans:ct_retornoElegibilidade´ to a(n) ´type definition´ component.
Validation 96, 90 src-resolve: Cannot resolve the name ´ans:ct_reciboCancelaGuia´ to a(n) ´type definition´ component.
Validation 103, 74 src-resolve: Cannot resolve the name ´ans:ct_loteGuias´ to a(n) ´type definition´ component.
Validation 104, 120 src-resolve: Cannot resolve the name ´ans:ct_solicitacaoDemonstrativoPagamento´ to a(n) ´type definition´ component.
Validation 105, 108 src-resolve: Cannot resolve the name ´ans:ct_solicitacaoStatusProtocolo´ to a(n) ´type definition´ component.
Validation 109, 119 src-resolve: Cannot resolve the name ´ans:ct_guiaSolicInternacao´ to a(n) ´type definition´ component.
Validation 110, 122 src-resolve: Cannot resolve the name ´ans:ct_guiaSolicitacaoSP_SADT´ to a(n) ´type definition´ component.
Terminal 0, 0 There have been too many errors, please check that you have not submitted the instance and schema the wrong way round.
Eduardogaio
10/03/2007
vc esta usando Data Binding ou vc salva como se fossem arquivos txt?
grato
Aerreira
10/03/2007
Oi Eduardo, nada por enquanto, ainda não estou gerando meus XMLs, estou ainda na fase de ajustes da base de dados, e análise das melhores soluções. Ainda não implementei meus xmls.
Briciosm
10/03/2007
Notei que a versão do padrão tiss foi alterada de 200509v1_0 para v2_01_01.
É isso mesmo?
Só que com a versão 2 eu não consigo fazer funcionar nenhum dos exemplos que fiz. Vou validar e dá erro!
Alguém poderia me ajudar??
Obrigado!
Jagged
10/03/2007
Quanto às suas questões: aconteceu comigo a mesma coisa com os exemplos que vieram com o TISSNet.
Estou tentando esboçar um XML no padrão do TISS, e até onde fiz está indo bem (no caso, o de envio de guia SP/SADT). Já estou fazendo isso na minha aplicação Delphi. Se surgirem dúvidas, postarei aqui :wink:
Rodrigomy
10/03/2007
Eduardogaio
10/03/2007
vc conseguiu gerar os arquivos xml? como vc fez?
grato
Alexandregh
10/03/2007
Estou com muita dificuldade para saber o q tenho q enviar em cada mensagem.
Exemplo: Verifiquei o exemplo de solicitação de status de protocolo que veio no Tissnet, e não descobri onde está definido que para este modelo tenho que passar ...
´ - <ans:prestadorParaOperadora>
- <ans:solicitacaoStatusProtocolo>
<ans:registroANS>123456</ans:registroANS>
- <ans:dadosPrestador>
- <ans:identificacao>
<ans:cpf>12312312345</ans:cpf>
</ans:identificacao>
<ans:nomeContratado>JOSE DOS ANZOIS CARAPUCA</ans:nomeContratado>
</ans:dadosPrestador>
<ans:dataSolicitacao>2006-01-19</ans:dataSolicitacao>
- <ans:detalheProtocolo>
<ans:numeroProtocolo>100200300400</ans:numeroProtocolo>
<ans:numeroProtocolo>400200300400</ans:numeroProtocolo>
</ans:detalheProtocolo>
</ans:solicitacaoStatusProtocolo>
</ans:prestadorParaOperadora>´
Onde está definido para cada transação o q terei de enviar ?
Muito Grato
Rosianeterra
10/03/2007
Eduardogaio
10/03/2007
vc esta usando qual linguagem para gerar o xml? esta usando delphi? como vc fez (com relação a ferramenta)? vc usou algum componente? data binding?
grato
Marcus_vinicius
10/03/2007
já consegui criar os XMLs, minha dúvida é:
os campos: NUMERO_PROTOCOLO, NUMERO_GUIA, NUMERO_LOTE
devem seguir que sequência?
E o cálculo hash como faço?
E como faço para enviar/receber as guias?
Quem puder me ajudar eu agradeço muito, muito mesmo.
Rosianeterra
10/03/2007
Alexandregh
10/03/2007
Amigo.
Você poderia me ajudar no conteúdo das mensagens, me passando alguns exemplos ?
Agradecerei muito.
Eduardogaio
10/03/2007
vc esta usando algum recurso que abra o schema e salve o xml? ou vc esta criando o xml adicionando cada elemento XMLDoc.CreateElement()? vc chegou a encontrar uma maneira dinamica que abra o schema e crie o xml?
grato
Rosianeterra
10/03/2007
Marcus_vinicius
10/03/2007
<?xml version=´1.0´?>
<mensagemTISS xmlns=´http://www.ans.gov.br/padroes/tiss/schemas´ xmlns:xsi=´http://www.w3.org/2001/XMLSchema-instance´ xsi:schemaLocation=´http://www.ans.gov.br/padroes/tiss/schemas tiss200608v2_0.xsd´>
<cabecalho>
<identificacaoTransacao>
<tipoTransacao>ENVIO_LOTE_GUIAS</tipoTransacao>
<sequencialTransacao>1</sequencialTransacao>
<dataRegistroTransacao>2007-03-16</dataRegistroTransacao>
<horaRegistroTransacao>14:39:48</horaRegistroTransacao>
</identificacaoTransacao>
<origem>
<codigoPrestadorNaOperadora>
<CNPJ>29303988221112</CNPJ>
</codigoPrestadorNaOperadora>
</origem>
<destino>
<registroANS>122222</registroANS>
</destino>
<versaoPadrao>2.01.01</versaoPadrao>
</cabecalho>
<prestadorParaOperadora>
<loteGuias>
<numeroLote>456676</numeroLote>
<guias>
<guiaFaturamento>
<guiaConsulta>
<identificacaoGuia>
<registroANS>122222</registroANS>
<dataEmissaoGuia>2007-03-08</dataEmissaoGuia>
<numeroGuiaPrestador>13</numeroGuiaPrestador>
</identificacaoGuia>
<beneficiario>
<numeroCarteira>090312391293</numeroCarteira>
<nomeBeneficiario>MARCUS VINICIOS VILAS BOAS</nomeBeneficiario>
<nomePlano>BASICO</nomePlano>
<validadeCarteira>2008-12-30</validadeCarteira>
<numeroCNS>1293988</numeroCNS>
</beneficiario>
<dadosContratado>
<identificacao>
<CNPJ>29303988221112</CNPJ>
</identificacao>
<nomeContratado>CLINORL - CLINICA OTORRINO LTDA</nomeContratado>
<enderecoContratado>
<tipoLogradouro>065</tipoLogradouro>
<logradouro>TAL</logradouro>
<numero>100</numero>
<complemento>CASA</complemento>
<codigoIBGEMunicipio>1938123</codigoIBGEMunicipio>
<codigoUF>BA</codigoUF>
<cep>44570000</cep>
</enderecoContratado>
<numeroCNES>1234567</numeroCNES>
</dadosContratado>
<profissionalExecutante>
<nomeProfissional>FULANO DE TAL</nomeProfissional>
<conselhoProfissional>
<siglaConselho>CRM</siglaConselho>
<numeroConselho>23029</numeroConselho>
<ufConselho>BA</ufConselho>
</conselhoProfissional>
<cbos>06133</cbos>
</profissionalExecutante>
<hipoteseDiagnostica>
<CID>
<nomeTabela>CID-10</nomeTabela>
<codigoDiagnostico>C07</codigoDiagnostico>
<descricaoDiagnostico>NEOPLASIA MALIGNA DA GLANDULA PAROTIDA</descricaoDiagnostico>
</CID>
<tipoDoenca>A</tipoDoenca>
<tempoReferidoEvolucaoDoenca>
<valor>10</valor>
<unidadeTempo>D</unidadeTempo>
</tempoReferidoEvolucaoDoenca>
<indicadorAcidente>2</indicadorAcidente>
<diagnosticoSecundario>
<CID>
<nomeTabela>CID-10</nomeTabela>
<codigoDiagnostico>C08.8</codigoDiagnostico>
<descricaoDiagnostico>NEOPLASIA MALIGNA DAS GLANDULAS SALIVARES MAIORES COM LESAO INVASIVA</descricaoDiagnostico>
</CID>
</diagnosticoSecundario>
</hipoteseDiagnostica>
<dadosAtendimento>
<dataAtendimento>2007-03-08</dataAtendimento>
<procedimento>
<codigoTabela>05</codigoTabela>
<codigoProcedimento> 1.001-</codigoProcedimento>
</procedimento>
<tipoConsulta>1</tipoConsulta>
<tipoSaida>3</tipoSaida>
</dadosAtendimento>
<observacao>AADD</observacao>
</guiaConsulta>
</guiaFaturamento>
</guias>
</loteGuias>
</prestadorParaOperadora>
<epilogo>
<hash>123</hash>
</epilogo>
</mensagemTISS>
essa guia é de SADT
<?xml version=´1.0´?>
<mensagemTISS xmlns=´http://www.ans.gov.br/padroes/tiss/schemas´ xmlns:xsi=´http://www.w3.org/2001/XMLSchema-instance´ xsi:schemaLocation=´http://www.ans.gov.br/padroes/tiss/schemas tiss200608v2_0.xsd´>
<cabecalho>
<identificacaoTransacao>
<tipoTransacao>ENVIO_LOTE_GUIAS</tipoTransacao>
<sequencialTransacao>1</sequencialTransacao>
<dataRegistroTransacao>2007-03-16</dataRegistroTransacao>
<horaRegistroTransacao>14:39:35</horaRegistroTransacao>
</identificacaoTransacao>
<origem>
<codigoPrestadorNaOperadora>
<CNPJ>29303988221112</CNPJ>
</codigoPrestadorNaOperadora>
</origem>
<destino>
<registroANS>122222</registroANS>
</destino>
<versaoPadrao>2.01.01</versaoPadrao>
</cabecalho>
<prestadorParaOperadora>
<loteGuias>
<numeroLote>456676</numeroLote>
<guias>
<guiaFaturamento>
<guiaSP_SADT>
<identificacaoGuiaSADTSP>
<registroANS>122222</registroANS>
<dataEmissaoGuia>2007-03-08</dataEmissaoGuia>
<numeroGuiaPrestador>11</numeroGuiaPrestador>
</identificacaoGuiaSADTSP>
<numeroGuiaPrincipal>983322</numeroGuiaPrincipal>
<dadosAutorizacao>
<dataAutorizacao>2007-03-10</dataAutorizacao>
<senhaAutorizacao>1223</senhaAutorizacao>
<validadeSenha>2007-03-31</validadeSenha>
</dadosAutorizacao>
<dadosBeneficiario>
<numeroCarteira>12928883</numeroCarteira>
<nomeBeneficiario>MARCUS VINICIOS VILAS BOAS</nomeBeneficiario>
<nomePlano>BASICO</nomePlano>
<validadeCarteira>2007-12-30</validadeCarteira>
<numeroCNS>1293988</numeroCNS>
</dadosBeneficiario>
<dadosSolicitante>
<contratado>
<identificacao>
<codigoPrestadorNaOperadora>1220399388888</codigoPrestadorNaOperadora>
</identificacao>
<nomeContratado>CLINORL - CLINICA OTORRINO LTDA</nomeContratado>
<enderecoContratado>
<tipoLogradouro>065</tipoLogradouro>
<logradouro>TAL</logradouro>
<numero>100</numero>
<complemento>CASA</complemento>
<codigoIBGEMunicipio>1938123</codigoIBGEMunicipio>
<codigoUF>BA</codigoUF>
<cep>44570000</cep>
</enderecoContratado>
<numeroCNES>1234567</numeroCNES>
</contratado>
<profissional>
<nomeProfissional>ALMIR FRANCISCO DE ASSIS ROLLA</nomeProfissional>
<conselhoProfissional>
<siglaConselho>CRM</siglaConselho>
<numeroConselho>12983</numeroConselho>
<ufConselho>BA</ufConselho>
</conselhoProfissional>
<cbos>06133</cbos>
</profissional>
</dadosSolicitante>
<prestadorExecutante>
<identificacao>
<CNPJ>29303988221112</CNPJ>
</identificacao>
<nomeContratado>CLINORL - CLINICA OTORRINO LTDA</nomeContratado>
<enderecoContratado>
<tipoLogradouro>065</tipoLogradouro>
<logradouro>TAL</logradouro>
<numero>100</numero>
<complemento>CASA</complemento>
<codigoIBGEMunicipio>1938123</codigoIBGEMunicipio>
<codigoUF>BA</codigoUF>
<cep>44570000</cep>
</enderecoContratado>
<numeroCNES>1234567</numeroCNES>
<profissionalExecutanteCompl>
<nomeExecutante>LEONEL CAFEZEIRA ARGOLO</nomeExecutante>
<conselhoProfissional>
<siglaConselho>CRM</siglaConselho>
<numeroConselho>398822</numeroConselho>
<ufConselho>BA</ufConselho>
</conselhoProfissional>
<codigoCBOS>06133</codigoCBOS>
</profissionalExecutanteCompl>
</prestadorExecutante>
<indicacaoClinica>TESTANDO INDICACAO CLINICA</indicacaoClinica>
<caraterAtendimento>E</caraterAtendimento>
<dataHoraAtendimento>2007-03-10T08:00:00</dataHoraAtendimento>
<diagnosticoGuia>
<CID>
<nomeTabela>CID-10</nomeTabela>
<codigoDiagnostico>10202</codigoDiagnostico>
<descricaoDiagnostico></descricaoDiagnostico>
</CID>
<tipoDoenca>A</tipoDoenca>
<tempoReferidoEvolucaoDoenca>
<valor>10</valor>
<unidadeTempo>D</unidadeTempo>
</tempoReferidoEvolucaoDoenca>
<indicadorAcidente>0</indicadorAcidente>
</diagnosticoGuia>
<tipoSaida>3</tipoSaida>
<tipoAtendimento>4</tipoAtendimento>
<procedimentosRealizados>
<procedimentoEquipe>
<procedimentosExamesRealizados>
<procedimentoRealizado>
<horaInicio>08:00:00</horaInicio>
<horaFim>08:10:00</horaFim>
<procedimento>
<tipoTabela>01</tipoTabela>
<codigo>1234567890</codigo>
<descricao>ABSCESSO ANO-RETAL - DRENAGEM</descricao>
</procedimento>
<quantidadeRealizada>1</quantidadeRealizada>
<viaAcesso>U</viaAcesso>
<tecnicaUtilizada>C</tecnicaUtilizada>
<reducaoAcrescimo>10</reducaoAcrescimo>
<valor>50</valor>
<valorTotal>40</valorTotal>
<data>2007-03-08</data>
</procedimentoRealizado>
<procedimentoRealizado>
<horaInicio>09:00:01</horaInicio>
<horaFim>09:15:10</horaFim>
<procedimento>
<tipoTabela>01</tipoTabela>
<codigo>1234567890</codigo>
<descricao>ABSCESSO EPIDURAL - LAMINECTOMIA</descricao>
</procedimento>
<quantidadeRealizada>2</quantidadeRealizada>
<viaAcesso>U</viaAcesso>
<tecnicaUtilizada>C</tecnicaUtilizada>
<reducaoAcrescimo>0</reducaoAcrescimo>
<valor>30</valor>
<valorTotal>30</valorTotal>
<data>2007-03-08</data>
</procedimentoRealizado>
</procedimentosExamesRealizados>
</procedimentoEquipe>
</procedimentosRealizados>
<OPMSolicitadas>
<OPMSolicitada>
<quantidadeSolicitada>2</quantidadeSolicitada>
<fabricante>MARCA</fabricante>
<valor>0</valor>
<OPM>
<tipoTabela>01</tipoTabela>
<codigo>02990000</codigo>
<descricao>TESTANDO OPM</descricao>
</OPM>
</OPMSolicitada>
<OPMSolicitada>
<quantidadeSolicitada>3</quantidadeSolicitada>
<fabricante>TESTE</fabricante>
<valor>0</valor>
<OPM>
<tipoTabela>02</tipoTabela>
<codigo>03290000</codigo>
<descricao>TESTANDO OPM2</descricao>
</OPM>
</OPMSolicitada>
<OPMSolicitada>
<quantidadeSolicitada>1</quantidadeSolicitada>
<fabricante>AAA</fabricante>
<valor>50</valor>
<OPM>
<tipoTabela>01</tipoTabela>
<codigo>01990000</codigo>
<descricao>SSS</descricao>
</OPM>
</OPMSolicitada>
</OPMSolicitadas>
<OPMUtilizada>
<identificacaoOPM>
<OPM>
<tipoTabela>01</tipoTabela>
<codigo>29900000</codigo>
<descricao>TESTE OPM</descricao>
</OPM>
<quantidade>4</quantidade>
<codigoBarra>029399</codigoBarra>
<valorUnitario>1100</valorUnitario>
<valorTotal>4400</valorTotal>
</identificacaoOPM>
<identificacaoOPM>
<OPM>
<tipoTabela>02</tipoTabela>
<codigo>32900000</codigo>
<descricao>TESTE OPM2</descricao>
</OPM>
<quantidade>5</quantidade>
<codigoBarra>33333</codigoBarra>
<valorUnitario>200</valorUnitario>
<valorTotal>1000</valorTotal>
</identificacaoOPM>
<identificacaoOPM>
<OPM>
<tipoTabela>03</tipoTabela>
<codigo>19900000</codigo>
<descricao>AAABBBCCC</descricao>
</OPM>
<quantidade>1</quantidade>
<codigoBarra>2093984</codigoBarra>
<valorUnitario>500</valorUnitario>
<valorTotal>500</valorTotal>
</identificacaoOPM>
<identificacaoOPM>
<OPM>
<tipoTabela>01</tipoTabela>
<codigo>10000000</codigo>
<descricao>AAAMMMM</descricao>
</OPM>
<quantidade>3</quantidade>
<codigoBarra>1929392</codigoBarra>
<valorUnitario>40</valorUnitario>
<valorTotal>120</valorTotal>
</identificacaoOPM>
<identificacaoOPM>
<OPM>
<tipoTabela>01</tipoTabela>
<codigo>20000000</codigo>
<descricao>NMMNN</descricao>
</OPM>
<quantidade>6</quantidade>
<codigoBarra>299888</codigoBarra>
<valorUnitario>100</valorUnitario>
<valorTotal>600</valorTotal>
</identificacaoOPM>
<identificacaoOPM>
<OPM>
<tipoTabela>01</tipoTabela>
<codigo>20000000</codigo>
<descricao>AMN</descricao>
</OPM>
<quantidade>1</quantidade>
<codigoBarra>800</codigoBarra>
<valorUnitario>80</valorUnitario>
<valorTotal>80</valorTotal>
</identificacaoOPM>
<valorTotalOPM>80</valorTotalOPM>
</OPMUtilizada>
<valorTotal>
<servicosExecutados>70</servicosExecutados>
<diarias>0</diarias>
<taxas>0</taxas>
<materiais>0</materiais>
<medicamentos>0</medicamentos>
<gases>0</gases>
<totalGeral>70</totalGeral>
</valorTotal>
<observacao>TESTE DE OBSERVACAO</observacao>
</guiaSP_SADT>
</guiaFaturamento>
</guias>
</loteGuias>
</prestadorParaOperadora>
<epilogo>
<hash>123</hash>
</epilogo>
</mensagemTISS>
Briciosm
10/03/2007
http://www.ans.gov.br/padroes/tiss/schemas tiss200608v2_0.xsd
Não acho o tiss200608v2_0.xsd???
Briciosm
10/03/2007
Não seria dd/mm/yyyy e a hora hh:mm ??
Aerreira
10/03/2007
Quanto à sequencia de protocolo, lote, etc, realmente ainda não sei. Talvez seja algo que você deva controlar, e a operadora apenas acata seu numero, desde que este não seja repetido. Numero da guia é dado pela operadora no ato da autorização (no meu entendimento), que também e feito pelo mesmo processo de envia solicitação, recebe autorização via XML/webservice.
Para o calculo do HASH existem duas opções. Se seu banco é FireBird, instale a biblioteca [b:7d232d4c6e]rFunc[/b:7d232d4c6e] que dentre as diversas UDFs existe uma chamada [b:7d232d4c6e]MD5Sum[/b:7d232d4c6e] que gera o hash md5. Ainda não testei, mas acredito que irá funcionar bem.
A outra opção é usar uma função em delphi par gerar o hash. Outro dia encontrei uma, porém não estou encontrando ela por aqui no momento para te passar. Infelizmente as informações sobre hash que tem no site da ANS são todos para Java.
Para enviar/receber as guias, você se conectará aos WebServices de cada operadora (via SOAP). Pelo que eu saiba, nenhuma delas ainda liberou a URL de acesso aos seus webservices por enquanto. Ainda devem estar se preparando para isso.
Talvez algumas operadoras também aceitem o envio do lote completo de faturamento no final de um periodo/mês via email, mas nada disso está claramente definido. Se alguem tiver alguma informação de alguma operadora, por favor compartilhe aqui no forum.
Jagged
10/03/2007
Descobri o porque dos exemplos que vieram junto com o TISSNet darem erro. Nos 2 exemplos estão faltando uma tag dentro de <ans:codigoPrestadorNaOperadora>, onde deve-se escolher entre <CNPJ>, <CPF> e <registroANS> se não me engano.
Quanto a colocar um exemplo aqui, ainda não tenho um completo pois estava resolvendo outros problemas na empresa e tive que dar uma pausa no TISS, então estou retomando agora. Mas vi que um outro amigo aqui no fórum já postou alguns exemplos ;)
Aerreira
10/03/2007
Quanto à sequencia de protocolo, lote, etc, realmente ainda não sei. Talvez seja algo que você deva controlar, e a operadora apenas acata seu numero, desde que este não seja repetido. Numero da guia é dado pela operadora no ato da autorização (no meu entendimento), que também e feito pelo mesmo processo de envia solicitação, recebe autorização via XML/webservice.
Para o calculo do HASH existem duas opções. Se seu banco é FireBird, instale a biblioteca [b:c28f9409d1]rFunc[/b:c28f9409d1] que dentre as diversas UDFs existe uma chamada [b:c28f9409d1]MD5Sum[/b:c28f9409d1] que gera o hash md5. Ainda não testei, mas acredito que irá funcionar bem.
A outra opção é usar uma função em delphi par gerar o hash. Outro dia encontrei uma, porém não estou encontrando ela por aqui no momento para te passar. Infelizmente as informações sobre hash que tem no site da ANS são todos para Java.
Para enviar/receber as guias, você se conectará aos WebServices de cada operadora (via SOAP). Pelo que eu saiba, nenhuma delas ainda liberou a URL de acesso aos seus webservices por enquanto. Ainda devem estar se preparando para isso.
Talvez algumas operadoras também aceitem o envio do lote completo de faturamento no final de um periodo/mês via email, mas nada disso está claramente definido. Se alguem tiver alguma informação de alguma operadora, por favor compartilhe aqui no forum.
Aerreira
10/03/2007
Veja um HASH MD5 aqui:
http://www.fichtner.net/delphi/md5.delphi.phtml[url][/url]
Jagged
10/03/2007
Vc se esqueceu de colocar o namespace <ans:xxx> em cada uma de suas tags.
Abidias
10/03/2007
Esta é minha primeira mensagem, atualmente trabalho numa operadora de planos de saúde, e como vocês, vivo este dilema chamado TISS.
Lendo as mensagens do forum, notei que alguns já conseguiram produzir as mensagens xml, gostaria de saber qual é o procedimento necessário para chegar a tal resultado, meu aplicativo pode gerar um arquivo de texto salvar com a extensão xml? Como faço para seguir as regras de validação descritas nos schemas?
Respondendo a dúvida do colega referente ao número de guias, há um faq no manual em pdf da ans que diz que a operadora é quem define a numeração para cada credenciado, que pode ser atribuída por intervalos.
Bom agradeço a todos.
Jagged
10/03/2007
É exatamente assim que estou fazendo.
Abraços
Abidias
10/03/2007
É exatamente assim que estou fazendo.
Abraços[/quote:75b3450021]
Bom já é uma luz no fim do túnel, mas me diz uma coisa, como é que você procede com as validações? Como você utiliza os arquivos schemas xsd?
Rodrigomy
10/03/2007
Pois é, até a última versão do schema a data era nesse formato aí mesmo, porém no novo (2.01.01) são yyyy-mm-dd e hh:mm:ss...
Quanto à sua outra duvida de nao achar o schema, eh q já tem uma versao mais nova, q eh a tissV2_01_01.xsd.
Vi por ai q vcs tao usando xmldoc para criar o arquivo XML... mas de onde estão vindo esses dados para inserir no XML? Estou trabalhando para uma operadora tambem, e o banco de dados é em Clipper (DBase), ou seja, DBF.
A principio para gerar o XML eu tinha usado um software de mapeamento, em q vc abre o DBF de um lado e o schema XSD do outro na janela do programa, e ai faz as ligacoes sobre qual campo do DBF se relaciona com qual tag do schema, e ai ele gera um arquivo XML. O software se chama Altova MapForce.
Nao sei se o q estou fazendo tem algum sentido... to meio perdido tambem...
Abidias
10/03/2007
Pois é, até a última versão do schema a data era nesse formato aí mesmo, porém no novo (2.01.01) são yyyy-mm-dd e hh:mm:ss...
Quanto à sua outra duvida de nao achar o schema, eh q já tem uma versao mais nova, q eh a tissV2_01_01.xsd.
Vi por ai q vcs tao usando xmldoc para criar o arquivo XML... mas de onde estão vindo esses dados para inserir no XML? Estou trabalhando para uma operadora tambem, e o banco de dados é em Clipper (DBase), ou seja, DBF.
A principio para gerar o XML eu tinha usado um software de mapeamento, em q vc abre o DBF de um lado e o schema XSD do outro na janela do programa, e ai faz as ligacoes sobre qual campo do DBF se relaciona com qual tag do schema, e ai ele gera um arquivo XML. O software se chama Altova MapForce.
Nao sei se o q estou fazendo tem algum sentido... to meio perdido tambem...[/quote:0a06791acc]
Este aplicativo consegue extrair dados de outras bases como SQL Server por exemplo?
Briciosm
10/03/2007
Agora não entendi!!!!
<!--<simpleType name=´st_data´>
<restriction base=´string´>
<pattern value=´[0-9]/[0-9]/[0-9]´/>
</restriction>
</simpleType>-->
<simpleType name=´st_data´>
<restriction base=´date´/>
</simpleType>
<!--<simpleType name=´st_dataHora´>
<restriction base=´string´>
<pattern value=´[0-9]/[0-9]/[0-9]H[0-9]:[0-9]´/>
</restriction>
</simpleType>-->
<simpleType name=´st_dataHora´>
<restriction base=´dateTime´/>
</simpleType>
<!--<simpleType name=´st_hora´>
<restriction base=´string´>
<pattern value=´[0-9]:[0-9]´/>
</restriction>
</simpleType>-->
<simpleType name=´st_hora´>
<restriction base=´time´/>
</simpleType>
<simpleType name=´st_numeroInteiro´>
<restriction base=´integer´/>
</simpleType>
Aerreira
10/03/2007
Bom, pelo que tenho visto os Schemas são definições do quê, onde e como devem estar as organizadas as coisas (tags e dados) dentro do XML, ou seja, seu XML é uma instância do Schema. O schema define campos obrigatórios, tipo de dado, tamanho, estruturas, etc.
Existem programas que checam se seu XML está enquadrado dentro do respectivo schema. Veja aqui: http://tools.decisionsoft.com/schemaValidate/
Aerreira
10/03/2007
Bom ao meu ver, você como operadora de planos de saúde ainda terá grandes desafios pela frente. E lembre-se: você tem prazo até 31/05 !!! Os prestadores têm o mesmo prazo, porém muitos deles já estão usando soluções parciais, com sites da própria operadora ou alguns serviços terceirizados já em funcionamento, onde o usuário insere dados manualmente e envia para a operadora. Ou seja, o prestador já tem meios de cumprir com a legislação, mesmo que parcialmente. Já as operadoras têm duas opções: criar seus próprios meios, com tenologia própria ou contratar serviços de terceiros para viabilizar sua operação online.
Primeiro respondendo ao seu questionamento: de onde vêm os dados que vão para o XML? Do banco de dados da aplicação! De onde mais viria?
Em principio com Clipper você até será capaz de ler (importar) dados vindos de XMLs de prestadores, e também gerar (exportar) dados para seus prestadores, porém isso precisa ser ONLINE ! E qual a forma de implementar isso? Ao meu ver o único meio é Web Service. Como vai fazer isso em clipper?
Aerreira
10/03/2007
Bom, pelo que dá prá interpretar aqui, só pode ser dd/mm/aaaa ou mm/dd/aaaa, mas jamais será aaaa/mm/dd
Acho que fica mais simples, e provavelmente será bem interpretado tanto pelo sistema da operadora quanto do prestador, se usarmos o padrão brasileiro dd/mm/aaaa. Concordam?
Briciosm
10/03/2007
Em um mesmo arquivo xml, vou enviar todo o lote de guias. Isso?
Aguardo ajuda!
Obrigado!
Briciosm
10/03/2007
Tenho tabelas de cliente, atendimento,...
Com o TISS como vocês estão desenvolvendo as guias?
Criando tabelas para cada guia.
Ou apenas campos?
Poderiam detalhar como estão fazendo?
Obrigado!
Aguardo ajuda!
Rodrigomy
10/03/2007
Bom, pelo que dá prá interpretar aqui, só pode ser dd/mm/aaaa ou mm/dd/aaaa, mas jamais será aaaa/mm/dd
Acho que fica mais simples, e provavelmente será bem interpretado tanto pelo sistema da operadora quanto do prestador, se usarmos o padrão brasileiro dd/mm/aaaa. Concordam?[/quote:1625855a51]
Aí q tá, essa parte de definição de data e hora do schema é a parte antiga! Vejam q está comentado esse trecho (entre <!-- e -->)... logo abaixo dessa parte está a definição nova, q é aaaa-mm-dd e hh:mm:ss... pelo menos foi isso q eu entendi... olha só como está aki no arquivo tissSimpleTypesV2_01_01.xsd:
<!--<simpleType name=´st_data´>
<restriction base=´string´>
<pattern value=´[0-9]/[0-9]/[0-9]´/>
</restriction>
</simpleType>-->
<simpleType name=´st_data´>
<restriction base=´date´/>
</simpleType>
<!--<simpleType name=´st_dataHora´>
<restriction base=´string´>
<pattern value=´[0-9]/[0-9]/[0-9]H[0-9]:[0-9]´/>
</restriction>
</simpleType>-->
<simpleType name=´st_dataHora´>
<restriction base=´dateTime´/>
</simpleType>
<!--<simpleType name=´st_hora´>
<restriction base=´string´>
<pattern value=´[0-9]:[0-9]´/>
</restriction>
</simpleType>-->
<simpleType name=´st_hora´>
<restriction base=´time´/>
</simpleType>
Rodrigomy
10/03/2007
Rodrigomy
10/03/2007
Bom ao meu ver, você como operadora de planos de saúde ainda terá grandes desafios pela frente. E lembre-se: você tem prazo até 31/05 !!! Os prestadores têm o mesmo prazo, porém muitos deles já estão usando soluções parciais, com sites da própria operadora ou alguns serviços terceirizados já em funcionamento, onde o usuário insere dados manualmente e envia para a operadora. Ou seja, o prestador já tem meios de cumprir com a legislação, mesmo que parcialmente. Já as operadoras têm duas opções: criar seus próprios meios, com tenologia própria ou contratar serviços de terceiros para viabilizar sua operação online.
Primeiro respondendo ao seu questionamento: de onde vêm os dados que vão para o XML? Do banco de dados da aplicação! De onde mais viria?
Em principio com Clipper você até será capaz de ler (importar) dados vindos de XMLs de prestadores, e também gerar (exportar) dados para seus prestadores, porém isso precisa ser ONLINE ! E qual a forma de implementar isso? Ao meu ver o único meio é Web Service. Como vai fazer isso em clipper?[/quote:17c86d0d48]
É, vem do banco de dados, é q me expressei mal hehe
É q to cheio de duvidas... eu já consegui efetuar a transmissao aqui entre duas maquinas, simulando uma como sendo prestador e outra como operadora... gerei um arquivo XML de Guia de Solicitação de Internação e arrastei pra dentro do TissNet, q o colocou na fila e o transmitiu, recebendo na outra maquina, e tambem pude ver como a operadora eh passiva (como diz o manual), só manda a resposta depois do contato do prestador.
Mas e ai... ja havia sido feito um programinha q gerava o XML a partir do sistema em Clipper, inclusive o estilo XSL, q qndo o XML era aberto no browser ele aparece como se fosse a guia em papel. Mas a data do XML era a data q aparecia, ou seja, dd/mm/aaaa... e agora com essa nova formatacao, vai ser permitido aparecer na guia aaaa-mm-dd? Meio estranho neh...
E pra gerar o hash... vou ter q fazer algo q junte todos os dados, gerar o hash e depois ainda incluir esse dado no XML. E quando chegar um XML com alguma solicitacao aki na operadora, como vou avisar a pessoa responsavel q chegou... mandar um email, bip, sms? Como? hehe
Aerreira
10/03/2007
Exatamente isso, o hash precisa ser gerado com base nos dados e incluido no final do XML. Para tratar o hash, somente via programação mesmo, não tem outro jeito. O correto seria você, como operadora, checar todo XML que chegar se está com o hash correto (mensagem TISS com hash inválido deve ser descartada e retornar ao prestador com a respectiva mensagem de erro ´5014 - Código Hash inválido, mensagem pode estar corrompida´). E da mesma forma, toda mensagem sua para o prestador também precisa ter o respectivo hash, senão não poderá ser interpretada pelo sistema no prestador.
Todos os XMLs que chegarem deverão ser tratados pelo sistema. Alguns deles serão pedidos de autorização, que deverão ser analisados pelo sistema e enviados automaticamente a respectiva mensagem XML de retorno (autorizado ou não autorizado). Isso precisa ser automático e imediato, pois o sistema do prestador estará lá aguardando a sua resposta (ou melhor a resposta online do seu sistema), provavelmente com algum ´IN´paciente no balcão reclamando da demora :-).
Como você mesmo diz, o sistema da operadora é passivo, mas precisa estar ativo no aguardo de qualquer solicitação e enviar o mais rápidamente possível a resposta à solicitação dos prestadores.
Outro exemplo: agora não é um pedido de autorização, é apenas um envio de lotes de guias de toda a produção de um prestador no final do mês. Pois bem, será igualmente uma grande mensagem TISS com tudo lá dentro, ainda assim seu sistema deverá reagir àquela mensagem, enviando ao prestador um protocolo de recepção do lote, informando a ele que recebeu o ´pacote´. (lembrando: se o hash do prestador estiver inválido, sua mensagem TISS de retorno deverá informar isso ao prestador). Pois, esse protocolo será usado pelo prestador para fazer consultas ao seu sistema (via mensagem TISS) quanto ao andamento daquele faturamento dentro da sua operadora.
Assim como, dentro da sua operadora, algum setor deverá ser responsável pela recepção de guias, pois bem, eles precisarão ser avisados da chegada desse novo lote de guias, ou de um modo menos automatizado eles próprios devem verificar periodicamente se existem lotes novos de prestadores para revisão/processamento. Lembro ainda (de novo) que todo o tratamento do faturamento dentro da operadora com relação ao que pode ou não ser pago, deverá na época devida, ficar disponível para o prestador consultar quanto à glosas e os respectivos motivos - tudo isso via mensagens TISS.
PS: calma, não se desespere! mas acho que seu clipper não vai dar conta do recado.
Aerreira
10/03/2007
Briciosm, nem sempre. Existem vários momentos. Alguns procedimentos requerem autorização, então precisa enviar uma mensagem TISS com ´pedido de autorização´ e receber a respectiva autorização ou não. Depois de todas as guias devidamente autorizadas, aí sim, você vai enviar tudo junto num único XML para a operadora dar inicio ao processo de faturamento. Mas isso dependerá das operadoras, pois existem operadoras que aceitam guias para faturamento em qualquer época do mês (leia-se GEAP), neste caso acho que você poderia gerar faturamentos diários, todo dia um pequeno lote de guias. Já a maioria das operadoras vai receber um único lote no período. Isso é uma questão que dependerá de cada operadora.
PS: se eu estiver falando alguma besteira, por favor, quem tiver alguma informação melhor definida sobre o assunto (principalmente pessoal de operadoras), por favor me corrijam.
Rodrigomy
10/03/2007
Mas acho q se o Hash nao estiver correto a mensagem nem é enviada, nao é isso?
Certo, mas esse imediato não quer dizer instantâneo, ou quer? Porque, se eu recebo a mensagem, nao creio que seja possivel nessa mesma requisicao já estar disponivel uma resposta para q ela seja enviada, já que o sistema eh passivo, ou isso é possível? Mas aí alguém da operadora nao tem q olhar a solicitação para ver se autoriza ou não? E mesmo assim, vamos supor que 1 minuto depois já estejado autorizado, como a operadora nao envia nada, o prestador vai ter q ficar mandando alguma coisa para que haja o envio da operadora, já que a transmissao depende do prestador.
Briciosm
10/03/2007
É para pegar o formato do banco.
Em relação as mensagens:
Disseram que além do envio das guias de faturamento terei que enviar guias de autorização, ....
Vou ter que instalar o tissnet em diversos setores do hospital então?
Quando receber mensagem da operadora terei que destinar então a um determinado setor???
Isto complicado!!
Briciosm
10/03/2007
Pois quem deve preencher é o médico. E a autorização é feita pelo familiar.
Isso?
O hospital só ira usar o nr para fazer as ligações com as demais guias???
Briciosm
10/03/2007
dd/mm/yyyy
terei que passar para o formato yyyy-mm-ddd???
Jagged
10/03/2007
Sim, vc vai precisar converter pra yyyy-MM-dd.
Sremulador
10/03/2007
Rodrigomy
10/03/2007
Aerreira
10/03/2007
O ideal é que nenhuma mensagem com hash inválido fosse enviada por nenhuma das partes, porém nada impede que isso seja feito, mas a consequencia lógica é que a mensagem seja devolvida pelo erro 5014 (como já citei antes), isso se o sistema do outro lado estiver checando tudo direitinho.
No meu entendimento, sim, instantâneo. Pois o seu sistema deveria analisar o que está sendo solicitado e providenciar a respectiva autorização, ou negá-la caso não possa ser autorizada automaticamente. Neste interim o sistema do prestador estará lá parado, aguardando a resposta do seu sistema. Ou seja, cada solicitação do prestador, deve haver uma resposta da operadora. No caso da autorização ser negada, o prestador terá que entrar em contato com a operadora por telefone para verificar porque não está autorizando.
Vejamos um exemplo: o usuário chega numa clínica par fazer um determinado exame, suponhamos uma Ultrassonografia. A recepcionista registra o atendimento (informando todos os dados necessários) e, em alguns casos que seja preciso autorização para a realização do exame a recepcionsta clica em ´Autorização Online´ ou qualquer coisa parecida com isso no sistema do prestador. Nesse momento o sistema dispara uma mensagem TISS para o webservice da operadora daquele paciente. O sistema do prestador fica parado aguardando um retorno... Nesse momento o sistema da operadora recebe a mensagem do prestador, analiza os dados do paciente (se está em dia com pagamentos, se seu plano cobre o serviço, etc, etc), se tudo estiver de acordo, o sistema da operadora gera uma mensagem TISS com a respectiva autorização (ou negação) e devolve como resposta à solicitação do prestador. Nesse momento o sistema do prestador recebe a autorização. Registra ela no sistema e está tudo pronto para o atendimento.
Entenda um Web Service como se fosse uma função dentro do seu programa: você chama a função passando parâmetros e espera uma resposta de retorno da função, não é assim? Com webservice você chama o serviço passando como parâmetro sua mensagem TISS e fica aguardando o retorno do webservice, que também será uma mensagem TISS.
Aerreira
10/03/2007
Como uma situação ideal de funcionamento, imagino um sistema rodando numa rede do hospital onde todos têm acesso ao sistema e o sistema tenha acesso externo à internet para poder fazer o envio/recepção de suas mensagens TISS diretamente às respectivas operadoras. Assim para cada solicitação (de um determinado setor) haverá uma e somente uma mensagem de retorno.
Outras situações, com algum tipo de concentração de mensagens (mais ou menos como um proxy), talvez também possa ser implementado de modo a distribuir respostas das solicitações para os respectivos solicitantes, mas eu não saberia dizer como isso seria feito.
Aerreira
10/03/2007
Sim, vc vai precisar converter pra yyyy-MM-dd.[/quote:f726382c3b]
Jagged, você já testou isso? Pois na definição do schema tissSimpleTypesV2_01_01.xsd está definido que: (tirando a parte que está com comentário):
- <simpleType name=´st_data´>
<restriction base=´date´ />
</simpleType>
Ou seja, apenas um campo ´date´, mas não especifica o formato exato.
Acho que a ideia dessa modificação foi generalizar a situação. Ou seja, coloque ali uma data que os sistemas vão se entender, se não se entenderem, adapte até conseguir uma resposta satisfatória.
Aerreira
10/03/2007
Exatamente (está descrita em tissGuiasV2_01_01.xsd):
- <complexType name=´ct_guiaSolicitacaoProrrogacao´>
- <sequence>
<element name=´identificacaoGuiaReferencia´ type=´ans:ct_cabecalhoGuia´ />
<element name=´dadosBeneficiario´ type=´ans:ct_beneficiario´ />
<element name=´dadosSolicitante´ type=´ans:ct_solicitante´ />
<element name=´indicacaoClinica´ type=´ans:st_indicacaoClinica´ />
<element name=´responsavelAutorizacao´ type=´ans:st_nome´ minOccurs=´0´ />
<element name=´procedimentosExamesSolicitados´ type=´ans:ct_procedimentosSolicitados´ minOccurs=´0´ />
<element name=´OPMsSolicitadas´ type=´ans:ct_OPMSolicitadas´ minOccurs=´0´ />
<element name=´autorizacao´ type=´ans:ct_autorizacaoGuiaInternacao´ minOccurs=´0´ />
<element name=´observacao´ type=´ans:st_observacao´ minOccurs=´0´ />
</sequence>
</complexType>
Rodrigomy
10/03/2007
O TISSNet impede sim... se vc arrastar um arquivo XML com hash inválido ele avisa e não coloca o arquivo na fila de transmissão.
Certo, mas a princípio me parece (não sei) que vão usar mais a transmissão ponto a ponto com o TISSNet, não? Porque para usar WebService, tanto a operadora quanto o prestador precisam ter elaborado aplicativos que consigam ´se comunicar´ entre eles e tal, um pouco mais complexo...
Aí que está minha dúvida: se for ponto a ponto, o prestador vai emitir o pedido de autorização de algo e a operadora vai receber, porém logo após recebê-lo o sistema da operadora já checa se em determinada pasta existe alguma mensagem para aquele prestador para enviá-la. Não dá para já existir uma resposta nessa diferença de décimos de segundo (do término do recebimento à checagem de existência de alguma mensagem de resposta ou qualquer outra coisa), mesmo sendo uma resposta instantânea, pois é muito rápido! E aí a operadora, mesmo já tendo a resposta, não pode enviá-la, já que ela é passiva, e tem de esperar um novo contato por parte do prestador, mas e se ele não tiver mais nada para mandar (mesmo sabendo que, quando do envio por parte do prestador, ele contata todas as operadoras cadastradas, até mesmo aquelas que ele nada precisa enviar)?
Briciosm
10/03/2007
Vi alguns exemplos neste tópico, mas ao fazer a validação dá alguns erros.
Valido no site: http://tools.decisionsoft.com/schemaValidate/
Aguardo ajuda!
Acgoes
10/03/2007
<?xml version=´1.0´ encoding=´ISO-8859-1´?>
<ans:mensagemTISS xmlns:ans=´http://www.ans.gov.br/padroes/tiss/schemas´ xmlns:xsi=´http://www.w3.org/2001/XMLSchema-instance´ xsi:schemaLocation=´http://www.ans.gov.br/padroes/tiss/schemas http://www.ans.gov.br/padroes/tiss/schemas/tissV2_01_01.xsd´>
<ans:cabecalho>
<ans:identificacaoTransacao>
<ans:tipoTransacao>ENVIO_LOTE_GUIAS</ans:tipoTransacao>
<ans:sequencialTransacao>1</ans:sequencialTransacao>
<ans:dataRegistroTransacao>2007-03-22</ans:dataRegistroTransacao>
<ans:horaRegistroTransacao>01:44:00</ans:horaRegistroTransacao>
</ans:identificacaoTransacao>
<ans:origem>
<ans:codigoPrestadorNaOperadora>
<ans:CNPJ>00000000000000</ans:CNPJ>
</ans:codigoPrestadorNaOperadora>
</ans:origem>
<ans:destino>
<ans:registroANS>123123</ans:registroANS>
</ans:destino>
<ans:versaoPadrao>2.01.01</ans:versaoPadrao>
</ans:cabecalho>
<ans:prestadorParaOperadora>
<ans:loteGuias>
<ans:numeroLote>30821</ans:numeroLote>
<ans:guias>
<ans:guiaFaturamento>
<ans:guiaConsulta>
<ans:identificacaoGuia>
<ans:registroANS>9999</ans:registroANS>
<ans:dataEmissaoGuia>2007-02-23</ans:dataEmissaoGuia>
<ans:numeroGuiaPrestador>3628749</ans:numeroGuiaPrestador>
</ans:identificacaoGuia>
<ans:beneficiario>
<ans:numeroCarteira>123123456</ans:numeroCarteira>
<ans:nomeBeneficiario>VALERIA DE SOUZA</ans:nomeBeneficiario>
<ans:nomePlano>Categoria C</ans:nomePlano>
<ans:validadeCarteira>2007-10-23</ans:validadeCarteira>
<ans:numeroCNS>999</ans:numeroCNS>
<ans:identificadorBeneficiario></ans:identificadorBeneficiario>
</ans:beneficiario>
<ans:dadosContratado>
<ans:identificacao>
<ans:CNPJ>00000000000000</ans:CNPJ>
</ans:identificacao>
<ans:nomeContratado>CRUZ AZUL DE SAO PAULO</ans:nomeContratado>
<ans:enderecoContratado>
<ans:tipoLogradouro>008</ans:tipoLogradouro>
<ans:logradouro>LINS DE VASCONCELOS</ans:logradouro>
<ans:numero>356</ans:numero>
<ans:complemento></ans:complemento>
<ans:codigoIBGEMunicipio>0355030</ans:codigoIBGEMunicipio>
<ans:codigoUF>SP</ans:codigoUF>
<ans:cep>03282000</ans:cep>
</ans:enderecoContratado>
<ans:numeroCNES>999</ans:numeroCNES>
</ans:dadosContratado>
<ans:profissionalExecutante>
<ans:nomeProfissional>Daniela Maria</ans:nomeProfissional>
<ans:conselhoProfissional>
<ans:siglaConselho>CRM</ans:siglaConselho>
<ans:numeroConselho>122500</ans:numeroConselho>
<ans:ufConselho>SP</ans:ufConselho>
</ans:conselhoProfissional>
<ans:cbos>06125</ans:cbos>
</ans:profissionalExecutante>
<ans:hipoteseDiagnostica>
<ans:CID>
<ans:nomeTabela>CID-10</ans:nomeTabela>
<ans:codigoDiagnostico>E66.0</ans:codigoDiagnostico>
<ans:descricaoDiagnostico>Obesidade devida a excesso de calorias</ans:descricaoDiagnostico>
</ans:CID>
</ans:hipoteseDiagnostica>
<ans:dadosAtendimento>
<ans:dataAtendimento>2007-02-23</ans:dataAtendimento>
<ans:procedimento>
<ans:codigoTabela>01</ans:codigoTabela>
<ans:codigoProcedimento>00010014</ans:codigoProcedimento>
</ans:procedimento>
<ans:tipoConsulta>1</ans:tipoConsulta>
<ans:tipoSaida>5</ans:tipoSaida>
</ans:dadosAtendimento>
<ans:observacao></ans:observacao>
</ans:guiaConsulta>
</ans:guiaFaturamento>
</ans:guias>
</ans:loteGuias>
</ans:prestadorParaOperadora>
<ans:epilogo>
<ans:hash>B4D70ACE1599D186E0D6D8CEB5ADA42F</ans:hash>
</ans:epilogo>
</ans:mensagemTISS>
------GUIA DE SADT
<?xml version=´1.0´ encoding=´ISO-8859-1´?>
<ans:mensagemTISS xmlns:ans=´http://www.ans.gov.br/padroes/tiss/schemas´ xmlns:xsi=´http://www.w3.org/2001/XMLSchema-instance´ xsi:schemaLocation=´http://www.ans.gov.br/padroes/tiss/schemas http://www.ans.gov.br/padroes/tiss/schemas/tissV2_01_01.xsd´>
<ans:cabecalho>
<ans:identificacaoTransacao>
<ans:tipoTransacao>ENVIO_LOTE_GUIAS</ans:tipoTransacao>
<ans:sequencialTransacao>1</ans:sequencialTransacao>
<ans:dataRegistroTransacao>2007-03-21</ans:dataRegistroTransacao>
<ans:horaRegistroTransacao>09:13:00</ans:horaRegistroTransacao>
</ans:identificacaoTransacao>
<ans:origem>
<ans:codigoPrestadorNaOperadora>
<ans:CNPJ>02222222222222</ans:CNPJ>
</ans:codigoPrestadorNaOperadora>
</ans:origem>
<ans:destino>
<ans:registroANS>123123</ans:registroANS>
</ans:destino>
<ans:versaoPadrao>2.01.01</ans:versaoPadrao>
</ans:cabecalho>
<ans:prestadorParaOperadora>
<ans:loteGuias>
<ans:numeroLote>30821</ans:numeroLote>
<ans:guias>
<ans:guiaFaturamento>
<ans:guiaSP_SADT>
<ans:identificacaoGuiaSADTSP>
<ans:registroANS>9999</ans:registroANS>
<ans:dataEmissaoGuia>2006-10-06</ans:dataEmissaoGuia>
<ans:numeroGuiaPrestador>3403838</ans:numeroGuiaPrestador>
</ans:identificacaoGuiaSADTSP>
<ans:numeroGuiaPrincipal>3403838</ans:numeroGuiaPrincipal>
<ans:dadosAutorizacao>
<ans:dataAutorizacao>2006-10-06</ans:dataAutorizacao>
<ans:senhaAutorizacao></ans:senhaAutorizacao>
<ans:validadeSenha>2006-10-06</ans:validadeSenha>
</ans:dadosAutorizacao>
<ans:dadosBeneficiario>
<ans:numeroCarteira>02918200</ans:numeroCarteira>
<ans:nomeBeneficiario>JOSE DE MELLO</ans:nomeBeneficiario>
<ans:nomePlano>Diamante-Apto (Com Obstetricia)</ans:nomePlano>
<ans:validadeCarteira>2050-07-03</ans:validadeCarteira>
<ans:numeroCNS>999</ans:numeroCNS>
<ans:identificadorBeneficiario></ans:identificadorBeneficiario>
</ans:dadosBeneficiario>
<ans:dadosSolicitante>
<ans:contratado>
<ans:identificacao>
<ans:CNPJ>00000000000000</ans:CNPJ>
</ans:identificacao>
<ans:nomeContratado>CRUZ AZUL DE SAO PAULO</ans:nomeContratado>
<ans:enderecoContratado>
<ans:tipoLogradouro>008</ans:tipoLogradouro>
<ans:logradouro>LINS DE VASCONCELOS</ans:logradouro>
<ans:numero>356</ans:numero>
<ans:complemento></ans:complemento>
<ans:codigoIBGEMunicipio>0355030</ans:codigoIBGEMunicipio>
<ans:codigoUF>SP</ans:codigoUF>
<ans:cep>03282000</ans:cep>
</ans:enderecoContratado>
<ans:numeroCNES>999</ans:numeroCNES>
</ans:contratado>
<ans:profissional>
<ans:nomeProfissional>JULIA MARIA SILVA</ans:nomeProfissional>
<ans:conselhoProfissional>
<ans:siglaConselho>CRM</ans:siglaConselho>
<ans:numeroConselho>12123</ans:numeroConselho>
<ans:ufConselho>SP</ans:ufConselho>
</ans:conselhoProfissional>
<ans:cbos>06147</ans:cbos>
</ans:profissional>
</ans:dadosSolicitante>
<ans:prestadorExecutante>
<ans:identificacao>
<ans:CNPJ>00000000000000</ans:CNPJ>
</ans:identificacao>
<ans:nomeContratado>CRUZ AZUL DE SAO PAULO</ans:nomeContratado>
<ans:enderecoContratado>
<ans:tipoLogradouro>008</ans:tipoLogradouro>
<ans:logradouro>LINS DE VASCONCELOS</ans:logradouro>
<ans:numero>356</ans:numero>
<ans:complemento></ans:complemento>
<ans:codigoIBGEMunicipio>0355030</ans:codigoIBGEMunicipio>
<ans:codigoUF>SP</ans:codigoUF>
<ans:cep>03282000</ans:cep>
</ans:enderecoContratado>
<ans:numeroCNES>999</ans:numeroCNES>
<ans:profissionalExecutanteCompl>
<ans:nomeExecutante></ans:nomeExecutante>
<ans:conselhoProfissional>
<ans:siglaConselho>CRM</ans:siglaConselho>
<ans:numeroConselho>123456</ans:numeroConselho>
<ans:ufConselho>SP</ans:ufConselho>
</ans:conselhoProfissional>
</ans:profissionalExecutanteCompl>
</ans:prestadorExecutante>
<ans:indicacaoClinica>1</ans:indicacaoClinica>
<ans:caraterAtendimento>E</ans:caraterAtendimento>
<ans:dataHoraAtendimento>2006-10-06T14:42:00</ans:dataHoraAtendimento>
<ans:diagnosticoGuia>
<ans:CID>
<ans:nomeTabela>CID-10</ans:nomeTabela>
<ans:codigoDiagnostico>H43.3</ans:codigoDiagnostico>
<ans:descricaoDiagnostico>Outras opacidades do vitreo</ans:descricaoDiagnostico>
</ans:CID>
</ans:diagnosticoGuia>
<ans:tipoSaida>5</ans:tipoSaida>
<ans:tipoAtendimento>5</ans:tipoAtendimento>
<ans:procedimentosRealizados>
<ans:procedimentoEquipe>
<ans:equipe>
<ans:membroEquipe>
<ans:codigoProfissional>
<ans:CNPJ>00000000000000</ans:CNPJ>
</ans:codigoProfissional>
<ans:identificacaoProfissional>
<ans:nomeExecutante>JOSE ANDRADE</ans:nomeExecutante>
<ans:conselhoProfissional>
<ans:siglaConselho>CRM</ans:siglaConselho>
<ans:numeroConselho>123456</ans:numeroConselho>
<ans:ufConselho>SP</ans:ufConselho>
</ans:conselhoProfissional>
<ans:codigoCBOS>06147</ans:codigoCBOS>
</ans:identificacaoProfissional>
<ans:cpf>22222222222</ans:cpf>
<ans:posicaoProfissional>1</ans:posicaoProfissional>
</ans:membroEquipe>
</ans:equipe>
<ans:procedimentosExamesRealizados>
<ans:procedimentoRealizado>
<ans:procedimento>
<ans:tipoTabela>01</ans:tipoTabela>
<ans:codigo>33010129</ans:codigo>
<ans:descricao>USG - Orgaos e estruturas superficiais (Mamas - tireoide - c</ans:descricao>
</ans:procedimento>
<ans:quantidadeRealizada>1</ans:quantidadeRealizada>
<ans:data>2007-03-02</ans:data>
</ans:procedimentoRealizado>
<ans:procedimentoRealizado>
<ans:procedimento>
<ans:tipoTabela>01</ans:tipoTabela>
<ans:codigo>33010137</ans:codigo>
<ans:descricao>USG - Pelvica (ginecologica ou masculina)</ans:descricao>
</ans:procedimento>
<ans:quantidadeRealizada>1</ans:quantidadeRealizada>
<ans:data>2007-03-02</ans:data>
</ans:procedimentoRealizado>
</ans:procedimentosExamesRealizados>
</ans:procedimentoEquipe>
</ans:procedimentosRealizados>
<ans:observacao>zzzzzzzzzzzzzzzzzzzz</ans:observacao>
</ans:guiaSP_SADT>
</ans:guiaFaturamento>
</ans:guias>
</ans:loteGuias>
</ans:prestadorParaOperadora>
<ans:epilogo>
<ans:hash>B4D70ACE1599D186E0D6D8CEB5ADA42F</ans:hash>
</ans:epilogo>
</ans:mensagemTISS>
Aerreira
10/03/2007
Ótimo isso. Então nem adianta tentar transmitir uma mensagem com hash inválido.
Rodrigomy, não acredito que seja dessa forma não. O TISSNet já é capaz de se conectar ao host (webservice) da operadora (mesmo que lá do outro lado (na operadora) exista outro TISSNet recebendo as mensagens e tratando. Não vejo como fazer uma conexão ponto-a-ponto, com o que? A solução é ´web service´. Como você mesmo disse: mesmo a operadora tendo a resposta não pode enviá-la, depende de novo contato do prestador... Mas como isso iria funcionar? O prestador vai ficar disparando uma mesma mensagem de pedido de autorização até que a operadora responda? Não acho que isso vá ser assim não. Ao meu ver: o prestador despara o pedido de autorização e o sistema fica aguardando uma resposta da operadora... parado mesmo, como uma página web onde você solicita uma consulta e fica aguardando a resposta, dentro de alguns segundos a resposta chega, como um site de busca por exemplo, você digita lá o que quer buscar, e aguarda, em seguida vem pelo proprio browser sua resposta que é uma página com diversos links para sua escolha. Pois bem, imagine o TISS da mesma forma: seu aplicativo pede algo (via mensagem tiss), aguarda uma resposta, e recebe a resposta (via mensagem tiss). Ao meu ver, isso só é possivel via web service, não vejo outra forma.
Você diz: ´[i:ae2f36472d]... quando do envio por parte do prestador, ele contata todas as operadoras cadastradas, até mesmo aquelas que ele nada precisa enviar[/i:ae2f36472d]´
Não concordo com isso, se a mensagem é para uma operadora, não tem porque contactar as outras. É uma comunicação direta entre o prestador e a respectiva operadora do paciente que está sendo necessária uma autorização.
Acho que precisamos de mais informações oficiais sobre isso tudo, senão tá todo mundo dando tiro pra todo lado na tentativa de acertar o alvo. A ANS não deixou muito claro a questão dos meios que serão usados pela operadoras para viabilizar o contato on-line com os prestores, até porque operadoras poderão optar por caminhos ligeiramente diferentes. Ontem fiz contato por email com o pessoal da ANS, como já fiz outras vezes, e espero esclarecer algumas dúvidas atuais.
Briciosm
10/03/2007
Só que a ANS diz que tem que excluir as tags do cálculo.
Será que este md5 já faz isso??? Ou tem que ser alterado.
Alguém já tem algo pronto para este cálculo? Onde consigo?
Acredito que o valor do hash deva ser calculado depois de gravar todo o arquivo xml. Depois de pronto o xml, calculamos o hash e adicionamos o valor calculado no arquivo.
Será que é assim?
Aguardo ajuda!
Obrigado!
Jrg
10/03/2007
Eu tb estou me debatendo com o TISS e confesso que esse forum está ajudando bastante.
Alguém sabe para que serve o APLICATISS?
No site da ANS ele é citado superficialmente [u:76b8cec831]e não tem link para baixa-lo[/u:76b8cec831]...
Se alguém tiver alguma informação eu agradeço.
Abraços!
Rodrigomy
10/03/2007
Pois é, é estranho mas é... o q eu simulei aqui é exatamente o que fala essa parte do manual:
´1.3.4. Prestador x Operadora Comunicando-se Diretamente via Transmissão Ponto a Ponto TISSNet
Com ambas as pontas utilizando o TISSNet, o protocolo de comunicação ponto a ponto do aplicativo será usado, e as caixas de entrada e saída deverão obedecer à organização prevista. Neste caso, as mensagens serão transmitidas em lotes para a operadora e, quando o lote se encerrar, o sentido da comunicação será revertido e as mensagens da operadora para o prestador passarão a vir para a caixa de entrada deste último. Como o TISSNet contata cada operadora ainda que não haja mensagens destinadas a ela, um eventual lote da operadora para o prestador será enviado tão logo o prestador comande nova transmissão para qualquer operadora, ainda que não seja a que deseja enviar o lote a ele (todas serão contactadas e o lote em questão será, portanto, enviado).´
E quanto aas duas ultimas duvidas do briciosm e do JRG:
briciosm, NÃO, o MD5 não separa automaticamente as tags, vc mesmo vai ter que fazer um programa que pegue todo o conteúdo que está dentro de todas as tags (inclusive do cabeçalho, onde tem lá ENVIO_LOTE_GUIAS e tal, por exemplo), colocar um do lado do outro justapostos (sem espaços) e ai passar o MD5 em cima dessa dessa enorme string.
JRG, acho que ninguem sabe a respeito do APLICATISS pq a ANS somente falou que o faria mas até agora nao o disponibilizou... hehe
Aerreira
10/03/2007
Hummmm (mugido da ignorancia minha)... Sabe que eu não tinha visto ainda esse manual dentro do TISSNet !
Compreendi por esse parágrafo então que a cada ciclo de envio/recebimento o TISSNet contacta todas as operadoras cadastradas/configuradas nele. Ok então ele faz isso, mas não acho que seja a melhor solução, mas talvez isso viabilize o fato do retorno da operadora demorar mais que o esperado e não ser necessário ao prestador re-enviar a solicitação, pois quando ouver resposta a operadora envia para o tissnet do prestador (será que é isso?). De qualquer modo, vou dar uma lida completa nesse manual para ver se algumas dúvidas se esclarecem. Valeu.
Como eu havia dito sobre webservices, neste mesmo manual diz: ´[i:2b04b135ba]“Web services” são serviços “on line”. O conceito de fila de transmissão é, em princípio, estranho a eles. Um “web service” normalmente opera em um ciclo simples de “pedido de serviço + envio de resposta”, sem filas lá e cá.[/i:2b04b135ba]´ Portando meus conceitos se confirmam, porém o TISSNet implementa uma solução diferente. Deixa eu ler o manual, depois retorno aqui.
Jrg
10/03/2007
Obrigado pela resposta rodrigomy!
É uma pena que o APLICATISS não esteja disponivel, pois segundo o manual do TISSNET, o APLICATISS teria um exemplo completo de exportação para o XML que sanaria muitas dúvidas aqui postadas.
Será que não tem jeito mesmo de se conseguir esse APLICATISS?
Já mandei um e-mail pro ´Fale conosco´ do site da ANS mas ninguém me respondeu... :(
Briciosm
10/03/2007
E o procedimento para tirar as tags e fazer este cálculo?
Poderia disponibilizar?
Obrigado!
Briciosm
10/03/2007
http://www.ans.gov.br/portal/site/home/destaque_aplicativo_tiss.asp?secao=Home
Não sei como, mas o link é meio antigo...
Até mais!
Aerreira
10/03/2007
Já passei um link sobre isso aqui no forum.
Quanto a juntar tudo e fazer o hash... (não estaria pedindo um pouco demais não :-) ) Ainda não tenho isso pronto... tenho algumas ideias mas nada pronto ainda.
Aerreira
10/03/2007
Briciosm, preparei aqui uma rotina para separar o conteúdo de um XML do TISS.
Carregue o XML para dentro de um memo e rode a rotina abaixo, no final terá apenas o conteudo (sem nenhuma tag) na variável xmlConteudo. Depois fica fácil gerar o hash.
xmlConteudo := ´´; C := 0; while (C < length(memo1.text)-1) and (copy(memo1.text,C,13) <> ´<ans:epilogo>´) do begin if (copy(memo1.text,C,1)=´>´) and (copy(memo1.text,C+1,1) <> ´<´) and (copy(memo1.text,C+1,1) <> ´ ´) and (copy(memo1.text,C+1,1) <> chr(13)) and (copy(memo1.text,C+1,1) <> chr(10)) then begin inc(C); while copy(memo1.text,C,2)<>´</´ do begin xmlConteudo := xmlConteudo + copy(memo1.text,C,1); inc(C); end; end; inc(C); end;
Peguei aqueles XMLs postados pelo ACGOES, que estavam apresentando erro no TISSNet ´C:\transporte\msg_tiss2.xml: Mensagem TISS com problemas: ´hash´ MD5 não confere´.
Separei o conteúdo daquelas mensagems com a rotina acima e gerei o hash com aquela rotina que passei o link outro dia. Alterei o XML colocando o novo hash. Agora submetendo o arquivo ao TISSNet apresenta a seguinte mensagem ´C:\transporte\msg_tiss1_hash.xml: ENVIO_LOTE_GUIAS: 00000000000000 -> 123123: Nodo destino não cadastrado´
Ou seja, acho que o problema do hash foi resolvido.
Briciosm
10/03/2007
O padrão TISS é algo novo ainda e ainda temos muitas dúvidas. Não só em relação a elaboração do xml, mas todo o processo em si. Principalmente o funcionamento da rotina.
Obrigado pelo procedimento enviado acima de tirar as tags para fazer o cálculo do hash. Não cheguei a testar... Assim que conseguir aviso.
No hospital que trabalho, acho que não vamos conseguir elaborar a tempo a troca eletrônica via xml.
Vamos trabalhar com as guias em papel.
Soube também que médicos entraram com uma ação contra a ANS.
Vamos ver o que vai dar...
Obrigado! E até mais,
Briciosm
10/03/2007
Obrigado!
Camilasmbastos
10/03/2007
-- Guia de Solicitação de Internação --
<?xml version=´1.0´ encoding=´ISO-8859-1´ ?>
<tiss:mensagemTISS xmlns:tiss=´http://www.ans.gov.br/padroes/tiss/schemas´ xmlns:xsi=´http://www.w3.org/2001/XMLSchema-instance´ xsi:schemaLocation=´http://www.ans.gov.br/padroes/tiss/schemas http://www.ans.gov.br/padroes/tiss/schemas/tissV2_01_01.xsd´>
<tiss:cabecalho>
<tiss:identificacaoTransacao>
<tiss:tipoTransacao>ENVIO_LOTE_GUIAS</tiss:tipoTransacao>
<tiss:sequencialTransacao>1</tiss:sequencialTransacao>
<tiss:dataRegistroTransacao>2007-03-27</tiss:dataRegistroTransacao>
<tiss:horaRegistroTransacao>10:03:00</tiss:horaRegistroTransacao>
</tiss:identificacaoTransacao>
<tiss:origem>
<tiss:codigoPrestadorNaOperadora>
<tiss:CNPJ>08744184700000</tiss:CNPJ>
</tiss:codigoPrestadorNaOperadora>
</tiss:origem>
<tiss:destino>
<tiss:registroANS>317632</tiss:registroANS>
</tiss:destino>
<tiss:versaoPadrao>2.01.01</tiss:versaoPadrao>
</tiss:cabecalho>
<tiss:prestadorParaOperadora>
<tiss:solicitacaoProcedimento>
<tiss:guiaSolicInternacao>
<tiss:identificacaoGuiaSolicitacaoInternacao>
<tiss:registroANS>317632</tiss:registroANS>
<tiss:dataEmissaoGuia>2007-03-27</tiss:dataEmissaoGuia>
<tiss:numeroGuiaPrestador>337</tiss:numeroGuiaPrestador>
</tiss:identificacaoGuiaSolicitacaoInternacao>
<tiss:dadosBeneficiario>
<tiss:numeroCarteira>12</tiss:numeroCarteira>
<tiss:nomeBeneficiario>Camila</tiss:nomeBeneficiario>
<tiss:nomePlano>Unico</tiss:nomePlano>
<tiss:validadeCarteira>2007-05-08</tiss:validadeCarteira>
<tiss:numeroCNS />
</tiss:dadosBeneficiario>
<tiss:dadosSolicitante>
<tiss:contratado>
<tiss:identificacao>
<tiss:CNPJ>60544244000167</tiss:CNPJ>
</tiss:identificacao>
<tiss:nomeContratado></tiss:nomeContratado>
<tiss:enderecoContratado>
<tiss:tipoLogradouro>645</tiss:tipoLogradouro>
<tiss:logradouro></tiss:logradouro>
<tiss:numero></tiss:numero>
<tiss:complemento />
<tiss:codigoIBGEMunicipio>0355030</tiss:codigoIBGEMunicipio>
<tiss:codigoUF>SP</tiss:codigoUF>
<tiss:cep>24456500</tiss:cep>
</tiss:enderecoContratado>
<tiss:numeroCNES />
</tiss:contratado>
<tiss:profissional>
<tiss:nomeProfissional>Dr. Sem Nome
</tiss:nomeProfissional>
<tiss:conselhoProfissional>
<tiss:siglaConselho>CRM</tiss:siglaConselho>
<tiss:numeroConselho>63422</tiss:numeroConselho>
<tiss:ufConselho>SP</tiss:ufConselho>
</tiss:conselhoProfissional>
</tiss:profissional>
</tiss:dadosSolicitante>
<tiss:caraterInternacao>E</tiss:caraterInternacao>
<tiss:tipoInternacao>1</tiss:tipoInternacao>
<tiss:indicacaoClinica>Teste de indicação clínica</tiss:indicacaoClinica>
<tiss:regimeInternacao>1</tiss:regimeInternacao>
<tiss:hipotesesDiagnosticas>
<tiss:CIDPrincipal>
<tiss:CID>
<tiss:nomeTabela>CID-10</tiss:nomeTabela>
<tiss:codigoDiagnostico>N83.3</tiss:codigoDiagnostico>
</tiss:CID>
</tiss:CIDPrincipal>
</tiss:hipotesesDiagnosticas>
<tiss:procedimentosExamesSolicitados>
<tiss:procedimentoSolicitado>
<tiss:quantidadeSolicitada>1</tiss:quantidadeSolicitada>
<tiss:procedimento>
<tiss:tipoTabela>01</tiss:tipoTabela>
<tiss:codigo>33010129</tiss:codigo>
<tiss:descricao>17 - ALFA OH - PROGESTERONA (Hidroxiprogesterona) (RIE)</tiss:descricao>
</tiss:procedimento>
</tiss:procedimentoSolicitado>
</tiss:procedimentosExamesSolicitados>
<tiss:prestadorAutorizado>
<tiss:identificacao>
<tiss:cpf>12048955703</tiss:cpf>
</tiss:identificacao>
<tiss:nomeContratado></tiss:nomeContratado>
<tiss:enderecoContratado>
<tiss:tipoLogradouro>008</tiss:tipoLogradouro>
<tiss:logradouro></tiss:logradouro>
<tiss:numero></tiss:numero>
<tiss:complemento />
<tiss:codigoIBGEMunicipio>0355030</tiss:codigoIBGEMunicipio>
<tiss:codigoUF>SP</tiss:codigoUF>
<tiss:cep>24456500</tiss:cep>
</tiss:enderecoContratado>
<tiss:numeroCNES>999</tiss:numeroCNES>
</tiss:prestadorAutorizado>
</tiss:guiaSolicInternacao>
</tiss:solicitacaoProcedimento>
</tiss:prestadorParaOperadora>
<tiss:epilogo>
<tiss:hash>38A20F4008790675768218E2C32FA4F4</tiss:hash>
</tiss:epilogo>
</tiss:mensagemTISS>
Galera, peguei essa guia aki no forum msm mas não estava validando... fiz algumas alterações e agora o xml está válido. Estou usando o XML Spy para validar (não sei se é confiável mas foi a forma que achei para validar)
Estou perdidinha para implementar o Tiss. Espero contar com a ajuda de todos!! :)
Briciosm
10/03/2007
Para validar acesso:
http://tools.decisionsoft.com/schemaValidate/
Briciosm
10/03/2007
Será que estão errados?
Aguardo ajuda!
Camilasmbastos
10/03/2007
Mt estranho os erros que dá nesse site!!!!
Alguém conseguiu validar por ele???
TISSNET faz validação também??? ou ele só compara o hash?????
Jagged
10/03/2007
O código que vc enviou para puxar o conteúdo das tags funcionou perfeitamente! Assim como aquele código que calcula o hash. Muito obrigado!
Já estou gerando todo o xml no meu programa, inclusive com o hash, e agora só esbarra na parte do host para envio no TISSNet. Ou seja, está tudo 100¬!
Se precisarem, posto o que vcs precisarem ;)
Camilasmbastos
10/03/2007
Jagged, teria como vc postar a sua guia de solicitação de internação???
Briciosm
10/03/2007
Este site está na ANS para validação.
Só que a validação está dando erro para os xml aqui do forum.
O que está errado. Os xml ou este site?
Qual outro recomendam??
Abidias
10/03/2007
D:\Documentos TISS\Testes\Teste4\teste.xml: D:\Documentos TISS\Testes\Teste4\teste.xml: Mensagem inválida: XML do arquivo não obedece ao esquema do TISS: cvc-enumeration-valid: Value ´DemonstrativoRetorno´ is not facet-valid with respect to enumeration ´[ENVIO_LOTE_GUIAS, SOLIC_DEMONSTRATIVO_RETORNO, SOLIC_STATUS_PROTOCOLO, AUTORIZACAO_PROCEDIMENTOS, PROTOCOLO_RECEBIMENTO, SITUACAO_PROTOCOLO, RESPOSTA_SOLICITACAO, DEMONSTRATIVO_PAGAMENTO, DEMONSTRATIVO_ANALISE_CONTA, DEMONSTRATIVO_ODONTOLOGIA, CANCELAMENTO_GUIA_RECIBO, RE_APRESENTACAO_GUIA, CANCELA_GUIA, VERIFICA_ELEGIBILIDADE, SITUACAO_ELEGIBILIDADE, AUTORIZACAO_ODONTOLOGIA]´. It must be a value from the enumeration.
Alguém já teve este problema? como faço para seguir a risca o tal esquema TISS?
Abidias
10/03/2007
<?xml version=´1.0´ encoding=´ISO-8859-1´ ?>
- <ans:mensagemTISS xmlns=´http://w3.org/2001/XMLSchema´ xmlns:ans=´http://www.ans.gov.br/padroes/tiss/schemas´>
- <ans:cabecalho>
- <ans:identificacaoTransacao>
<ans:tipoTransacao>DemonstrativoRetorno</ans:tipoTransacao>
<ans:sequencialTransacao>25</ans:sequencialTransacao>
<ans:dataRegistroTransacao>22/03/2007</ans:dataRegistroTransacao>
<ans:horaRegistroTransacao>08:56:00</ans:horaRegistroTransacao>
</ans:identificacaoTransacao>
- <ans:origem>
<ans:registroANS>414077</ans:registroANS>
</ans:origem>
- <ans:destino>
<ans:codigoPrestadorNaOperadora>97397848000138</ans:codigoPrestadorNaOperadora>
</ans:destino>
</ans:cabecalho>
- <ans:operadoraParaPrestador>
- <ans:demonstrativoPagamento>
- <ans:dadosOperadora>
<ans:registroANS>414077</ans:registroANS>
<ans:nomeOperadora>Mastermed Administradora de Planos de Saúde Ltda</ans:nomeOperadora>
<ans:CNPJ>04487764000104</ans:CNPJ>
<ans:numeroDemonstrativo>1</ans:numeroDemonstrativo>
<ans:dataEmissao>22/03/2007</ans:dataEmissao>
</ans:dadosOperadora>
- <ans:dadosPrestador>
<ans:codigoPrestador>97397848000138</ans:codigoPrestador>
<ans:nomePrestador>HOSPITAL JAAR ANDRADE</ans:nomePrestador>
<ans:codigoCNES>9999999</ans:codigoCNES>
</ans:dadosPrestador>
- <ans:dadosPagamento>
<ans:dataPagamento>22/02/2007</ans:dataPagamento>
<ans:formaPagamento>2</ans:formaPagamento>
<ans:banco>111</ans:banco>
<ans:agencia>9999</ans:agencia>
<ans:numeroContaCheque>99999-9/000000</ans:numeroContaCheque>
</ans:dadosPagamento>
- <ans:dadosResumo>
<ans:numeroLote>4625</ans:numeroLote>
<ans:dataEnvioLote>19/01/2007</ans:dataEnvioLote>
<ans:numeroProtocolo>4625</ans:numeroProtocolo>
<ans:valorInformado>36858,39</ans:valorInformado>
<ans:valorProcessado>36858,39</ans:valorProcessado>
<ans:valorLiberado>36858,39</ans:valorLiberado>
<ans:valorGlosa>0,00</ans:valorGlosa>
<ans:totalGeralValorInformado>36858,39</ans:totalGeralValorInformado>
<ans:totalGeralValorProcessado>36858,39</ans:totalGeralValorProcessado>
<ans:totalGeralValorLiberado>36858,39</ans:totalGeralValorLiberado>
<ans:totalGeralGlosa>0,00</ans:totalGeralGlosa>
<ans:totalValor>36858,39</ans:totalValor>
</ans:dadosResumo>
</ans:demonstrativoPagamento>
</ans:operadoraParaPrestador>
- <ans:epilogo>
<ans:hash>79ff13136f1e851bab8ce9a920ac0ca8</ans:hash>
</ans:epilogo>
</ans:mensagemTISS>
Rodrigomy
10/03/2007
Aerreira
10/03/2007
Ou seja, ao inves de ´DemonstrativoRetorno´ coloque ´SOLIC_DEMONSTRATIVO_RETORNO´
Abidias
10/03/2007
Valeu Rodrigo, vou tentar seguir as definições do arquivo schema, agora que consegui a versão correta e localizei onde estão as definições, obrigado.
Abidias
10/03/2007
Ou seja, ao inves de ´DemonstrativoRetorno´ coloque ´SOLIC_DEMONSTRATIVO_RETORNO´[/quote:2a25000691]
Obrigado pela dica.
Briciosm
10/03/2007
Camilasmbastos
10/03/2007
Aerreira
10/03/2007
Oi Camila, quando um prestador envia uma ´guiaSolicInternacao´ (ans:ct_guiaSolicInternacao) a resposta da operadora para o prestador seria uma ´autorizacaoServico´ ou talvez ´respostaElegibilidade´ (ans:ct_retornoElegibilidade), é algo por aí, mas não estou ainda tratando de dados de internação, então não estou muito seguro disso não.
Posso te perguntar? O que seria ´aplicação de POS´? Seria algo como Medlink ?
Camilasmbastos
10/03/2007
Oi Camila, quando um prestador envia uma ´guiaSolicInternacao´ (ans:ct_guiaSolicInternacao) a resposta da operadora para o prestador seria uma ´autorizacaoServico´ ou talvez ´respostaElegibilidade´ (ans:ct_retornoElegibilidade), é algo por aí, mas não estou ainda tratando de dados de internação, então não estou muito seguro disso não.
Posso te perguntar? O que seria ´aplicação de POS´? Seria algo como Medlink ?[/quote:9b86872bcb]
Medlink seria um tipo de mensagem do Bradesco. POS são akelas maquininhas de cartão de crédito....
Rodrigomy
10/03/2007
Na Guia de Solicitação de Prorrogação, que compreende alguns dados da FRENTE da Guia de Solicitação de Internação e seu respectivo VERSO, temos 3 grupos iguais de campos na seção Prorrogações (da guia em papel). Em cada um deles temos espaço para 2 procedimentos e 2 OPMs.
Minha dúvida é: se tiverem q ser descritos 3 procedimentos, como isso será exibido? Poderemos aumentar uma linha? Ou não, a guia é ´imutável´? Ou então preencheremos 2 procedimentos do primeiro grupo e 1 procedimento do segundo grupo?
Aerreira
10/03/2007
Rodrigo,
Em ´tissGuiasV2_01_01.xsd´ existe o ´ct_guiaSolicitacaoProrrogacao´ que é um tipo complexo contendo, dentre outro itens, os itens ´procedimentosExamesSolicitados´ e ´OPMsSolicitadas´. Os dois itens acima são do tipo minOccurs=´0´, ou seja, pode não haver nenhum item, porém não há limite de quantidade, pode relacionar quantos forem necessários.
No simple type ´ct_procedimentosSolicitados´ a definição maxOccurs=´unbounded´, indica que podem ser lançados quantos itens forem necessários.
Ao meu ver as guias não são imutáveis, pode-se aumentar quantas linhas forem necessárias em itens desse tipo (estou falando do XML, ok?), elas são ajustadas a cada necessidade. Apenas no modelo impresso existem limites que devem ter sido baseados em médias de guias processadas pelas operadoras.
PS: não encontrei o modelo impresso para essa guia de prorrogação, encontrei apenas a Guia de Internação. Lembre-se que à partir do TISS as guias de todas as operadoras precisarão seguir um único padrão, não sei se você está se baseando em algum modelo anterior dessa operadora.
Leia o que diz no hot-site TISS da ANS: ´[i:2c7a9c7e9a]O pedido de prorrogação será feito pelos prestadores de serviço de forma devidamente acordada com a operadora e a autorização deverá ser registrada no verso desta guia, até a elaboração da padronização da Guia de Pedido de Prorrogação a ser realizada pelo COPISS.[/i:2c7a9c7e9a]´, ou seja, ainda não existe essa guia padronizada no TISS.
Aerreira
10/03/2007
Certo, maquininhas de cartão de crédito. O MEDLink ao meu ver é exatamente isso, algumas operadoras como a Golden Cross por exemplo faz autorização online de procedimentos via uma ´maquininha´ da medLink que é uma empresa que terceiriza o serviço, fazendo a conexão entre prestador e operadora. E ainda mais, esse serviço tem custo para o prestador, tanto aluguel da maquininha quanto percentual sobre o serviço realizado (mais ou menos como nos cartões de crédito). Acho que após a viabilização completa do TISS os serviços da medlink poderão ser completamente cancelados, pois o prestador estará online direto com a operadora, sem necessidade de nenhum intermediário no meio (desde que o sistema do prestador esteja operando o TISS à 100¬). Os prestadores de serviço precisam prestar atenção nisso, o TISS pode lhes trazer benefícios financeiros - não sei se já se tocaram à respeito.
Serviços como medlink, salutia e outros que devem existir por aí, que fazem essa intermediação somente serão necessários para aquelas operadoras que não tenham capacidade própria de gerenciarem seus TISSes internamente na propria empresa, então precsarão contratar terceiros para fazerem esse gerenciamento. Concordam?
Briciosm
10/03/2007
Tem a guia de solicitação de internação.
O Resumo de internação é ligado a esta guia.
Depois vem a guia de outras despesas...
A minha dúvida é a seguinte.
Aqui no hospital e acho que na grande maioria, fizemos encerramento de conta. Ou seja, mais ou menos de 30 em 30 dias fechamos a conta e abrimos outra. Para poder cobrar do convênio.
Como fica esta guia de solicitação de internação? Terá que existir outra?
Daí terá outra quia de resumo e outra guia de outras despesas.
É isso mesmo?
Obrigado!
Camilasmbastos
10/03/2007
Certo, maquininhas de cartão de crédito. O MEDLink ao meu ver é exatamente isso, algumas operadoras como a Golden Cross por exemplo faz autorização online de procedimentos via uma ´maquininha´ da medLink que é uma empresa que terceiriza o serviço, fazendo a conexão entre prestador e operadora. E ainda mais, esse serviço tem custo para o prestador, tanto aluguel da maquininha quanto percentual sobre o serviço realizado (mais ou menos como nos cartões de crédito). Acho que após a viabilização completa do TISS os serviços da medlink poderão ser completamente cancelados, pois o prestador estará online direto com a operadora, sem necessidade de nenhum intermediário no meio (desde que o sistema do prestador esteja operando o TISS à 100¬). Os prestadores de serviço precisam prestar atenção nisso, o TISS pode lhes trazer benefícios financeiros - não sei se já se tocaram à respeito.
Serviços como medlink, salutia e outros que devem existir por aí, que fazem essa intermediação somente serão necessários para aquelas operadoras que não tenham capacidade própria de gerenciarem seus TISSes internamente na propria empresa, então precsarão contratar terceiros para fazerem esse gerenciamento. Concordam?[/quote:363babc6a8]
aerreira, o prestador aluga a maquininha direto com a Operadora de Saúde. O formato medlink acho q realmente vai morrer pois a ´conversa´ será em formato TISS. Mas a aplicação POS continuará no mercado, pois estou trabalhando para uma grande Operadora de Saúde e essa aplicação mandará e receberá TISS..... Enfim....
:)
Briciosm
10/03/2007
Nr da guia de solicitação de internação ou o nr da guia de resumo de internação??
Obrigado!
Camilasmbastos
10/03/2007
É o número da guia de resumo de internação. Dá uma olha nesse manual para verificar. http://www.ans.gov.br/portal/site/_hotsite_tiss/pdf/Manual_TISS_2.1.03.pdf página 24.
ajudei?
Abidias
10/03/2007
´D:\Documentos TISS\Testes\Teste4\teste.xml:Mensagem TISS com problemas: ´hash´ MD5 não confere´
Eu fiz o cálculo hash com todo o conteúdo da mensagem TISS, sem as tags, conferi o código hash gerado num site que tem um script que faz o cálculo, o resultado foi o mesmo.
Alguém já conseguiu enviar uma mensagem xml já?
Agradeço a quem puder ajudar este mero mortal.
Abidias
10/03/2007
Camilasmbastos
10/03/2007
Me passa o seu xml. Eu estou usando no TISSNET pelo eclipse ai quando jogo algum xml nele ele aparece o calculo que ele faz hash para comparar como que está no xml....
Briciosm
10/03/2007
O Resumo de internação é ligado a esta guia.
Depois vem a guia de outras despesas...
A minha dúvida é a seguinte.
Aqui no hospital e acho que na grande maioria, fizemos encerramento de conta. Ou seja, mais ou menos de 30 em 30 dias fechamos a conta e abrimos outra. Para poder cobrar do convênio.
Como fica esta guia de solicitação de internação? Terá que existir outra?
Daí terá outra quia de resumo e outra guia de outras despesas.
É isso mesmo?
Obrigado!
Jagged
10/03/2007
Se o cálculo do hash estiver realmente correto, verifique se há algum espaço entre as tags do hash e o valor dele. Por exemplo:
se estiver assim: <ans:hash>cffc31222044265aa55380f7d2b3f974 </ans:hash>
ele vai indicar erro. O correto é estar assim:
<ans:hash>cffc31222044265aa55380f7d2b3f974</ans:hash>
Abidias
10/03/2007
Oi Camila, abaixo segue o xml que estou gerando, só falta resolver a questão do hash, obrigado pela ajuda.
<?xml version=´1.0´ encoding=´ISO-8859-1´ ?>
<ans:mensagemTISS xmlns=´http://www.w3.org/2001/XMLSchema´ xmlns:ans=´http://www.ans.gov.br/padroes/tiss/schemas´>
<ans:cabecalho>
<ans:identificacaoTransacao>
<ans:tipoTransacao>DEMONSTRATIVO_PAGAMENTO</ans:tipoTransacao>
<ans:sequencialTransacao>25</ans:sequencialTransacao>
<ans:dataRegistroTransacao>2007-03-29</ans:dataRegistroTransacao>
<ans:horaRegistroTransacao>08:56:00</ans:horaRegistroTransacao>
</ans:identificacaoTransacao>
<ans:origem>
<ans:registroANS>414077</ans:registroANS>
</ans:origem>
<ans:destino>
<ans:codigoPrestadorNaOperadora>97397848000138</ans:codigoPrestadorNaOperadora>
</ans:destino>
<ans:versaoPadrao>2.01.01</ans:versaoPadrao>
</ans:cabecalho>
<ans:operadoraParaPrestador>
<ans:demonstrativosRetorno>
<ans:demonstrativoPagamento>
<ans:cabecalhoDemonstrativo>
<ans:numeroDemonstrativo>1</ans:numeroDemonstrativo>
<ans:dataEmissao>2007-03-29</ans:dataEmissao>
</ans:cabecalhoDemonstrativo>
<ans:dentificacaoOperadora>
<ans:registroANS>414077</ans:registroANS>
<ans:nomeOperadora>Mastermed Administradora de Planos de Saúde Ltda</ans:nomeOperadora>
<ans:CNPJ>04487764000104</ans:CNPJ>
</ans:dentificacaoOperadora>
<ans:dadosPrestador>
<ans:identificacao>
<ans:codigoPrestadorNaOperadora>97397848000138</ans:codigoPrestadorNaOperadora>
</ans:identificacao>
<ans:nomeContratado>HOSPITAL JAAR ANDRADE</ans:nomeContratado>
<ans:enderecoContratado>
<ans:tipoLogradouro>001</ans:tipoLogradouro>
<ans:logradouro>Fulano de Tal</ans:logradouro>
<ans:numero>25</ans:numero>
<ans:complemento>2 andar</ans:complemento>
<ans:codigoIBGEMunicipio>0000001</ans:codigoIBGEMunicipio>
<ans:municipio>Salvador</ans:municipio>
<ans:codigoUF>BA</ans:codigoUF>
<ans:cep>40301210</ans:cep>
</ans:enderecoContratado>
<ans:numeroCNES>9999999</ans:numeroCNES>
</ans:dadosPrestador>
<ans:dadosPagamento>
<ans:dataPagamento>2007-03-29</ans:dataPagamento>
<ans:formaPagamento>2</ans:formaPagamento>
<ans:banco>111</ans:banco>
<ans:agencia>9999</ans:agencia>
<ans:contaCorrente>99999-9</ans:contaCorrente>
</ans:dadosPagamento>
<ans:dadosResumo>
<ans:detalheResumo>
<ans:numeroFatura>1</ans:numeroFatura>
<ans:numeroLote>4625</ans:numeroLote>
<ans:dataEnvioLote>2007-01-19</ans:dataEnvioLote>
<ans:numeroProtocolo>4625</ans:numeroProtocolo>
<ans:valorInformado>36858.39</ans:valorInformado>
<ans:valorProcessado>36858.39</ans:valorProcessado>
<ans:valorLiberado>36858.39</ans:valorLiberado>
<ans:valorGlosa>0.00</ans:valorGlosa>
</ans:detalheResumo>
<ans:valorTotal>0.00</ans:valorTotal>
</ans:dadosResumo>
<ans:totalGeralInformado>36858.39</ans:totalGeralInformado>
<ans:TotalGeralProcessado>36858.39</ans:TotalGeralProcessado>
<ans:TotalGeralLiberado>36858.39</ans:TotalGeralLiberado>
<ans:TotalGeralGlosa>0</ans:TotalGeralGlosa>
<ans:demaisDescontos>
<ans:descricao>Teste</ans:descricao>
<ans:valorDesconto>0.00</ans:valorDesconto>
</ans:demaisDescontos>
<ans:valorFinalLiberado>36858.39</ans:valorFinalLiberado>
</ans:demonstrativoPagamento>
</ans:demonstrativosRetorno>
</ans:operadoraParaPrestador>
<ans:epilogo>
<ans:hash>806a2ccf90d20ab7f6a9fd917cc8b629</ans:hash>
</ans:epilogo>
</ans:mensagemTISS>
Abidias
10/03/2007
Não existe nenhum espaço entre a tag e o conteúdo, mas vou observar se não esqueci de adicionar algum campo ao cálculo.
Grato.
Camilasmbastos
10/03/2007
Hash calculado sobre: DEMONSTRATIVO_PAGAMENTO252007-03-2908:56:00414077973978480001382.01.0112007-03-29414077Mastermed Administradora de Planos de Saúde Ltda0448776400010497397848000138HOSPITAL JAAR ANDRADE001Fulano de Tal252 andar0000001SalvadorBA4030121099999992007-03-292111999999999-9146252007-01-19462536858.3936858.3936858.390.000.0036858.3936858.3936858.390Teste0.0036858.39
Informado: 806a2ccf90d20ab7f6a9fd917cc8b629 / Calculado: 3d89da9fe525473137d921f0c33b3887
C:\Documents and Settings\camila\Desktop\teste.xml: Mensagem TISS com problemas: ´hash´ MD5 não confere
O INFORMADO é o hash que vc colocou.... e o CALCULADO é o que o TISSNET calcula... eu substitui e ele não deu mais erro de hash... muda aí e diz se funcionou como vc queria.
Informado: 806a2ccf90d20ab7f6a9fd917cc8b629 / Calculado: 3d89da9fe525473137d921f0c33b3887
:)
Abidias
10/03/2007
Camila muito obrigado, realmente tinha um erro no meu código fonte, parece brincadeira, mas eu erro por causa de uma única letra ´e´, eu já havia conseguido, o arquivo passou e foi para fila de transmissão.
Aproveito para agradecer a todos e peço desculpas, eu deveria ter conferido com mais atenção antes de ter postado as mensagens. Bom pelo menos agora da pra saber que o cálculo é feito com os valores de todas as tags da mensagem.
Brigadão novamente.
Rodrigomy
10/03/2007
Sim, isso eu sabia, tava falando da guia em papel mesmo!
Foi o q supus tb, mas, e se tiverem mais? hehe
Rapaz, isso nao tinha visto... bom, menos mal... pq a gente tinha q adivinhar que o q o schema diz ainda nao foi implementado...
Rodrigomy
10/03/2007
Já repararam, por exemplo, na Guia de Solicitação de Internação, q na parte dos Procedimentos Solicitados, tanto pela coloração da guia em papel quanto por sua legenda, que os campos obrigatórios são a descrição e a quantidade solicitada. Porém, no schema, o obrigatório é o codigo da tabela e o do procedimento! Ou seja, tá invertido... a guia pode ser validada eletronicamente porém não manualmente...
Confusão... :/
Joaomarcelo1977
10/03/2007
A guia de solicitação de internação deverá ser única em TODA a internação, para cada encerramento parcial que vc fizer, haverá uma guia de resumo de internacao
Briciosm
10/03/2007
O que acham da resposta do joaomarcelo1977.
É isso mesmo???
Obrigado!
Briciosm
10/03/2007
Enviamos a guia de solicitação para cada conta.
Com o TISS, surgiu a guia de resumo. E agora como fica??
Sremulador
10/03/2007
Joaomarcelo1977
10/03/2007
Nos dias 28 e 29 de março de 2007, fiz um curso sobre TISS aqui em Brasília. O curso era voltado para os prestadores sobre como preencher todos os tipos de guias que serão adotados.
Espero poder tirar eventuais dúvidas sobre isso, apesar de ser desenvolvedor e estar interessado em gerar o arquivo XML através do meu sistema.
Já aprendi muito neste tópico graças a todos vcs.
O tempo está acabando! Vamos correr :D
Briciosm
10/03/2007
O campo 80 e 72.
Não entendi onde vai o total geral da conta???
E depois tem mais ainda a guia de outras despesas. Tem outro total geral.
Este total geral é só da guia de outras despesas??
Aguardo ajuda!
Obrigado!
Joaomarcelo1977
10/03/2007
Vamos lá:
Campo 72: Este campo se refere apenas ao total geral de OPM´s e não de todos os procedimentos executados, que já está informado no campo 80.
O total geral da guia de outras despesas é somente dela mesmo. Vale lembrar ainda que ele é um campo opcional...
Espero ter ajudado.
Briciosm
10/03/2007
O OPM fica na guia de resumo e os medicamentos na guia de outras despesas.
Existe algum campo que armazene o valor total geral da conta?
Gostaria de saber também porque os valores não são obrigatórios? Vamos enviar os xml sem valor??
Outra coisa: No caso de conta encerrada, como foi dito, é uma guia de solicitação e para cada conta do cliente guias de resumo de internação e ligadas a ela a de outras despesas. O tipo de faturamento neste caso será sempre parcial então??
Aguardo ajuda!
Obrigado!
Joaomarcelo1977
10/03/2007
Sim, é o campo 80.
Bom, porque não são obrigatórios eu não sei... Não faz sentido pra mim, mas eu vou enviar mesmo assim. Temos que ter em mente (como prestador) que qualquer operadora poderá transformar um campo opcional em obrigatório...
Correto.
Espero ter ajudado.
Joaomarcelo1977
10/03/2007
No último caso, melhor dizendo...
Para cada fechamento parcial da conta, será uma guia de resumo de internação...
Briciosm
10/03/2007
Então o nr que vai é o da guia de solicitação de internação. Isso?
Não entendi!!
Achei que a guia de outras despesas fosse ligada a de resumo???
Aguardo ajuda!
Joaomarcelo1977
10/03/2007
A guia de outras despesas estará ligada a uma guia de resumo ou a uma guia de SP/SADT. Nunca estará ligada diretamente a uma guia de solicitação de internação.
Acho que agora está mais claro. 8)
Briciosm
10/03/2007
Só que neste meio tempo ele precisou fazer uma cirurgia.
Que guias devo usar?
Para esta internação usarei apenas uma guia de resumo de internação e uma outra de outras despesas?
Aguardo ajuda!
Briciosm
10/03/2007
Daí na guia de resumo de internação colocarei nos procedimentos realizados a cirurgia e na identificação da equipe os médicos que participaram da cirurgia.
Em OPM os materiais usados.
E na guia de outras despesas cobrarei as diárias que ele ficou internado, os materiaise e medicamentos da unidade e também os materiais e medicamentos do centro cirúrgico.
E caso ele faça outra cirurgia mais para frente nesta internação, continuará tudo nesta mesma guia. Correto???
O que verifiquei também é que tudo por dia.
Aqui no hospital onde trabalho, atualmente agrupamos as despesas por Unidade. E descriminamos as despesas. Não separamos por dia.
Vou ter que alterar isso também....
Aguardo ajuda!
Abidias
10/03/2007
Ao enviar um xml de situação de protocolo, deu erro ao submeter o arquivo no TissNet, daí tive que alterar o schema mencionado acima, tanto do lado Operadora, quanto Prestador, para que a transmissão possa ser completada, fiz a seguinte alteração:
maxLength value=´100´
Com isto, não é obrigatório ter os 100 caracteres, o usuário só não pode passar este limite.
Alguimaraes1
10/03/2007
Bom dia.
Gostaria de saber se é plausível o desenvolvimento do TISS, sem se basear no AplicaTISS, ou seja, do zero, iniciando hoje e que fique pronto até o dia 31 de maio (2007). Consideremos que ainda estamos definindo as bases de dados, não sabemos ao certo se vamos usar INTRAWEB ou DELPHI PHP... Temos 3 pessoas no desenvolvimento. Pretendemos também refazer todo o sistema de Contas Médicas e Faturamento Hospitalar. Tudo até 31 de maio... Será possível ?
Rodrigomy
10/03/2007
É verdade, isso tb já tinha percebido, além do fato dos campos obrigatórios na guia q não são no schema, como tinha dito recentemente... mas será que pode alterar o schema?
Thiago Silva
10/03/2007
Sou novo no forum, mas sempre consegui muitas respostas e ajuda lendo os posts de vcs aqui.
Agora estou muito atrasado nessa história do tiss.
Tenho lido muito essa semana, sobre xml, schemas e tal, mas tenho qeu confessar que ainda estou bem confuso.
Trabalho numa clinica, e preciso começar essa implantação.
O sistema ja foi alterado aqui pra recebar todas as informações que o tiss exige,e estou ajustando minhas tabelas.
Mas alguém ai por favor poderia me dizer como gerar o xml baseado nos schemas???
se puderem me ajudar eu agradeeço muitooo ..
obrigado a todos ...
Abidias
10/03/2007
Se pode alterar não sei, mas eu alterei aqui e funcionou, eu fiz o teste com dois computadores, um simulando a operadora outro o prestador, mas só funcionou depois que alterei os schemas em ambas as máquinas, pois a validação ocorre em dois momentos, quando submete um arquivo a fila de transmissão (local) e depois quando vai transmitir o arquivo, nesta outra a validação ocorre do lado receptor da mensagem, se não estiver bantendo com o schema lá gravado, a transmissão é abortada e o xml permanece na fila de envio. Depois de alterar os schemas das duas máquinas, a transmissão ocorreu normalmente.
Alguimaraes1
10/03/2007
Com relação às datas para implantação eletrônica do TISS, poderiam confirmar as datas para mim.
Muito obrigado.
André
Eduardogaio
10/03/2007
No diretório de transmissão na operadora, há pastas nomeadas com o código do prestador destinatário e outra nomeada com ´null´.
O TissNet-3.2 so transmite os arquivos que estão contidos na pasta nomeada ´null´.
Algém já teve algum problema semelhante? como faço para resolver isso?
Nosso tiss.ini está com todas as opções no ´default´.
grato!
Josehenrique
10/03/2007
estou tendo vários problemas se alguem puder me dar uma luz...por favor ...
1- o xsd fornecido pela ANS (tissV2_01_01.xsd) me parece ter alguns erros, como nao domino Xml alguem poderia me ajudar a detectar onde estao os erros e como corrigilos
2- a ANS nao fornece um exemplo de Xml de operadora ( que eh o meu caso) para testes, se alguem tiver um exemplo por favor
3- agora uma duvida que eh a mais POWER, nossa base de dados eh no Oracle, e qdo tentei registrar o xsd para trabalhar com o xml diretamente no Oracle ele me retorna erro de fim de arquivo nao ´identificado/encontrado´ e consigo somente armazenar o xsd na tabela, mas nao consigo registrar ele ....acho que forcei a barra neh ..mas se alguem ja passou por isso por favor me ajude ....obrigado !
Aerreira
10/03/2007
Amigo, você diz que ´pretendemos refazer todo o sistema de contas médicas e faturamento´, ao meu ver isso não dá pra fazer em menos de 2 meses, apenas se tiver gente trabalhando no desenvolvimento praticamente 24 horas direto.
Quanto ao AplicaTISS, pelo que eu saiba a ANS ainda não disponibilizou para download. Se estiver falando em TISSNet, ao meu ver sim, pode fazer sua solução completamente independente do TISSNet, mas deverá obedecer rigorosamente os formatos definidos no schema, e usar SOAP para fazer sua conexão com as operadoras.
Briciosm
10/03/2007
Com write e writeln, como se fosse um txt?
Marcio Oliveira
10/03/2007
Estou gerando esse xml no AS400, só que não tenho a mínima idéia de onde posso buscar ou calcular esse hash no as400.
Aliás, o que é esse Hash? :lol:
É um código de identificação do micro? estou perdido perdido... se alguém puder me esclarecer serei muito grato.
abraço
Aerreira
10/03/2007
É um código de identificação do micro? estou perdido perdido... se alguém puder me esclarecer serei muito grato.[/quote:222a8441e9]
http://pt.wikipedia.org/wiki/Hash
http://pt.wikipedia.org/wiki/MD5
Leia as mensagens anteriores neste mesmo tópico e achará mais informação sobre o hash do tiss.
Marcio Oliveira
10/03/2007
Não sei muito bem como vou fazer esse cálculo no as400, mas já clareou bastante. Diria que de meia-noite agora foi pra 3 da tarde :)
grato
Sremulador
10/03/2007
Briciosm
10/03/2007
Verifiquei que na guia os dias solicitados e autorizados são obrigatórios.
No xml a parte da autorização não é obrigatória, onde tem os dias autorizados, ....
Alguém saberia me explicar??
Esta guia é enviada após a secretaria entrar em contato com o convênio e pedir a ´senha´ ou esta guia deve ser enviada antes???
Obrigado!
Briciosm
10/03/2007
Quando tem minOccurs=´0´ é sinal de que não é obrigatório.
Correto?
Luizfmathias
10/03/2007
Sobre o APLICATISS, entrei em contato com a ANS e me informaram que o programa foi cancelado, a mensagem que está no hotsite está desatualizada.
Tambem perguntei sobre onde encontrar exemplos de xml, envios, recebimentos, etc... A atendente me informou que a transimssão do TISS seria de comum acordo entre a operadora e o prestador, e a ANS não irá se envolver nisso, e que eu poderia até mesmo selecionar algum funcionário para digitar as guias do Tiss no sistema... ou seja, o TissNet é algo opcional.
Com isso fiquei mais tranquilo quanto ao prazo.
Espero ter ajudado.
Net_mauro
10/03/2007
Estou tentando montar o arquivo TISS mas ainda estou com dúvidas.
1) As guias (faturamento, por exemplo)podem ter mais de um paciente?ou é por paciente??
2) Gerar o arquivo como txt ou com uma ferramenta? Com gerar com alguma ferramenta se a forma dos dados é específica?
Se alguém puder ajudar, agradeço.
Atenciosamente,
Mauro Cesar J Nascimento
Analista de Sistemas/Hospital de Mat. Assunção
Luizfmathias
10/03/2007
Eu creio que seja por paciente, assim como as guias em papel.
Tanto faz, porque o arquivo xml é na verdade um arquivo de texto, porem com o conteudo estruturado por tags.
Quanto a usar alguma ferrementa para isso, com certeza deve haver alguma forma de definir a estrutura a ser usada.
Eu pessoalmente prefiro tratá-lo diretamente como txt (read e write) porque ai eu tenho maior controle sobre o arquivo. (até porque não tenho muita experiência com xml e controles)
Espero ter ajudado.
Jagged
10/03/2007
Na especificação do padrão, dizem que o tamanho para o campo do Código do IBGE do município do prestador deve ser 7. Só que esse código possui 6 dígitos, e no schema ele está especificado como tendo que possuir EXATAMENTE 7 dígitos!!! Então ele não passa na validação do TISSNet.
Este é só mais um dos diveeeersos erros que eu já identifiquei no schema... assim fica difícil... existem vários campos que no padrão são dados como opcionais mas que no schema às vezes passa a ser obrigatório quando há alguma sequência...
Mplantz
10/03/2007
Estou inicialmente tentando montar o arquivo TISS de faturamento, mas ainda estou com algumas dúvidas.
Uma delas seria na guia de internação: Se devo gerar um arquivo XML para cada guia (ou seja para cada paciente internado) ou se poderia ser apenas um arquivo para todas as guias.
Obrigada.
Briciosm
10/03/2007
Está correto???
Que código é este???
Rodrigomy
10/03/2007
Exatamente, eu encontrei vários também... :shock:
Josehenrique
10/03/2007
Olá ...vc esta gerando os arquivos de envio do prestador ??
teria um exemplo ?
eu estou trabalhando no Demonstrativo de Análise de Conta Medica, e estou tendo vários problemas para trabalhar com o xsd da ANS, queria comparar algumas informacoes que vou fornecer com dados que vou receber por isso meu interesse no arquivo do prestador ...
( estou usando oracle para gerar o xml, e validar o xsd , e no delphi uso clientdataset e xmlprovider )
Briciosm
10/03/2007
No tissnet temos que arrastar o arquivo xml para dentro do sistema e depois enviar ou existe alguma outra maneira mais fácil tipo gravar o arquivo xml em uma pasta que o sistema tissnet irá achar???
Obrigado.
Julianomv
10/03/2007
[b:d1a474bb98]Parte Técnica:[/b:d1a474bb98] 1) Como gerar/receber o XML? 2) Como gerar/receber o XML atrelado aos schemas? 3) HASH? 4) O TissNet tem dois modulos sendo que é um é para Prestador enviar as solicitações, etcs.. e o o módulo da operadora para escutar as solicitações, então a operadora não envia nada?? (sem contar que para o TissNet funcionar precisa rebolar muito... HASH invalido, XML invalido, porta .....) ... entre outras.
[b:d1a474bb98]Parte Prática: [/b:d1a474bb98]1) Como vai funcionar o fluxo de informação?? (solicitação de internação depende de ambas as partes....) 2) O q fazer com os sistemas que já funcionam hoje de forma On-Line (autorização de guia/ Demonstrativo de pagamento) 3) Como em 31/05/2007 vai funcionar tudo de forma on-line se os consultórios terão até 2008 para implementar (pensando em uma solicitação de internação partindo do consultório, por exemplo)? 4) Como tudo on-line (sem papel) se nas próprias guias ´eles´ preveem Assinatura...
Peço desculpas da minha indignação, mais já faz um tempo q estou batento cabeça com essa #$@!@ de TISS, e quanto mais eu mexo, menos eu sei, pois mais controvérsio fica.
Eu tinha o AplicaTISS como uma esperança, porém acabo de ligar para ANS e ´eles´ não irão disponibilizar nem essa ferramenta para nos auxiliar.
Acho q devemos fazer uma pressão, precisamos de AJUDA, ou melhor, esta faltando União entre nós (tanto para o Desenvolvimento do TISS, como para fazer pressão junto a ANS).
A ANS propos algo e agora esta se isentando de participar dessa ´bagunça´.... :x
Lfranchi
10/03/2007
Apesar do TissNet estar me ajudando de alguma forma, a gama de possibilidades para troca de mensagens é enorme.
Estou gastanto muito tempo para monstar XMLs de exemplo para simular a recepção das mensagens (contanto que são várias possibilidades). O processo para a geração destes XMLs é terrivel, quase tendo que escovar bits dentro dos XSDs. Mesmo com ferramentas para auxiliar a geração.
Depois de um dia gerando 1 XML (Guia de Consulta), simulando a recepção e o processo que o sistema fará com esta mensagem, temos que ´sofrer´ para gerar o XML de resposta. Depois da geração deste, validar se ele está ok, além de fazer uma reza brava para que o Prestador esteja satisfeito com as informações enviadas.
Em Geral, o desenvolvimento deste módulo está funcionando na base da ´tentativa-erro´ pois apesar da documentação do TissNet ter me ajudado, ainda faltam muitas informações a serem garimpadas.
Estou conseguindo desenvolver com muita dificuldade, mais está andando, o que mais me preocupa é o prazo, pois além do tempo de desenvolimento, ainda temos que contar com tempo de Homologação em ambiente de Desenvolvimento e Homologação no Cliente.
Está complicado...
Acgoes
10/03/2007
Creio que sim, pois o resumo deve ser enviado para efeito de faturamento. caso contrario só seria realizado o faturamento quando o paciente tivesse alta.
Vivianec
10/03/2007
Alguém já implementou esta funcionalidade e poderia me ajudar?
Sremulador
10/03/2007
[url]http://forum.datasus.gov.br/viewforum.php?f=89[/url][/url]
Briciosm
10/03/2007
Como vou saber??
Acgoes
10/03/2007
solicitacaoProcedimento
Briciosm
10/03/2007
Acho que está errado, por isso perguntei.
Mas não achei este tipo de transação = solicitacaoProcedimento
As que existem são:
<enumeration value=´ENVIO_LOTE_GUIAS´/>
<enumeration value=´SOLIC_DEMONSTRATIVO_RETORNO´/>
<enumeration value=´SOLIC_STATUS_PROTOCOLO´/>
<enumeration value=´AUTORIZACAO_PROCEDIMENTOS´/>
<enumeration value=´PROTOCOLO_RECEBIMENTO´/>
<enumeration value=´SITUACAO_PROTOCOLO´/>
<enumeration value=´RESPOSTA_SOLICITACAO´/>
<enumeration value=´DEMONSTRATIVO_PAGAMENTO´/>
<enumeration value=´DEMONSTRATIVO_ANALISE_CONTA´/>
<enumeration value=´DEMONSTRATIVO_ODONTOLOGIA´/>
<enumeration value=´CANCELAMENTO_GUIA_RECIBO´/>
<enumeration value=´RE_APRESENTACAO_GUIA´/>
<enumeration value=´CANCELA_GUIA´/>
<enumeration value=´VERIFICA_ELEGIBILIDADE´/>
<enumeration value=´SITUACAO_ELEGIBILIDADE´/>
<enumeration value=´AUTORIZACAO_ODONTOLOGIA´/>
Qual usar???
Acgoes
10/03/2007
Eu estou gerando como sendo: ENVIO_LOTE_GUIAS, mas não tenho certeza....na validação passou normal.
Mas tenho duvidas se poder ser o :AUTORIZACAO_PROCEDIMENTOS
Acgoes
10/03/2007
Da uma olhada neste link:
http://www.ans.gov.br/portal/site/_hotsite_tiss/mensagem_eletronica.htm
Briciosm
10/03/2007
ENVIO_LOTE_GUIAS diz que é guias para pagamento.
AUTORIZACAO_PROCEDIMENTOS diz que é uma resposta as solicitações de autorização.
Realmente não sei qual usar???
Não está claro.
Alguém poderia ajudar??
Aerreira
10/03/2007
Compartilho da sua indignação. Mas infelizmente esse forum aqui é extritamente técnico, não temos poder para pressionar ninguém, pois deveria partir dos empresários e entidades do setor. Este forum não é frequentado pelo pessoal da ANS (apesar de eu já ter lhes recomendado isso). O forum do DataSUS, além de muitos daqui estarem também por lá, infelizmente é muito menos útil do que este, e igualmente não frequentado pelo pessoal do TISSnet. Parece que eles estão isolados e incomunicáveis, pois não temos acesso à eles. Não seria bom estarem por perto e se disporem a ajudar? (afinal são funcionários públicos, estão à disposição do país!!!)
Algumas poucas mensagens que enviei para eles, não responderam todas e ainda assim de forma não satisfatória, vejam esse exemplo:
Perguntei: ´[i:28778e27e1]Outra dúvida: posso configurar o TISSNet para operar com várias operadoras simultaneamente, certo? E quanto ao retorno de cada mensagem, como o TissNet devolve resposta?[/i:28778e27e1]´
A resposta foi: ´[i:28778e27e1]O TISSNet devolve respostas com objetos JAVA, com propriedades espelhando o esperado nos WSDLs.[/i:28778e27e1]´
Acham que isso esclareceu alguma coisa de forma objetiva??
Eles citam ainda: ´[i:28778e27e1]O TISSNET não é software de uso obrigatório, mas apenas uma implementação de referência para o padrão de comunicação do TISS. Você é livre para usá-lo ou não. Os WSDLS, no entanto, fazem parte do padrão TISS, e você, se oferecer web services, deve seguí-los.[/i:28778e27e1]´
Isso só confirma minha opinião de que a implementação ideal do TISS deverá dispensar o TISSnet. Basta que as operadoras disponibilizem web-services para receber e tratar mensagens TISS. E os prestadores enviarem suas requisições ou informações através desses web-services, tudo online, simples e direto.... Nada de filas, trocas entre aplicação e tissnet, nada disso.
Uma pergunta: alguem citou aí sobre um modo de simplificar os procedimentos de arrastar XMLs para o tissnet... com isso minha dúvida é: o TISSnet fica sozinho fazendo uma varredura entre todas operadoras de tempos em tempos para ver se tem algo na fila para o prestador? Qual é essa frequencia? Tem como configurar isso?
Aerreira
10/03/2007
A Unimed Niterói (www.unimed-niteroi.com.br), junto com a Associação Médica Fluminense (http://www.amf.org.br/), promoverão no próximo dia 18/04/2007 um seminário para tratar do assunto TISS. Não sei se é aberto ao público, fui convidado a participar mas infelizmente não poderei comparecer. Quem puder/conseguir participar, depois compartilhe conosco como foi o evento.
Aerreira
10/03/2007
Marcia, como eu já havia conversado contigo por MSN, ao meu ver as duas coisas serão possíveis, dependendo do que está fazendo. Se precisa fazer o fechamento e cobrança de um só paciente, faça seu XML com uma só guia. Se precisa fazer o fechamento mensal de um convênio, enviando todo a sua produção do mês, então gere um só XML com todas as guias. Mas sou suspeito de falar sobre internação visto que não estou preparando tiss para internações no momento.
Cfqueiroz
10/03/2007
Temos uma solução de autorização On-Line rodando em duas operadoras e pelo que vi de toda doumentação do TISS eles não determinam a forma de transmissão dos xml, alguém sabe se poderíamos gerar os xml a partir de nossa solução em asp.net e entregá-la ao prestador por meio de um link
Briciosm
10/03/2007
Os gastos desta cirurgia entrarão na guia de resumo de internação e outras despesas. Isso?
Não precisa ser feito guias separadas???
E para solicitar esta cirurgia que guia é usada?
Obrigado!
Danielleleal
10/03/2007
Fui tentar rodar no delphi e tah dando erro d script no arquivo xml na hora d importar...
vlw!
Mplantz
10/03/2007
Fiz uma guia de solicitação de internação e estou tentando transmiti-la através do TISSNet, mas sempre apresenta a mensagem:
C:\Temp\TISS\Guia_SolicitacaoInternacao.XML: C:\Temp\TISS\Guia_SolicitacaoInternacao.XML: Mensagem TISS com problemas: ´hash´ MD5 não confere
Utilizei o link postado pelo Arreira para calcular o Hash e também para retirar as tags, mas ainda assim não está funcionando...
O resultado que estou passando para o cálculo do Hash é o seguinte:
ENVIO_LOTE_GUIAS12007-04-1709:53:463351805100016958529 2.01.0158529 2007-04-1654656565 14589785521212487878MARCIA PLANTZ PARTICULAR 2007-11-2533518051000169HOSPITAL EVANGELICO DO RJ 007RUA BOM PASTOR 295 330455 RIO DE JANEIRO RJ205210605487879ADELMO GOMES MACHADO CRM52393351 RJU1TESTE DA MARCIA PLANTZ
SOBRE INDICACAO CLINICA 1CID-10C762 Abdome 00500012007-04-1689945412007-05-1612007-04-1661533518051000169HOSPITAL EVANGELICO DO RJ 004RUA BOM PASTOR 295 330455 RIO DE JANEIRO RJ205210605487879
Alguém teria alguma dica do que poderia ser?
obrigada!
Julioqualy
10/03/2007
Criei esta função e funciona direitinho, é só mandar o todo o XML para ela.
ai é só mandar o retorno para a funcao MD5String contida no pas do link abaixo.
http://www.fichtner.net/delphi/md5.delphi.phtml
function LimpaXML(XML:String):String; var x:Integer; lDeleta,lBranco : Boolean; cXML : String; begin lDeleta := false; lBranco := False; cXML := ´´; XML := trim(XML); for x:=0 to Length(XML) do begin if (XML[x] = 13) then continue else if (XML[x] = 10) then continue else if (XML[x] = 0 ) then continue else if (XML[x] = ´<´) then begin cXML := Trim(cXML); if (XML[x+1] = ´/´) then lBranco := False else lBranco := true; lDeleta := True end else if XML[x] = ´>´ then begin if Copy(XML,x-4,5) <> ´hash>´ then // vamos desconciderar o codigo hash do arquivo lDeleta := False; continue; end; if (lDeleta) then continue; if (not lBranco) and (XML[x] = ´ ´) then continue; cXML := cXML+XML[x]; end; result := cXML; end;
att,
Júlio
Rodrigomy
10/03/2007
Olá... então, não podem haver espaços entre o conteúdo dos campos... talvez seja isso...
Briciosm
10/03/2007
Ao montar o xml, verifiquei que o campo valor não está obrigatório, mas a maioria dos convênio exige.
O problema é que o campo valor é do tipo st_quantidade. Fui ver e o tipo é: total 5 casas com 2 decimais. Ao meu ver o máximo que aceita é:
999.99
É isso mesmo?? Confirmar??
Uma protese passa deste valor.
Para o ponto decimal devemos usar ´.´ ou ´,´???
Aguardo ajuda!
Obrigado!
Julioqualy
10/03/2007
Olá... então, não podem haver espaços entre o conteúdo dos campos... talvez seja isso...[/quote:e3df1f24dc]
Então você tem que tirar os espaços, porém, dentro do campo tem continuar os espaços sim... tive este problema de tirar por exemplo os espaços do nome do prestador e ai dava erro, por isso que a função verifica que os espaços em branco estão dentro da tag ou fora.
Mplantz
10/03/2007
Agora quando fiz a validação novamente apresentou outro erro, que não faço a minima idéia do que pode ser:
** C:\Temp\TISS\Guia_SolicitacaoInternacao.XML: ENVIO_LOTE_GUIAS: 33518051000169 -> 58529: Nodo destino não cadastrado
Esse nr. 33518051000169 é o CNPJ do Hospital.
procurei nas documentações da ANS, manuais, schemas, mas não encontrei nada. :?
Mais um vez alguém poderia me ajudar?
Julioqualy
10/03/2007
Pelo o que eu entendi do TISSNet ele verifica o registro da ANS no xml para ver qual servidor será enviado a mensagem, creio que essa mensagem é porque você não tem um servidor para a operadora 58529.
Danielleleal
10/03/2007
Alguém poderia me ajudar???[/b:de442ad03e]
Anision
10/03/2007
Me passa o seu xml. Eu estou usando no TISSNET pelo eclipse ai quando jogo algum xml nele ele aparece o calculo que ele faz hash para comparar como que está no xml....[/quote:930ce9654d]
Boa tarde,
li o seu post e tentei fazer a mesma coisa, mas nao acerto, de jeito nenhum, como rodar o TISSNet pelo Eclipse. Voce poderia me ajudar com isso?
muito obrigado pela atenção,
Anisio
Mplantz
10/03/2007
Agora consegui o nr. correto da Operadora na ANS, mas ainda assim continua apresentando o erro abaixo:
** C:\Temp\TISS\Guia_SolicitacaoInternacao.XML: ENVIO_LOTE_GUIAS: 42163881000101 -> 393321: Nodo destino não cadastrado
Já entrei no site da ANS para verificar se realmente o nr. 393321 é da operadora que estou utilizando e está correta a operadora, ou seja, no site valida corretamente.
Já liguei para a ANS, mas ninguem soube me informar nada sobre o assunto. :cry:
Fsandroni
10/03/2007
Graças a esta lista, conseguimos progredir muito.
Nossa maior duvida é:
A faturista de um hospital vai entregar um lote de internacoes. ou de atendimentos ambulatoriais. Devemos gerar somente o schema do SP/SADT??
Fernanda
Acgoes
10/03/2007
Cara, voce tem que cadastra o numero da ANS da operadora dentro do sistema TISS net. Onde esta 000000 vc coloca o código da operado que esta no seu arquivo. Eu fiz isso e ta dando certo.
Acgoes
10/03/2007
Oi Fernanda,
Entaum vc deve gerar as guias de acordo com cada tipo:
- Consulta eletiva > Guia de Consulta
- Atendimento em PS e SADT e Outros Procedimento > Guia SP/SADT
- Internação > Guia de Resumo de Internação.
E assim vai... vc pode gerar um unico arquivo XML com cada tipo de GUIA.
Ex: Todas as internações do mes do conveio ABC podem ser gerados em um mesmo arquivo.
Winsley
10/03/2007
Desenvolvemos a guia (SP/SADT) onde o prestador solicita à operadora a autorização para realização de procedimentos e, agora precisamos validar com operadoras, mas nenhuma das que contatamos até agora já tem o processo de recebimento de solicitação e retorno de resposta funcionando para validações. Nem mesmo um modelo de XML de resposta conseguimos.
Portanto se alguém possui um modelo resposta ´AUTORIZACAO_PROCEDIMENTOS´ da guia de solicitação SP/SADT, por favor postem aqui no fórum.
Att.:
Winsley Bonifácio
[quote=´acgoes´][quote=´fsandroni´]Somos uma empresa de desenvolvimento na area da saude e como todos, estamos cheios de duvidas sobre o TISS.
Graças a esta lista, conseguimos progredir muito.
Nossa maior duvida é:
A faturista de um hospital vai entregar um lote de internacoes. ou de atendimentos ambulatoriais. Devemos gerar somente o schema do SP/SADT??
Fernanda
Oi Fernanda,
Entaum vc deve gerar as guias de acordo com cada tipo:
- Consulta eletiva > Guia de Consulta
- Atendimento em PS e SADT e Outros Procedimento > Guia SP/SADT
- Internação > Guia de Resumo de Internação.
E assim vai... vc pode gerar um unico arquivo XML com cada tipo de GUIA.
Ex: Todas as internações do mes do conveio ABC podem ser gerados em um mesmo arquivo.
Fsandroni
10/03/2007
Pelo que entendi, como minha empresa presta servico para hospitais, teremos que gerar quase todos schemas.
Nossa duvida é:
Qual schema se refere a consultas eletivas, ao resumo de internacoes, e a consultas de PS, SP e sadt?
Os nomes dos schemas nao nos diz nada.
Obrigada mais uma vez
Fernanda
Acgoes
10/03/2007
Entaum Fernanda,
Na realidade o nome do arquivo não tem muito haver com o tipo de guia que se dever gerar...
Eu também trabalho como desenvolvedor para Prestadores de Serviço.
Se vc abrir o arquivo tissV2_01_01.xsd e procurar o elemento ´prestadorParaOperadora´ ai sim vc vai ter as guias que devem ser enviadas do prestador para operadora. Tanto as guias de faturamento que estão dentro de lotesguias e que ja estao em outro arquivo tissGuiasV2_01_01.xsd, como as guias de solicitação que estão no proprio tissV2_01_01.xsd.
com isso vc vai explorando o schema e gerando os arquivos XML no formato desejado, ou seja no formato do schema.
Espero ter ajudado
André Goes
Hospital Cruz Azul
Abidias
10/03/2007
Submeti o xml de solicitação de status de protocolo, o mesmo entrou na fila de transmissão sem problemas, depois de pressionado o botão transmitir do lado Prestador, iniciou-se o processo.
Do lado Operadora, o aplicativo já havia sido iniciado através do prompt com o comando java -cp TissNet3.2.jar br.gov.ans.tiss.servidor.Ouvinte e ficou esperando mensagens, tão logo do lado Prestador iniciou o processo, do lado Operadora começaram a passar várias mensagens no prompt o que indica que a conexão foi estabelecida, o problema é que o ciclo se encerrou e a mensagem permaneceu na fila de transmissão do lado Prestador, no prompt ficaram algumas mensagens do tipo:
** 27: recebida conexao
** 27: aguardando mensagem...
R: /47/
T: ACK
**: 27: mensagem recebida...
**: 27: pedido de chave recebido...
T: 32
R: /6/
**: 27: resposta transmitida...
**: 27: aguardando mensagem...
DC-1: 44
DC: 32
DC-F: 15
oo Modificando chave RIJNDAEL
DC-2: 15
R: /15/
T: ACK
**: 27: mensagem recebida...
DESPACHANTE: recebida mensagem de controle: @¬$PTA123456789
DESPACHANTE: Ponta B: 123456789
**: 27:aguardando mensagem...
DC-1: 768
DC: 576
DC-F: 571
DC-1B: 1686
oo Modificando chave RIJNDAEL
DC-2: 1686
R: /1686/
T: ACK
**: 27: mensagem recebida...
Error: Document is invalid: no gramar found.
Error: Document root element ´ans:mensagemTISS´, must match DOCTYPE root ´null´.
Hash calculado sobre: SOLIC_STATUS_PROTOCOLO...
Informado: d8dafa.... / Calculado d8dafa...
DOWNLOADER: gravando mensagem...
ecepcaodiretorio raiz: C:TISSNet-3.2-Prestador
ecepcao\20070419\123456\ 123456789
ecepcao\20070419\123456\ 123456789 \0000000000000000000000000000000025_ d8dafa...xml
ecepcao\20070419\123456\ 123456789 \0000000000000000000000000000000025_ d8dafa...xml
at java.io.FileOutputStrean.open<Native Method>
.
.
.
Pelo que dá pra perceber, o problema estão na hora da gravação do xml na pasta recepcao da Operadora, pois ele está usando espaços no nome das pastas e arquivo, se alguém passou por este mesmo problema por favor me ajude.
Desculpem ter escrito tanto, mas eu precisava relatar este problema.
Briciosm
10/03/2007
E a guia de solicitação de internação, que tipo de transação deve ser no xml??
Aguardo ajuda!
Obrigado!
Winsley
10/03/2007
Estou utilizando a transação ´ENVIO_LOTE_GUIAS´ para solicitação de autorização de procedimentos (SP/SADT).
Vc tem um modelo de XML de retorno de autorização?
att.: Winsley
Briciosm
10/03/2007
Participei de uma palestra ontem em POA.
O pessoal da Info-Saúde já está bem na frente. Sei que estão tentando homologar seu sistema, mas não encontram operada apta a ler o xml e dar o retorno.
Um dos participantes me disse que a Sul América estaria com algo pronto.
Falaram das multas. Que seria 5.000,00 por dia. É muito alto!
E o hospital poderia ser multado também.
A minha dúvida e também a de outras pessoas seria a seguinte:
1) Pelo que eu vi a guia de solicitação é a primeira guia a ser enviada, para solicitar e autorizar a internação. Depois não será mais enviada. Correto?
2) As prorrogações tem uma rotina em xml. Devemos usar ela?
E caso ocorram novos procedimentos de internado onde são anotados para solicitar?
3) Vi que no xml para solicitação de procedimentos, existe a guia de solicitação de SP/SADT. Temos que usar esta rotina?
No manual completo que baixei não está claro.
Diz o seguinte:
4.4. A solicitação de prorrogações e novos procedimentos não dispõem de guia
específica nessa versão da TISS, e por isso deverá ser feita conforme os
critérios de cada operadora e anotado no verso da guia original de
Solicitação de Internação, de forma que haverá sempre um único número
de guia de Solicitação de Internação vinculando todos os eventos.
4.5. É possível também solicitar serviços profissionais, exames e procedimentos
em paciente internado por meio de uma guia de SP/SADT. Nesse caso, a
cobrança será feita conforme discriminado no item 5. Serviços profissionais,
exames e procedimentos (paciente internado)
Já se for olhar na guia de SP/SATD diz que a solicitação de procedimentos deve ser usada apenas para não internados.
Então está muito confuso.....
4) No caso de solicitar procedimentos ambulatoriais. A guia de solicitação terá um nr e a de cobrança outro? Terá que ter uma referência entre elas. Ou ambas terão o mesmo nr?
5 O pessoal da info-saúde, disse que irá enviar a guia de solicitação de internação diversas vezes para solicitar novos procedimentos. E com o mesmo nr.
Mas ao meu ver está errado. Irá enviar com o mesmo nr e só o procedimento solicitado. A operadora não vai aceitar o mesmo nr. E se aceitar, acho que irá sobrescrever a anterior. Concorda?
Aguardo ajuda!
Obrigado!
Patrick_moro
10/03/2007
o xml que eu gerei é este abaixo,tem como eu inserir mais um registro??se tiver vcs poderiam me ajudar???
agradeço a colaboração,abraço e se precisarem de algo estamos ai pra ajudar
[
<?xml version=´1.0´ encoding=´ISO-8859-1´?>
<ans:mensagemTISS xmlns:ans=´http://www.ans.gov.br/padroes/tiss/schemas´ xmlns:xsi=´http://www.w3.org/2001/XMLSchema-instance´ xsi:schemaLocation=´http://www.ans.gov.br/padroes/tiss/schemas http://www.ans.gov.br/padroes/tiss/schemas/tissV2_01_01.xsd´>
<ans:cabecalho>
<ans:identificacaoTransacao>
<ans:tipoTransacao>ENVIO_LOTE_GUIAS</ans:tipoTransacao>
<ans:sequencialTransacao>1</ans:sequencialTransacao>
<ans:dataRegistroTransacao>2007-03-27</ans:dataRegistroTransacao>
<ans:horaRegistroTransacao>02:29:00</ans:horaRegistroTransacao>
</ans:identificacaoTransacao>
<ans:origem>
<ans:codigoPrestadorNaOperadora>
<ans:CNPJ>62106505000192</ans:CNPJ>
</ans:codigoPrestadorNaOperadora>
</ans:origem>
<ans:destino>
<ans:registroANS>411752</ans:registroANS>
</ans:destino>
<ans:versaoPadrao>2.01.01</ans:versaoPadrao>
</ans:cabecalho>
<ans:prestadorParaOperadora>
<ans:loteGuias>
<ans:numeroLote>32579</ans:numeroLote>
<ans:guias>
<ans:guiaFaturamento>
<ans:guiaConsulta>
<ans:identificacaoGuia>
<ans:registroANS>9999</ans:registroANS>
<ans:dataEmissaoGuia>2007-01-29</ans:dataEmissaoGuia>
<ans:numeroGuiaPrestador>3587278</ans:numeroGuiaPrestador>
</ans:identificacaoGuia>
<ans:beneficiario>
<ans:numeroCarteira>03213400</ans:numeroCarteira>
<ans:nomeBeneficiario>Alicia Fernandes Cardoso</ans:nomeBeneficiario>
<ans:nomePlano>Rubi-Enfer.(C/Obstetricia)</ans:nomePlano>
<ans:numeroCNS></ans:numeroCNS>
<ans:identificadorBeneficiario></ans:identificadorBeneficiario>
</ans:beneficiario>
<ans:dadosContratado>
<ans:identificacao>
<ans:CNPJ>62106505000192</ans:CNPJ>
</ans:identificacao>
<ans:nomeContratado>CRUZ AZUL DE SAO PAULO</ans:nomeContratado>
<ans:enderecoContratado>
<ans:tipoLogradouro>008</ans:tipoLogradouro>
<ans:logradouro>LINS DE VASCONCELOS</ans:logradouro>
<ans:numero>356</ans:numero>
<ans:complemento></ans:complemento>
<ans:codigoIBGEMunicipio>0355030</ans:codigoIBGEMunicipio>
<ans:codigoUF>SP</ans:codigoUF>
<ans:cep>03282000</ans:cep>
</ans:enderecoContratado>
<ans:numeroCNES>999</ans:numeroCNES>
</ans:dadosContratado>
<ans:profissionalExecutante>
<ans:nomeProfissional>Carita Schmidt</ans:nomeProfissional>
<ans:conselhoProfissional>
<ans:siglaConselho>CRM</ans:siglaConselho>
<ans:numeroConselho>75087</ans:numeroConselho>
<ans:ufConselho>SP</ans:ufConselho>
</ans:conselhoProfissional>
<ans:cbos>06155</ans:cbos>
</ans:profissionalExecutante>
<ans:hipoteseDiagnostica>
<ans:CID>
<ans:nomeTabela>CID-10</ans:nomeTabela>
<ans:codigoDiagnostico>P59.8</ans:codigoDiagnostico>
<ans:descricaoDiagnostico>Ictericia neonatal devida a outras causas especificadas</ans:descricaoDiagnostico>
</ans:CID>
</ans:hipoteseDiagnostica>
<ans:dadosAtendimento>
<ans:dataAtendimento>2007-01-29</ans:dataAtendimento>
<ans:procedimento>
<ans:codigoTabela>01</ans:codigoTabela>
<ans:codigoProcedimento>00010014</ans:codigoProcedimento>
</ans:procedimento>
<ans:tipoConsulta>1</ans:tipoConsulta>
<ans:tipoSaida>5</ans:tipoSaida>
</ans:dadosAtendimento>
<ans:observacao></ans:observacao>
</ans:guiaConsulta>
</ans:guiaFaturamento>
</ans:guias>
</ans:loteGuias>
</ans:prestadorParaOperadora>
<ans:epilogo>
<ans:hash>1f0a25005c149b4aa1e422bcaffd7705</ans:hash>
</ans:epilogo>
</ans:mensagemTISS>
]
Patrick Moro
Desenvolvedor HSVP
Abidias
10/03/2007
Em um xml Prestador para Operadora contendo uma solicitação de procedimento, exemplo guia de solicitação de internação, qual o valor da tag <ans:tipoTransacao>?
Eu procurei nos schemas, nas opções que tem lá não consta uma específica para solicitação e sim ´AUTORIZACAO_PROCEDIMENTOS´ esta eu creio que seja apenas de Operadora para Prestador.
Agradeço a quem puder me ajudar...
Briciosm
10/03/2007
Mas no xml este campo é obrigatório. É isso mesmo??
Aguardo ajuda!
Zeduardo2000
10/03/2007
Estamos todos envolvidos em algum nivel com a tiss em delphi. Poderiamos fazer uma especie de AplicaTISS e colaborarmos para que possamos cumprir o prazo.
Poderiamos nos dividir em equipes para cobrirmos as areas:
1) GUI -> Usando frames para cadastrar as Guias
2) DataBase -> Definir uma base padrao em Firebird
3) Arquivo XML -> Ler, Escrever, Validar
4) Webservices -> Servidores e Clientes
Se conseguissemos 12 colegas (3 por area) se dedicando, no horario de trabalho normal (com a concessao da empresa onde trabalham), apenas duas horas por dia, teriamos mais de 500 horas até 1/6 o que poderia definitivamente nos daria uma boa chance para vencermos o desafio.
Quem sabe...
Patrick_moro
10/03/2007
alguém poderia me dizer o por que??valeu e desculpem o pouco conhecimento,mas sabe como iniciante é triste hehe abraço
Rbamartins
10/03/2007
estou com uma dúvida.
No web services que irá receber a msg xml das operadoras como vocês fizeram, ou sugerem que seja feito, a validação e a resposta ao remetente do arquivo?
Abraços
Rafael Martins
Reginaldo.nakata
10/03/2007
Aconteceu o seguinte, durante a validação o mesmo reclama por campos obrigatórios como ´Código CBO S´, sendo na guia de papel é opcional.
Analisando o schema existe uma restrição mesmo para esse campo!
Liguei na ANS fui informado que produtos Microsoft não validam corretamente o schema alguém conhece esta informação?
Deniz
10/03/2007
Jagged,
Se possível gostaria que você enviasse o código que calcula o hash...
Desde já agradeço.
Zeduardo2000
10/03/2007
Utilizo uma suite de componentes free para criptografia que tem o hash de md5 (http://www.cityinthesky.co.uk/cryptography.html), estou usando o esquema de data binding do dudubaio. E no codigo ficou mais ou menos assim:
Function MD5Hash(Buffer : String):String;
Var
MD5_Hash : TDCP_MD5;
Hash : Array[0..15] of byte; //31
Temp : String;
f : Byte;
begin
For f:=0 to 15 do Hash[f]:=0;
Buffer:=Trim(Buffer);
MD5_Hash:=TDCP_MD5.Create(NIL);
MD5_Hash.Init;
MD5_Hash.UpdateStr(Buffer);
MD5_Hash.Final(Hash);
For f:=0 to 15 do Temp:=Temp+IntToHex(Hash[f],2);
Result:=Copy(Temp,1,32);
MD5_Hash.Burn;
MD5_Hash.Free;
end;
...
Aux := xmlTISS.XML.Text;
while Pos(´>´,Aux) > 0 do
Delete(Aux,Pos(´<´,Aux),Pos(´>´,Aux)-Pos(´<´,Aux)+1);
msg.Epilogo.Hash := MD5Hash(Aux);
xmlTISS.SaveToFile(´teste.xml´);
Aerreira
10/03/2007
Acho a ideia muito boa. Pode contar comigo no que eu puder ajudar.
Sugiro apenas uma mudança no nome ´WeLoveTISS´ não caiu bem... (pelo menos eu não ´morro de amores pelo tiss não :-)´ Acho que algo como ´Delphi-TISS´ ficaria mais sóbrio.
Anision
10/03/2007
algumas pessoas aqui no Fórum já comentaram que conseguiram usar o TissNet3.2 para enviar e receber mensagens XML.
Para tal foram usadas duas máquinas, uma como servidor da Operadora e outra como Prestadora.
Li e re-li o manual do TissNet e, seguindo suas instruções consegui enviar mensagens XML da máquina que representa a Prestadora para a máquina que representa o servidor da Operadora, uns ajustezinhos e rolou na boa.
Porém, o sentido contrário de comunicação, servidor Operadora -> Prestadora, não vai...
Segundo o manual, basta criar uma pasta que tem como nome o número do prestador na operadora, dentro da pasta transmissao, que a cada envio de mensagens, o tissNet cliente solicita ao servidor da operadora envio de respostas, e este enviaria o conteúdo desta pasta ao cliente.
(complicado de explicar, mas simples de fazer)
O problema é que não funciona, gostaria de saber, dos colegas que já conseguiram fazer isso funcionar, se o processo é assim simples mesmo, ou se estou pulando algum passo.
A cada transmissão que faço, da máquina prestador para a máquina servidor da operadora, o tissNet da máquina servidor cria, dentro da pasta transmissao, uma pasta chamada ´null´, mas não envia de forma alguma o conteúdo da pasta com o número do prestador.
Agradeço a atenção,
muito obrigado,
Anisio
Abidias
10/03/2007
Caro Anísio, depois de muito penar, consegui realizar tal teste, tanto de prestador para operadora, quanto de operadora para prestador e posso lhe afirmar, o processo é exatamente como o descrito no manual.
No início tive alguns problemas na qual demorei para conseguir identificar, pois aparentemente parecia tudo certo, do lado da operadora tinha a pasta transmissao e nada acontecia.
Bom, deixa eu ver se posso te ajudar, verifique os seguintes intens:
1 - No tag <ans:cabecalho> existe duas outras tags: <ans:origem> e <ans:destino>, toda mensagem para operadora tem como destino o código de registro da operadora na ANS, que será colocado na tag <ans:registroANS>, pois bem, já do quando o destino é um prestador, a coisa muda de figura, você tem três opções de destino, que são: <ans:cpf>, <ans:CNPJ> e <ans:codigoPrestadorNaOperadora>, você poderá usar um destes campos, agora vamos supor que quando você envia uma mensagem de prestador para operadora, a origem está usando a tag <ans:CNPJ>, neste caso, do lado operadora dentro da pasta de transmissão, deve conter exatamente uma pasta que tem como nome o CNPJ do prestador, experimente criar esta pasta manualmente.
2 - Baseado no que foi descrito acima, verifique se sua mensagem xml não está com origem/destino trocados.
3 - Uma fato que ocorreu aqui, o xml estava aparentemente perfeito, abria no navegador sem nenhum erro, o cálculho hash estava batendo, ela até passava pala validação do tissnet e entrava para a fila de transmissão, porém, mesmo depois de estabelecido a conexão com a operadora, a mensagem não ia nem com reza, foi quando observando o prompt que fica no servidor da operadora, percebi que ele tentanva criar dentro da pasta recepção a pasta com o codigo do prestador, porém acrescentando muitos espaços em branco, mas não fazia sentido pois o xml passou pela validação, mesmo assim, abri o fonte do xml e percebi que eu havia escrito ele utilizando edentação para facilitar a leitura, pois bem, justamente estes espaços da edentação comprometeram a transmissão, excluí todos espaços, deixando as tags sem nenhum espaço, nem antes nem depois, exemplo ´<ans:registroANS>444444</ans:registroANS>´ assim está correto, agora ´ <ans:registroANS>444444</ans:registroANS> ´ assim está errado, depois que retirei os espaços a mensagem foi transmitida sem maiores complicações.
4 - Outro ponto que vale a pena levar em consideração, no manual diz que você não é obrigado a configurar as pastas no arquivo ini, caso deixe em branco ele criará as pastas, isto as vezes não dá muito certo, vale a pena configurar todas as pastas: recepcao, logs, transmissao, persistencia.
5 - Uma coisa que pode atrapalhar a conexão é a configuração das portas, se você estiver fazendo o teste em uma rede local, faça o seguinte, do lado do operador, configure o arquivo ini com a porta que já vem sugerida que é 57057, já do lado do prestador, experimente trocar o número da porta, como por exemplo 57058, isto evita conflitos, agora atenção, do lado prestador você irá configurar esta porta diferente na guia preferências, na guia Operadoras você irá configurar para cada operadora a porta que foi designada.
Bom, que eu me recorde estes foram os principais detalhes que tivemos que verificar para que pudessemos realizar os testes, a treta agora é conseguir chegar no verdadeiro formato da mensagem xml, os schemas tem horas que confundem mais do que ajudam, por exemplo, uma coisa que ainda não descobri, quando se faz um xml de solicitação de procedimentos, como deve ficar a tag <ans:tipoTransacao>? no schema não tem uma opção específica para solicitações de procedimentos, se alguém souber, por favor respondam.
Espero que eu tenha conseguido ajudar de alguma forma.
Atenciosamente,
Abidias
10/03/2007
Caro Anísio, depois de muito penar, consegui realizar tal teste, tanto de prestador para operadora, quanto de operadora para prestador e posso lhe afirmar, o processo é exatamente como o descrito no manual.
No início tive alguns problemas na qual demorei para conseguir identificar, pois aparentemente parecia tudo certo, do lado da operadora tinha a pasta transmissao e nada acontecia.
Bom, deixa eu ver se posso te ajudar, verifique os seguintes intens:
1 - No tag <ans:cabecalho> existe duas outras tags: <ans:origem> e <ans:destino>, toda mensagem para operadora tem como destino o código de registro da operadora na ANS, que será colocado na tag <ans:registroANS>, pois bem, já do quando o destino é um prestador, a coisa muda de figura, você tem três opções de destino, que são: <ans:cpf>, <ans:CNPJ> e <ans:codigoPrestadorNaOperadora>, você poderá usar um destes campos, agora vamos supor que quando você envia uma mensagem de prestador para operadora, a origem está usando a tag <ans:CNPJ>, neste caso, do lado operadora dentro da pasta de transmissão, deve conter exatamente uma pasta que tem como nome o CNPJ do prestador, experimente criar esta pasta manualmente.
2 - Baseado no que foi descrito acima, verifique se sua mensagem xml não está com origem/destino trocados.
3 - Uma fato que ocorreu aqui, o xml estava aparentemente perfeito, abria no navegador sem nenhum erro, o cálculho hash estava batendo, ela até passava pala validação do tissnet e entrava para a fila de transmissão, porém, mesmo depois de estabelecido a conexão com a operadora, a mensagem não ia nem com reza, foi quando observando o prompt que fica no servidor da operadora, percebi que ele tentanva criar dentro da pasta recepção a pasta com o codigo do prestador, porém acrescentando muitos espaços em branco, mas não fazia sentido pois o xml passou pela validação, mesmo assim, abri o fonte do xml e percebi que eu havia escrito ele utilizando edentação para facilitar a leitura, pois bem, justamente estes espaços da edentação comprometeram a transmissão, excluí todos espaços, deixando as tags sem nenhum espaço, nem antes nem depois, exemplo ´<ans:registroANS>444444</ans:registroANS>´ assim está correto, agora ´ <ans:registroANS>444444</ans:registroANS> ´ assim está errado, depois que retirei os espaços a mensagem foi transmitida sem maiores complicações.
4 - Outro ponto que vale a pena levar em consideração, no manual diz que você não é obrigado a configurar as pastas no arquivo ini, caso deixe em branco ele criará as pastas, isto as vezes não dá muito certo, vale a pena configurar todas as pastas: recepcao, logs, transmissao, persistencia.
5 - Uma coisa que pode atrapalhar a conexão é a configuração das portas, se você estiver fazendo o teste em uma rede local, faça o seguinte, do lado do operador, configure o arquivo ini com a porta que já vem sugerida que é 57057, já do lado do prestador, experimente trocar o número da porta, como por exemplo 57058, isto evita conflitos, agora atenção, do lado prestador você irá configurar esta porta diferente na guia preferências, na guia Operadoras você irá configurar para cada operadora a porta que foi designada.
Bom, que eu me recorde estes foram os principais detalhes que tivemos que verificar para que pudessemos realizar os testes, a treta agora é conseguir chegar no verdadeiro formato da mensagem xml, os schemas tem horas que confundem mais do que ajudam, por exemplo, uma coisa que ainda não descobri, quando se faz um xml de solicitação de procedimentos, como deve ficar a tag <ans:tipoTransacao>? no schema não tem uma opção específica para solicitações de procedimentos, se alguém souber, por favor respondam.
Espero que eu tenha conseguido ajudar de alguma forma.
Atenciosamente,
Abidias
10/03/2007
Thiago Silva
10/03/2007
EU GOSTARIA DE SABER A RESPEITO DO ARQUIVO DE FATURAMENTO, ,POIS É O MAIS IMPORTANTE PRA MIM NO MOMENTO.
COMO EU FAÇO PRA GERAR O XML BASEADO NOS SCHEMAS ???
SE ALGUEM PUDER ME AJUDAR COM ISSO, EU AGRADEÇO MUITOOO...
CONSEGUIR GERAR ESSE XML, VAI SER O START PRA MINHA CORRIDA.
MUITO OBRIGADO A QUEM PUDER ME DAR UMA FORÇA.
ABRAÇOS
Anision
10/03/2007
Abidias,
Muito obrigado pelas dicas, vou tentar isso e posto o resultado aqui, mesmo que seja negativo, assim outras pessoas podem seguir estes passos já.
Quanto à sua dúvida do .xml, senão me engano, todos os procedimentos, consultas e coisas que têm guias próprias, são enviadas como ´ENVIO_LOTE_GUIAS´, mesmo que seja apenas uma guia.
Se bem que, pelo que ouvi falar, espera-se uma nova versão dos .xsds, onde estes pequenos problemas devam ser resolvidos, espero que sim, porque de fato isso é tudo muito confuso.
Para gerar meus .xml uso o XMLSpy, da altova (http://www.altova.com), que além de ótimo editor xml, faz validação, mas mais importante de tudo, exibe os schemas .xsd no modo ´schema´, que permite que se visualize, na forma de diagramas, o aninhamento das tags, obrigatórias ou opcionais, dentro de cada contexto.
Atenciosamente,
Anisio
Anision
10/03/2007
Abidias,
Muito obrigado pelas dicas, vou tentar isso e posto o resultado aqui, mesmo que seja negativo, assim outras pessoas podem seguir estes passos já.
Quanto à sua dúvida do .xml, senão me engano, todos os procedimentos, consultas e coisas que têm guias próprias, são enviadas como ´ENVIO_LOTE_GUIAS´, mesmo que seja apenas uma guia.
Se bem que, pelo que ouvi falar, espera-se uma nova versão dos .xsds, onde estes pequenos problemas devam ser resolvidos, espero que sim, porque de fato isso é tudo muito confuso.
Para gerar meus .xml uso o XMLSpy, da altova (http://www.altova.com), que além de ótimo editor xml, faz validação, mas mais importante de tudo, exibe os schemas .xsd no modo ´schema´, que permite que se visualize, na forma de diagramas, o aninhamento das tags, obrigatórias ou opcionais, dentro de cada contexto.
Atenciosamente,
Anisio[/url]
Newba
10/03/2007
Tenho uma duvida.... alias... algumas dúvidas bem basicas referente ao conteudo do xml...
- Por exemplo, tem o campo ans:sequencialTransacao: Quem define o valor para este item? Quem está enviando? Caso positivo, tenho que estar ciente que este número pode se repetir, já que estarei recebendo de vários ´prestadores´ no caso de eu ser um plano de saúde...
- Ao gerar um XML de resposta, o cabeçalho permaneçe o mesmo ou devo alterar o conteudo de ´´ ´ans:dataRegistroTransacao´ ´ans:horaRegistroTransacao´, conforme a que estão no meu servidor? Se a resposta for positiva... mudo a origem e destino e o conteudo de ´ans:sequencialTransacao´ também?
Bem.. por enquanto é só....
Abidias
10/03/2007
Realmente eu ainda não consegui achar nenhuma informação referente ao campo <ans:sequencialTransacao>, a única coisa que sei é que tem que ser um número inteiro, ao meu entender cada um terá que controlar o número sequencial, por exemplo, o prestador armazena em algum lugar o último número gerado, e quando for gerar uma nova mensagem, busca este número e o incrementa, depois atualiza este registro para a próximo mensagem, creio que do lado da operadora seja a mesma coisa, agora quanto a questão da operadora receber números repetidos devido ter vários prestadores, creio que não haverá problema, uma vez que cada prestador terá uma pasta exclusiva de recepção, talvez o máximo que aconteça é o fato de que as mensagens poderão não seguir a sequencia continua, ex. 1,2,3...n, uma vez que o prestador também poderá cadastrar várias operadoras, assim na operadora a pasta de um determindado prestador poderá ter mensagens seguindo uma sequencia crescente porém com intervalos, ex. 1,5,9,10,25...n, uma vez que a cada mensagem gerada pelo prestador para qualquer operadora, ele pegará o próximo número sequencial, creio que isto também seja válido de operadora para prestador; bom isto tudo que escrevi acima é interpretação minha, não posso afirmar se será assim, vai que a ans exija que para cada prestador as mensagens sigam uma sequencia continua, neste caso teria que ser feito um controle sequencial para cada prestador cadastrado, não sei se ajudei, mas esta é minha opinião.
Quanto a resposta do xml, na resposta a operadora colocará o seu número sequencial, atualizando também a data e a hora, o campo origem e destino mudam uma vez que a mensagem passa a ser de operadora para prestador, neste caso, origem é o registroANS da operadora e destino pode ser cpf, cnpj ou codigoDoPrestadorNaOperadora.
Eu espero que seja isto, pois estou com muitas dúvidas ainda, espero ter colaborado.....
Atenciosamente,
Newba
10/03/2007
Compartilho a mesma ideia sua...
Agora tenho mais uma dúvida... ( kkkk ):
O campo st_tipoTransacao tem os seguintes valores:
<enumeration value="ENVIO_LOTE_GUIAS"/> <enumeration value="SOLIC_DEMONSTRATIVO_RETORNO"/> <enumeration value="SOLIC_STATUS_PROTOCOLO"/> <enumeration value="AUTORIZACAO_PROCEDIMENTOS"/> <enumeration value="PROTOCOLO_RECEBIMENTO"/> <enumeration value="SITUACAO_PROTOCOLO"/> <enumeration value="RESPOSTA_SOLICITACAO"/> <enumeration value="DEMONSTRATIVO_PAGAMENTO"/> <enumeration value="DEMONSTRATIVO_ANALISE_CONTA"/> <enumeration value="DEMONSTRATIVO_ODONTOLOGIA"/> <enumeration value="CANCELAMENTO_GUIA_RECIBO"/> <enumeration value="RE_APRESENTACAO_GUIA"/> <enumeration value="CANCELA_GUIA"/> <enumeration value="VERIFICA_ELEGIBILIDADE"/> <enumeration value="SITUACAO_ELEGIBILIDADE"/> <enumeration value="AUTORIZACAO_ODONTOLOGIA"/>
No cabeçalho, este campo terá os seguintes valores nas seguintes situações?
ENVIO_LOTE_GUIAS - No processo prestador para operadora para envio de loteGuias (guiaFaturamento e/ou guiaRevisaoGlosa).
SOLIC_DEMONSTRATIVO_RETORNO - Processo operadora para prestador em resposta à DEMONSTRATIVO_PAGAMENTO.
SOLIC_STATUS_PROTOCOLO - No processo prestador para operadora para envio de solicitacaoStatusProtocolo.
AUTORIZACAO_PROCEDIMENTOS - No processo prestador para operadora para envio de solicitacaoProcedimento.
PROTOCOLO_RECEBIMENTO - No processo Operadora para prestador após o recebimento de loteGuias.
SITUACAO_PROTOCOLO - No processo prestador para operadora para envio de solicitacaoStatusProtocolo.
RESPOSTA_SOLICITACAO - Resposta a transação de solicitacaoProcedimento (sentido operadora para prestador)
DEMONSTRATIVO_PAGAMENTO - No processo prestador para operadora para envio de solicitacaoDemonstrativoRetorno.
DEMONSTRATIVO_ANALISE_CONTA - ???
DEMONSTRATIVO_ODONTOLOGIA - ???
CANCELAMENTO_GUIA_RECIBO - Processo Operadora para prestador, em resposta à cancelaGuia.
RE_APRESENTACAO_GUIA - ???
CANCELA_GUIA - Processo prestador para operadora, solicintando cancelamento de guias
VERIFICA_ELEGIBILIDADE - Processo prestador para operadora, solicitando verificaElegibilidade.
SITUACAO_ELEGIBILIDADE - Processo operadora para prestador, em resposta à VERIFICA_ELEGIBILIDADE.
AUTORIZACAO_ODONTOLOGIA - ???
É isso??
Abidias
10/03/2007
´Caro Abidias
Ao que sabemos, os XSD´s estão sendo revisados no COPISS (está para ser publicada uma versão 2.01.02). Na cópia que me enviaram, existe um tipo de transação SOLICITACAO_PROCEDIMENTOS que parece ser o que você menciona.´
Ou seja, mais uma vez teremos que revisar todos nossos modelos de xml, risos, mais temos que pensar positivo, quem sabe agora não venha realmente uma padronização consistente e que chegue há algum lugar, no e-mail que enviei para eles pedi para que colocassem um modelo de cada xml no hotsite do tiss, porém não me responderam nada.
A pergunta que fica é: O prazo para a implantação do padrão Tiss é dia 31/05, será que os xsd ainda passaram por mais alterações?
Até mais....
Sremulador
10/03/2007
Magda
10/03/2007
Obrigada
Magda
Stroschein
10/03/2007
Estou tentando mandar o aquivo usando os schemas disponibilizados pela ANS está dando erro.
Briciosm
10/03/2007
Só que estes procedimentos são executados pela equipe de enfermagem.
Ao enviar as guias, na guia de resumo de internação, é obrigatório ter procedimentos. E com a equipe identificada também.
Neste caso como ficaria a equipe? Que grau de participação usar? Pois não é o médico que faz....
Que exemplos de procedimentos vão neste local?
Curativo e aspiração são procedimentos ou taxas?
Aguardo ajuda!
Obrigado!
Abidias
10/03/2007
Já consegui alguns avanços criação dos arquivos xml, apesar de nunca ter trabalhado com xml, entendi para que servem os arquivos xsd e sua aplicação, porém ainda tenho algumas dúvidas, por exemplo: para que serve o parâmetro nillable?
Outra dúvida: quando aparece o parâmetro minOccurs=´0´, eu sei que se trata de um campo não obrigatório, porém fico na dúvida se pode deixar a tag no xml sem nenhum valor lançado, ou se quando não for utilizar se tenho que omitir a tag do arquivo xml.
Agradeço a quem puder me ajudar....
Mplantz
10/03/2007
Briciosm realmente a equipe é obrigatória, não tem jeito. Para casos em que o procedimento não possuir a equipe médica eu estou preenchendo com o médico principal do prontuário (guia).
Exemplo: Um exame de sangue não possue equipe, então preencho com o médico que solicitou o exame.
Mplantz
10/03/2007
Abidias, quando tentei validar um arquivo onde coloquei somente a Tag sem o conteudo apresentou erro.
Então retirei a tag também.
Abidias
10/03/2007
Abidias, quando tentei validar um arquivo onde coloquei somente a Tag sem o conteudo apresentou erro.
Então retirei a tag também.[/quote:30157d5e72]
Brigadão...
Mplantz
10/03/2007
Eu tenho um prontuário que não possue nenhum procedimento ou exame, porém na guia de resumo de internação é obrigatório o preenchido de pelo menos 1 procedimento ou exame.
No meu prontuário só existem materias e medicamentos.
Neste caso não devo enviar essa guia de internação no resumo, já que não possuo procedimentos?
Obrigada.
Nelson8000
10/03/2007
Estou desenvolvendo o XML de Envio Lote de Guias.
Acontece que o hash não está sendo validado.
Estou achando muito estranho porque as funções recebem parametros string, sendo que um XML desse pode ter muitos caracteres.
Também estou com dúvidas de como eu vou enviar esse arquivo.
é via FTP, via WebService.. como será?
Se for FTP... alguém sabe endereço?
Se for WebService, alguém sabe qual é o endereço e o método?
Obrigado.
Segue abaixo o meu xml que não está sendo validado o Hash.
---------------------------
<?xml version=´1.0´ encoding=´ISO-8859-1´?>
<ans:mensagemTISS xmlns:=´http://www.w3.org/2001/XMLSchema´ xmlns:ans=´http://www.ans.gov.br/padroes/tiss/schemas´>
<ans:cabecalho>
<ans:identificacaoTransacao>
<ans:tipoTransacao>ENVIO_LOTE_GUIAS</ans:tipoTransacao>
<ans:sequencialTransacao>11</ans:sequencialTransacao>
<ans:dataRegistroTransacao>2007-05-03</ans:dataRegistroTransacao>
<ans:horaRegistroTransacao>09:18:42</ans:horaRegistroTransacao>
</ans:identificacaoTransacao>
<ans:origem>
<ans:codigoPrestadorNaOperadora>
<ans:codigoPrestadorNaOperadora>123</ans:codigoPrestadorNaOperadora>
</ans:codigoPrestadorNaOperadora>
</ans:origem>
<ans:destino>
<ans:registroANS>aaaaaa</ans:registroANS>
</ans:destino>
<ans:versaoPadrao>2.01.01</ans:versaoPadrao>
</ans:cabecalho>
<ans:prestadorParaOperadora>
<ans:loteGuias>
<ans:numeroLote>535</ans:numeroLote>
<ans:guias>
<ans:guiaFaturamento>
<ans:guiaSP_SADT>
<ans:identificacaoGuiaSADTSP>
<ans:registroANS>aaaaaa</ans:registroANS>
<ans:dataEmissaoGuia>2007-04-27</ans:dataEmissaoGuia>
<ans:numeroGuiaPrestador>GUIA1</ans:numeroGuiaPrestador>
<ans:numeroGuiaOperadora>GUIA1</ans:numeroGuiaOperadora>
</ans:identificacaoGuiaSADTSP>
<ans:numeroGuiaPrincipal>GUIA1</ans:numeroGuiaPrincipal>
<ans:dadosAutorizacao>
<ans:dataAutorizacao>2007-04-27</ans:dataAutorizacao>
<ans:senhaAutorizacao>SENHA1</ans:senhaAutorizacao>
<ans:validadeSenha>2007-04-27</ans:validadeSenha>
</ans:dadosAutorizacao>
<ans:dadosBeneficiario>
<ans:numeroCarteira>145666321145</ans:numeroCarteira>
<ans:nomeBeneficiario>LOST OCEANIC AIRLINES</ans:nomeBeneficiario>
<ans:nomePlano>ANJOS DA GUARDA</ans:nomePlano>
<ans:validadeCarteira>2007-04-27</ans:validadeCarteira>
<ans:numeroCNS>NUMERO CARTAO</ans:numeroCNS>
<ans:identificadorBeneficiario/>
</ans:dadosBeneficiario>
<ans:dadosSolicitante>
<ans:contratado>
<ans:identificacao>
<ans:codigoPrestadorNaOperadora>11111111</ans:codigoPrestadorNaOperadora>
</ans:identificacao>
<ans:nomeContratado>ABDEL HAFID FARID</ans:nomeContratado>
<ans:enderecoContratado>
<ans:tipoLogradouro>501</ans:tipoLogradouro>
<ans:logradouro>Aeroporto</ans:logradouro>
<ans:numero/>
<ans:codigoIBGEMunicipio>0005555</ans:codigoIBGEMunicipio>
<ans:municipio>BAURU</ans:municipio>
<ans:codigoUF>SP</ans:codigoUF>
<ans:cep>17012060</ans:cep>
</ans:enderecoContratado>
</ans:contratado>
<ans:profissional>
<ans:conselhoProfissional>
<ans:siglaConselho>COREN</ans:siglaConselho>
<ans:numeroConselho>8085</ans:numeroConselho>
<ans:ufConselho>SP</ans:ufConselho>
</ans:conselhoProfissional>
<ans:cbos>01280</ans:cbos>
</ans:profissional>
</ans:dadosSolicitante>
<ans:prestadorExecutante>
<ans:identificacao>
<ans:codigoPrestadorNaOperadora>123</ans:codigoPrestadorNaOperadora>
</ans:identificacao>
<ans:nomeContratado>UNIDADE MATRIZ</ans:nomeContratado>
<ans:enderecoContratado>
<ans:tipoLogradouro>501</ans:tipoLogradouro>
<ans:logradouro>Aeroporto</ans:logradouro>
<ans:numero/>
<ans:codigoIBGEMunicipio>0000909</ans:codigoIBGEMunicipio>
<ans:codigoUF>SP</ans:codigoUF>
<ans:cep>08331500</ans:cep>
</ans:enderecoContratado>
<ans:numeroCNES>4563</ans:numeroCNES>
<ans:profissionalExecutanteCompl>
<ans:nomeExecutante>ROBERTO LOBO ASSUMPÇÃO</ans:nomeExecutante>
<ans:conselhoProfissional>
<ans:siglaConselho>CRM</ans:siglaConselho>
<ans:numeroConselho>32.725</ans:numeroConselho>
<ans:ufConselho>MT</ans:ufConselho>
</ans:conselhoProfissional>
<ans:codigoCBOS>01280</ans:codigoCBOS>
<ans:codigoProfissionalCompl>
<ans:codigoPrestadorNaOperadora>555</ans:codigoPrestadorNaOperadora>
</ans:codigoProfissionalCompl>
</ans:profissionalExecutanteCompl>
</ans:prestadorExecutante>
<ans:indicacaoClinica>indicacao clinica</ans:indicacaoClinica>
<ans:caraterAtendimento>E</ans:caraterAtendimento>
<ans:dataHoraAtendimento>2007-04-26T09:54:00</ans:dataHoraAtendimento>
<ans:diagnosticoGuia>
<ans:CID>
<ans:nomeTabela>CID-10</ans:nomeTabela>
<ans:codigoDiagnostico>CID10</ans:codigoDiagnostico>
</ans:CID>
<ans:tipoDoenca>A</ans:tipoDoenca>
<ans:tempoReferidoEvolucaoDoenca>
<ans:valor>1</ans:valor>
<ans:unidadeTempo>D</ans:unidadeTempo>
</ans:tempoReferidoEvolucaoDoenca>
<ans:indicadorAcidente>1</ans:indicadorAcidente>
</ans:diagnosticoGuia>
<ans:tipoSaida>3</ans:tipoSaida>
<ans:tipoAtendimento>5</ans:tipoAtendimento>
<ans:procedimentosRealizados>
<ans:procedimentoEquipe>
<ans:equipe>
<ans:membroEquipe>
<ans:codigoProfissional>
<ans:codigoPrestadorNaOperadora>555</ans:codigoPrestadorNaOperadora>
</ans:codigoProfissional>
<ans:identificacaoProfissional>
<ans:nomeExecutante>ROBERTO LOBO ASSUMPÇÃO</ans:nomeExecutante>
<ans:conselhoProfissional>
<ans:siglaConselho>CRM</ans:siglaConselho>
<ans:numeroConselho>32.725</ans:numeroConselho>
<ans:ufConselho>MT</ans:ufConselho>
</ans:conselhoProfissional>
<ans:codigoCBOS>01280</ans:codigoCBOS>
</ans:identificacaoProfissional>
<ans:cpf>12345678910</ans:cpf>
<ans:posicaoProfissional>8</ans:posicaoProfissional>
</ans:membroEquipe>
</ans:equipe>
<ans:procedimentosExamesRealizados>
<ans:procedimentoRealizado>
<ans:horaInicio>10:00:00</ans:horaInicio>
<ans:horaFim>11:00:00</ans:horaFim>
<ans:procedimento>
<ans:tipoTabela>01</ans:tipoTabela>
<ans:codigo>28010060</ans:codigo>
<ans:descricao>ÁCIDO FÓLICO</ans:descricao>
</ans:procedimento>
<ans:quantidadeRealizada>1</ans:quantidadeRealizada>
<ans:viaAcesso>U</ans:viaAcesso>
<ans:tecnicaUtilizada>C</ans:tecnicaUtilizada>
<ans:reducaoAcrescimo>2</ans:reducaoAcrescimo>
<ans:valor>36</ans:valor>
<ans:valorTotal>36</ans:valorTotal>
<ans:data>2007-04-26</ans:data>
</ans:procedimentoRealizado>
<ans:procedimentoRealizado>
<ans:horaInicio>15:00:00</ans:horaInicio>
<ans:horaFim>16:00:00</ans:horaFim>
<ans:procedimento>
<ans:tipoTabela>01</ans:tipoTabela>
<ans:codigo>28010175</ans:codigo>
<ans:descricao>ACIDO URICO</ans:descricao>
</ans:procedimento>
<ans:quantidadeRealizada>1</ans:quantidadeRealizada>
<ans:viaAcesso>U</ans:viaAcesso>
<ans:tecnicaUtilizada>C</ans:tecnicaUtilizada>
<ans:reducaoAcrescimo>1</ans:reducaoAcrescimo>
<ans:valor>31.4</ans:valor>
<ans:valorTotal>31.4</ans:valorTotal>
<ans:data>2007-04-26</ans:data>
</ans:procedimentoRealizado>
</ans:procedimentosExamesRealizados>
</ans:procedimentoEquipe>
</ans:procedimentosRealizados>
<ans:OPMSolicitadas>
<ans:OPMSolicitada>
<ans:quantidadeSolicitada>1</ans:quantidadeSolicitada>
<ans:fabricante>FABRICANTE</ans:fabricante>
<ans:valor>23</ans:valor>
<ans:OPM>
<ans:tipoTabela>03</ans:tipoTabela>
<ans:codigo>11111111</ans:codigo>
<ans:descricao>TAXA DE SALA</ans:descricao>
</ans:OPM>
</ans:OPMSolicitada>
</ans:OPMSolicitadas>
<ans:OPMUtilizada>
<ans:identificacaoOPM>
<ans:OPM>
<ans:tipoTabela>03</ans:tipoTabela>
<ans:codigo>11111111</ans:codigo>
<ans:descricao>TAXA DE SALA</ans:descricao>
</ans:OPM>
<ans:quantidade>1</ans:quantidade>
<ans:codigoBarra>1234</ans:codigoBarra>
<ans:valorUnitario>23</ans:valorUnitario>
<ans:valorTotal>23</ans:valorTotal>
</ans:identificacaoOPM>
<ans:valorTotalOPM>23</ans:valorTotalOPM>
</ans:OPMUtilizada>
<ans:valorTotal>
<ans:servicosExecutados>44.4</ans:servicosExecutados>
<ans:diarias>0</ans:diarias>
<ans:taxas>0</ans:taxas>
<ans:materiais>0</ans:materiais>
<ans:medicamentos>0</ans:medicamentos>
<ans:gases>0</ans:gases>
<ans:totalGeral>44.4</ans:totalGeral>
</ans:valorTotal>
<ans:observacao>OBSERVACAO SADT.</ans:observacao>
</ans:guiaSP_SADT>
</ans:guiaFaturamento>
</ans:guias>
</ans:loteGuias>
</ans:prestadorParaOperadora>
<ans:epilogo>
<ans:hash>B3098725F3ADCF64D432F45D521D0459</ans:hash>
</ans:epilogo>
</ans:mensagemTISS>
Carlos.et
10/03/2007
A principio vou usar o Servidor Ponto a Ponto, toda requisição inicia-se no Prestador, o servidor do Operador é passivo, ou seja, só vou enviar mensagens quando contactado.
Estou com dificuldades para gerar estas mensagens depois de contactado, quanto ao formato da mensagem os campos que deve conter, alguém pode me dar uma dica?
Obrigado,
Eduardo.
Favimar
10/03/2007
Dei uma olhada nas mensagens anteriores sobre hash, mas ainda não estou conseguindo gerar o hash corretamente.
Quem tiver o um XML correto com hash validado, poderia postar:
- O arquivo XML completo;
- A string (conteudo das tags) deste arquivo que gerou o hash;
Isso pra eu poder testar se é minha função que calculo o hash que está com problema ou se estou pegando o conteudo errado do arquivo.
Obrigado
Fábio
Mplantz
10/03/2007
Favimar vc. está desenvolvendo em que linguagem?
Eu posso te enviar o código que utilizei para gerar o hash. Eu desenvolvi em delphi 7.
Briciosm
10/03/2007
O problema é que no win98 o memo tem limite de tamanho. mesmo deixando o maxlength = 0. Não consegue armazenar todas as informações.
Só funciona no xp.
Segue a rotina abaixo:
xmlConteudo := ´´;
C := 0;
while (C < length(memotiss.text)-1) and (copy(memotiss.text,C,13) <> ´<ans:epilogo>´) do
begin
if (copy(memotiss.text,C,1)=´>´) and (copy(memotiss.text,C+1,1) <> ´<´) and
(copy(memotiss.text,C+1,1) <> ´ ´) and (copy(memotiss.text,C+1,1) <> chr(13)) and
(copy(memotiss.text,C+1,1) <> chr(10)) then
begin
inc(C);
while copy(memotiss.text,C,2)<>´</´ do
begin
xmlConteudo := xmlConteudo + copy(memotiss.text,C,1);
inc(C);
end;
end;
inc(C);
end;
Como resolver este problema???
Vanessa_b
10/03/2007
será q vc poderia me enviar esse código do Hash, fazendo favor??
Mplantz
10/03/2007
BricioSm eu não estou utilizando memo para retirar as tags do xml, pois ficou extremamente lento quando eu precisei gerar umas 20 guias .. fiz da seguinte forma (peguei esse código em algum lugar, não lembro):
xmlConteudo := xmlDoc.XML.Text;
while Pos(´>´,xmlConteudo) > 0 do
Delete(xmlConteudo,Pos(´<´,xmlConteudo),Pos(´>´,xmlConteudo)-Pos(´<´,xmlConteudo)+1);
Anision
10/03/2007
Olá Nelson,
o xml que você postou tinha um erro no instanciamento do namespace, a segunda linha, eu arrumei aqui, para poder validar-lo e depois calcular o código Hash do mesmo, segue o xml:
<?xml version=´1.0´ encoding=´ISO-8859-1´?>
<ans:mensagemTISS xmlns:ans=´http://www.ans.gov.br/padroes/tiss/schemas´ xmlns:xsi=´http://www.w3.org/2001/XMLSchema-instance´ xsi:schemaLocation=´http://www.ans.gov.br/padroes/tiss/schemas http://www.ans.gov.br/padroes/tiss/schemas/tissV2_01_01.xsd´>
<ans:cabecalho>
<ans:identificacaoTransacao>
<ans:tipoTransacao>ENVIO_LOTE_GUIAS</ans:tipoTransacao>
<ans:sequencialTransacao>11</ans:sequencialTransacao>
<ans:dataRegistroTransacao>2007-05-03</ans:dataRegistroTransacao>
<ans:horaRegistroTransacao>09:18:42</ans:horaRegistroTransacao>
</ans:identificacaoTransacao>
<ans:origem>
<ans:codigoPrestadorNaOperadora>
<ans:codigoPrestadorNaOperadora>123</ans:codigoPrestadorNaOperadora>
</ans:codigoPrestadorNaOperadora>
</ans:origem>
<ans:destino>
<ans:registroANS>11111</ans:registroANS>
</ans:destino>
<ans:versaoPadrao>2.01.01</ans:versaoPadrao>
</ans:cabecalho>
<ans:prestadorParaOperadora>
<ans:loteGuias>
<ans:numeroLote>535</ans:numeroLote>
<ans:guias>
<ans:guiaFaturamento>
<ans:guiaSP_SADT>
<ans:identificacaoGuiaSADTSP>
<ans:registroANS>1234</ans:registroANS>
<ans:dataEmissaoGuia>2007-04-27</ans:dataEmissaoGuia>
<ans:numeroGuiaPrestador>GUIA1</ans:numeroGuiaPrestador>
<ans:numeroGuiaOperadora>GUIA1</ans:numeroGuiaOperadora>
</ans:identificacaoGuiaSADTSP>
<ans:numeroGuiaPrincipal>GUIA1</ans:numeroGuiaPrincipal>
<ans:dadosAutorizacao>
<ans:dataAutorizacao>2007-04-27</ans:dataAutorizacao>
<ans:senhaAutorizacao>SENHA1</ans:senhaAutorizacao>
<ans:validadeSenha>2007-04-27</ans:validadeSenha>
</ans:dadosAutorizacao>
<ans:dadosBeneficiario>
<ans:numeroCarteira>145666321145</ans:numeroCarteira>
<ans:nomeBeneficiario>LOST OCEANIC AIRLINES</ans:nomeBeneficiario>
<ans:nomePlano>ANJOS DA GUARDA</ans:nomePlano>
<ans:validadeCarteira>2007-04-27</ans:validadeCarteira>
<ans:numeroCNS>NUMERO CARTAO</ans:numeroCNS>
<ans:identificadorBeneficiario/>
</ans:dadosBeneficiario>
<ans:dadosSolicitante>
<ans:contratado>
<ans:identificacao>
<ans:codigoPrestadorNaOperadora>11111111</ans:codigoPrestadorNaOperadora>
</ans:identificacao>
<ans:nomeContratado>ABDEL HAFID FARID</ans:nomeContratado>
<ans:enderecoContratado>
<ans:tipoLogradouro>501</ans:tipoLogradouro>
<ans:logradouro>Aeroporto</ans:logradouro>
<ans:numero/>
<ans:codigoIBGEMunicipio>0005555</ans:codigoIBGEMunicipio>
<ans:municipio>BAURU</ans:municipio>
<ans:codigoUF>SP</ans:codigoUF>
<ans:cep>17012060</ans:cep>
</ans:enderecoContratado>
</ans:contratado>
<ans:profissional>
<ans:conselhoProfissional>
<ans:siglaConselho>COREN</ans:siglaConselho>
<ans:numeroConselho>8085</ans:numeroConselho>
<ans:ufConselho>SP</ans:ufConselho>
</ans:conselhoProfissional>
<ans:cbos>01280</ans:cbos>
</ans:profissional>
</ans:dadosSolicitante>
<ans:prestadorExecutante>
<ans:identificacao>
<ans:codigoPrestadorNaOperadora>123</ans:codigoPrestadorNaOperadora>
</ans:identificacao>
<ans:nomeContratado>UNIDADE MATRIZ</ans:nomeContratado>
<ans:enderecoContratado>
<ans:tipoLogradouro>501</ans:tipoLogradouro>
<ans:logradouro>Aeroporto</ans:logradouro>
<ans:numero/>
<ans:codigoIBGEMunicipio>0000909</ans:codigoIBGEMunicipio>
<ans:codigoUF>SP</ans:codigoUF>
<ans:cep>08331500</ans:cep>
</ans:enderecoContratado>
<ans:numeroCNES>4563</ans:numeroCNES>
<ans:profissionalExecutanteCompl>
<ans:nomeExecutante>ROBERTO LOBO ASSUMPÇÃO</ans:nomeExecutante>
<ans:conselhoProfissional>
<ans:siglaConselho>CRM</ans:siglaConselho>
<ans:numeroConselho>32.725</ans:numeroConselho>
<ans:ufConselho>MT</ans:ufConselho>
</ans:conselhoProfissional>
<ans:codigoCBOS>01280</ans:codigoCBOS>
<ans:codigoProfissionalCompl>
<ans:codigoPrestadorNaOperadora>555</ans:codigoPrestadorNaOperadora>
</ans:codigoProfissionalCompl>
</ans:profissionalExecutanteCompl>
</ans:prestadorExecutante>
<ans:indicacaoClinica>indicacao clinica</ans:indicacaoClinica>
<ans:caraterAtendimento>E</ans:caraterAtendimento>
<ans:dataHoraAtendimento>2007-04-26T09:54:00</ans:dataHoraAtendimento>
<ans:diagnosticoGuia>
<ans:CID>
<ans:nomeTabela>CID-10</ans:nomeTabela>
<ans:codigoDiagnostico>CID10</ans:codigoDiagnostico>
</ans:CID>
<ans:tipoDoenca>A</ans:tipoDoenca>
<ans:tempoReferidoEvolucaoDoenca>
<ans:valor>1</ans:valor>
<ans:unidadeTempo>D</ans:unidadeTempo>
</ans:tempoReferidoEvolucaoDoenca>
<ans:indicadorAcidente>1</ans:indicadorAcidente>
</ans:diagnosticoGuia>
<ans:tipoSaida>3</ans:tipoSaida>
<ans:tipoAtendimento>5</ans:tipoAtendimento>
<ans:procedimentosRealizados>
<ans:procedimentoEquipe>
<ans:equipe>
<ans:membroEquipe>
<ans:codigoProfissional>
<ans:codigoPrestadorNaOperadora>555</ans:codigoPrestadorNaOperadora>
</ans:codigoProfissional>
<ans:identificacaoProfissional>
<ans:nomeExecutante>ROBERTO LOBO ASSUMPÇÃO</ans:nomeExecutante>
<ans:conselhoProfissional>
<ans:siglaConselho>CRM</ans:siglaConselho>
<ans:numeroConselho>32.725</ans:numeroConselho>
<ans:ufConselho>MT</ans:ufConselho>
</ans:conselhoProfissional>
<ans:codigoCBOS>01280</ans:codigoCBOS>
</ans:identificacaoProfissional>
<ans:cpf>12345678910</ans:cpf>
<ans:posicaoProfissional>8</ans:posicaoProfissional>
</ans:membroEquipe>
</ans:equipe>
<ans:procedimentosExamesRealizados>
<ans:procedimentoRealizado>
<ans:horaInicio>10:00:00</ans:horaInicio>
<ans:horaFim>11:00:00</ans:horaFim>
<ans:procedimento>
<ans:tipoTabela>01</ans:tipoTabela>
<ans:codigo>28010060</ans:codigo>
<ans:descricao>ÁCIDO FÓLICO</ans:descricao>
</ans:procedimento>
<ans:quantidadeRealizada>1</ans:quantidadeRealizada>
<ans:viaAcesso>U</ans:viaAcesso>
<ans:tecnicaUtilizada>C</ans:tecnicaUtilizada>
<ans:reducaoAcrescimo>2</ans:reducaoAcrescimo>
<ans:valor>36</ans:valor>
<ans:valorTotal>36</ans:valorTotal>
<ans:data>2007-04-26</ans:data>
</ans:procedimentoRealizado>
<ans:procedimentoRealizado>
<ans:horaInicio>15:00:00</ans:horaInicio>
<ans:horaFim>16:00:00</ans:horaFim>
<ans:procedimento>
<ans:tipoTabela>01</ans:tipoTabela>
<ans:codigo>28010175</ans:codigo>
<ans:descricao>ACIDO URICO</ans:descricao>
</ans:procedimento>
<ans:quantidadeRealizada>1</ans:quantidadeRealizada>
<ans:viaAcesso>U</ans:viaAcesso>
<ans:tecnicaUtilizada>C</ans:tecnicaUtilizada>
<ans:reducaoAcrescimo>1</ans:reducaoAcrescimo>
<ans:valor>31.4</ans:valor>
<ans:valorTotal>31.4</ans:valorTotal>
<ans:data>2007-04-26</ans:data>
</ans:procedimentoRealizado>
</ans:procedimentosExamesRealizados>
</ans:procedimentoEquipe>
</ans:procedimentosRealizados>
<ans:OPMSolicitadas>
<ans:OPMSolicitada>
<ans:quantidadeSolicitada>1</ans:quantidadeSolicitada>
<ans:fabricante>FABRICANTE</ans:fabricante>
<ans:valor>23</ans:valor>
<ans:OPM>
<ans:tipoTabela>03</ans:tipoTabela>
<ans:codigo>11111111</ans:codigo>
<ans:descricao>TAXA DE SALA</ans:descricao>
</ans:OPM>
</ans:OPMSolicitada>
</ans:OPMSolicitadas>
<ans:OPMUtilizada>
<ans:identificacaoOPM>
<ans:OPM>
<ans:tipoTabela>03</ans:tipoTabela>
<ans:codigo>11111111</ans:codigo>
<ans:descricao>TAXA DE SALA</ans:descricao>
</ans:OPM>
<ans:quantidade>1</ans:quantidade>
<ans:codigoBarra>1234</ans:codigoBarra>
<ans:valorUnitario>23</ans:valorUnitario>
<ans:valorTotal>23</ans:valorTotal>
</ans:identificacaoOPM>
<ans:valorTotalOPM>23</ans:valorTotalOPM>
</ans:OPMUtilizada>
<ans:valorTotal>
<ans:servicosExecutados>44.4</ans:servicosExecutados>
<ans:diarias>0</ans:diarias>
<ans:taxas>0</ans:taxas>
<ans:materiais>0</ans:materiais>
<ans:medicamentos>0</ans:medicamentos>
<ans:gases>0</ans:gases>
<ans:totalGeral>44.4</ans:totalGeral>
</ans:valorTotal>
<ans:observacao>OBSERVACAO SADT.</ans:observacao>
</ans:guiaSP_SADT>
</ans:guiaFaturamento>
</ans:guias>
</ans:loteGuias>
</ans:prestadorParaOperadora>
<ans:epilogo>
<ans:hash>9010fe405f9f8904ebe38d391c79fecb</ans:hash>
</ans:epilogo>
</ans:mensagemTISS>
e o Hash foi calculado sobre a string:
ENVIO_LOTE_GUIAS112007-05-0309:18:42123111112.01.0153512342007-04-27GUIA1GUIA1GUIA12007-04-27SENHA12007-04-27145666321145LOST OCEANIC AIRLINESANJOS DA GUARDA2007-04-27NUMERO CARTAO11111111ABDEL HAFID FARID501Aeroporto0005555BAURUSP17012060COREN8085SP01280123UNIDADE MATRIZ501Aeroporto0000909SP083315004563ROBERTO LOBO ASSUMPÇÃOCRM32.725MT01280555indicacao clinicaE2007-04-26T09:54:00CID-10CID10A1D135555ROBERTO LOBO ASSUMPÇÃOCRM32.725MT0128012345678910810:00:0011:00:000128010060ÁCIDO FÓLICO1UC236362007-04-2615:00:0016:00:000128010175ACIDO URICO1UC131.431.42007-04-261FABRICANTE230311111111TAXA DE SALA0311111111TAXA DE SALA1123423232344.40000044.4OBSERVACAO SADT.
quanto às suas dúvidas sobre para ONDE e COMO enviar o seu xml, isso depende das partes que estarão trocando estas mensagens, a Operadora destino é quem deve informar o endereço e o método de envio desta mensagem.
espero ter ajudado,
Anisio
Anision
10/03/2007
Olá Abidias,
nil, em inglês, significa nulo, zero, ou seja, um parâmetro nillable pode ter valor nulo, o que quer dizer, na prática, seu uso é opcional. Este parâmetro, na minha opnião, não deveria aparecer no XML, isso é um erro na montagem do .xsd, mas como não podemos consertar o mundo, muito menos os .xsds da ANS, basta sabermos que o isso siginifica que o uso da tag que contém este parâmetro é opcional.
Quanto ao minOccurs=´0´, como já disseram outras pessoas na lista, se você não for usar esta tag não coloque nada, quando a tag é invocada, ou seja, posta no xml, o parser espera encontrar algum valor dentro dela, do tipo que o schema indica, então se a tag está lá, em teoria, ela DEVE ter valor, se a tag for opcional e não for usada, não coloque nada mesmo no xml.
Espero ter ajudado,
[]s
Anisio
Helderml
10/03/2007
se voce pudesse me ajudar enviando algum exemplo em delphi,eu te agradeceria muito
sds
helder@transdatamed.com
Lucianogar
10/03/2007
desde ja agradeço.
Briciosm
10/03/2007
Se o paciente ficar 30 dias internado em uma unidade e depois for para cti, por exemplo e depois para o Centro cirurgico fazer uma cirurgia irá ficar tudo na mesma conta. Os gastos eu agrupo por setor.
Com o tiss, verifiquei que na guia de outras despesas é tudo por dia.
Vou agrupar os gastos por dia independente do setor. É isso?
Vamos dizer que um paciente está em tratamento clinico. E durante este período ele ficou em uma unidade e depois foi para cti. E depois ainda fez uma cirurgia no centro cirurgico.
Como ficaram os gastos?
Ficrá tudo na mesma conta. E irei agrupar tudo por data independente do setor?
Aguardo ajuda!
Vanessa_b
10/03/2007
andei testando os xml q vcs postaram e nenhum passou pela validacao.
Aliás, aparece q até q o schema está incompleto...
se alguem puder me dar uma luz eu agradeço mto.
Sremulador
10/03/2007
Magda
10/03/2007
Eu montei as tabelas de domínio pela definição dos simpletype do arquivo xsd. No arquivo este código não está duplicado e o grupo 19 vai até 1916 e não 1915. Notei também que no arquivo xsd a tabela de CBOs tem muito mais códigos do que aparece no PDF e tem pelo menos 3 deles duplicados. Acho que é mais seguro montar as tabelas pelo xsd porque é dali que vão ser validados os dados...
Magda
Briciosm
10/03/2007
Está logo acima...
Obrigado!
Titanius
10/03/2007
[]s
Sremulador
10/03/2007
alô meu amigo, estou trabalhando em uma especie de transformador e estou trabalhando para laboratórios tb, vc pode entrar em contato para trocarmos ideias...
Titanius
10/03/2007
alô meu amigo, estou trabalhando em uma especie de transformador e estou trabalhando para laboratórios tb, vc pode entrar em contato para trocarmos ideias...[/quote:5b628f24be]
Blz cara... me envia um email, pois não consegui identificar o seu email :D
fellipeh@gmail.com
[]s
Renato Carvalho
10/03/2007
Sou mais um que está entrando agora nessa briga. Fiquei feliz por ter achado esse fórum. O nível de troca de experiências parece ser muito alto e acredito que todos devem estar ganhando muito com ele.
Mas, apesar disso, o fórum também me assustou um pouco. A quantidade de problemas e imprevistos me parece ser muito alta, né? E isso me deixou receoso quanto aos prazos necessários e o desenho de equipe ideal para encarar esse desafio.
Estou com medo de entrar nessa mal preparado e não conseguir cumprir os prazos.
Meu cliente é um plano odontológico (o que parece ser um pouco mais fácil que clientes de medicina, não é?). Precisamos fazer do zero os sistemas financeiro, de gerenciamento de clientes e de produção (que é o que controla as consultas e etc.). Pretendíamos trabalhar com um analista, um programador PHP e um especialista em XML e banco de dados e finalizar tudo em 3 meses.
Vocês acham viável? Têm sugestões quanto ao desenho da equipe? Como estão fazendo no caso de vocês? Qual o prazo e a equipe que estão usando?
Obrigado a todos!
Renato Carvalho
Sremulador
10/03/2007
Acesse o meu msn, que sempre estou on-line
Sremulador
10/03/2007
Sou mais um que está entrando agora nessa briga. Fiquei feliz por ter achado esse fórum. O nível de troca de experiências parece ser muito alto e acredito que todos devem estar ganhando muito com ele.
Mas, apesar disso, o fórum também me assustou um pouco. A quantidade de problemas e imprevistos me parece ser muito alta, né? E isso me deixou receoso quanto aos prazos necessários e o desenho de equipe ideal para encarar esse desafio.
Estou com medo de entrar nessa mal preparado e não conseguir cumprir os prazos.
Meu cliente é um plano odontológico (o que parece ser um pouco mais fácil que clientes de medicina, não é?). Precisamos fazer do zero os sistemas financeiro, de gerenciamento de clientes e de produção (que é o que controla as consultas e etc.). Pretendíamos trabalhar com um analista, um programador PHP e um especialista em XML e banco de dados e finalizar tudo em 3 meses.
Vocês acham viável? Têm sugestões quanto ao desenho da equipe? Como estão fazendo no caso de vocês? Qual o prazo e a equipe que estão usando?
Obrigado a todos!
Renato Carvalho[/quote:4a58e64711]
Amigo, aqui são epenas 2, nosso sistema e hospitalar, completo...
Renato Carvalho
10/03/2007
E qual a sua estimativa de tempo para o desenvolvimento do sistema? Depois que iniciou, teve muitos imprevistos com todos esses problemas relatados aqui no fórum?
Briciosm
10/03/2007
O início do processo inicia com o atendente:
É aberto o atendimento.
Esta guia vocês fizeram em paralelo para o atendente ir preenchendo também ou agregaram alguns campos no sistema onde o usuário já completa no atendimento e a guia de resumo é gerada no final pelo faturamento?
Ou de outra forma???
Aguardo ajuda!
Sremulador
10/03/2007
E qual a sua estimativa de tempo para o desenvolvimento do sistema? Depois que iniciou, teve muitos imprevistos com todos esses problemas relatados aqui no fórum?[/quote:22c9142031]
Na verdade amigo, até hoje nós trabalhomos no soft, isto e um tipo de coisa que não para, isto e depois de 5 anos
Renato Carvalho
10/03/2007
E qual a sua estimativa de tempo para o desenvolvimento do sistema? Depois que iniciou, teve muitos imprevistos com todos esses problemas relatados aqui no fórum?[/quote:fbcbbde0a3]
Na verdade amigo, até hoje nós trabalhomos no soft, isto e um tipo de coisa que não para, isto e depois de 5 anos[/quote:fbcbbde0a3]
Ah, ok... Vocês estão dando manutenção permanente e fazendo os ajustes e adaptações necessárias num sistema já existente, não é? No meu caso, teremos que criar um sistema do zero, e já de acordo com as exigências do TISS. É por isso que, quando vi a quantidade de dificuldades relatadas aqui no fórum, me assustei.
Alguém mais pode fazer algum comentário sobre essa questão da estimativa do tempo necessário?
Abraços.
Rodrigomy
10/03/2007
PRESTADOR - Tipo de Transação - OPERADORA
ENVIO_LOTE_GUIAS - Envio de lote guias - PROTOCOLO_RECEBIMENTO
ENVIO_LOTE_GUIAS - Envio solicitacao Internacao/SADT - AUTORIZACAO_PROCEDIMENTOS
RE_APRESENTACAO_GUIA - Reapresentação de Contas - PROTOCOLO_RECEBIMENTO
SOLIC_DEMONSTRATIVO_RETORNO - DEMONSTRATIVO_ODONTOLOGIA
SOLIC_DEMONSTRATIVO_RETORNO - DEMONSTRATIVO_ANALISE_CONTA_MEDICA
SOLIC_DEMONSTRATIVO_RETORNO - DEMONSTRATIVO_PAGAMENTO
SOLIC_STATUS_PROTOCOLO - Status de Protocolo - SITUACAO_PROTOCOLO
CANCELA_GUIA - Cancelamento Guias - CANCELAMENTO_GUIA_RECIBO
VERIFICA_ELEGIBILIDADE - Verifica Elegibilidade - SITUACAO_ELEGIBILIDADE
AUTORIZACAO_ODONTOLOGIA - Solicitação de procedimento odontologico - AUTORIZACAO_PROCEDIMENTOS
OK, todas as transacoes de prestadores foram utilizadas, mas do lado das operadoras faltou uma: pra que serve a transacao RESPOSTA_SOLICITACAO?
Sremulador
10/03/2007
Mais informações
[url]http://www.ans.gov.br/portal/site/_hotsite_tiss/mensagem_eletronica.htm[/url]
Rodrigomy
10/03/2007
Pois é, obrigado, eu já conhecia esse site, mas vc vê q até a própria ANS confunde na sua página hehe... Na ´Resposta Solicitação´ fala ´resposta à solicitação de serviços realizada pelo prestador´. Mas q serviços são esses, já que ´Solicitação de Internação, Serviços Profissionais /SADT e Tratamento Odontológico´ entram em AUTORIZACAO_PROCEDIMENTOS? Quais sobram pra RESPOSTA_SOLICITACAO?
Briciosm
10/03/2007
Estou fazendo um teste com 100 contas. O xml gerado deu 5MB.
Demorou mais ou menos 10min para gerar o xml.
O calculo do hash está muito demorado....faz mais de 20min e nada...
O pior é que não deu erro...
Com 15 contas funciona bem! Em 3min o xml é gerado com o hash calculado.
Estou usando este comando para tirar as tags:
try
//deixar somente o conteudo - retirar as tags
xmlConteudo := ´´;
AssignFile(f,nomearquivo);
Reset(f); //abre o arquivo para leitura;
While not eof(f) do
begin
Readln(f,linha); //le do arquivo e desce uma linha. O conteúdo lido é transferido para a variável linha
xmlconteudo:=xmlconteudo+linha;
end;
while Pos(´>´,xmlconteudo) > 0 do
Delete(xmlconteudo,Pos(´<´,xmlconteudo),Pos(´>´,xmlconteudo)-Pos(´<´,xmlconteudo)+1);
finally
closefile(f); //fecha o handle de arquivo
end;
E depois uso uma unit que encontrei na net.
E o seguinte comando:
try
append(f); //abre o arquivo para escrita
writeln(f,´<ans:epilogo>´);
writeln(f,´<ans:hash>´+md5print(md5string(xmlconteudo))+´</ans:hash>´);
writeln(f,´</ans:epilogo>´);
writeln(f,´</ans:mensagemTISS>´);
// memotiss.Lines.SaveToFile(nomearquivo);
finally
closefile(f); //fecha o handle de arquivo
end;
O que pode ser?
Alguém tem alguma sujestão???
Será que a variável string não aguentou o tamanho??
Briciosm
10/03/2007
São 200 contas.
São 2 faturas por mês para este convênio.
Sremulador
10/03/2007
Briciosm
10/03/2007
Briciosm
10/03/2007
xmlConteudo := ´´;
AssignFile(f,nomearquivo);
Reset(f); //abre o arquivo para leitura;
While not eof(f) do
begin
Readln(f,linha); //le do arquivo e desce uma linha. O conteúdo lido é transferido para a variável linha
xmlconteudo:=xmlconteudo+linha;
end;
Jrg
10/03/2007
Alguém poderia postar um exemplo da Guia de Solicitação de Internação em XML?
Abraço a todos!
Sremulador
10/03/2007
Mplantz
10/03/2007
Estou precisando de um ajuda para enviar o XML para a operadora.
Como faço para enviar o XML´s através do modo ponto a ponto?
Não queria utilizar o TissNet, porque o usuário precisará ficar arrastando os arquivos pra lá e isso não será muito bom.
Eu trabalho com Delphi 7 e baco de dados SQL 2000.
Obrigada.
Sremulador
10/03/2007
Marcio Oliveira
10/03/2007
Gostaria de saber se alguém tem um exemplo de alguma das GUIAS do TISS com várias contas. Ou seja, eu tenho um lote com vários pacientes e quero gerar o XML da Guia de Consulta desse Lote.
grato
Fluiz
10/03/2007
segue a ideia do TISS
Fernando
Deniz
10/03/2007
Desde já agradeço a ajuda.
Rodrigomy
10/03/2007
Vejam em [url]www.ans.gov.br/padroes/tiss/schemas[/url]
Marcio Oliveira
10/03/2007
Já tinha feito o XML da Guia de Consulta, Guia de SADT, Guia de Solicitação de Internação e Guia de Resumo de Internação. Já tinha validado, enviado para os clientes, e adivinham.... O TISS mudou!
Agora não valida nada, meses de trabalho jogado fora e o prazo continua pra 31/05/2007 e minha cabeça tá prestes a rolar, uma beleza!
Bom, alegrias a parte, alguém saberia me dizer o seguinte :
Antes, eu estava validando as guias com o famoso tissV2_01_01.xsd, e estava ocorrendo tudo bem, agora eu tenho que validar com o tissV2_01_02.xsd? É isso mesmo?
Tentei validar com esse cara e olhem só os erros abaixo:
XML Schema Validator
Well Formed: INCOMPLETE
Schema Validation: INCOMPLETE
The following errors were found:
TYPE LOC MESSAGE
Validation 16, 66 src-resolve: Cannot resolve the name ´ans:st_tipoTransacao´ to a(n) ´type definition´ component.
Validation 18, 65 src-resolve: Cannot resolve the name ´ans:st_data´ to a(n) ´type definition´ component.
Validation 19, 65 src-resolve: Cannot resolve the name ´ans:st_hora´ to a(n) ´type definition´ component.
Validation 26, 44 src-resolve: Cannot resolve the name ´ans:ct_motivoGlosa´ to a(n) ´type definition´ component.
Validation 38, 88 src-resolve: Cannot resolve the name ´ans:ct_identificacaoPrestador´ to a(n) ´type definition´ component.
Validation 40, 62 src-resolve: Cannot resolve the name ´ans:st_registroANS´ to a(n) ´type definition´ component.
Validation 48, 88 src-resolve: Cannot resolve the name ´ans:ct_identificacaoPrestador´ to a(n) ´type definition´ component.
Validation 50, 62 src-resolve: Cannot resolve the name ´ans:st_registroANS´ to a(n) ´type definition´ component.
Validation 54, 55 src-resolve: Cannot resolve the name ´ans:st_versao´ to a(n) ´type definition´ component.
Validation 68, 131 src-resolve: Cannot resolve the name ´ans:ct_demonstrativoAnaliseConta´ to a(n) ´type definition´ component.
Validation 69, 129 src-resolve: Cannot resolve the name ´ans:ct_demonstrativoOdontologia´ to a(n) ´type definition´ component.
Validation 70, 125 src-resolve: Cannot resolve the name ´ans:ct_demonstrativoPagamento´ to a(n) ´type definition´ component.
Validation 74, 96 src-resolve: Cannot resolve the name ´ans:ct_protocoloRecebimento´ to a(n) ´type definition´ component.
Validation 75, 88 src-resolve: Cannot resolve the name ´ans:ct_StatusProtocolo´ to a(n) ´type definition´ component.
Validation 79, 61 src-resolve: Cannot resolve the name ´ans:ct_autorizacaoProcedimento´ to a(n) ´type definition´ component.
Validation 108, 94 src-resolve: Cannot resolve the name ´ans:ct_situacaoAutorizacao´ to a(n) ´type definition´ component.
Validation 109, 97 src-resolve: Cannot resolve the name ´ans:ct_retornoElegibilidade´ to a(n) ´type definition´ component.
Validation 110, 90 src-resolve: Cannot resolve the name ´ans:ct_reciboCancelaGuia´ to a(n) ´type definition´ component.
Validation 117, 74 src-resolve: Cannot resolve the name ´ans:ct_loteGuias´ to a(n) ´type definition´ component.
Validation 118, 120 src-resolve: Cannot resolve the name ´ans:ct_solicitacaoDemonstrativoPagamento´ to a(n) ´type definition´ component.
Validation 119, 108 src-resolve: Cannot resolve the name ´ans:ct_solicitacaoStatusProtocolo´ to a(n) ´type definition´ component.
Validation 123, 119 src-resolve: Cannot resolve the name ´ans:ct_guiaSolicInternacao´ to a(n) ´type definition´ component.
Terminal 0, 0 There have been too many errors, please check that you have not submitted the instance and schema the wrong way round.
Alguma alma bondosa, saberia me dizer se eu peço as contas antes de ser mandado embora ou se ainda é possível salvar meu emprego? :)
grato
Briciosm
10/03/2007
Pronta para aceitar estas atualizações dos schemas...
Rodrigomy
10/03/2007
Provavelmente sim, mas nao precisa esperar nao, eh soh jogar as novas versões dos arquivos na pasta ´schemas´ dentro da pasta do TISSNet atual, e mudar a primeira linha do ´tiss.ini´:
onde está escrito ´tiss.schema = file:./schemas/tissV2_01_01.xsd´
fica ´tiss.schema = file:./schemas/tissV2_01_02.xsd´.
Julioqualy
10/03/2007
Site TISS online novamente, e com a versão 3.5 do TISSNet
Att,
Júlio
Sremulador
10/03/2007
http://www.ans.gov.br/portal/site/_hotsite_tiss/pdf/IN26_dides.pdf
Mas uma mancada foi mostar o anexo todo na versão 2.01.01, brincadeira...
:evil:
Anision
10/03/2007
alguém aqui está preparando algum sistema para se comunicar com web servicesm, usando os wsdl e soap? ou apenas gerando os xmls de acordo com os schemas?
AH!~Não fiquem desesperados com a nova versão não, não está assim tãããão diferente não!
[]s
Anisio
Marcio Oliveira
10/03/2007
estou usando o link http://tools.decisionsoft.com/schemaValidate/ para validar os XML que gero.
Na versão 1 eu fazia o seguinte :
No ´XML Schema:´ eu colocava ´tissV2_01_01.xsd´
No ´XML Instance:´ eu colocava o meu XML
Com isso, conseguia validar as minhas Guias. Agora, eu mudei o ´XML Schema:´ para ´tissV2_01_02.xsd´ não valida mais.
O que eu tenho que colocar nesse ´XML Schema:´ ?
Segue um modelo da Guia de Consulta que valida com a Versão 1 e não Valida com a versão 2:
<?xml version=´1.0´ encoding=´ISO-8859-1´?>
<ans:mensagemTISS xmlns:ans=´http://www.ans.gov.br/padroes/tiss/schemas´ xmlns:xsi=´http://www.w3.org/2001/XMLSchema-instance´ xsi:schemaLocation=´http://www.ans.gov.br/padroes/tiss/schemas http://www.ans.gov.br/padroes/tiss/schemas/tissV2_01_02.xsd´>
<ans:cabecalho>
<ans:identificacaoTransacao>
<ans:tipoTransacao>ENVIO_LOTE_GUIAS</ans:tipoTransacao>
<ans:sequencialTransacao>1</ans:sequencialTransacao>
<ans:dataRegistroTransacao>2007-05-16</ans:dataRegistroTransacao>
<ans:horaRegistroTransacao>10:43:58</ans:horaRegistroTransacao>
</ans:identificacaoTransacao>
<ans:origem>
<ans:codigoPrestadorNaOperadora>
<ans:CNPJ>54464482000160</ans:CNPJ>
</ans:codigoPrestadorNaOperadora>
</ans:origem>
<ans:destino>
<ans:registroANS>123456</ans:registroANS>
</ans:destino>
<ans:versaoPadrao>2.01.02</ans:versaoPadrao>
</ans:cabecalho>
<ans:prestadorParaOperadora>
<ans:loteGuias>
<ans:numeroLote>0036</ans:numeroLote>
<ans:guias>
<ans:guiaFaturamento>
<ans:guiaConsulta>
<ans:identificacaoGuia>
<ans:registroANS>123456</ans:registroANS>
<ans:dataEmissaoGuia>2006-11-21</ans:dataEmissaoGuia>
<ans:numeroGuiaPrestador>12345678901234567890</ans:numeroGuiaPrestador>
</ans:identificacaoGuia>
<ans:beneficiario>
<ans:numeroCarteira>12345678901234567890</ans:numeroCarteira>
<ans:nomeBeneficiario>MARCIO BERTOSSI </ans:nomeBeneficiario>
<ans:nomePlano>OPCAO 11 </ans:nomePlano>
<ans:validadeCarteira>2009-01-01</ans:validadeCarteira>
<ans:numeroCNS>898000000043208</ans:numeroCNS>
<ans:identificadorBeneficiario />
</ans:beneficiario>
<ans:dadosContratado>
<ans:identificacao>
<ans:CNPJ>54464482000160</ans:CNPJ>
</ans:identificacao>
<ans:nomeContratado>HOSP.DEMONSTRACAO </ans:nomeContratado>
<ans:enderecoContratado>
<ans:tipoLogradouro>081</ans:tipoLogradouro>
<ans:logradouro>081 DR. HOMEM DE MELLO </ans:logradouro>
<ans:numero>00644</ans:numero>
<ans:codigoIBGEMunicipio>0355030</ans:codigoIBGEMunicipio>
<ans:codigoUF>SP</ans:codigoUF>
<ans:cep>05007001</ans:cep>
</ans:enderecoContratado>
<ans:numeroCNES>0000000</ans:numeroCNES>
</ans:dadosContratado>
<ans:profissionalExecutante>
<ans:nomeProfissional>MARIA REGINA P.DE BRITO DE A. </ans:nomeProfissional>
<ans:conselhoProfissional>
<ans:siglaConselho>CRM</ans:siglaConselho>
<ans:numeroConselho>13739 </ans:numeroConselho>
<ans:ufConselho>AM</ans:ufConselho>
</ans:conselhoProfissional>
<ans:cbos>06114</ans:cbos>
</ans:profissionalExecutante>
<ans:hipoteseDiagnostica>
<ans:CID>
<ans:nomeTabela>CID-10</ans:nomeTabela>
<ans:codigoDiagnostico>E66.0</ans:codigoDiagnostico>
<ans:descricaoDiagnostico>OBESIDADE DEVIDA A EXCESSO DE CALORIAS </ans:descricaoDiagnostico>
</ans:CID>
</ans:hipoteseDiagnostica>
<ans:dadosAtendimento>
<ans:dataAtendimento>2006-11-21</ans:dataAtendimento>
<ans:procedimento>
<ans:codigoTabela>01</ans:codigoTabela>
<ans:codigoProcedimento>00010014</ans:codigoProcedimento>
</ans:procedimento>
<ans:tipoConsulta>1</ans:tipoConsulta>
<ans:tipoSaida>5</ans:tipoSaida>
</ans:dadosAtendimento>
<ans:observacao />
</ans:guiaConsulta>
</ans:guiaFaturamento>
</ans:guias>
</ans:loteGuias>
</ans:prestadorParaOperadora>
<ans:epilogo>
<ans:hash>ad350c9442ccf7a566c66044c4645e9a</ans:hash>
</ans:epilogo>
</ans:mensagemTISS>
Thiago Silva
10/03/2007
Eu não consigo colocar um xml no tissnet...
Todos estão apresentando erro no HASH ...
será que alguem ai poded me postar um xml que já foi testado no TissNet 3.5 ... Por favor ...
Obrigado !!!
Anision
10/03/2007
<?xml version=´1.0´ encoding=´ISO-8859-1´?>
<ans:mensagemTISS xmlns:ans=´http://www.ans.gov.br/padroes/tiss/schemas´ xmlns:xsi=´http://www.w3.org/2001/XMLSchema-instance´ xsi:schemaLocation=´http://www.ans.gov.br/padroes/tiss/schemas tissV2_01_02.xsd´>
<ans:cabecalho>
<ans:identificacaoTransacao>
<ans:tipoTransacao>ENVIO_LOTE_GUIAS</ans:tipoTransacao>
<ans:sequencialTransacao>12345</ans:sequencialTransacao>
<ans:dataRegistroTransacao>2007-05-07</ans:dataRegistroTransacao>
<ans:horaRegistroTransacao>13:00:00</ans:horaRegistroTransacao>
</ans:identificacaoTransacao>
<ans:origem>
<ans:codigoPrestadorNaOperadora>
<ans:codigoPrestadorNaOperadora>12345678</ans:codigoPrestadorNaOperadora>
</ans:codigoPrestadorNaOperadora>
</ans:origem>
<ans:destino>
<ans:registroANS>11111</ans:registroANS>
</ans:destino>
<ans:versaoPadrao>2.01.02</ans:versaoPadrao>
</ans:cabecalho>
<ans:prestadorParaOperadora>
<ans:loteGuias>
<ans:numeroLote>12345</ans:numeroLote>
<ans:guias>
<ans:guiaRevisaoGlosa>
<ans:guiaResumoInternacaoReapresentacao>
<ans:identificacaoGuiaInternacao>
<ans:registroANS>123456</ans:registroANS>
<ans:dataEmissaoGuia>2007-04-20</ans:dataEmissaoGuia>
<ans:numeroGuiaPrestador>123456877854</ans:numeroGuiaPrestador>
<ans:numeroGuiaOperadora>1245774257874</ans:numeroGuiaOperadora>
</ans:identificacaoGuiaInternacao>
<ans:numeroGuiaSolicitacao>45477554578754</ans:numeroGuiaSolicitacao>
<ans:dadosBeneficiario>
<ans:numeroCarteira>12345678901</ans:numeroCarteira>
<ans:nomeBeneficiario>Helena dos Prazeres Silva</ans:nomeBeneficiario>
<ans:nomePlano>Uniplan</ans:nomePlano>
<ans:validadeCarteira>2007-12-15</ans:validadeCarteira>
<ans:identificadorBeneficiario>UjBsR09EbGhjZ0dTQUxNQUFBUUNBRU1tQ1p0dU1GUXhEUzhi</ans:identificadorBeneficiario>
</ans:dadosBeneficiario>
<ans:identificacaoExecutante>
<ans:identificacao>
<ans:codigoPrestadorNaOperadora>134875644</ans:codigoPrestadorNaOperadora>
</ans:identificacao>
<ans:nomeContratado>Antonio Mendonça da Cruz</ans:nomeContratado>
</ans:identificacaoExecutante>
<ans:dadosAutorizacao>
<ans:dataAutorizacao>2007-04-20</ans:dataAutorizacao>
<ans:senhaAutorizacao>123456</ans:senhaAutorizacao>
<ans:validadeSenha>2007-05-05</ans:validadeSenha>
</ans:dadosAutorizacao>
<ans:caraterInternacao>E</ans:caraterInternacao>
<ans:acomodacao>1</ans:acomodacao>
<ans:dataHoraInternacao>2007-04-20T14:00:00</ans:dataHoraInternacao>
<ans:dataHoraSaidaInternacao>2007-04-22T10:00:00</ans:dataHoraSaidaInternacao>
<ans:tipoInternacao>1</ans:tipoInternacao>
<ans:regimeInternacao>1</ans:regimeInternacao>
<ans:diagnosticosSaidaInternacao>
<ans:diagnosticoPrincipal>
<ans:nomeTabela>CID-10</ans:nomeTabela>
<ans:codigoDiagnostico>12557</ans:codigoDiagnostico>
</ans:diagnosticoPrincipal>
<ans:indicadorAcidente>1</ans:indicadorAcidente>
<ans:motivoSaidaInternacao>10</ans:motivoSaidaInternacao>
</ans:diagnosticosSaidaInternacao>
<ans:ct_OPMUtilizadas>
<ans:OPMUtilizada>
<ans:OPM>
<ans:OPM>
<ans:codigo>12357457</ans:codigo>
<ans:tipoTabela>01</ans:tipoTabela>
</ans:OPM>
<ans:quantidade>1.00</ans:quantidade>
<ans:valorTotal>3000.00</ans:valorTotal>
<ans:justificativa>String de justificativa da OPM Utilizada</ans:justificativa>
</ans:OPM>
</ans:OPMUtilizada>
</ans:ct_OPMUtilizadas>
<ans:tipoFaturamento>T</ans:tipoFaturamento>
</ans:guiaResumoInternacaoReapresentacao>
</ans:guiaRevisaoGlosa>
</ans:guias>
</ans:loteGuias>
</ans:prestadorParaOperadora>
<ans:epilogo>
<ans:hash>ea48de4a9ea731b9fcdf44c2001f77ae</ans:hash>
</ans:epilogo>
</ans:mensagemTISS>
Anision
10/03/2007
Esse XML aí valida no Tiss3.5
Favimar
10/03/2007
Rodrigomy
10/03/2007
Tente validar no TISSNet mesmo, pq para validar no site vc precisa descomentar a parte que tem a URL dos outros arquivos necessários. Por exemplo, no tissV2_01_02.xsd, logo no inicio temos uma parte comentada que indica a URL dos outros 3 arquivos do schema, e o que está valendo (nao está comentado) vem a seguir, pegando os arquivos que estão na mesma pasta deste...
E pessoal, alguém aí já conseguiu colocar a linha de comando do TISSNet das operadoras (aquele comando em java) para rodar na inicialização de uma máquina Linux? Eu tentei, mas está dando problema, a conexão é até estabelecida, porém o TISSNet do prestador não recebe a resposta de transmissão e o arquivo não é enviado...
Edvilson.chaves
10/03/2007
Estou fiquei incumbido de desenvolver o programa que enviará as informações aqui do hospital onde trabalho para a UNIMED. O problema que no início parecia fácil somente montar um arquivo XML e enviar mas [size=18:bd77325542]começou a se tornar um problema para mim no momento em que olhei as informações e os arquivos que estão disponíveis no site da ANS.[/size:bd77325542] Esse padrão chamado de XML/Schema é novo pra mim. Vi isso no curso mas trabalhando com DATAPACKET´s mas, Schemas nunca vi falar. [b:bd77325542][u:bd77325542]Sei que tenho muito pouco tempo para desenvolver algo.[/u:bd77325542][/b:bd77325542] Gostaria de uma ajuda dos amigos dizendo por onde devo começar a gerar os arquivos.
[b:bd77325542]1. Devo usar o programa que traduz o arquivo XML gerado pelo ClientDataSet?[/b:bd77325542]
Thiago Silva
10/03/2007
AGORA, ALGUEM PODE ME AJUDAR NO SEGUINTE.
EU GOSTARIA DE FAZER UM TESTE AQUI, COLOCANDO UM MICRO COMO PRESTADOR E UM COMO OPERADORA SÓ PRA EU SABER SE CONSIGO FAAZER O ENVIO ...
O TISSNET COMO PRESTADOR NÃO TEM SEGREDO, EU JA TENHO AQUI,
AGORA ALGUEM AI SABERIA ME DIZER COMO EU CONFIGURO ELE PRA SER MINHA ´OPERADORA´, PRA EU FAZER TESTES.??
OBRIGADO ...
Ls_cmaia
10/03/2007
trabalho em uma empresa q desenvolve sistema para hospitais e tenho q implementar o TISS no Programa.
Outra pessoa estava fazendo isso mas ela saiu e eu peguei pra fazer e não sei quase nada.Tenho so a Guia TISS Pronta ate agora, Eu quero saber onde eu encontro os modelos do XML das GUIAS. pois não sei como começar a Guia SP/SADT.
Por favor eu estou desesperado não sei se vou terminar e por isso pesso as suas ajudas.Alguem pode me ajudar?
Briciosm
10/03/2007
Veja como fiz abaixo:
- <ans:internacaoObstetrica>
<ans:emGestacao>false</ans:emGestacao>
<ans:aborto>false</ans:aborto>
<ans:transtornoMaternoRelGravidez>false</ans:transtornoMaternoRelGravidez>
<ans:complicacaoPeriodoPuerperio>false</ans:complicacaoPeriodoPuerperio>
<ans:atendimentoRNSalaParto>false</ans:atendimentoRNSalaParto>
<ans:complicacaoNeonatal>false</ans:complicacaoNeonatal>
<ans:baixoPeso>false</ans:baixoPeso>
<ans:partoCesareo>false</ans:partoCesareo>
<ans:partoNormal>true</ans:partoNormal>
<ans:emGestacao>false</ans:emGestacao>
<ans:aborto>false</ans:aborto>
<ans:transtornoMaternoRelGravidez>true</ans:transtornoMaternoRelGravidez>
<ans:complicacaoPeriodoPuerperio>false</ans:complicacaoPeriodoPuerperio>
<ans:atendimentoRNSalaParto>false</ans:atendimentoRNSalaParto>
<ans:complicacaoNeonatal>false</ans:complicacaoNeonatal>
<ans:baixoPeso>false</ans:baixoPeso>
<ans:partoCesareo>false</ans:partoCesareo>
<ans:partoNormal>false</ans:partoNormal>
</ans:internacaoObstetrica>
Está dando o seguinte erro:
** Aguardando comandos...
** T:\TISSNet-3.2\transmissao_xml\CASSI-BANCO BRASIL.xml: T:\TISSNet-3.2\transmissao_xml\CASSI-BANCO BRASIL.xml: Mensagem inválida: XML do arquivo não obedece ao esquema do TISS: cvc-complex-type.2.4.a: Invalid content was found starting with element ´ans:emGestacao´. One of ´{´http://www.ans.gov.br/padroes/tiss/schemas´:declaracoesNascidosVivos, ´http://www.ans.gov.br/padroes/tiss/schemas´:qtdNascidosVivosTermo, ´http://www.ans.gov.br/padroes/tiss/schemas´:qtdNascidosMortos, ´http://www.ans.gov.br/padroes/tiss/schemas´:qtdVivosPrematuros, ´http://www.ans.gov.br/padroes/tiss/schemas´:obitoMulher}´ is expected.
O que está errado?
Vanessa_b
10/03/2007
Sremulador
10/03/2007
Amigo, com o cds vc dificilmente vai gerar da forma do esquema, pois ele contem sub-teins e para fazer isso vc deverá utilizar vários cds interligados entre si...
Sremulador
10/03/2007
a versão do seu tissnet, pois esta na versão 3.5
:shock:
Sremulador
10/03/2007
[url]http://www.ans.gov.br/padroes/tiss/schemas[/url]
Sremulador
10/03/2007
Ls_cmaia
10/03/2007
mas como eu diferencio as guias la eu não entendi como funciona??
Mplantz
10/03/2007
Será que alguém teria algum exemplo de retorno da operadora de autorizacao de procedimento?
estou precisando testar a minha guia de solicitação de internação, com o recebimento da operadora.
Obrigada.
Vanessa_b
10/03/2007
está faltando isso:
<ans:declaracoesNascidosVivos></ans:declaracoesNascidosVivos>
<ans:qtdNascidosVivosTermo>
<ans:numeroDN></ans:numeroDN>
</ans:qtdNascidosVivosTermo>
<ans:qtdNascidosMortos></ans:qtdNascidosMortos>
<ans:qtdVivosPrematuros></ans:qtdVivosPrematuros>
<ans:obitoMulher></ans:obitoMulher>
</ans:internacaoObstetrica>
Sremulador
10/03/2007
Amigo, basta você ver as guias no meio físico, pois a transação eletrônica segue praticamente o mesmo padrão..., me envie um e-mail que passo o organograma das guias...
Motta
10/03/2007
[b:edadf790c4]A propósito sobe quem está implementando o TISS, em que pé estão as coisas no seu projeto ?[/b:edadf790c4]
Edvilson.chaves
10/03/2007
Como todos já devem saber converti o schema e apareceram inúmeras duplicações. Gostaria de saber de vcs o que fizeram, se renomearam as duplicações ou se excluíram-nas.
Acho que isso é interesse de todos. Valeu.
Sremulador
10/03/2007
[url]www.hsamz.com.br/nsw/guias.rar[/url]
Nos/ proximos dias estarei disponibilizando o GeraTISS, o qual eu gerei o lote.
t+
Sremulador
10/03/2007
Amigo, as duplicações devem excluidas e os sigulares devem ser reaproveitados nas demais ações...
Ls_cmaia
10/03/2007
Por favor Manda para cmaia@lucassolutions.com.br e se vc tiver msn me add
´cemm_88@hotmail.com´.
vlw
Fiorot
10/03/2007
Estou com um problema basico no TIssNet, quando arasto o arquivo xml (pode ser o de teste) e depois clico em transmitir ele dá um erro que não consegue localizar o arquivo.
(No such file or directory)n: /tmp/TISSNet-3.2/mensagens_teste/exemplo.xml
Quando arasto ele também da a seguinte mensagem:
+++ /tmp/TISSNet-3.2/mensagens_teste/exemplo.xml
TISS Schema: file:./schemas/tissV2_01_01.xsd
Error: Document is invalid: no grammar found.
Error: Document root element ´ans:mensagemTISS´, must match DOCTYPE root ´null´.
Hash calculado sobre: SOLIC_STATUS_PROTOCOLO252006-01-1906:30:001234567891234562.01.0112345612312312345JOSE DOS ANZOIS CARAPUCA2006-01-19100200300400400200300400
Informado: d8dafa80f33cbb29da0e2db4ef0f4050 / Calculado: d8dafa80f33cbb29da0e2db4ef0f4050
O que pode ser ?
Estou usando java 1.5.10
Obrigado
Sremulador
10/03/2007
amigo, meu msn esta no meu perfil, quanto ao arquivo, esta no link exibido, descompactado ele tem quase 10mb
Denilsonsc
10/03/2007
Sou de SC e possuimos um sistema para clinicas e consultórios médicos vendido aqui na região, e estamos atrasados em relação ao desenvolvimento do TISS, gostaria se possível de tirar algumas dúvidas e conseguir por aqui elucidar algumas questões...
o Nosso sistema é em Delphi com banco de dados Paradox, até o momento fizemos uma parte para impressões das guias, sendo que já estamos encontrando diversos problemas, pois cada convênio está fazendo de um tamanho diferente, mas isso é outro assunto...
Eu estava estudando o XML, e a minha principal duvida no momento é que estou vendo alguns exemplos dos arquivos XML a serem enviados, mas todos estão com os dados propriamente ditos no arquivo XML...
A nossa idéia seria o seguinte, após imprimir as requisições o sistema irá gerar um arquivo em paradox com todos os dados necessários, e através desse arquivo tranportariamos os dados pro XML no formato recomendado, alguém sabe me dizer como seria na pratica essa leitura dos dados do paradox no XML?
Fico grato se alguém puder me ajudar...espero que tenham entendido a pergunta...
tenho o MSN se alguém quiser entrar em contato mais facilmente:
md_denilson@hotmail.com
Sremulador
10/03/2007
Você pode utilizar sim desta maneira, eu aqui estou reunindo todas as informações nescessarias somente no momento da geração do XML
Fluiz
10/03/2007
Gio.zandonai
10/03/2007
Alguém teria um exemplo de SOLICITACAO DE PROCEDIMENTO, no caso um SP SADT? Estou desenvolvendo para uma Operadora.
Att.
Giovani
Silvio.23
10/03/2007
Outra questão é o erro ao importar os web client (WSDL). Alguém já fez os web client?
Tentei contato com a ANS, mas não dão resposta, já tenho quase tudo pronto, só falta resolver os problemas que falei...
Alias uso o Delphi 7 e estou usando o XMLDocument (XML Data Binding) para gerar a interface apartir dos arquivos XSD. Utilizei o XML Mapper para gerar um arquivo XML, pois importando diretamente do XSD a quantidade de erro é demais e em alguns é difícil saber o que fazer como nós duplicados, mas com campos diferentes e métodos diferentes...
Demarcomt
10/03/2007
Li que vc fez com o XMLDoc, com ele da para gerar dentro do padrao TISS usando os modelos XSD?
Uso o Delphi 7, tem como fazer com ele.
Teria como me mandar um exemplo em delphi?
Se alguem puder ajudar agradeço.
Marcelo Demarco
marcelo.demarco@terra.com.br
Denilsonsc
10/03/2007
Você pode utilizar sim desta maneira, eu aqui estou reunindo todas as informações nescessarias somente no momento da geração do XML[/quote:f14b85a8b8]
problema que os convênios daqui não estão seguindo o padrão de impressão, os campos são os mesmos mas os tamanhos diferentes entende, então pra impressão sai tudo fora se fizer um modelo unico...
Mas voltando ali ao XML, queria saber na pratica como transportar os dados do arquivo paradox já com os dados necessários para o XML, essa minha principal duvida no momento...não sei se é feito isso via Delphi, ou na própria geração do XML eu consigo puxar os campos do arquivo e ler os dados...
Mplantz
10/03/2007
<?xml version=´1.0´ encoding=´ISO-8859-1´ ?>
- <ans:mensagemTISS xmlns:ans=´http://www.ans.gov.br/padroes/tiss/schemas´ xmlns:xsi=´http://www.w3.org/2001/XMLSchema-instance´ xsi:schemaLocation=´http://www.ans.gov.br/padroes/tiss/schemas http://www.ans.gov.br/padroes/tiss/schemas/tissV2_01_02.xsd´>
- <ans:cabecalho>
- <ans:identificacaoTransacao>
<ans:tipoTransacao>SOLICITACAO_PROCEDIMENTOS</ans:tipoTransacao>
<ans:sequencialTransacao>4</ans:sequencialTransacao>
<ans:dataRegistroTransacao>2007-05-22</ans:dataRegistroTransacao>
<ans:horaRegistroTransacao>15:13:36</ans:horaRegistroTransacao>
</ans:identificacaoTransacao>
- <ans:origem>
- <ans:codigoPrestadorNaOperadora>
<ans:CNPJ>60922168001077</ans:CNPJ>
</ans:codigoPrestadorNaOperadora>
</ans:origem>
- <ans:destino>
<ans:registroANS>363774</ans:registroANS>
</ans:destino>
<ans:versaoPadrao>2.01.02</ans:versaoPadrao>
</ans:cabecalho>
- <ans:prestadorParaOperadora>
- <ans:solicitacaoProcedimento>
- <ans:guiaSolicitacaoSADT>
- <ans:identificacaoGuiaSolicitacaoSADTSP>
<ans:registroANS>363774</ans:registroANS>
<ans:dataEmissaoGuia>2007-05-22</ans:dataEmissaoGuia>
<ans:numeroGuiaPrestador>7456</ans:numeroGuiaPrestador>
</ans:identificacaoGuiaSolicitacaoSADTSP>
- <ans:dadosBeneficiario>
<ans:numeroCarteira>0372966000226029</ans:numeroCarteira>
<ans:nomeBeneficiario>MARCIA PLANTZ</ans:nomeBeneficiario>
<ans:nomePlano>NACIONAL (ENFERMARIA)</ans:nomePlano>
<ans:validadeCarteira>2007-12-31</ans:validadeCarteira>
<ans:numeroCNS />
</ans:dadosBeneficiario>
- <ans:dadosSolicitante>
- <ans:contratado>
- <ans:identificacao>
<ans:CNPJ>60922168001077</ans:CNPJ>
</ans:identificacao>
<ans:nomeContratado>- HOSPITAL </ans:nomeContratado>
- <ans:enderecoContratado>
<ans:tipoLogradouro>081</ans:tipoLogradouro>
<ans:logradouro>Rua Judith Mauricio de Paula</ans:logradouro>
<ans:numero>40</ans:numero>
<ans:complemento />
<ans:codigoIBGEMunicipio>0330580</ans:codigoIBGEMunicipio>
<ans:municipio>Teresopolis</ans:municipio>
<ans:codigoUF>RJ</ans:codigoUF>
<ans:cep>25964220</ans:cep>
</ans:enderecoContratado>
<ans:numeroCNES>2292386</ans:numeroCNES>
</ans:contratado>
- <ans:profissional>
<ans:nomeProfissional>MARLENE AGUIAR</ans:nomeProfissional>
- <ans:conselhoProfissional>
<ans:siglaConselho>CRM</ans:siglaConselho>
<ans:numeroConselho>52622532</ans:numeroConselho>
<ans:ufConselho>RJ</ans:ufConselho>
</ans:conselhoProfissional>
</ans:profissional>
</ans:dadosSolicitante>
<ans:caraterSolicitacao>E</ans:caraterSolicitacao>
<ans:dataHoraSolicitacao>2007-05-22T00:00:00</ans:dataHoraSolicitacao>
- <ans:procedimentosSolicitados>
- <ans:procedimentoSolicitado>
<ans:quantidadeSolicitada>00100</ans:quantidadeSolicitada>
- <ans:procedimento>
<ans:codigo>33010021</ans:codigo>
<ans:tipoTabela>15</ans:tipoTabela>
<ans:descricao>ABDOMEM TOTAL</ans:descricao>
</ans:procedimento>
</ans:procedimentoSolicitado>
- <ans:procedimentoSolicitado>
<ans:quantidadeSolicitada>00000</ans:quantidadeSolicitada>
- <ans:procedimento>
<ans:codigo>28011562</ans:codigo>
<ans:tipoTabela>15</ans:tipoTabela>
<ans:descricao>17-ALFA-OH-PROGESTERONA (HIDROXIPROGESTERONA) (RIE)</ans:descricao>
</ans:procedimento>
</ans:procedimentoSolicitado>
</ans:procedimentosSolicitados>
</ans:guiaSolicitacaoSADT>
</ans:solicitacaoProcedimento>
</ans:prestadorParaOperadora>
- <ans:epilogo>
<ans:hash>2db3727008bf5969247934fd0adc9a21</ans:hash>
</ans:epilogo>
</ans:mensagemTISS>
Denilsonsc
10/03/2007
<ans:numeroCarteira>0372966000226029</ans:numeroCarteira>
<ans:nomeBeneficiario>MARCIA PLANTZ</ans:nomeBeneficiario>
<ans:nomePlano>NACIONAL (ENFERMARIA)</ans:nomePlano>
<ans:validadeCarteira>2007-12-31</ans:validadeCarteira>
Eu tenho esses dados nos campos do arquivo paradox, como jogo esses dados dentro desse XML?
alguém pode me dar uma luz sobre isso...ficarei muito grato
Vanessa_b
10/03/2007
o q seria esse nodo?
Gio.zandonai
10/03/2007
<?xml version=´1.0´ encoding=´ISO-8859-1´ ?>
- <ans:mensagemTISS xmlns:ans=´http://www.ans.gov.br/padroes/tiss/schemas´ xmlns:xsi=´http://www.w3.org/2001/XMLSchema-instance´ xsi:schemaLocation=´http://www.ans.gov.br/padroes/tiss/schemas http://www.ans.gov.br/padroes/tiss/schemas/tissV2_01_02.xsd´>
- <ans:cabecalho>
- <ans:identificacaoTransacao>
[/quote:a44b2b9968]
BAH, muito obrigado pelo exemplo de Solicitacao, se eu puder ajudar em alguma coisa é só dar um grito..
Att.
Giovani
Jrg
10/03/2007
Estou precisando de um exemplo do XML da Guia de Solicitação de Internação. Alguém poderia enviar? Agradeço antecipadamente.
Abraços.
Rodrigomy
10/03/2007
xmlns:ans=´http://www.ans.gov.br/padroes/tiss/schemas´
Invariavelmente ele vem acompanhado de outro:
xmlns=´http://www.w3.org/2001/XMLSchema´
Porém já vi uns q, por não terem o prefixo ´ans:´ nas tags (sim, sem o ´ans:´, isso mesmo), se usam do seguinte:
xmlns=´http://www.ans.gov.br/padroes/tiss/schemas´
Compreensível, eles tem q dizer onde está o namespace.
E também às vezes aparecem outros dois:
xmlns:xsi=´http://www.w3.org/2001/XMLSchema-instance´
e
xsi:schemaLocation=´http://www.ans.gov.br/padroes/tiss/schemas http://www.ans.gov.br/padroes/tiss/schemas/tissV2_01_02.xsd´
Só por curiosidade, pq percebi q nao é fundamental para a validação...
Mplantz
10/03/2007
<?xml version=´1.0´ encoding=´ISO-8859-1´ ?>
- <ans:mensagemTISS xmlns:ans=´http://www.ans.gov.br/padroes/tiss/schemas´ xmlns:xsi=´http://www.w3.org/2001/XMLSchema-instance´ xsi:schemaLocation=´http://www.ans.gov.br/padroes/tiss/schemas http://www.ans.gov.br/padroes/tiss/schemas/tissV2_01_02.xsd´>
- <ans:cabecalho>
- <ans:identificacaoTransacao>
[/quote:75190887e3]
BAH, muito obrigado pelo exemplo de Solicitacao, se eu puder ajudar em alguma coisa é só dar um grito..
Att.
Giovani[/quote:75190887e3]
Oi Giovani já que perguntou, estou precisando muito de um exemplo de resposta da operadora para a minha guia de solicitação de internação. Eu acredito que seja <autorizacaoServico>
se alguém puder ajudar eu agradeço muito.
Márcia
Mplantz
10/03/2007
<?xml version=´1.0´ encoding=´ISO-8859-1´ ?>
- <ans:mensagemTISS xmlns:ans=´http://www.ans.gov.br/padroes/tiss/schemas´ xmlns:xsi=´http://www.w3.org/2001/XMLSchema-instance´ xsi:schemaLocation=´http://www.ans.gov.br/padroes/tiss/schemas http://www.ans.gov.br/padroes/tiss/schemas/tissV2_01_02.xsd´>
- <ans:cabecalho>
- <ans:identificacaoTransacao>
<ans:tipoTransacao>SOLICITACAO_PROCEDIMENTOS</ans:tipoTransacao>
<ans:sequencialTransacao>5</ans:sequencialTransacao>
<ans:dataRegistroTransacao>2007-05-22</ans:dataRegistroTransacao>
<ans:horaRegistroTransacao>15:17:15</ans:horaRegistroTransacao>
</ans:identificacaoTransacao>
- <ans:origem>
- <ans:codigoPrestadorNaOperadora>
<ans:CNPJ>60922168001077</ans:CNPJ>
</ans:codigoPrestadorNaOperadora>
</ans:origem>
- <ans:destino>
<ans:registroANS>363774</ans:registroANS>
</ans:destino>
<ans:versaoPadrao>2.01.02</ans:versaoPadrao>
</ans:cabecalho>
- <ans:prestadorParaOperadora>
- <ans:solicitacaoProcedimento>
- <ans:guiaSolicInternacao>
- <ans:identificacaoGuiaSolicitacaoInternacao>
<ans:registroANS>363774</ans:registroANS>
<ans:dataEmissaoGuia>2007-05-21</ans:dataEmissaoGuia>
<ans:numeroGuiaPrestador>8569</ans:numeroGuiaPrestador>
</ans:identificacaoGuiaSolicitacaoInternacao>
- <ans:dadosBeneficiario>
<ans:numeroCarteira>878878745</ans:numeroCarteira>
<ans:nomeBeneficiario>MARCIA PLANTZ</ans:nomeBeneficiario>
<ans:nomePlano>EST. RIO (APARTAMENTO)</ans:nomePlano>
<ans:validadeCarteira>2007-12-31</ans:validadeCarteira>
<ans:numeroCNS />
</ans:dadosBeneficiario>
- <ans:dadosSolicitante>
- <ans:contratado>
- <ans:identificacao>
<ans:CNPJ>60922168001077</ans:CNPJ>
</ans:identificacao>
<ans:nomeContratado>HOSPITAL</ans:nomeContratado>
- <ans:enderecoContratado>
<ans:tipoLogradouro>081</ans:tipoLogradouro>
<ans:logradouro>Rua Judith Mauricio de Paula</ans:logradouro>
<ans:numero>40</ans:numero>
<ans:complemento />
<ans:codigoIBGEMunicipio>0330580</ans:codigoIBGEMunicipio>
<ans:municipio>Teresopolis</ans:municipio>
<ans:codigoUF>RJ</ans:codigoUF>
<ans:cep>25964220</ans:cep>
</ans:enderecoContratado>
<ans:numeroCNES>2292386</ans:numeroCNES>
</ans:contratado>
- <ans:profissional>
<ans:nomeProfissional>MARCELO PENTEADO</ans:nomeProfissional>
- <ans:conselhoProfissional>
<ans:siglaConselho>CRM</ans:siglaConselho>
<ans:numeroConselho>2121212121</ans:numeroConselho>
<ans:ufConselho>RJ</ans:ufConselho>
</ans:conselhoProfissional>
</ans:profissional>
</ans:dadosSolicitante>
<ans:caraterInternacao>E</ans:caraterInternacao>
<ans:tipoInternacao>1</ans:tipoInternacao>
<ans:indicacaoClinica>fsfdf</ans:indicacaoClinica>
<ans:regimeInternacao>1</ans:regimeInternacao>
- <ans:hipotesesDiagnosticas>
- <ans:CIDPrincipal>
- <ans:CID>
<ans:nomeTabela>CID-10</ans:nomeTabela>
<ans:codigoDiagnostico>G07</ans:codigoDiagnostico>
<ans:descricaoDiagnostico>Abscess granul intracran intraspin doenc COP</ans:descricaoDiagnostico>
</ans:CID>
<ans:tipoDoenca>A</ans:tipoDoenca>
- <ans:tempoReferidoEvolucaoDoenca>
<ans:valor>5</ans:valor>
<ans:unidadeTempo>M</ans:unidadeTempo>
</ans:tempoReferidoEvolucaoDoenca>
<ans:indicadorAcidente>2</ans:indicadorAcidente>
</ans:CIDPrincipal>
</ans:hipotesesDiagnosticas>
- <ans:procedimentosExamesSolicitados>
- <ans:procedimentoSolicitado>
<ans:quantidadeSolicitada>00100</ans:quantidadeSolicitada>
- <ans:procedimento>
<ans:codigo>32080034</ans:codigo>
<ans:tipoTabela>15</ans:tipoTabela>
<ans:descricao>ABDOMEN AGUDO</ans:descricao>
</ans:procedimento>
</ans:procedimentoSolicitado>
</ans:procedimentosExamesSolicitados>
<ans:diasSolicitados>1</ans:diasSolicitados>
<ans:dataProvavelAdmisHosp>1899-12-30</ans:dataProvavelAdmisHosp>
</ans:guiaSolicInternacao>
</ans:solicitacaoProcedimento>
</ans:prestadorParaOperadora>
- <ans:epilogo>
<ans:hash>e36ec968bcf379889ad07f74c320a107</ans:hash>
</ans:epilogo>
</ans:mensagemTISS>
Marcio Oliveira
10/03/2007
Alguém teria um modelo de XML da Guia de Honorário Individual e Guia de Outras Despesas?
Eu tenho validado a Guia de Consulta, Guia de SADT e estou trabalhando na Guia de Solicitação de Internação e Resumo de Internação, se alguém precisar de alguma dessas guias, entre em contato que eu mando.
Grato
mdo_job@hotmail.com
Rubem
10/03/2007
1 - XML faturamento
============
Ao final do mes, quando eu fizer o fechamentos do meu faturamento, eu devo gerar apenas um xml com todas as guias ?? (Guias de Conulta,Guia SADT, Guia Solicitação Internação e resumo de internação) ou tenho que mandar um xml com cada guia separado ??
2 -HASH
====
Eu devo gerar um hash passando toda o xmls ou só dos dados.
3 - TISSNET
======
Que bicho é esse ?? Como instala-lo e configura-lo ??
Bem senhores a principio sao essas duvidas, tenho muito mais, mais não quero encher vocês nesse momento,
grato Rubem
Fhsantiago76
10/03/2007
so dos dados, em java é assim:
public String md5(String xml){
String codHash = "";
MessageDigest md = null;
try {
md = MessageDigest.getInstance("MD5");
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
BigInteger hash = new BigInteger(1, md.digest(xml.getBytes()));
codHash = hash.toString(16);
System.out.println("codHash = " + codHash);
return codHash;
}
em delphi eu nao sei nao.
nao precisa instalar nao, vc baixa e descompacta...
precisa da JVM 1.5 ou superior instalada
ai vc entra na pasta onde vc descompactou pelo prompt do dos e digita
java -jar TissNet3.5.jar ai ele ja roda direto
Rubem
10/03/2007
No faturamento, eu devo criar um unico xml com todas as guias ou gerar um xml para cada guia ???
E quais guias eu mando no faturamento ?? guia consulta, SADT e Resumo de Internação e a solicitação de intenação vai junto no faturamento ??
Tou voando.....brigadao...
Rubem
Jrg
10/03/2007
Aqui onde eu trabalho, a gente vai ter que gerar muitas guias TISS e os nossos clientes estão querendo, além do XML, tudo em papel também, pelo menos por enquanto.
[b:fec9d2c1f3]A minha dúvida é a seguinte:
Teria alguma solução pronta que lesse o XML e e gerasse a guia em papel correspondente, com os campo já preenchidos para mandar pra impressora?[/b:fec9d2c1f3]
Agradeço antecipamente se alguém puder informar algo sobre isso!
Abraço a todos!
Sremulador
10/03/2007
Amigo, quanto a solução pronta tem, o GeraTISS, faz este procedimento
Mplantz
10/03/2007
Amigo, quanto a solução pronta tem, o GeraTISS, faz este procedimento[/quote:06ac4a6e97]
SRemulador onde eu poderia pegar o GeraTISS?
obrigada.
Jrg
10/03/2007
Amigo, quanto a solução pronta tem, o GeraTISS, faz este procedimento[/quote:b4ac1c705d]
SRemulador onde eu poderia pegar o GeraTISS?
obrigada.[/quote:b4ac1c705d]
Obrigado pela dica sremulador! Mas, por favor, como conseguir o GeraTISS ?
Edvilson.chaves
10/03/2007
Outra informação que tenho é que amanhã dia 25/05 eles querem mandar uma nova versão do arquivo. É verídica essa informação?
Agradeço.[/size:03f575a43f]
Newba
10/03/2007
Não creio que isso seja veridco, pois a ANS librou a revisão dos schemas no dia 14/05/2007.
Rubem
10/03/2007
valeu...
Julianomv
10/03/2007
Como funciona isso no TissNet, ele gera?
Quem gera o protocolo? quem envia ou quem recebe?
Como devo proceder sobre os protocolos?
Agora sobre TissNet:
o TissNet possui 2 modos de operar o Ouvinte e o aplicativo para Envio, se eu entendi direito o Ouvinte ficará do lado da Operadora certo? se isso for certo como a operadora envia de volta as solicitações dos prestadores (por ex. solic. autorização, status protocolo, demonstrativo pg? (dai surgiu minha duvida sobre protocolo tbem.
Grato...
p.s. Desculpa a ignorancia no assunto, caso tenha escrito muitas besteiras...
Agradecio....
Julioqualy
10/03/2007
para quem ainda tem dúvidas de como são os fluxos de mensagens vai
o link divulgado pela ans em 22/05
http://www.ans.gov.br/portal/site/_hotsite_tiss/zip/TISS¬20-¬20mensagens¬20eletronicas.pps
Att,
Júlio
Sremulador
10/03/2007
mande pro meu mail que disponibilizo em um ftp:
sremulador@bol.com.br
Fulano
10/03/2007
Prezado, como só agora cadastrei-me no forum, nem sei se a resposta às suas dúvidas chega a tempo. De qualquer jeito, aí vai.
Sou consultor e desenvolvi a solução de geração do XML no padrão TISS para uma empresa. A melhor forma que achei, dado o tempo que tinha, foi utilizar o XML DATA BINDING do DELPHI, o qual gera todos os complex types e coleções necessárias para leitura e criação dos XMLs. Ao contrário do que alguns tem falado no fórum, o DELPHI NÃO gera o modelos duplicados e errados. Na verdade, o que está errado é o XSD fornecido pela ANS, o qual não fora criado com nomes únicos nos elementos. Mas, o que quer dizer isso?
Exemplo:
- Na guia de cancelamento, temos um elemento guia o qual armazena uma coleção de dadosGuia do tipo ct_cabecalhoGuia.
- No complex type ct_dadosLote, também temos um elemento de nome ´GUIA´ que, no entanto, é do tipo ct_dadosGuia.
Este exemplo mostra um dos problemas apresentados quando o DATA BINDING cria as interfaces e classes. Ele cria duas interfaces com o nome GUIA. Quando o código é compilado, o compilador informa que o elemento está redeclarado.
Problemas como esses podem ser resolvidos de 2 formas. Uma é varrer o XSD alterando o nome dos elementos duplicados afim de que o XML DATA BINDING não duplique as interfaces e classes. A outra é, depois de importar o XSD, ir corrigindo os elementos na mão.
Apesar de ter seguido a segunda alternativa, acredito que a primeira seja mais rápida uma vez que não são muitos os elementos duplicados.
Espero ter ajudado.
Boa sorte
Fulano
10/03/2007
http://pt.wikipedia.org/wiki/Nodo
http://pt.wikipedia.org/wiki/Nodo_terminal_da_¬C3¬A1rvore
Trata-se da estrutura de um dado.
Ex:
<root>
<cliente>
<nome>Fulano de tal</nome>
<telefone>5555-4444</telefone>
</cliente>
</root>
Neste exemplo, o nome e o telefone formam a estrutura do dado cliente.
Aerreira
10/03/2007
Bom, particularmente não estou fazendo o cálculo do hash pelo firebird, pois achei a função em Delphi bem simples de usar. Mas vejamos, você instalou a biblioteca RFUNC no seu firebird, certo? O seu banco com a rfunc instalada terá 168 UDFs nele, começando pela função ABS e terminando na função Z. Veja instruções sobre o uso das funções MD5 em http://rfunc.sourceforge.net/
Com a RFUNC instalada, execute um SQL mais ou menos assim para obter um resultado com a função MD5SUM:
select nome, endereco, cidade, estado, md5sum(nome || endereco || cidade || estado ) as HASH from pacientes
Coloque os campos necessários para formar o hash nos parâmetros da função. Não estou fazendo isso, mas acho que isso resolve.
[]s
Adriano
Evandro.net
10/03/2007
Eu fiz um validador on-line para facilitar minha vida...
Quem quiser validar seu XML e verificar se está de acordo com o padrão TISS, segue o link:
:arrow: [url]http://evandro.net/tiss/[/url]
Sremulador
10/03/2007
Prezado, como só agora cadastrei-me no forum, nem sei se a resposta às suas dúvidas chega a tempo. De qualquer jeito, aí vai.
Sou consultor e desenvolvi a solução de geração do XML no padrão TISS para uma empresa. A melhor forma que achei, dado o tempo que tinha, foi utilizar o XML DATA BINDING do DELPHI, o qual gera todos os complex types e coleções necessárias para leitura e criação dos XMLs. Ao contrário do que alguns tem falado no fórum, o DELPHI NÃO gera o modelos duplicados e errados. Na verdade, o que está errado é o XSD fornecido pela ANS, o qual não fora criado com nomes únicos nos elementos. Mas, o que quer dizer isso?
Exemplo:
- Na guia de cancelamento, temos um elemento guia o qual armazena uma coleção de dadosGuia do tipo ct_cabecalhoGuia.
- No complex type ct_dadosLote, também temos um elemento de nome ´GUIA´ que, no entanto, é do tipo ct_dadosGuia.
Este exemplo mostra um dos problemas apresentados quando o DATA BINDING cria as interfaces e classes. Ele cria duas interfaces com o nome GUIA. Quando o código é compilado, o compilador informa que o elemento está redeclarado.
Problemas como esses podem ser resolvidos de 2 formas. Uma é varrer o XSD alterando o nome dos elementos duplicados afim de que o XML DATA BINDING não duplique as interfaces e classes. A outra é, depois de importar o XSD, ir corrigindo os elementos na mão.
Apesar de ter seguido a segunda alternativa, acredito que a primeira seja mais rápida uma vez que não são muitos os elementos duplicados.
Espero ter ajudado.
Boa sorte[/quote:99a0698dcb]
ou você pode simplismente dividir por tipos...
Briciosm
10/03/2007
Por exemplo:Na conta vocês tem cadastrado os proceidmentos, taxas, materiais. Enfim, todos os gastos.
Para internado temos que gerar uma guia de resumo. Como estão fazendo esta guia? Vocês criaram uma tabela para isso?
E para os procedimentos, OPM, medicamentos, ... vocês estão transferindo para novas tabelas ligadas a guia ou simplesmente buscam informações que estão na conta?
Poderiam detalhar?
Obrigado!
Wand-1
10/03/2007
Pode postar aqui no forum.
Valeu...
Jrg
10/03/2007
Por favor, alguém poderia me dizer se é possível colocar mais de um lote num mesmo arquivo xml de Resumo de Internação?
Exemplo:
-<loteGuias>
<numeroLote>1</numeroLote>
+<guias></guias>
<numeroLote>2</numeroLote>
+<guias></guias>
</loteGuias>
O meu xml com 1 lote dá tudo certo, mas com 2 lotes nessa estrutura acima tá dando o seguinte erro no TissNet:
Mensagem inválida: XML do arquivo não obedece ao esquema do TISS: cvc-complex-type.2.4.d: Invalid content was found starting with element ´ans:numeroLote´. No child element is expected at this point
Desde já agradeço qualquer ajuda!
Abraço a todos.
Wand-1
10/03/2007
pelo pouco q sei no envio de lote de guias,
vc pode enviar so um lote com varias guias desde q seja do mesmo tipo.
Lote de guia validado pelo TissNet 3.6 :
<?xml version=´1.0´ ?>
- <ans:mensagemTISS xmlns=´http://www.w3.org/2001/XMLSchema´ xmlns:ans=´http://www.ans.gov.br/padroes/tiss/schemas´>
- <ans:cabecalho>
- <ans:identificacaoTransacao>
<ans:tipoTransacao>ENVIO_LOTE_GUIAS</ans:tipoTransacao>
<ans:sequencialTransacao>59</ans:sequencialTransacao>
<ans:dataRegistroTransacao>2007-06-13</ans:dataRegistroTransacao>
<ans:horaRegistroTransacao>17:34:58</ans:horaRegistroTransacao>
</ans:identificacaoTransacao>
- <ans:origem>
+ <ans:codigoPrestadorNaOperadora>
<ans:CNPJ>24905234000100</ans:CNPJ>
</ans:codigoPrestadorNaOperadora>
</ans:origem>
- <ans:destino>
<ans:registroANS>123456</ans:registroANS>
</ans:destino>
<ans:versaoPadrao>2.01.01</ans:versaoPadrao>
</ans:cabecalho>
- <ans:prestadorParaOperadora>
- <ans:loteGuias>
<ans:numeroLote>34054</ans:numeroLote>
- <ans:guias>
- <ans:guiaFaturamento>
- <ans:guiaConsulta>
- <ans:identificacaoGuia>
<ans:registroANS>123456</ans:registroANS>
<ans:dataEmissaoGuia>2007-06-07</ans:dataEmissaoGuia>
<ans:numeroGuiaPrestador>22222</ans:numeroGuiaPrestador>
</ans:identificacaoGuia>
- <ans:beneficiario>
<ans:numeroCarteira>123</ans:numeroCarteira>
<ans:nomeBeneficiario>WAND1</ans:nomeBeneficiario>
<ans:nomePlano>ASEFE</ans:nomePlano>
<ans:validadeCarteira>2007-06-07</ans:validadeCarteira>
</ans:beneficiario>
- <ans:dadosContratado>
- <ans:identificacao>
<ans:CNPJ>24905234000100</ans:CNPJ>
</ans:identificacao>
<ans:nomeContratado>EMPRESA</ans:nomeContratado>
</ans:dadosContratado>
- <ans:profissionalExecutante>
<ans:nomeProfissional> MERCADANTE NETO</ans:nomeProfissional>
- <ans:conselhoProfissional>
<ans:siglaConselho>CRM</ans:siglaConselho>
<ans:numeroConselho>7358</ans:numeroConselho>
<ans:ufConselho>DF</ans:ufConselho>
</ans:conselhoProfissional>
<ans:cbos>01280</ans:cbos>
</ans:profissionalExecutante>
- <ans:dadosAtendimento>
<ans:dataAtendimento>2007-06-07</ans:dataAtendimento>
- <ans:procedimento>
<ans:codigoTabela>02</ans:codigoTabela>
<ans:codigoProcedimento>00010014</ans:codigoProcedimento>
</ans:procedimento>
<ans:tipoConsulta>1</ans:tipoConsulta>
<ans:tipoSaida>3</ans:tipoSaida>
</ans:dadosAtendimento>
</ans:guiaConsulta>
- <ans:guiaConsulta>
- <ans:identificacaoGuia>
<ans:registroANS>123456</ans:registroANS>
<ans:dataEmissaoGuia>2007-06-07</ans:dataEmissaoGuia>
<ans:numeroGuiaPrestador>22222</ans:numeroGuiaPrestador>
</ans:identificacaoGuia>
- <ans:beneficiario>
<ans:numeroCarteira>123</ans:numeroCarteira>
<ans:nomeBeneficiario>WAND1</ans:nomeBeneficiario>
<ans:nomePlano>ASEFE</ans:nomePlano>
<ans:validadeCarteira>2007-06-07</ans:validadeCarteira>
</ans:beneficiario>
- <ans:dadosContratado>
- <ans:identificacao>
<ans:CNPJ>24905234000100</ans:CNPJ>
</ans:identificacao>
<ans:nomeContratado>EMPRESA</ans:nomeContratado>
</ans:dadosContratado>
- <ans:profissionalExecutante>
<ans:nomeProfissional>MERCADANTE NETO</ans:nomeProfissional>
- <ans:conselhoProfissional>
<ans:siglaConselho>CRM</ans:siglaConselho>
<ans:numeroConselho>7358</ans:numeroConselho>
<ans:ufConselho>DF</ans:ufConselho>
</ans:conselhoProfissional>
<ans:cbos>01280</ans:cbos>
</ans:profissionalExecutante>
- <ans:dadosAtendimento>
<ans:dataAtendimento>2007-06-07</ans:dataAtendimento>
- <ans:procedimento>
<ans:codigoTabela>02</ans:codigoTabela>
<ans:codigoProcedimento>00010014</ans:codigoProcedimento>
</ans:procedimento>
<ans:tipoConsulta>1</ans:tipoConsulta>
<ans:tipoSaida>3</ans:tipoSaida>
</ans:dadosAtendimento>
</ans:guiaConsulta>
</ans:guiaFaturamento>
</ans:guias>
</ans:loteGuias>
</ans:prestadorParaOperadora>
- <ans:epilogo>
<ans:hash>b345846fe8b008f9fe23faaa40ef9945</ans:hash>
</ans:epilogo>
</ans:mensagemTISS>
´talvez o hash nao valide pois mudei o nome do Contratado para postar aqui, e so fazer um novo calculo´
Sremulador
10/03/2007
Pode postar aqui no forum.
Valeu...[/quote:3660be4754]
[url]www.hsamz.com.br/nsw/tiss/sadh.rar[/url]
Jrg
10/03/2007
Vou tratar isso no meu aplicativo para não permitir mais de 1 lote.
Abraços e obrigado.
Guima
10/03/2007
Sem mais,
Guilherme
msn guilherme_monteiro@hotmail.com
Jrg
10/03/2007
Se eu fosse vc faria o seguinte:
1) Acesse o site www.ans.gov.br, clique no link do TISS, leia as instruções, normas e baixe o TissNet mais recente (acho que é o 3.6)
2) Leia esse forum ou o http://forum.datasus.gov.br/ Nesses foruns tem muito exemplo pra ser seguido e soluções.
Assim vc vai especificar melhor as suas dúvidas e será mais fácil receber ajuda
Abraços.
Nelson8000
10/03/2007
Existe a possibilidade de Enviar os arquivos XMLS (Guia SADT, Consulta e Honorário) nas duas versões do TISS?
O q acontece..
Tinhamos desenvolvido a versão 1 do Tiss.. que faz referência ao arquivo
tissV2_01_01.xsd
conforme cabeçalho abaixo.
Baixei a versão 3.16 do TISS Net, mas ele não envia, retorna o seguinte erro:
Reparem que essa modificação do procedimentoEquipe por procedimentos só surgiu na versão tissV2_01_02.xsd...
O arquivo XML é o seguinte:
Alguém sabe pq isso está ocorrendo?
Se realmente há a possibilidade de enviar o Arquivo no formato antigo.
Obrigado.
Lissinho
10/03/2007
Prezado, como só agora cadastrei-me no forum, nem sei se a resposta às suas dúvidas chega a tempo. De qualquer jeito, aí vai.
Sou consultor e desenvolvi a solução de geração do XML no padrão TISS para uma empresa. A melhor forma que achei, dado o tempo que tinha, foi utilizar o XML DATA BINDING do DELPHI, o qual gera todos os complex types e coleções necessárias para leitura e criação dos XMLs. Ao contrário do que alguns tem falado no fórum, o DELPHI NÃO gera o modelos duplicados e errados. Na verdade, o que está errado é o XSD fornecido pela ANS, o qual não fora criado com nomes únicos nos elementos. Mas, o que quer dizer isso?
Exemplo:
- Na guia de cancelamento, temos um elemento guia o qual armazena uma coleção de dadosGuia do tipo ct_cabecalhoGuia.
- No complex type ct_dadosLote, também temos um elemento de nome ´GUIA´ que, no entanto, é do tipo ct_dadosGuia.
Este exemplo mostra um dos problemas apresentados quando o DATA BINDING cria as interfaces e classes. Ele cria duas interfaces com o nome GUIA. Quando o código é compilado, o compilador informa que o elemento está redeclarado.
Problemas como esses podem ser resolvidos de 2 formas. Uma é varrer o XSD alterando o nome dos elementos duplicados afim de que o XML DATA BINDING não duplique as interfaces e classes. A outra é, depois de importar o XSD, ir corrigindo os elementos na mão.
Apesar de ter seguido a segunda alternativa, acredito que a primeira seja mais rápida uma vez que não são muitos os elementos duplicados.
Espero ter ajudado.
Boa sorte[/quote:121c1c1242]
Oi, Fulano !!!
Estou apanhando muito em relação a estes elementos duplicados. Como foi q vc fez ? Renomeiou todos os repetidos ? Como vc soube quais elementos são de quais elementos ???
Será q vc não poderia me enviar os arquivos XSD corrigidos ou então os arquivos do Delphi já mapeados (se não for pedir muito) ?!?!
Estou usando o Delphi 2005, mas acho q uma vez mapeado o arquivo .pas serve para todas as versões do Delphi.
Se alguém deste fórum também puder me ajudar, ficarei muito grato !!!
Obrigado pela atenção !!!
Abraços a todos,
Ulysses Neto
lissinho@sysplan.com.br
Ls_cmaia
10/03/2007
(TYPE LOC MESSAGE
Well Formed 2, 1 Content is not allowed in prolog.)
oq esta errado, eu preciso de um xml de SADT q esta Sendo validado
no site: http://tools.decisionsoft.com/schemaValidate, alguem tem...
me ajudem estou morto se não fazer o xml da SADT Correto....
Zeduardo2000
10/03/2007
Prezado, como só agora cadastrei-me no forum, nem sei se a resposta às suas dúvidas chega a tempo. De qualquer jeito, aí vai.
Sou consultor e desenvolvi a solução de geração do XML no padrão TISS para uma empresa. A melhor forma que achei, dado o tempo que tinha, foi utilizar o XML DATA BINDING do DELPHI, o qual gera todos os complex types e coleções necessárias para leitura e criação dos XMLs. Ao contrário do que alguns tem falado no fórum, o DELPHI NÃO gera o modelos duplicados e errados. Na verdade, o que está errado é o XSD fornecido pela ANS, o qual não fora criado com nomes únicos nos elementos. Mas, o que quer dizer isso?
Exemplo:
- Na guia de cancelamento, temos um elemento guia o qual armazena uma coleção de dadosGuia do tipo ct_cabecalhoGuia.
- No complex type ct_dadosLote, também temos um elemento de nome ´GUIA´ que, no entanto, é do tipo ct_dadosGuia.
Este exemplo mostra um dos problemas apresentados quando o DATA BINDING cria as interfaces e classes. Ele cria duas interfaces com o nome GUIA. Quando o código é compilado, o compilador informa que o elemento está redeclarado.
Problemas como esses podem ser resolvidos de 2 formas. Uma é varrer o XSD alterando o nome dos elementos duplicados afim de que o XML DATA BINDING não duplique as interfaces e classes. A outra é, depois de importar o XSD, ir corrigindo os elementos na mão.
Apesar de ter seguido a segunda alternativa, acredito que a primeira seja mais rápida uma vez que não são muitos os elementos duplicados.
Espero ter ajudado.
Boa sorte[/quote:cd3063fe2c]
Oi, Fulano !!!
Estou apanhando muito em relação a estes elementos duplicados. Como foi q vc fez ? Renomeiou todos os repetidos ? Como vc soube quais elementos são de quais elementos ???
Será q vc não poderia me enviar os arquivos XSD corrigidos ou então os arquivos do Delphi já mapeados (se não for pedir muito) ?!?!
Estou usando o Delphi 2005, mas acho q uma vez mapeado o arquivo .pas serve para todas as versões do Delphi.
Se alguém deste fórum também puder me ajudar, ficarei muito grato !!!
Obrigado pela atenção !!!
Abraços a todos,
Ulysses Neto
lissinho@sysplan.com.br[/quote:cd3063fe2c]
Da uma olhada no nosso grupo, que voce vai ter a Unit do DataBinding prontinha.
http://groups.google.com.br/group/comunidade-delphi-tiss/?msg=new&lnk=gcis&hl=pt-BR
Jrg
10/03/2007
Estou tendo um problema de validação da declaração do óbito na guia de Resumo de Internação.
O schema diz que o tamanho máximo é 7 caracteres, mas aqui onde eu trabalho tivemos casos de declarações com 8 caracteres, sendo que essa numeração é fornecida pela Secretária da Saúde e é pre-impressa no formulário deles.
Alguém teve esse problema?
Agradeço antecipadamente qualquer ajuda.
Segue fragmento do schema abaixo:
<complexType name=´ct_obitoInternacao´>
<sequence>
<element name=´CID´ type=´ans:ct_diagnostico´/>
<element name=´numeroDeclaracao´>
<simpleType>
<restriction base=´string´>
<maxLength value=´7´/>
</restriction>
</simpleType>
</element>
</sequence>
</complexType>
Abraços a todos.
Briciosm
10/03/2007
Só que este procedimento não é cobrado, apenas os materiais. Como uma cirurgia.
Na guia de sp/sadt temos que colocar o procedimentocom valor zerado?
Aguardo ajuda!
Newba
10/03/2007
Devo rejeitar arquivos que não possuem o nome proposto pela ANS?
Devo rejeitar arquivos que possuem mais de um tipo de guia em um arquivo (lote) ?
Os elementos que não possuirem valor.. podem estar no arquivo XML (elementos opcionais) ?
Paulosilvaaps
10/03/2007
Componentes TISS
Craido por Fabiano de Oliveira Prado
Versão atual: 0.4
Atenciosamente,
Paulo Silva
Marcio Oliveira
10/03/2007
não sei porque, começou a dar erro no Tissnet quando tento validar algum XML. Dá o seguinte erro :
** C:\ANS_TISSV2\XML\XGSPRA.XML: C:\ANS_TISSV2\XML\XGSPRA.XML: This parser does not support specification ´null´ version ´null´
Alguém sabe o que pode ser isso?
grato
Dudubaiao
10/03/2007
Vcs conhecem esta comunidade?
http://groups.google.com.br/group/comunidade-delphi-tiss?hl=pt-BR
Lá temos fontes disponíveis para cada etapa do TISS.
Também está surgindo um esforço no desenvolvimento de alguns componentes open source que estão hospedados em:
http://code.google.com/p/componentestiss/
Evandro.net
10/03/2007
Olá,
Sobre o problema de [url=http://evandro.net/tiss/tiss-hash-md5-nao-confere.html]hash md5 não confere[/url], o próprio [url=http://evandro.net/tiss/]TissNet[/url] já mostra a string/texto que está sendo levado em consideração para o cálculo do hash.
Para isso, execute o [url=http://evandro.net/tiss/]TissNet[/url] com o seguinte comando: [b:c221b5e284]java -jar TissNet*.jar[/b:c221b5e284]
Se quiser que os dados sejam gravados em um arquivo texto, para posterior comparação entre o texto utilizado pelo seu sistema e o texto utilizado pelo [url=http://evandro.net/tiss/]TissNet[/url], o comando é: java -jar TissNet*.jar > debug.txt
Aqui tem um exemplo de como [url=http://evandro.net/tiss/tiss-hash-md5-nao-confere.html]corrigir o hash[/url] na mão, caso esteja com algum problema:
http://evandro.net/tiss/tiss-hash-md5-nao-confere.html :idea:
Jobsongf
10/03/2007
Deixe-me apresentar.
Sou responsável pela inplantação do TISS no hospital onde trabalho.
Tenho muitas dúvidas e tbm muitas respostas.
É um prazer tc com vcs....
Ricardosb2000
10/03/2007
Luisoliveira
10/03/2007
Amigo, basta você ver as guias no meio físico, pois a transação eletrônica segue praticamente o mesmo padrão..., me envie um e-mail que passo o organograma das guias...[/quote:6966d3a71a]
Olá amigo preciso de ajuda para o desenvolvimento do TISS alguem poderia me ajudar?
estou começando do zero.
aguardo breve retorno
obrigado
Cbs051
10/03/2007
Eu faço consultoria no tiss, tenho diversas soluções para colocar em seus sistemas, tanto para windows quando para linux.
Sou especializado em TISS e também membro Avançado no Fórum DataSus sobre o TISS
Consultoria ao desenvolvimento de rotinas para o TISS
Rotinas de validação do XML do TISS
Rotinas de geração do Hash para o XML do TISS
Geração de arquivos XML para qualquer mensagem TISS
Geração de XML TISS a partir de arquivos textos.
Geração de rotinas para se adaptar ao seu sistema.
Soluções para evitar a redigitação dos dados da faturista/recepcionista, no seu sistema de uso diário e também no sistema que gera o arquivo Tiss.
Entrem em contato:
Cleverton
cbs051@yahoo.com.br
Edmilton Sobrinho
10/03/2007
vc conseguiu gerar os arquivos xml? como vc fez?
grato
Trabalho com php, você poderia me enviar o script que realiza o cálculo correto do hash md5 ,já tentei de várias formas e nada
Edmilton Sobrinho
10/03/2007
Tente aqui: [url]http://tools.decisionsoft.com/schemaValidate/[/url]
Trabalho com PHP, pelo que vi você consegiu gerar o hash correto e validar con sucesso, poderia me enviar o script do cálculo para mim.Agradeço a gentileza. Edmilton
Edmilton Sobrinho
10/03/2007
O código que vc enviou para puxar o conteúdo das tags funcionou perfeitamente! Assim como aquele código que calcula o hash. Muito obrigado!
Já estou gerando todo o xml no meu programa, inclusive com o hash, e agora só esbarra na parte do host para envio no TISSNet. Ou seja, está tudo 100¬!
Se precisarem, posto o que vcs precisarem ;)
Trabalho com PHP, será que poderia enviar o código para mim.
Anderson Possamai
10/03/2007
tenho um validador do site plataforma, onde passando um xml com a tag <ans:identificacaoTransacao> ele aprova, mas se eu mudar para <ans:identificacaoMensagem> ou qualquer outra coisa não aceita, a questão é: onde que eu encontro que a tag deve ser essa? pois no layout que tenho a descrição é 'Identificação da mensagem'...
esse é so um dos 100 problemas que tenho, qualquer informacao agradeco.