Árvore de páginas

Versões comparadas

Chave

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

Melhoria na validação/gravação da especialidade de arquivos XML TISS.

Linha de Produto:

Microsiga Protheus

Segmento:

Saúde

Módulo:

Plano de Saúde

Rotina:

Rotina

Nome Técnico

 Gerenciador XML TISS 

PLSA974

Rotina(s) envolvida(s)

Nome Técnico

PLSA498

Digitação de Contas Médicas

 

 

Parâmetro(s):

MV_PESPPLA; MV_PLSCTES

Ponto de Entrada:

PLTISESP

Chamados Relacionados

 TUOPUL

Tabelas Utilizadas:

BVN - Configuracao da Validacao do XML TISS.

BVP - Configuracao Variaveis XML TISS.

BE4 - Internacoes.

BD5 - Processamento de Contas.

BD6 - Eventos Processamentos Contas.

BD7 - Part Honorarios Prestado Itens. 

Descrição

Realizada melhoria no processo de gravação da especialidade de guias oriundas de importação XML. Todos os blocos e funções referentes à submissão/importação de XML que envolviam a interpretação do CBOs dos arquivos foram estudados e reescritos em novas funções. 

Introdução

 

No fluxograma acima podemos observar o início do processo de submissão/importação do XML que será explorado nessa documentação.
Com a TISS 3 existe a necessidade de gravar a especialidade dos eventos executados com base no CBOS do Solicitante e Executante, tais informações são de suma importância em processos posteriores à importação XML, como por exemplo a validação de regras de cobertura das críticas 017 (Limite de Quantidade ultrapassada.) e 018 (Limite de Periodicidade ultrapassada.), uma vez que as mesmas podem ser parametrizadas para levar em consideração a especialidade enviada no atendimento, a incoerência nessas informações pode levar o sistema a negar ou autorizar um atendimento indevidamente.

Caminhos das tags de CBOs

Conforme ultima versão vigente dos SCHEMAS das guias TISS, esses são os caminhos em que o prestador pode enviar o CBOS nos diferentes tipos de guias XML tratados pelo sistema:

Alterações realizadas

Antes de partirmos para as alterações realizadas nesse chamado, devemos entender os passos básicos no fluxo de processamento XML TISS dentro do sistema.

Submissão

Índice de funções envolvidas no processo:

PNewVldXML –   Função principal de validação de arquivos XML superiores à versão 3.00.01.

PAjustUnic – Atualiza a matriz de dados únicos do XML.

PlsVarTISS – Cria as variáveis dinâmicas da tabela BVP (NOME).

PlsExecExp – Executa as expressões das criticas da tabela BVN (NOME).

PlTrCBOSUB – Função genérica para validação de criticas referentes ao CBOs enviados no arquivo.

PLCarCBOVar – Inicializa as variáveis dinâmicas referente às TAGs de CBOS e especialidade dos profissionais da guia.

LEGENDA:

Funções envolvidas

Funções alteradas

Funções criadas

 

As validações de CBOS no processo de submissão do XML se divide nas seguintes etapas:

PNewVldXML
Armazena todas as TAGS e dados do XML na matriz aDados. Toda a validação gira em torno dessa matriz pois o sistema carrega as críticas cadastradas na tabela BVN (NOME DA TABELA), e as executa conforme parametrização. (cTpVld).
Com o aDados inicializado o sistema monta uma outra matriz com dados únicos, ou seja, uma matriz que contém todos os dados do XML porém sem tags repetidas. Porém as tags de CBOs entram em uma exceção, já que as tags possuem o mesmo nome mas contém dados tanto do solicitante quanto do executante.

PlsVarTISS
Antes de iniciar o loop na matriz aDados, é feita a carga inicial de todas as variáveis dinâmicas utilizadas nas expressões das críticas da tabela BVN. Posteriormente, a cada loop que o sistema faz em cima da matriz aDados, é verificado se existe alguma TAG na chamada da expressão cadastrada na tabela BVP para que a variável seja atualizada antes da execução da regra de validação da crítica. Por exemplo: Se estou validando a TAG <ans:codigoProcedimento> e existe a variável CCODPRO que utiliza essa informação em sua expressão, o sistema chama novamente a função para atualizar os dados da variável dinâmica CCODPRO.

PLCarCBOVar


Função criada para inicializar o conteúdo das novas variáveis dinâmicas de CBOs e Especialidade (_CCBOSOL, _CCBOEXE, _CESPSOL, _CESPEXE, _CCODESP). A função identifica qual o tipo de dado solicitado no cadastro da tabela BVP, e faz a busca na matriz de dados únicos conforme o caminho definido no Schema do XML. 

PAjustUnic
A cada dado do XML validado, o sistema faz a chamada da função de ajuste da matriz de dados únicos.

PlsExecExp
Antes da chamada da função PlsExecExp, uma matriz é alimentada com todas as críticas existentes para a TAG em validação. A partir dessa matriz, o sistema chama as funções de validação das críticas X25 e 047.
Critério para alimentar a matriz: caminho e nome da tag que está sendo validada deve estar contida nos campos BVN_CAMTAG e BVN_TAG respectivamente. 

