Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.


01. DADOS GERAIS

Linha de Produto:Microsiga Protheus
Segmento:Saúde
Módulo:SIGAPLS
Função:

PLSA790V

Story:

DSAUBE-1032511033


02. SITUAÇÃO/REQUISITO

Necessidade de criar a integração Auditoria PLS x Carol.

03. SOLUÇÃO

Implementada melhoria com a criação da integração Auditoria PLS x Carol. Quando o Schedule de configuração estiver parametrizado, o PLS realiza a integração com a Carol e atualiza as guias que estão em estudo de acordo com o resultado da Auditoria realizada na Carol.

03. PASSOS INICIAIS

  • Passo 1 - Configurações Plano de Saúde (SIGAPLS)
  • Passo 2 - Configurador (SIGACFG)

...

Totvs custom tabs box
tabsPasso 01, Passo 02, Passo 03, Passo 04
idspasso1,passo2
Totvs custom tabs box items
defaultyes
referenciapasso1
  • Crie os campos e aba descritos na sessão 07-ALTERAÇÕES DICIONÁRIO DE DADOS.
  • Acesse Plano de Saúde/Operadora/Operadora de Saúde (PLSA010). Selecione a Operadora que será parametrizada e clique em Alterar
  • Acesse a Aba Integração Carol, preencha os campos:


Exemplo de Cadastro:

Image RemovedImage Added

CampoDescrição Conteúdo
BA0_CARDOMSubDomainInforme o subdomain de acesso a Carol
BA0_CARORGOrgSubDomainInforme o orgSubdomain de acesso a Carol
BA0_CARURLURL CarolInforme a URL da API da Carol
BA0_CARCIDConnector IDInforme o connector ID de acesso a Carol
BA0_CARSISUsuar. Sist.Informe o usuário de sistema que realizará as transferência de Departamento na integração da Auditoria com a Carol
BA0_DEPRETDep. RetornoInforme o departamento que a guia será transferida quando a Carol retornar que uma guia deve ser auditada no SIGAPLS

 Obs: Para saber os dados de acesso de sua Operadora, por gentileza entrar em contato com a equipe responsável pela Carol.

  • Confirme a alteração.

TOKEN DE ACESSO


Apoio para o preenchimento:

Tela de acesso a plataforma:

Image Added,


Connector ID (BA0_CARCID) - Informar protheus

Para buscar a URL:

  • Acesse o menu no canto esquerdo, opção Explore/Named Queries.
  • Selecione uma Named Querie (getDenyReasons por exemplo) e pressione o botão Open in Editor.
  • Pressione F12 para abrir o modo Dev Tools de seu navegador, selecione a coluna Network.
  • Clique em Run e confirme os parâmetros.
  • Na coluna Network, selecione a transação criada getDenyReasons nesse exemplo. Clique na opção Header. A URL utilizada é apresentada na opção Request URL.
  • Copie o caminho até a versão (v1). No exemplo abaixo, a URL é https://solutions.carol.ai/api/v1
  • Copie essa URL no campo URL Carol (BA0_CARURL).

Image Added


 Obs: Caso surjam dúvidas para saber os dados de acesso de sua Operadora, por gentileza entrar em contato com a equipe responsável pela Carol.

  • Confirme a alteração.



TOKEN DE ACESSO

  • Para realizar a comunicação com a Carol, é necessário solicitar o Token de AcessoPara realizar a comunicação com a Carol, é necessário solicitar o Token de Acesso. Clique em Outras Ações/Acesso Carol.

Exemplo de preenchimento:

  • Informe o usuário e senha de acesso a Carol, clique em Salvar. O sistema comunica com a Carol solicitando o token de acesso da integração. O mesmo é gravado criptografado no campo Token Acesso (BA0_CARTOK).
Totvs custom tabs box items
defaultno
referenciapasso2
  • Acesse o Configurador (SIGACFG), Ambiente/Cadastros/Parâmetros:
  • Crie/Configure os parâmetros abaixo:
ParâmetroMV_SETORAT
TipoCaracter
ConteúdoIndique o departamento parametrizado para análise da Carol
DescriçãoIndique o codigo do setor que ira receber primeiro as guias que serao analisadas e/ou auditadas.  



ParâmetroMV_PCARLOG
TipoCaracter
Conteúdo0 ou 1
DescriçãoIndica se ativa o log de informações no processo de integração Auditoria PLS x Carol



ParâmetroMV_PLCRCAR
TipoCaracter
ConteúdoInforme uma crítica da tabela BCT (BCT_PROPRI+BCT_CODGLO)
DescriçãoMotivo de crítica padrão para eventos negados na integração Auditoria PLS x Carol


  • Acesse Ambiente/Schedule/Schedule.
  • Na opção Agendamentos/Cadastro selecione a opção para incluir um novo Schedule.
  • Na opção Recorrência, o prazo que será executado a integração.
  • Realize o cadastro de acordo com a sua necessidade, indicando:
