01. DADOS GERAIS

Produto:

TOTVS Saúde Planos

Linha de Produto:

Datasul

Segmento:

Saúde

Módulo:HAT - Atendimento ao Público
Função:

PTU Online

País:Brasil
Requisito:DSAUGPSAUTOR-11228

02. SITUAÇÃO/REQUISITO

Com o objetivo de dar continuidade à estratégia de evolução tecnológica dos produtos da linha Datasul, é necessário disponibilizar um novo serviço para o PTU Online, eliminando a dependência do Foundation Saúde.

O objetivo deste documento é apresentar os detalhes do novo serviço para o PTU Online no Tomcat, criado para a substituir o atualmente em uso no JBoss.

03. SOLUÇÃO

Foi realizada a implementação das funcionalidades destacadas abaixo, dando origem ao novo serviço do PTU Online.

A versão mínima para utilização do serviço é a 12.1.2307, com liberação no patch de 15/01/2024 para as versões 12.1.2307-9 e 12.1.2311-3.

É possível utilizar o serviço de forma híbrida com o Foundation Saúde, realizando a migração parcialmente, conforme detalhado na aba Procedimento para Configuração.

1. Acesse o menu Importação Menu Datasul (men706aa) e importe o arquivo men_hat.d.

2. Acesse o menu Programa Produto Datasul (bas_prog_dtsul) e altere o registro "hat.ptuOnlineParam" para liberar as permissões de acesso ao menu "PTU Online" da Central de Integrações Saúde Planos (hgp.integrationsParams).

Com o novo serviço, o PTU Online deixa de ser executado em uma infraestrutura separada (JBoss) e passa a ser um serviço do próprio ERP, rodando no mesmo servidor (Tomcat) do sistema.


A aplicação htzfoundation.ear passa a ser totvs-hgp-ptuonline.war, contendo somente os Webservices do PTU Online.


Para que a comunicação com o Progress funcione corretamente, é necessário que as variáveis TOTVS_HOST, TOTVS_USERNAME e TOTVS_PASSWORD estejam configuradas no servidor, podendo ser via parâmetros de inicialização do Tomcat (como serviço do Windows/Linux ou arquivo de configuração) ou variáveis de ambiente no servidor em que o Tomcat é inicializado.

Esse padrão é utilizado por outras aplicações e é possível que já estejam disponíveis em seu ambiente, e nesse caso, nenhuma ação é necessária.

Na página Configurar servidor de aplicação TOMCAT é possível verificar um exemplo de configuração.

Na Central de Integrações Saúde Planos (hgp.integrationsParams) foi criado o novo menu PTU Online, contendo as parametrizações do serviço:


Este menu contém as configurações que anteriormente eram realizadas no arquivo foundation-exchange.properties do JBoss.

Com o novo serviço, essas configurações passam a ser realizadas diretamente no sistema.


Comunicação

  • A URL do serviço deve ser o servidor + porta onde a aplicação está rodando:
    • Ex: http://servidor1:8080
    • Apesar de ser um serviço do próprio ERP, este parâmetro é necessário para que aplicações externas consigam acessar. Ex: Autorizador Web realizando a comunicação de uma guia de intercâmbio.
  • Nesse momento de funcionamento híbrido, a versão do PTU Online continua sendo definida na Manutenção Parâmetros Globais Sistema (hpr1410p/hcg.globalParameters). Quando ocorrer a descontinuação definitiva do módulo Foundation Saúde, o parâmetro será migrado para essa tela.


Endpoints

  • Quando o campo relacionado ao endpoint estiver preenchido, o sistema realizará a comunicação através do novo serviço, via Tomcat.
  • Quando o campo relacionado ao endpoint estiver vazio, o sistema realizará a comunicação através do Foundation, via JBoss. 


 

As URL's a serem informadas são as fornecidas pela Unimed do Brasil para comunicação com o WSD referente à cada mensagem.

As mensagens de Pedido de Autorização (0600), Ordem de Serviço (0806) são dependentes pois quando ocorre o recebimento de uma ordem de serviço (0806), o sistema encaminha o pedido de autorização (0600) referente à aquela O.S., portanto devem ser migradas juntas.

As demais não possuem dependência e podem ser migradas individualmente conforme evolução dos testes.


Exemplo:
Editando e preenchendo o campo do endpoint da mensagem de Status da Transação (0360)

Ao realizar uma consulta de Status da Transação através da Consulta Status da Transação (hat0110p/hat.transactionStatusInquiry), a comunicação será realizada através do novo serviço e não mais pelo Foundation.


Assim como as URL's da Unimed do Brasil devem ser preenchidas nessa tela, é necessário atualizar os endpoints do serviço na Unimed do Brasil para que o WSD comunique com cada mensagem, sendo elas:

É necessário substituir o <servidor> e <porta> conforme seu ambiente.