PlTrCBOSub


Nova função genérica de validação de críticas de CBOs. Recebe os parâmetros cCodGlo, cCboExe, cCboSol, cCodEsp, cEspExe e cEspSol.
O conteúdo da variável cCodGlo corresponde a crítica que está sendo analisada no momento e o restante são as variáveis dinâmicas definidas na função PLCarCBOVar.

047 - Especialidade bloqueada para esta RDA.

Validação Única: Retorna uma variável lógica informando se a especialidade enviada pelo executante está no cadastro de especialidades do Prestador (BAX). Caso a mesma não exista, existe a possibilidade de considerar as especialidades definidas no parâmetro MV_PESPPLA. 

X25 - Especialidade nao encontrada no sistema com base no CBOS informado no arquivo.
Primeira Validação: Verifica se para o CBO enviado, existe vinculo De/Para cadastrado no sistema.
Segunda Validação: Verifica se para a especialidade retornada a partir do De/Para, o Profissional Executante a possui em seu cadastro. Também é feito o tratamento para o CBO não informado (Codigo de terminologia ‘999999’).

Se ambas validações retornarem o valor lógico Verdadeiro, o arquivo é acatado caso não haja nenhuma outra crítica pertinente a submissão.

Essa função pode ser customizada, para maiores informações acesse este link e confira a documentação do ponto de entrada PLTISESP.

 

Importação

Índice de funções envolvidas no processo:

PlsTpTran

PLSPCONGR

PlsLGSP3

PlTrCBOIMP

PlRtCBOPath –PLSPCONGR

PlRtEspPre

LEGENDA:

Funções envolvidas

Funções alteradas

Funções criadas

PlsTpTran 

Após interpretar o arquivo já submetido e salvo no banco de conhecimento, o sistema faz a chamada da função PlsTpTran para identificar qual o tipo de transação do XML. Essa função determina qual o tipo de guia e qual a origem da solicitação, passo que determina como o sistema irá interpretar o arquivo XML de acordo com os diferentes tipos de guias definidos no schema.

PlsLGSP3

Função de leitura e gravação do arquivo XML. É basicamente composta por blocos de leitura e armazenamento dos dados do XML. A parte da leitura fica a cargo da função PLSPCONGR, que recebe a TAG e caminho da TAG como parâmetro e retorna o dado solicitado. Após a interpretação, o dado é armazenado em duas outras matrizes dependendo da natureza da informação (cabeçalho ou item), que posteriormente são utilizadas para a gravação dos dados na base. Nos blocos de interpretação do XML foram incluídas chamadas para as novas funções de retorno do CBOs. O retorno dessas funções, diferente do restante das informações do XML, são armazenados em duas matrizes (cabeçalho e item) exclusivas para a gravação das especialidades.

PlTrCBOIMP

Retorna uma matriz com o CBOs e Especialidade do tipo de dado solicitado (Executante/Solicitante).

PlRtCBOPath

Recebe como parâmetro qual a origem da transação, tipo de dado solicitado (Executante/Solicitante) e tipo de guia, dados que irão definir qual o caminho da TAG que o CBOs deve ser pesquisado.

PLSPCONGR

Após definir qual o caminho da tag, busca na matriz com os dados do XML a informação solicitada e assim que encontrada, é feito o De/Para com a tabela de terminologias TISS 24 para localizar a especialidade correspondente no sistema. Feito isso, a função retorna a matriz de duas posições, sendo a primeira a especialidade e a segunda o CBOs.

PlRtEspPre

Retorna a especialidade do prestador utilizando o seguinte critériorespeitando a seguinte lista de prioridades:

1ª Especialidade enviada pelo executante está no cadastro de especialidades do Prestador (BAX), utiliza a mesma.
2ª Especialidade enviada pelo executante NÃO está no cadastro de especialidades do Prestador (BAX), verifica se o prestador possui alguma especialidade contida no parâmetro MV_PESPPLA.
3ª Especialidade principal do prestador
4ª Primeira Especialidade encontrada no cadastro do prestador

O valor retornado nessa função é adicionado à posição 3 da matriz exclusiva de especialidades.

PLSXAUTP

Após consistir todos os dados nas matrizes de cabeçalho e item, os dados são transferidos para a função PLSXAUTP responsável pela gravação da guia. Após realizar a gravação de todos os demais itens da guia, cada função de gravação faz a chamada da função PlGrvEspXMLnova função criada para realizar consolidar os dados de especialidade das guias.

PlGrvEspXML

Recebe como parâmetro o alias da tabela que está sendo gravada e para cada alias, existe um tratamento diferente definido na tabela abaixo:

 

Conteúdo tabela BD5/BE4

Conteúdo tabela BD6

Conteúdo tabela BD7

_CODESP

Grava a especialidade com maior ocorrência nos eventos da guia;