Rotina PLAUDCARSC()
ParâmetrosOperadora - Indique a código da Operadora parametrizada
AmbienteAmbiente utilizado
Empresa/FilialEmpresa/Filial utilizados 
Módulo33 (Plano de Saúde)



Exemplo de Cadastro:



05. FUNCIONAMENTO DA INTEGRAÇÃO

No Plano de Saúde (SIGAPLS), ao criar uma guia que deva ser analisada pela Auditoria, o registro de análise (B53) é encaminhado para o Departamento de Análise da Carol definido no parâmetro MV_SETORAT (as guias serão encaminhadas de todas as fontes: solicitações Remote e Portal do Prestador).

...

Card documentos
InformacaoQuando um evento for negado, o motivo TISS utilizado (B72_MOTIVO) será o definido no parâmetro MV_PLCRCAR.
TituloIMPORTANTE!


06. LOG DO PROCESSO


Caso o cliente deseje realizar um rastreamento de toda a comunicação, é possível ativando o parâmetro MV_PCARLOG no configurador (0=Desativa/1=Ativa). O arquivo será gerado no ProtheusData/logpls/ pasta com a data da execução do processo. O arquivo gerado é o plaudcarol.log

...

O primeiro bloco do log traz a comunicação realizada e o Jsons enviados e recebidos. O segundo e terceiro blocos trazem a atualização das guias e transferências entre departamentos respectivamente.


07. ALTERAÇÕES DICIONÁRIOS DE DADOS


  • Campos SX3
CampoConteúdo
X3_ARQUIVBA0
X3_CAMPOBA0_CARDOM
X3_TIPOCaracter
X3_TAMANHO50
X3_DECIMAL0
X3_TITULOSubDomain
X3_DESCRICarol SubDomain
X3_PICTURE
X3_F3
X3_BROWSENão
X3_VISUALAlterar
X3_CONTEXTReal
X3_FOLDER3

...

CampoConteúdo
XA_ALIASBA0
XA_ORDEM3
XA_DESCRICIntegracao Carol

...


08PONTOS DE ENTRADA


O Ponto de entrada PCARAUD1 permite manipular o retorno de um evento auditado pela Carol. O ponto pode receber 3 modelos de retorno:

  • Retornando o array aRet vazio, o sistema assume as condições já analisadas pela Carol/PLS.
  • Retornando .T. na primeira posição do Array, o sistema vai gravar o evento utilizando o modelo padrão e nas posições posteriores, é possível manipular os dados desejados.
  • Retornando .F. na primeira posição do Array, o sistema não vai gravar o evento utilizando o modelo padrão, sendo necessário realizar toda a gravação de dados no ponto de entrada.
Ponto de Entrada PCARAUD1
FontePLAudCarol.PRW
Parâmetrosparamixb[01] - cRequestID - Chave da Guia + Sequen
paramixb[02] - lFind - Se o evento foi encontrado pelo PLS
paramixb[03] - cAlias - Alias do cabeçalho da guia
paramixb[04] - cAliasIte - Alias do evento
paramixb[05] - cCodPad - Tabela Padrão
paramixb[06] - cCodPro - Código do Evento
paramixb[07] - cSeqPro - Sequen do Evento
paramixb[08] - cCodGlo - Código da glosa encontrada no evento
paramixb[09] - cParecer - Parecer da Guia 0=Autorizado / 1=Negado / 2=Encaminha para Auditor
paramixb[10] - nQtdSol - Quantidade solicitada
paramixb[11] - nQtdAut - Quantidade autorizada
paramixb[12] - cMotivo - Motivo da critica
paramixb[13] - cObsAna - Observação da análise
Retorno

Array de dados contendo:

aRet[01] - Boolean - Indica utiliza a gravação padrão do sistema
aRet[02] - lFind - Indica que o evento foi encontrado
aRet[03] - cCodPad - Tabela Padrão
aRet[04] - cCodPro - Código do Evento
aRet[05] - cSeqPro - Sequen do Evento
aRet[06] - cCodGlo - Código da glosa encontrada no evento
aRet[07] - cParecer - Parecer da Guia 0=Autorizado / 1=Negado / 2=Encaminha para Auditor
aRet[08] - nQtdSol - Quantidade solicitada
aRet[09] - nQtdAut - Quantidade autorizada
aRet[10] - cMotivo - Motivo da critica
aRet[11] - cObsAna - Observação da analise



Bloco de código
titleExemplo do

...

Ponto de Entrada
linenumberstrue
#INCLUDE "PROTHEUS.CH"

...



User Function PCARAUD1()

...



Local cRequestID := paramixb[01] //Chave da Guia + Sequen

...


Local lFind := paramixb[02] //Se o evento foi encontrado pelo PLS

...


Local cAlias := paramixb[03] //Alias do cabecalho da guia

...


Local cAliasIte := paramixb[04] //Alias do evento

...


Local cCodPad := paramixb[05] //Tabela Padrao

...


Local cCodPro := paramixb[06] //Codigo do Evento

...


Local cSeqPro := paramixb[07] //Sequen

...


Local cCodGlo := paramixb[08] //Codigo da glosa encontrada no evento

