Histórico da Página
CONTEÚDO
- Visão Geral
- Detalhamento
- Tela Integrações
- Integrações Disponíveis
- Outras Ações / Consultar Pedidos
- Outras Ações / Comunicar Pedidos
- Outras Ações / Gerar Pedidos Em Massa
- Outras Ações / Gerar Pedidos Pelo STAMP
- Outras Ações / Status dos Pedidos HealthMap
- Tela Pedidos HealthMap
da Integração - Schedules
Classe para Gravar os Classe para com o HealthMap - Tabelas utilizadasUtilizadas
- Dicionário de Dados
01. VISÃO GERAL Âncora VIS VIS
VIS | |
VIS |
A integração do produto TOTVS Saúde Planos Linha Protheus e o HealthMap tem como objetivo, enviar dados dos Beneficiários e Empresas do sistema para que possam ser tratados pelos serviços utilizados na plataforma HealthMapnos sistemas parceiros da TOTVS.
A comunicação entre as partes será realizada via comunicação API REST.
02. DETALHAMENTO Âncora DET DET
DET | |
DET |
O processo de integração funcionará no seguinte panorama, que serão detalhados abaixo:
- Nova A tabela de Integrações (BXXB7E), com o nome de "Integrações HealthMap", essa tabela será utilizado será utilizada para cadastrar todas integrações realizadas entre o SIGAPLS Protheus e o HealthMapsistema parceiro, até o momento as integrações que serão realizadas estão homologadas são:
- Cadastro de Beneficiários
- .
- Cadastro de Empresas.
- A tabela de Pedidos da Integração (BZZB7F), com o nome de "Pedidos HealthMap", essa tabela será utilizado será utilizada para guardar todos os pedidos a serem enviados, ou seja, dados dos beneficiário ou Empresas que serão enviados para o HealtMap.
- Classe para processar a tabela BXX (Integrações), por exemplo: Cadastro de Beneficiários, será feito uma verificação na tabela de Beneficiários (BA1) e tabelas segundarias (BA3,BJK etc) se houver alguma alteração em alguma dessas tabelas, o sistema irá gerar um novo pedido (Tabela BZZ) com a chave de busca daquele beneficiário (Se já houver algum pedido pendente de envio para o beneficiário, não será gravado um novo pedido).
- já enviados ou com problema de envio para cada integração cadastrada.
- A Carga dos pedidos da integração para envio, será feita manualmente através do botão Gerar Pedidos da Tela de Integrações ou via schedule (O processo de schedule será apresentado no tópico 5)
- A comunicação será feita manualmente através do botão Comunicar da Tela de Pedidos da Integração, ou poderá ser feita uma comunicação de todos os pedidos pendentes de envio de cada integração, pelo botão Comunicar Pedidos da tela de Integrações. A comunicação também será feita via schedule (O processo de schedule será apresentado no tópico 5)Classe para processar a tabela BZZ (Pedidos), será realizado a montagem do Json de envio através dos dados do pedido, buscando dados do beneficiário por exemplo, através da chave do Alias que consta no Pedido. Realizado a comunicação com a HealthMap, será gravado o status do pedido, se foi enviado com sucesso ou se houve erro no envio.
03. TELA INTEGRAÇÕES
...
Âncora INT INT
INT | |
INT |
Ao acessar a rotina de Integrações (PLMapIntegra), será mostrado o browser com todas as Integrações cadastrada, a tela de inclusão terá os seguintes campos a serem preenchidos:
Detalhes dos campos da Integração
Tela em MVC da tabela BXX (Integrações HeathMap), onde será possível incluir, alterar e excluir registro.
(Imagem ilustrativa, alterar para imagem do produto quando desenvolvido)
Detalhes dos campos da tabela BXX:
Campo | Descrição |
---|
Preenchimento | |
---|---|
Operadora | Código da Operadora do |
sistema. | Obrigatório. |
Codigo Integ. |
Código Incremental das Integrações. | Preenchimento automático, não editável . | |
Descrição | Descrição da Integração. | Obrigatório. |
Alias |
Prima. | Tabela do cadastro que será |
utilizada para envio. | Obrigatório, essa tabela será detalhado o preenchimento no próximo tópico. |
EndPoint | Endereço de comunicação da API |
do sistema parceiro. | Opcional no cadastro, mas necessário para comunicação dos pedidos. |
Ativo |
Definição se a |
Integração está ativa |
, essa informação é usada em alguns processos do sistema. |
Obrigatório. |
Máximo Envio |
Quantidade máxima de tentativas de comunicação para cancelar o pedido, caso não |
tenha sucesso. |
3.a. Outras Ações / Pedidos HealthMap
Através desse botão será visualizado os pedidos relacionados a integração posicionada na tabela BXX, a tela de pedidos será detalhada no próximo tópico.
04. TELA PEDIDOS HEALTHMAP
Tela em MVC da tabela BZZ (Pedidos), que será acessada através do botão outras ações da tela de Integrações HealthMap. O Browser dos pedidos será filtrado de acordo com a integração posicionada, ou seja, se for acessado via Integração do cadastro de beneficiários, só será exibido os pedidos relacionados ao cadastro de beneficiários na tabela BZZ e assim também para o cadastro de Empresas.
Aberto o Browser dos pedidos, no menu terá a opção de Alterar, Visualizar, Excluir, Cancelar e Comunicar (Inclusão será feita somente via Classe de Coleta de Dados):
- Comunicar Pedido: Será feito o envio manual do Pedido para a HealthMap.
- Cancelar Pedido: Será alterado o status do pedido para 3-Envio Cancelado.
- Alterar/Visualizar Pedido: A tela irá mostrar os dados do pedido, além dos dados da integração, somente para visualização. (Alteração da tabela BXX somente pela tela de Integrações HealthMap como mostrado no tópico 3)
(Imagem ilustrativa, alterar para imagem do produto quando desenvolvido)
Detalhes dos Campos da tabela BZZ:
...
Obrigatório. | ||
Classe Stamp | Classe do sistema que será utilizada para gravar os pedidos via schedule. | Opcional no cadastro, mas necessário para realizar a gravação dos pedidos via schedule, será detalhado o preenchimento no próximo tópico. |
Classe Comu. | Classe do sistema que será utilizada para montagem do json da integração, além da comunicação. | Opcional no cadastro, mas necessário para a comunicação dos pedidos, será detalhado o preenchimento no próximo tópico. |
Login Auten. | Login para autenticar no sistema parceiro da Integração. | Opcional no cadastro, mas necessário para comunicação dos pedidos. |
Senha Auten. | Senha para autenticar no sistema parceiro da Integração. | Opcional no cadastro, mas necessário para comunicação dos pedidos. |
EndPoint Aut | Endereço de comunicação da API de Autenticação do sistema parceiro. | Opcional no cadastro, mas necessário para comunicação dos pedidos. |
Bearer Aut. | Bearer utilizado pelo sistema para autenticação na API do sistema parceiro. | Não editável, o sistema utiliza esse campo para controle interno ao realizar a comunicação. |
Cookie Aut. | Cookie utilizado pelo sistema para autenticação na API do sistema parceiro. | Não editável, o sistema utiliza esse campo para controle interno ao realizar a comunicação. |
Tempo Expe. | Tempo de Expiração do Bearer e Cookie. | Não editável, o sistema utiliza esse campo para controle interno ao realizar a comunicação. |
Perg. Gerar | Pergunte (SX1) do sistema para gerar os pedidos | Opcional no cadastro, mas necessário no botão Gerar Pedidos, esse pergunte será para os filtros da geração, será detalhado o preenchimento no próximo tópico. |
a. INTEGRAÇÕES DISPONÍVEIS Âncora INTDIS INTDIS
INTDIS | |
INTDIS |
As Integrações disponíveis para cadastrar são:
Integração | Sistema Parceiro | Alias Prima. | Classe Stamp | Classe Comu. | Perg. Gerar | Documentação |
---|---|---|---|---|---|---|
Cadastro de Empresas | HealthMap | BG9 | PLMapStpEmpre | PLMapJsEmpre | PLRMPEMP | Integração do Cadastro de Empresas com a HealthMap |
Cadastro de Beneficiários | HealthMap | BA1 | PLMapStpBenef | PLMapJsBenef | PLRMPEMP | Integração do Cadastro de Beneficiários com a HealthMap |
Aviso de Internação | HealthMap | BE4 | PLMapStpInter | PLMapJsInter | PLRMPINTER | Integração do Aviso de Internações com a HealthMap |
Aviso de Pronto Socorro | HealthMap | BEA | PLMapStpSocor | PLMapJsSocor | PLRMPSOCOR | Integração do Aviso de Pronto Socorro com a HealthMap |
Pré-Cadastro de Beneficiário | Unimed | BA1 | PLPtuStpPCad | PLPtuJsPCad | PLPTUCADBE | Integração do Pré-Cadastro de Beneficiários com a Unimed |
Essas são informações a serem preenchidas no cadastro da Integração para cada sistema parceiro.
b. OUTRAS AÇÕES / CONSULTAR PEDIDOS Âncora INTCON INTCON
INTCON | |
INTCON |
Através dessa opção, será possível visualizar os pedidos da Integração posicionada, ao clicar será aberto um outro browser com os pedidos.
c. OUTRAS AÇÕES / COMUNICAR PEDIDOS Âncora INTCOM INTCOM
INTCOM | |
INTCOM |
Através dessa opção, será possível realizar a comunicação de todos os pedidos, com o status pendente de envio e erro de envio da Integração posicionada. Ao clicar, o sistema irá perguntar:
Finalizado o processo, será apresentado um resumo da comunicação:
d. OUTRAS AÇÕES / GERAR PEDIDOS EM MASSA Âncora INTGER INTGER
INTGER | |
INTGER |
Através dessa opção, será possível gerar uma carga de pedidos para a Integração posicionada.
Ao clicar, o sistema irá apresentar o pergunte (SX1) cadastrado na Integração.
Por exemplo, no pergunte dessa Integração, será informado o Grupo/Empresa De e o Grupo/Empresa Até:
Confirmando, será feita a geração dos pedidos em massa de acordo com os parâmetros informados.
Finalizado o processo, será apresentado um resumo da geração:
e. OUTRAS AÇÕES / GERAR PEDIDOS PELO STAMP Âncora INTGERSTP INTGERSTP
INTGERSTP | |
INTGERSTP |
Através dessa opção, será possível gerar uma carga de pedidos através do campo STAMP, esse botão é semelhante ao schedule PLMAPGRVSCHE.
Ao clicar, o sistema irá apresentar o pergunte PLRMPSTAMP (SX1), como mostra a imagem abaixo:
Deverá ser informado a Operadora e a Data do STAMP para o filtro.
Confirmando, será feita a geração dos pedidos de acordo com as alterações, exclusões ou inclusões nas tabelas utilizadas pela Integração naquele período informado.
Card documentos Informacao Se já houver algum pedido com o status pendente de envio ou erro de envio, o sistema não irá gerar um novo pedido, devido o pedido ainda está em aberto, entende-se como um pedido encerrado, aquele com o status Envio Realizado ou Envio Cancelado. Titulo Importante
Finalizado o processo, será apresentado um resumo da geração:
f. OUTRAS AÇÕES / STATUS DOS PEDIDOS Âncora INTSTATUS INTSTATUS
INTSTATUS | |
INTSTATUS |
Através dessa opção, é possível consultar o status dos pedidos da Integração posicionada:
Sendo:
Pendente de Envio: B7F_STATUS = 0
Envio Realizado: B7F_STATUS = 1
Erro de Envio: B7F_STATUS = 2
Envio Cancelado: B7F_STATUS = 3
Card documentos Informacao Essa opção deverá ser adicionada no menu do SIGAPLS > Atualizações > Integrações, com o programa: PLMapIntegra (Integrações) Titulo Importante
04. TELA PEDIDOS DA INTEGRAÇÃO Âncora PED PED
PED | |
PED |
Ao consultar os pedidos da Integração através do botão Consultar Pedidos da Rotina de Integração, será exibido um browser com todos os pedidos daquela Integração.
O pedido poderá ser incluído manualmente através do botão Incluir da rotina, pelo Gerar Pedidos da rotina de Integrações ou via schedule. Os dados que fazem parte do pedido são:
Detalhes dos campos do pedido:
Campo | Descrição | Preenchimento |
---|---|---|
Operadora | Código da Operadora do sistema. | Obrigatório, Preenchimento automático de acordo com a Integração posicionada. |
Codigo Integ. | Código Incremental das Integrações. | Obrigatório, Preenchimento automático de acordo com a Integração posicionada. |
Cod. Pedido | Código Incremental dos pedidos. | Obrigatório, Preenchimento automático. |
Alias Prima. | Tabela do cadastro que será utilizada para envio. | Obrigatório, Preenchimento automático de acordo com a Integração posicionada. |
Chave | Chave de busca do registro de acordo com o Alias Primário. | Obrigatório, deverá ser informado o índice de busca do Alias Primário, por exemplo: Cadastro de Beneficiários, BA1_CODINT+BA1_CODEMP+BA1_MATRIC+BA1_TIPREG+BA1_DIGITO |
Dt. Inclusão | Data de inclusão do pedido. | Obrigatório, Data em que o pedido foi incluído, o default é a data base do sistema. |
Dt. Comunica | Data de Comunicação com o sistema parceiro. | Não editável, data em que foi realizada a comunicação do pedido com o sistema parceiro. |
Status | Status do pedido. | Status do momento do pedido: 0 - Pendente de Envio, 1 - Envio Realizado, 2 - Erro de Envio, 3 - Envio Cancelado. |
Tent. Envio | Tentativas de Envio do pedido. | Tentativas em que o pedido foi realizado, caso atinja a quantidade máxima da Integração, sem sucesso, automaticamente o pedido será Cancelado. |
Json Envio | JSON enviado para o sistema parceiro. | Não editável, JSON que o Protheus enviou para o sistema parceiro da Integração. |
Json Receb. | JSON recebido do sistema parceiro. | Não editável, JSON em que o Protheus recebeu do sistema parceiro da Integração. |
Os dados da tela inferior, correspondem a Integração, somente para visualização. Para Altera-los deverá ser utilizada a rotina de Integrações.
a. COMUNICAR Âncora PEDCOM PEDCOM
PEDCOM | |
PEDCOM |
Através do botão Comunicar da rotina de pedidos, será feito o envio manual do pedido posicionado, essa opcional é somente para enviar um pedido, caso queria enviar todos os pedido, deverá ser utilizado o botão Comunicar Pedidos da tela de Integrações, como mostra o tópico 3.c.
Clicando, o sistema irá perguntar:
Confirmando, caso o sistema realize a comunicação com sucesso com a Integração, será apresentado a mensagem:
Validações para o Envio do Pedido
- A Integração do pedido deverá está ativa.
- Deverá ser informado o Endpoint da Integração.
- Deverá ser informada a classe de Comunicação na Integração.
- Pedido com o status 1 - Envio Realizado e 3 - Cancelado, não será feita a comunicação.
- Tentativas de envio maior que a quantidade máxima da Integração, não será feita a comunicação.
- Data de Inclusão do Pedido maior que a data do Sistema. Nessa situação é porque foi programado para o pedido ser enviado somente em determinado dia, Exemplo: Bloqueio futuro de Beneficiários.
Resultados da Comunicação
- Pedido enviado com sucesso, o status do pedido passará a ser 1 - Envio Realizado.
- Falha ao realizar a autenticação com a Integração, nesse caso deverá ser analisado o Endpoint, Login e senha da Autenticação se estão corretos.
- Falha no envio do pedido, o status do pedido passará a ser 2 - Erro de Envio, nesse caso deverá analisar o EndPoint da Integração e também o JSON de retorno.
05. SCHEDULE Âncora SCH SCH
SCH | |
SCH |
Além do processo manualmente para gravação do pedidos e comunicação, os mesmo poderão ser feito de forma automática via schedule.
a. GRAVAR PEDIDOS Âncora SCHGRV SCHGRV
SCHGRV | |
SCHGRV |
A gravação dos pedidos da Integração será feita pelo schedule PLMapGrvSche. Diferentemente do processo manual, onde é configurado os parâmetros para a geração, pelo schedule a busca é feito pelo campo STAMP de cada tabela, ou seja, será gravado somente os registros que sofreram alguma alteração de cadastro.
Em um primeiro momento para envio de uma carga de pedidos, o ideal é utilizar a opção Gerar Pedidos da tela de Integrações, o schedule irá manter os dados atualizados com o sistema parceiro, quando houver alguma alteração cadastral.
A configuração do schedule é feita pelo modulo Configurador (SIGACFG):
Rotina: PLMAPGRVSCHE
Parâmetros: Código da Operadora do sistema
O resultado do schedule, poderá ser acessado pelo log: /logpls/data/plmapgrvsche.log
Card documentos Informacao Como o sistema utiliza o campo STAMP das tabelas para buscar alterações, se o mesmo não estiver na base, será feita criação na primeira execução do schedule. Titulo Importante
b. COMUNICAR PEDIDOS Âncora SCHCOM SCHCOM
SCHCOM | |
SCHCOM |
A comunicação dos pedidos, assim como a gravação além de ser feita manualmente pela Rotina de Integração, poderá ser realizada pelo schedule PLMapComSche. O sistema irá comunicar todos pedidos com o status 0 - Pendente de Envio e 2 - Erro de Envio de todas as Integrações Ativas.
A configuração do schedule é feita pelo modulo Configurador (SIGACFG):
Rotina: PLMAPCOMSCHE
Parâmetros: Código da Operadora do sistema
O resultado do schedule, poderá ser acessado pelo log: /logpls/data/plmapcomsche.log
06. TABELAS UTILIZADAS Âncora TAB TAB
TAB | |
TAB |
- B7E (Integrações)
- B7F (Pedidos da Integração)
07. DICIONÁRIO DE DADOS Âncora DICIO DICIO
DICIO | |
DICIO |
Atualização do Arquivo SX2 (Tabelas):
Tabela | Descrição | Ac. Filial | Ac. Unidade | Ac. Empresa | Chave Única |
---|---|---|---|---|---|
B7E | Integrações | 1 - Compartilhado | 2 - Exclusivo | 2 - Exclusivo | B7E_FILIAL+B7E_CODOPE+B7E_CODIGO+B7E_ALIAS |
B7F | Pedidos da Integrações | 1 - Compartilhado | 2 - Exclusivo | 2 - Exclusivo | B7F_FILIAL+B7F_CODOPE+B7F_CODIGO+B7F_CODPED+B7F_ALIAS+B7F_CHAVE |
Atualização do Arquivo SX3 (Campo):
Tabela | Campo | Tipo | Tamanho | Decimal | Titulo | Descrição | Picture | Validação | Inicializador Padrão | Consulta Padrão | cBox | Usado | Exibe Browser | Visual? | Contexto | Obrigatório | When |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
B7E | B7E_FILIAL | C | 8 | 0 | Filial | Filial do Sistema | |||||||||||
B7E | B7E_CODOPE | C | 4 | 0 | Operadora | Operadora | @R !.!!! | Vazio() .Or. ExistCpo("BA0",FWFldGet("B7E_CODOPE"),1) | PLSINTPAD(RETCODUSR()) | B89PLS | Sim | Sim | Alterar | Real | Sim | INCLUI | |
B7E | B7E_CODIGO | C | 4 | 0 | Codigo Integ | Código da Integração | @! | GETSXENUM( "B7E", "B7E_CODIGO" ) | Sim | Sim | Visualizar | Real | Sim | ||||
B7E | B7E_DESCRI | C | 40 | 0 | Descrição | Descrição da Integração | @! | Sim | Sim | Alterar | Real | Sim | |||||
B7E | B7E_ALIAS | C | 3 | 0 | Alias Prima. | Alias Primário | @! | Vazio() .Or. PlsAliasExi(FWFldGet("B7E_ALIAS")) | Sim | Sim | Alterar | Real | Sim | INCLUI | |||
B7E | B7E_ENDPOI | C | 100 | 0 | EndPoint | EndPoint da Integracaoo | Sim | Sim | Alterar | Real | Não | ||||||
B7E | B7E_ATIVO | C | 1 | 0 | Ativo | Ativo | @! | 1 | 0=Nao;1=Sim | Sim | Não | Alterar | Real | Sim | |||
B7E | B7E_MAXENV | N | 3 | 0 | Máximo Envio | Máximo de Envio | @E 999 | FWFldGet("B7E_MAXENV") > 0 | Sim | Sim | Alterar | Real | Sim | ||||
B7E | B7E_CLASTP | C | 20 | 0 | Classe Stamp | Classe Stamp da Integ. | Vazio() .Or. FindClass(FWFldGet("B7E_CLASTP")) | Sim | Não | Alterar | Real | Não | |||||
B7E | B7E_CLACOM | C | 20 | 0 | Classe Comu. | Classe para Comunicação | Vazio() .Or. FindClass(FWFldGet("B7E_CLACOM")) | Sim | Não | Alterar | Real | Não | |||||
B7E | B7E_USRAUT | C | 20 | 0 | Login Auten. | Login Autenticação | Sim | Não | Alterar | Real | Não | ||||||
B7E | B7E_PASAUT | C | 50 | 0 | Senha Auten. | Senha Autenticação | @* | Sim | Não | Alterar | Real | Não | |||||
B7E | B7E_ENDAUT | C | 100 | 0 | EndPoint Aut | EndPoint Autenticação | Sim | Não | Alterar | Real | Não | ||||||
B7E | B7E_BEAAUT | M | 10 | 0 | Bearer Aute. | Bearer Autenticação | Sim | Não | Visualizar | Real | Não | ||||||
B7E | B7E_COOAUT | M | 10 | 0 | Cookie Aut. | Cookie Autenticação | Sim | Não | Visualizar | Real | Não | ||||||
B7E | B7E_TMPAUT | C | 20 | 0 | Tempo Expe. | Tempo de Expiração | Sim | Não | Visualizar | Real | Não | ||||||
B7E | B7E_PERGGE | C | 10 | 0 | Perg. Gerar | Pergunta Gerar Pedidos | @! | Sim | Não | Alterar | Real | Não | |||||
Tabela | Campo | Tipo | Tamanho | Decimal | Titulo | Descrição | Picture | Validação | Inicializador Padrão | Consulta Padrão | cBox | Usado | Exibe Browser | Visual? | Contexto | Obrigatório | When |
B7F | B7F_FILIAL | C | 8 | 0 | Filial | Filial do Sistema | |||||||||||
B7F | B7F_CODOPE | C | 4 | 0 | Operadora | Operadora | @R !.!!! | Vazio() .Or. ExistCpo("BA0",FWFldGet("B7F_CODOPE"),1) | IIF(IsInCallstack("PLMapIntegra"),B7E->B7E_CODOPE,PLSINTPAD(RETCODUSR())) | B89PLS | Sim | Sim | Alterar | Real | Sim | IIF(IsInCallstack("PLMapIntegra"),.F.,INCLUI) | |
B7F | B7F_CODIGO | C | 4 | 0 | Codigo Integ | Codigo da Integração | @! | Vazio() .Or. ExistCpo("B7E",FWFldGet("B7F_CODOPE")+FWFldGet("B7F_CODIGO"),1) | IIF(IsInCallstack("PLMapIntegra"),B7E->B7E_CODIGO," ") | Sim | Sim | Alterar | Real | Sim | IIF(IsInCallstack("PLMapIntegra"),.F.,INCLUI) | ||
B7F | B7F_CODPED | C | 9 | 0 | Cod. Pedido | Codigo do Pedido | @! | GETSXENUM("B7F", "B7F_CODPED") | Sim | Sim | Visualizar | Real | Sim | ||||
B7F | B7F_ALIAS | C | 3 | 0 | Alias Prima. | Alias Primário | @! | Vazio() .Or. ExistCpo("B7E",FWFldGet("B7F_CODOPE")+FWFldGet("B7F_CODIGO")+FWFldGet("B7F_ALIAS"),1) | IIF(IsInCallstack("PLMapIntegra"),B7E->B7E_ALIAS," ") | Sim | Sim | Alterar | Real | Sim | IIF(IsInCallstack("PLMapIntegra"),.F.,INCLUI) | ||
B7F | B7F_CHAVE | C | 60 | 0 | Chave | Chave de Busca | @! | Vazio() .OR. ExistCpo(FWFldGet("B7F_ALIAS"),FWFldGet("B7F_CHAVE"),IIF(FWFldGet("B7F_ALIAS") $ "BA1/BE4",2,1)) | Sim | Sim | Alterar | Real | Sim | ||||
B7F | B7F_DATINC | D | 8 | 0 | Dt. Inclusão | Data de Inclusão | dDataBase | Sim | Sim | Alterar | Real | Sim | |||||
B7F | B7F_DATCOM | D | 8 | 0 | Dt. Comunica | Data de Comunicação | Sim | Sim | Visualizar | Real | Não | ||||||
B7F | B7F_STATUS | C | 1 | 0 | Status | Status do Pedido | @! | 0 | 0=Pendente de Envio;1=Envio Realizado;2=Erro de Envio;3=Envio Cancelado | Sim | Não | Alterar | Real | Não | |||
B7F | B7F_TENVIO | N | 3 | 0 | Tent. Envio | Tentativas de Envio | @E 999 | FWFldGet("B7F_TENVIO") <= FWFldGet("B7E_MAXENV") | Sim | Não | Alterar | Real | Não | ||||
B7F | B7F_ENVJSO | M | 10 | 0 | Json Envio | Json Enviado | Sim | Não | Visualizar | Real | Não | ||||||
B7F | B7F_RECJSO | M | 10 | 0 | Json Receb. | Json Recebido | Sim | Não | Visualizar | Real | Não |
Atualização do Arquivo SIX (Índices):
Tabela | Ordem | Chave | Descrição |
---|---|---|---|
B7E | 1 | B7E_FILIAL+B7E_CODOPE+B7E_CODIGO+B7E_ALIAS | Operadora + Codigo Integ + Alias Prima. |
Tabela | Ordem | Chave | Descrição |
B7F | 1 | B7F_FILIAL+B7F_CODOPE+B7F_CODIGO+B7F_CODPED | Operadora + Codigo Integ + Cod. Pedido |
B7F | 2 | B7F_FILIAL+B7F_CODOPE+B7F_ALIAS+B7F_CHAVE | Operadora + Alias Prima. + Chave |
Atualização do Arquivo SX9 (Relacionamento):
Identi. | Tabela Domínio | Expressão Domínio | Tabela Contra-Domínio | Expressão Contra-Domínio | Lig. Domínio | Lig. Contra-Domínio |
---|---|---|---|---|---|---|
001 | B7E | B7E_CODOPE+B7E_CODIGO+B7E_ALIAS | B7F | B7F_CODOPE+B7F_CODIGO+B7F_ALIAS | 1 | N |
Atualização do Arquivo SX1 (Pergunte):
Grupo | Ordem | Pergunta | Variável | Tipo | Tamanho | Decimal | Objeto | Consulta Padrão |
---|---|---|---|---|---|---|---|---|
PLRMPSTAMP | 01 | Operadora ? | MV_PAR01 | C | 4 | 0 | 1 - Edit | B89PLS |
PLRMPSTAMP | 02 | Data do STAMP ? | MV_PAR02 | D | 8 | 0 | 1 - Edit |
Card documentos Informacao A alteração de dicionário referente a essa implementação estará disponível no próximo pacote de Expedição Contínua do módulo SIGAPLS. Titulo Importante
05. CLASSE PARA GRAVAR OS PEDIDOS
A classe PLMapGrvPed, irá verificar as integração da HealthMap (Tabela BXX) se os Alias relacionados ao Cadastro de Beneficiários ou Empresa tiveram alguma alteração de acordo com o campo S_T_A_M_P_ das tabelas. Se houver alteração, será feito uma busca na tabela de pedido (BZZ) pelos campos: Cod. Integração + Alias Primário + Chave (Corresponde os dados que identificam o Beneficiário ou Empresa), para saber se tem algum pedido daquele Beneficiário ou Empresa pendente para não haver duplicidade de envio de dados.
Essa Classe possuirá alguns métodos como:
...
Será criado um schedule, onde poderá ser configurado a quantidade de vezes em que a classe PLMapGrvPed, irá buscar e gravar os pedidos de acordo com as integrações.
06. CLASSE PARA COMUNICAR COM O HEALTHMAP
Criado os pedidos, será feito a comunicação com a HealthMap pela Classe PLMapComPed, que herda métodos da classe PLSRest.
Mas antes de comunicar, será feito a montagem do json de cada pedido através da classe PLMapBenef para o Cadastro de Beneficiários e PLMapEmpre para o Cadastro de Empresas.
Essas classe de montagem do Json possuirá alguns métodos como:
- Método para posicionar nas tabelas necessárias para montagem do Json, atráves da chave do alias primário.
- Método para montagem do Json de acordo com a documentação de layout da HealthMap de cada Integração.
Caso possua métodos em comum para montagem do Json, será criado a classe PLMapJson (se necessário)
Feito a montagem do Json, será instanciado a classe de comunicação para envio do Json para a HealthMap.
A Classe comunicação PLMapComPed possuirá alguns métodos como:
- Método para atualizar do status do pedido, se foi enviado com sucesso ou ocorreu erro de envio.
- Método para autenticação com o HealthMap.
- Método para configurar da comunicação.
Será criado um schedule, onde poderá ser configurado a quantidade de vezes em que a classe PLMapComPed, irá realizar o envio dos pedidos pendentes para a HealthMap.
07. TABELAS UTILIZADAS
...