Log Auxiliar

  • Habilita/desabilita a geração de arquivos auxiliares  contendo os dados de entrada e saída das comunicações realizadas no PTU Online, úteis para ambientes de homologação e validação de informações.
  • Os arquivos serão gerados seguindo a nomenclatura: "Operação" + "Código da transação" + "Descrição da transação" + "Data" + "Hora".json
    • Operação poderá ser: Envio, Resposta, Recebimento ou Resposta de Recebimento
    • Exemplo de arquivos gerados:

               

  • Quando habiitado é necessário informar um diretório válido para exportação, normalmente um diretório de rede que o PASOE consiga acessar.
  • Quando desabilitado nenhum arquivo será exportado.

         

Essa funcionalidade é similar à pasta "xmlwslog" que existia no servidor do Foundation, com a diferença que os arquivos serão gerados em formato JSON e não mais XML. Para verificar os XMLs que trafegaram de fato pelo WSD da Unimed do Brasil, pode ser utilizada a consulta de fases da transação pela Interface Única.

O processo de certificação digital segue o padrão de conectores https no Tomcat e é similar à configuração anteriormente existente no JBoss. Na página SSL/TLS Configuration How-To é possível verificar a documentação da Apache a respeito desse processo.

É necessário habilitar o conector https no arquivo server.xml do servidor, referenciando a um keystoreFile contendo o certificado digital disponibilizado pela Unimed do Brasil. Também é necessário importar esse certificado para o Java utilizado na inicialização do Tomcat. Dessa forma será possível enviar e receber requisições para o WSD de intercâmbio.

Na página Configuração de HTTPS para o Datasul for THF é possível verificar mais detalhes sobre essa configuração.

O novo serviço utiliza o conceito de Broker Escalável, onde é possível direcionar as chamadas ao Progress para um broker específico, isolando o back-end de outras aplicações, como o ERP por exemplo.

Toda comunicação encaminhada da aplicação totvs-hgp-ptuonline.war para o Progress enviará na requisição a chave "x-totvs-server-alias" como "totvs-saude-planos-ptuonline", sendo necessário que o cliente inclua através dos Parâmetros Foundation (btb962aa) um novo registro contendo esse alias.


Exemplo de configuração do Broker Escalável para o PTU Online:
No programa BTB962AA (Parâmetros Foundation), criar um novo registro contendo o alias "totvs-saude-planos-ptuonline": 


Esse processo não é obrigatório, sendo necessário somente nos casos em que o cliente deseje isolar a parte Progress do PTU Online em um broker separado. Nesse caso deve ser criada uma nova instância do PASOE, referenciando-a através do campo "Servidor Aplicação". Para maiores detalhes sobre a criação da instância no PASOE, ver a documentação: Criando uma instância PASOE através do OpenEdge Explorer

Caso não exista o registro com o alias "totvs-saude-planos-ptuonline", as chamadas serão direcionadas ao broker padrão, identificado através do alias "*".


Na página Broker Escalável - Exemplo de como fazer uso do aplicativo e alias para chamadas REST é possível verificar maiores detalhes sobre essa configuração.

Para os clientes que utilizam programas de CPC no processo do PTU Online, deverão atentar-se para as orientações abaixo:

Os programas cpc-api-recebe-ptu91.p e cpc-atconstrans.p foram substituídos pelo cpc-bosau-recebe-ptu-online.p.

Para funcionamento correto das rotinas no processo, é necessário criar o novo programa e migrar a lógica existente para ele.

Foundation: cpc/cpc-api-recebe-ptu91.p                Tomcat: cpc/cpc-bosau-recebe-ptu-online.p

                    cpc/cpc-api-recebe-ptu91.i                               cpc/cpc-bosau-recebe-ptu-online.i

                    cpc/cpc-atconstrans.p

                    cpc/cpc-atconstrans.i

  • A nova nomenclatura não contém o número da versão do PTU, não sendo mais necessário criar um novo programa a cada atualização
  • Os nomes dos pontos de chamada foram mantidos os mesmos. Ex: "ORDEM-SERVICO", "ALTERA-PREST"
  • O novo programa deve conter somente 2 parâmetros: a tabela de entrada e a de saída:

         

  • Para migração da lógica da CPC, deve ser considerada a nova nomenclatura das temp-tables do programa (todos os campos anteriormente existentes foram mantidos):

         


Não houve alteração no processo de utilização das funcionalidades que envolvem o PTU Online. Todas as regras de negócio e operações em tela foram mantidas.

Exemplo: Ao solicitar uma guia de intercâmbio pelo AT0110Z, o processo de inclusão/comunicação percebido pelo usuário será o mesmo, com a diferença que o sistema estará direcionando a chamada para a Unimed do Brasil através do novo serviço e não mais pelo Foundation.

03. ASSUNTOS RELACIONADOS