Até hoje ainda existem dificuldades no entendimento do padrão TISS, é absolutamente normal, pois ainda estamos(prestadores, operadoras, ANS, desenvolvedores) em fase de aperfeiçoamento, porém, dúvidas antigas ainda persistem. É o caso do cálculo do hash de um arquivo XML.
Para tentar facilitar o trabalho de muitos "sofredores" assim como eu, implementei uma pequena mudança no aplicativo TissNet em sua versão 5.0.
Esta ferramenta desenvolvida em Java por Francisco Piragibe tem sido útil à comunidade de desenvolvedores por facilitar o entendimento do padrão TISS. É disponibilizada gratuitamente no site da ANS.
A ideia é bem simples, consiste em mudar a exceção tissHashException() para tissSchemaException() do método setArquivoXML() da classe MensagemTiss para poder visualizar o hash. Em sua versão atual, tal recurso não existe o que complica a vida de quem está começando a trabalhar com a TISS. O resultado deverá ser como na figura abaixo:
Para tentar facilitar o trabalho de muitos "sofredores" assim como eu, implementei uma pequena mudança no aplicativo TissNet em sua versão 5.0.
Esta ferramenta desenvolvida em Java por Francisco Piragibe tem sido útil à comunidade de desenvolvedores por facilitar o entendimento do padrão TISS. É disponibilizada gratuitamente no site da ANS.
A ideia é bem simples, consiste em mudar a exceção tissHashException() para tissSchemaException() do método setArquivoXML() da classe MensagemTiss para poder visualizar o hash. Em sua versão atual, tal recurso não existe o que complica a vida de quem está começando a trabalhar com a TISS. O resultado deverá ser como na figura abaixo:
public void setArquivoXml (String arquivoXml)
throws IOException,
ParserConfigurationException,
TissHashException,
TissSchemaException,
TissNodoException,
URISyntaxException
{
String oldArquivoXml = this.arquivoXml;
this.arquivoXml = arquivoXml;
AgenteDomTiss o_ad = null;
try {
o_ad = AgenteDomTiss.getInstance();
this.documentoMensagem = o_ad.carregaArquivo( this.arquivoXml );
if ( ! this.isHashOk() )
//throw new TissHashException(); <-- Trocar TissHashException por TissSchemaException
throw new TissSchemaException( "Hash inválido! - \n Hash calculado => " + this.getHashCalculado() );
propertySupport.firePropertyChange ("arquivoXml", oldArquivoXml, arquivoXml);
}
Dessa forma, fica mais fácil verificar se o arquivo XML foi bem montado. Claro que existem outras formas que dão o mesmo resultado, então aproveito a oportunidade para os que implementaram algum novo recurso nessa ferramenta que disponibilizassem e assim todos possam enfim avançar no desenvolvimento do padrão TISS.
Nenhum comentário:
Postar um comentário
Todo comentário é bem-vindo, seja crítica ou elogio. O importante é sua manifestação. Só peço que se identifique para que posteriormente se for o caso eu entrar em contato.