1) Se para o evento em questão, existir somente uma composição, grava a informação que consta no campo BD7_ESPEXE da mesma;
2) Senão grava a especialidade de acordo com a participação principal. Entende-se com principal a composição referente ao honorário. Exemplo. Se tiver HM e PA, grava a especialidade do HM. A ordem de prioridade será herdada do cadastro de unidade de medida.

1) Se a especialidade interpretada através da TAG do executante existir na BAX do prestador, grava a mesma;
2) Senão, grava a principal especialidade do cadastro do prestador definida através do campo BAX_ESPPRI;
3) Senão grava a primeira especialidade encontrada no cadastro do Prestador;

_ESPSOL

Será gravado a especialidade que for enviada no xml na tag <DadosSolicitante>

Será gravado a especialidade que for enviada no xml na tag <DadosSolicitante>

Será gravado a especialidade que for enviada no xml na tag <DadosSolicitante>

_ESPEXE

N/A - Campo não utilizado, mantido por compatibilidade.

1) Se para o evento em questão, existir somente uma composição, grava a informação que consta no campo BD7_ESPEXE da mesma;
2) Senão grava a especialidade de acordo com a participação principal. Entende-se com principal a composição referente ao honorário. Exemplo. Se tiver HM e PA, grava a especialidade do HM. A ordem de prioridade será herdada do cadastro de unidade de medida.

Será gravado o que vier no XML nas TAG de informação do executante da guia se for CONSULTA, para os demais tipos de guia é definida nas TAGS de participação dos profissionais (<equipeSADT>, <idenEquipe> ou <profissionais>)

 

 

 

Procedimento para Implantação

O sistema é atualizado logo após a aplicação do pacote de atualizações (Patch) deste chamado.

  1. Aplique o patch do chamado e execute a rotina Versões TISS
  2. Selecione a a versão desejada e clieque em Ações Relacionadas/Recarregar
  3. Leia atentamente o alerta exibido
  4. Confirme se estiver de acordo.
  5. As tabelas serão atualizadas referente a submissão dos arquivos TISS serão recarregadas.

 

 

Procedimento para Configuração

(Estes procedimentos devem ser feitos quando for necessário configurar parâmetros e/ou  rotinas no menu).

 

CONFIGURAÇÃO DE PARÂMETROS

 

  1. No Configurador (SIGACFG), acesse Ambientes/Cadastros/Parâmetros (CFGX017). Crie/configure (mantenha somente a instrução correspondente) o(s) parâmetro(s) a seguir:
    (É necessário criar uma tabela para cada parâmetro descrito no item Parâmetro(s), da tabela Características do Requisito)

Itens/Pastas

Descrição

Nome:

 

Tipo:

Informe o Tipo do parâmetro

Cont. Por.:

Informe o Conteúdo padrão

Descrição:

 

 

CONFIGURAÇÃO DE MENUS

 

2.  No Configurador (SIGACFG), acesse Ambientes/Cadastro/Menu (CFGX013). Informe a nova opção de menu do informe o nome do módulo, conforme instruções a seguir:

Menu

Informe o Menu em que estará localizada a rotina

Submenu

Informe o Submenu em que estará localizada a rotina

Nome da Rotina

Informe o Título da rotina

Programa

Informe o Fonte da rotina

Módulo

Informe o Nome do(s) produto(s) a ser utilizado ou “Todos”

Tipo

Informe a Função

 

 

Procedimento para Utilização

       1.            No Plano de Saúde (SIGAPLS), acesse Atualizações / Produto Saúde / Produto Saúde (PLSA800).

O sistema apresenta a janela de produtos cadastrados.

       2.            Posicione o cursor em um produto e clique em Alterar.

       3.            Na pasta Cobertura/Carências selecione a subpasta Tipo de Prestador.

       4.            Dê duplo clique no campo TP Prestador (BCW_TIPPRE).

O sistema apresenta a janela Tipo de Prestador – Coparticipação – Alterar.

       5.            Informe os dados conforme orientação do help de campo e observe o preenchimento do novo campo:

                      Som. p/Compra (BCW_SOMCOM): selecione Sim para indicar se a coparticipação cadastrada será válida somente para efeito de compra de procedimentos ou Não, caso contrário.

       6.            Confira os dados e confirme.

 

 

 

Ponto de Entrada

Descrição:

Informe o Menu em que estará localizada a rotina

Localização:

Informe o Submenu em que estará localizada a rotina

Eventos:

Informe o Título da rotina

Programa Fonte:

Informe o Fonte da rotina

Função:

Informe o Nome do(s) produto(s) a ser utilizado ou “Todos”

Retorno:

Nome

Tipo

Descrição

Obrigatório

 

 

 

 

 

 

 

 

 

 

 

 

 

Exemplo:

#Include 'Protheus.ch'

User Function CN120ALT()

Local aCab:= PARAMIXB[1]

Local cTipo:= PARAMIXB[2]

If cTipo == '1'

    aCab[4][2]:= 'NF' //Validações do usuário

EndIf

Return aCab