...


Local cParecer := paramixb[09] //Parecer da Guia 0=Autorizado / 1=Negado / 2=Encaminha para Auditor

...


Local nQtdSol := paramixb[10] //Quantidade solicitada

...


Local nQtdAut := paramixb[11] //Quantidade autorizada

...


Local cMotivo := paramixb[12] //Motivo da critica

...


Local cObsAna := paramixb[13] //Observacao da analise

...


Local aRet := {}

...



/* ---------------------------

...


Array de Retorno

...



Posicao 01 - lGrvPadrao

...


Posicao 02 - lFind

...


Posicao 03 - cCodPad

...


Posicao 04 - cCodPro

...


Posicao 05 - cSeqPro

...


Posicao 06 - cCodGlo

...


Posicao 07 - cParecer

...


Posicao 08 - nQtdSol

...


Posicao 09 - nQtdAut

...


Posicao 10 - cMotivo

...


Posicao 11 - cObsAna

...


--------------------------- */

...



//Utiliza a gravacao padrao do PLS, alterar os dados desejados alterando as variaveis abaixo

...


Aadd(aRet,.T.)

...


Aadd(aRet,lFind)

...


Aadd(aRet,cCodPad)

...


Aadd(aRet,cCodPro)

...


Aadd(aRet,cSeqPro)

...


Aadd(aRet,cCodGlo)

...


Aadd(aRet,cParecer)

...


Aadd(aRet,nQtdSol)

...


Aadd(aRet,nQtdAut)

...


Aadd(aRet,cMotivo)

...


Aadd(aRet,cObsAna)

...



//Retornando aRet vazio, o PLS ignora o resultado do PE e realiza a gravacao padrao

...


aRet := {}

...



//Indica que vai realizar a gravacao manual do Registro (Importante: toda a gravacao referente ao evento informado deve ser realizado neste ponto)

...


Aadd(aRet,.F.)

...



Return aRet



O Ponto de entrada PCARAUD2 permite manipular a transferência de uma guia para um departamento quanto todos os eventos foram respondidos pela Carol. O ponto pode receber 3 modelos de retorno:

  • Retornando o array aRet vazio, o sistema assume as condições já analisadas pela Carol/PLS.
  • Retornando .T. na primeira posição do Array, o sistema realiza a transferência para o departamento definido na segunda posição do array.
  • Retornando .F. na primeira posição do Array, a guia não é transferida.
Ponto de EntradaPCARAUD2
FontePLAudCarol.PRW
Parâmetrosparamixb[1] - cGuia - Número da Guia
paramixb[2] - cAliCab - Alias do cabeçãlho
paramixb[3] - cAliEve - Alias dos eventos
paramixb[4] - lTransfere - Indica o sistema iria transferir a guia
paramixb[5] - cDepartRet - Departamento para qual o sistema realizaria a transferência
paramixb[6] - nQtdEncam - Quantidade de eventos indicados no JSON que devem ser transferidos
paramixb[7] - nQtdAudit - Quantidade de eventos pendentes em auditoria na guia
Retorno

Array de dados contendo:

aRet[01] - Boolean - Indica se o sistema deve transferir a guia.
aRet[02] - cDepartRet - Indica que o departamento que deve ser realizada a transferência.


Importante: este ponto será acionado somente se pelo menos um dos eventos da guia estiver indicado como Análise do Auditor do PLS no Json de resposta.



Bloco de código
titleExemplo do

...

Ponto de Entrada
linenumberstrue
#INCLUDE "PROTHEUS.CH"

...



User Function PCARAUD2()

...



Local cGuia := paramixb[1]

...

 
Local cAliCab := paramixb[2]

...


Local cAliEve := paramixb[3]

...


Local lTransfere := paramixb[4]

...


Local cDepartRet := paramixb[5]

...


Local nQtdEncam := paramixb[6]

...


Local nQtdAudit := paramixb[7]

...


Local aRet := {}

...



/*

...

 
---------------------------

...


Array de Retorno

...



Posicao 1 - lTransfere

...


Posicao 2 - cDepartRet

...


---------------------------

...


*/

...



//Utiliza a gravacao padrao do PLS, e possivel indicar se a guia vai ser transferida e para qual departamento

...


Aadd(aRet,lTransfere)

...


Aadd(aRet,cDepartRet)

...



//Retornando aRet vazio, o PLS ignora o resultado do PE e realiza a gravacao padrao

...


aRet := {}

...



Return aRet



Templatedocumentos


HTML
<style>
div.theme-default .ia-splitter #main {
    margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
    display: none;
}
#main {
    padding-left: 10px;
    padding-right: 10px;
    overflow-x: hidden;
}

.aui-header-primary .aui-nav,  .aui-page-panel {
    margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
    margin-left: 0px !important;
}

.aui-tabs.horizontal-tabs>.tabs-menu>.menu-item.active-tab a::after { 
	background: #FF9900; !important 
}

.menu-item.active-tab { 
	border-bottom: none !important; 
}

</style>