Árvore de páginas

CPC-PP0410O.P

Produto:

Gestão de Planos de Saúde

Módulo:Todos
Versão:12.x.x
Assuntos:

cpc-pp0410o.p

Rotina para:

  • Tratar se irão ser calculados impostos de cofins, pis-pasep e csll dos prestadores. São passados dados de bases de cofins e código de prestador e fornecedor para que o cliente possa tratar e devolver se irá calcular o cofins/pis-pasep/csll do prestador que está sendo calculado;
  • Selecionar quais movimentos deverão ser considerados no processo de Previsão/Calculo de pagamentos;
  • Indicar se será executado calculo especifico após a previsão/calculo do pagamento de prestadores no programa ppapi001.p;
  • Indicar se deverá ser considerado para pagamento o valor do pacote, mesmo que este valor seja maior que o valor de pagamento do movimento calculado pelo sistema;
  • Validar a data de produção com a data de vencimento informada;
  • Permitir que o pagamento dos movimentos vinculados a fatura do RC seja efetuado a um prestador diferente do informado na fatura;
  • Gerar relatório CSV com diferentes informações do relatório padrão do programa;
  • Caso o cliente não queira executar a chamada da CPC no seu cadastro deve colocar CPC Ativo como não.
  • Será permitido para esta CPC apenas um registro na tabela temporária de saída. Caso possuir mais de um registro um erro será reportado.


Localização

  • Dentro do programa pp0410o.p antes de ser feita a previsão do cálculo do prestador para que se possa fazer algum tratamento específico. Não é utilizado nada na volta da cpc, apenas faz-se o tratamento de erro. É executado o evento "LIMPA-TEMP".
  • Dentro do programa ppapi001.p quando é feita a previsão do cálculo são enviados os dados das bases para que faça tratamento específico. Não é utilizado nada na volta da cpc, apenas faz-se o tratamento de erro. É executado o evento "ARMAZENA-IMPOSTO ".
  • Dentro do programa ppapi001.p quando é feito o cálculo é utilizada a temp-table de saída, ou seja, a temp-table de saída diz se serão calculados os impostos de cofins/pis-pasep/csll para o prestador em questão. É executado o evento "BUSCA-IMPOSTO".
  • Dentro do programa ppapi001.p quando é feita a movimentação dos valores de pagamento do prestador dos movimentos oriundos de pacote é executado o evento "PAGTO-PACOTE".
  • Dentro do programa pp0410o.p após a informação dos parâmetros na tela de seleção. A tabela temporária WK-MOVTO e a variável LG-CONSIDERA-WK-MOVTO serão utilizadas na volta da cpc e dentro da API PPAPI001.P.
  • Dentro do programa pp0410o.p após a informação dos parâmetros na tela de parâmetros. A tabela temporária de saída indica se será executado o calculo especifico dentro da ppapi001.p através da cpc-ppapi001.p.
  • Dentro do programa pp0410o.p após a informação da Data de vencimento/Data Base Vencimento na tela de seleção Não é utilizado nada na volta da cpc, apenas faz-se o tratamento de erro.
  • Dentro do programa pp0410o.p antes da chamada da ppapi001.p. É executado o evento ALT-PREST que devolvera a tabela temporária WK-PREST indicando os prestadores de pagamento.
  • Dentro do programa pp0410o.p dentro da procedure imp-parametros é executado a cpc que irá atribuir o valor a variável que sera exibida no relatório.
  • Dentro do programa dtvw17aa.p verifica se o evento BLOQ-DT-VENC  da CPC está ativo e bloqueia o campo dt-vencimento e dentro da procedure pi-executar é executado o evento BLOQ-DT-VENC da cpc que irá verificar se uma fatura foi selecionada e se o usuário tem permissão para alterar a data de vencimento.
  • Dentro do programa pp0410o.p verifica se o evento BLOQ-DT-VENC  da CPC está ativo e bloqueia o campo dt-vencimento e dentro da procedure opcao-selecao é executado o evento BLOQ-DT-VENC da cpc que irá verificar se uma fatura foi selecionada e se o usuário tem permissão para alterar a data de vencimento.

Pontos de Utilização

  • "BASE-IMPOSTOS"
  • "CALC-EVE-EXTR"
  • "FIM-SELECAO"
  • "CALC-ESPECIFICO"
  • "PAGTO-PACOTE"
  • "DATA-PRODUCAO"
  • "ALT-PREST"
  • "APOS-IMP-PARAM"
  • "GERACAO-CSV" com eventos "MONTA-ARQUIVO" e "GERA-RELATORIO".
  • "APOS-PARAMETROS"
  • "BLOQ-DT-VENC"
  • "ANTES-FIM"

Include das definições das tabelas temporárias

  • cpc-pp0410o.i


Tabelas de entrada e saída

Tabela de entrada tmp-cpc-pp0410o-entrada

def temp-table tmp-cpc-pp0410o-entrada no-undo

field nm-ponto-chamada-cpc               as char format "x(15)"
field in-evento-programa                      as char format "x(20)"
field cd-unidade                                    like preserv.cd-unidade
field cd-prestador                                  like preserv.cd-prestador
field cd-fornecedor                                like preserv.cd-contratante
field dt-anoref                                        like perimovi.dt-anoref
field nr-perref                                         like perimovi.nr-perref
field vl-base-cofins                                like titupres.vl-base-inss-movto
field vl-base-csll                                   like titupres.vl-base-inss-movto
field vl-base-pis-pasep                         like titupres.vl-base-inss-movto
field dt-producao                                   as date
field cd-unidade-operadora                  like preserv.cd-unidade
field vl-base-imp-unico                        like titupres.vl-base-inss-movto
field cd-unidade-sel                              like preserv.cd-unidade
field cd-tipo-medicina-ini                     like titupres.cd-tipo-medicina
field cd-tipo-medicina-fim                    like titupres.cd-tipo-medicina
field aa-fatura-ini                                  like moviproc.aa-fatura
field aa-fatura-fim                                 like moviproc.aa-fatura
field cd-serie-ini                                    like moviproc.cd-serie-nf
field cd-serie-fim                                  like moviproc.cd-serie-nf
field nr-fatura-ini                                   like moviproc.nr-fatura
field nr-fatura-fim                                 like moviproc.nr-fatura
field cd-local-ini                                   like locaaten.cd-local-atendimento
field cd-local-fim                                  like locaaten.cd-local-atendimento
field lg-transacao                                 as log
field lg-procedimento                           as log
field lg-insumo                                     as log
field lg-periodo                                     as log
field in-liberado-1                                 as char format "x(1)"
field in-liberado-2                                as char format "x(1)"
field cd-transacao-ini                           like moviproc.cd-transacao
field cd-transacao-fim                          like moviproc.cd-transacao
field cd-unidade-principal-ini              like preserv.cd-unidade
field cd-unidade-principal-fim             like preserv.cd-unidade
field cd-prestador-principal-ini            like preserv.cd-prestador
field cd-prestador-principal-fim           like preserv.cd-prestador
field in-selec-benef                               as char
field lg-local                                          as log
field in-calculo-pagamento                  as char format "x(1)"
field cd-tipo-insumo                             like insumos.cd-tipo-insumo
field cd-proc-insumo                            like insumos.cd-insumo
field cd-pacote                                      as int64
field dt-realizacao                                like moviproc.dt-realizacao
field dt-vencimento                              like moviproc.dt-realizacao
field vl-producao                                  like titupres.vl-producao-movto
field lg-per-anterior                              as log
field ds-processo-aux                           like pagapres.ds-processo
field in-tipo-fatura                                as integer
field cd-contratante                             like preserv.cd-contratante
field lg-pagamento-unificado               as log initial false
field cd-unidade-prestador                  like notapres.cd-unidade-prestador
field cd-serie-nf                                     like notapres.cd-serie-nf
field cod-fatur-ap                                  like notapres.cod-fatur-ap
field nr-fatura                                        like notapres.nr-fatura
field h-tmp-prestador                          as handle
field i-num-ped-exec-rpw                    as int
field nm-arquivo                                   as char.

Definição campo a campo da tabela de entrada

  • in-evento-programa – Identifica qual procedimento a cpc deve executar no momento que está sendo chamada.
  • cd-unidade – Código da unidade do prestador .
  • cd-prestador – Código do prestador a ser definido se calcula os impostos de cofins/pis-pasep/csll.
  • cd-fornecedor – Código do fornecedor que está vinculado ao prestador .
  • dt-anoref – Ano do período que está sendo calculado.
  • nr-perref – Número do período que está sendo calculado.
  • vl-base-cofins – Valor da base do cofins calculada para o prestador.
  • vl-base-pis-pasep – Valor da base do pis-pasep calculada para o prestador.
  • dt-producao – Data base da produção informada pelo usuário
  • vl-base-csll – Valor da base do csll calculada para o prestador.
  • vl-base-imp-unico – Valor da base do imposto unico calculado para o prestador.
  • cd-unidade-sel – Código da Unidade do prestador;
  • cd-tipo-medicina-ini – Código do tipo de medicina inicial;
  • cd-tipo-medicina-fim – Código do tipo de medicina final;
  • ca-fatura-ini – Ano da fatura inicial;
  • ca-fatura-fim – Ano da fatura final;
  • cd-serie-ini – Código da Série Inicial;
  • cd-serie-fim – Código da Série final;
  • nr-fatura-ini – Número da fatura inicial;
  • nr-fatura-fim – Número da fatura final;
  • cd-local-ini – Código do local de atendimento inicial;
  • cd-local-fim – Código do local de atendimento final;
  • lg-transação – Indica se considera a transação;
  • lg-procedimento – Indica se considera procedimentos;
  • lg-insumo – Indica se considera insumos;
  • lg-periodo – Indica se considera períodos anteriores;
  • In-liberado-1 – Indicador de movimento liberados do contas ( 1 – liberados ou 0 – Ambos);
  • In-liberado-2 – Indicador de Calculo ou previsão (1 – Calculo ou 0 – Previsão);
  • cd-transacao-ini – Código da transação inicial;
  • cd-transacao-fim – Código da transação final;
  • cd-unidade-principal-ini – Código da unidade do prestador principal inicial;
  • cd-unidade-principal-fim – Código da unidade do prestador principal final;
  • cd-prestador-principal-ini – Código do prestador principal inicial;
  • cd-prestador-principal-fim – Código do prestador principal inicial;
  • in-selec-benef – Indicador do tipo de beneficiário (1 – Base, 2 – Intercambio e 3 – Ambos);
  • lg-local - Indica se considera o local de atendimento;
  • in-calculo-pagamento – Indicador do tipo de calculo (P – Previsão, C – Calculo e G - Eventos Auto-Gerados);
  • cd-tipo-insumo – Código do tipo do insumo;
  • cd-proc-insumo – Código do procedimento ou código do insumo;
  • cd-pacote – Código do pacote;
  • dt-realizacao – Data de realização do movimento;
  • dt-vencimento - Data de vencimento informada;
  • vl-producao – Valor de produção do prestador;
  • lg-per-anterior - Indica se considera períodos anteriores para cálculo;

  • ds-processo-aux - Variável que grava o dia e a hora da execução;

  • in-tipo-fatura - Indicador do tipo de fatura: 2 "Ambos",0 "Fatura",1 "NDR"

  • cd-contratante - Código do fornecedor associado ao prestador;

  • lg-pagamento-unificado - Indica se o pagamento é unificado;

  • h-tmp-prestador - Temporária de prestadores.


Tabela de saída tmp-cpc-pp0410o-saida

def temp-table tmp-cpc-pp0410o-saida no-undo

field lg-undo-retry                            as log
field ds-mensagem-relatorio          as char format "x(75)"
field lg-calcula-cofins                      as log
field lg-calcula-pis-pasep                as log
field lg-calcula-csll                          as log
field lg-calcula-unico                       as log
field lg-calculo-especifico               as log
field lg-valor-pacote                         as log

field nm-arquivo-imp                       as char
field cd-evento-imp                         like evenfatu.cd-evento
field lg-considera-prest-imp            as log

field dt-vencimento                         as date
field lg-gera-evento-deb-imp         as log

field lg-habilita                                as log.

Definição campo a campo da tabela de saída tmp-cpc-pp0410o-saida

  • lg-undo-retry – Variável que controla os erros que podem ocorrer na CPC.
  • ds-mensagem-retorno – Variável que recebe a descrição dos erros que ocorreram na CPC.
  • lg-calcula-cofins – Variável que retorna se calcula cofins para o prestador.
  • lg-calcula-pis-pasep – Variável que retorna se calcula pis-pasep para o prestador.
  • lg-calcula-csll – Variável que retorna se calcula csll para o prestador.
  • lg-calcula-unico – Variável que retorna se calcula imposto único para o prestador.
  • lg-calculo-especifico – Variável que retorna se será executado calculo especifico após a previsão/calculo do pagamento de prestadores no programa ppapi001.p através da cpc-ppapi001.p.
  • lg-valor-pacote - Variável que retorna se deverá ou não ser considerado o valor do pacote, mesmo que o sistema tenha calaculado um valor de pagamento inferior ao cadastrado no pacote, como sendo o valor de pagamento do movimento.
  • nm-arquivo-imp - Nome do arquivo CSV a ser importado.
  • cd-evento-imp - Código do evento que será criado.
  • lg-considera-prest-imp - Variável que indica se considera prestadores excluídos/suspensos
  • lg-gera-evento-deb-imp - Variável que indica se cria ou não evento (movipres).
  • lg-habilita- Indica se será habilitado ou campos data vencimento em tela.


Tabela de saída wk-movto

def {1} temp-table wk-movto no-undo

field rowid-movto                          as rowid
field ds-tipo-movto                       as char format "x(09)"
field cd-movto                               as int format "99999999"
field cd-tipo-insu                           like mov-insu.cd-tipo-insumo
field cd-unidade                            like moviproc.cd-unidade
field cd-transacao                         like moviproc.cd-transacao
field nr-serie-doc-original            like moviproc.nr-serie-doc-original
field nr-doc-original                      like moviproc.nr-doc-original
field nr-doc-sistema                     like moviproc.nr-doc-sistema
field qt-movto                                like moviproc.qt-procedimentos
field dt-real                                    like moviproc.dt-realizacao
field cd-unidade-pres                    like preserv.cd-unidade
field cd-prestador                          like preserv.cd-prestador
field c-asterisco                            as char
index wk-movto1
cd-unidade-pres
cd-prestador
cd-movto
dt-real.

Definição campo a campo da tabela de saída wk-movto

  • rowid-movto – ROWID do movimento selecionado;
  • ds-tipo-movto – Descrição do tipo do movimento;
  • cd-movto – Código do movimento (procedimento/insumo);
  • cd-tipo-insumo – Código do tipo do insumo, se movimento for insumo;
  • cd-unidade – Código da Unidade prestadora;
  • cd-transacao – Código da Transação do movimento/documento;
  • nr-serie-doc-original – Número de Série do Documento;
  • nr-doc-sistema – Número do Documento;
  • qt-movto – Quantidade de movimentos realizados;
  • dt-real – Data de realização dos movimentos
  • cd-unidade-pres – Código da Unidade do prestador executante;
  • cd-prestador – Código do prestador ejecutante;
  • c-asterisco – Indicador de seleção do movimento. Se igual a "*" então o movimento foi selecionado.


Tabela de saída wk-prest

def {1} temp-table wk-prest no-undo

field cd-unidade-pagamento              like moviproc.cd-unidade-pagamento
field cd-prestador-pagamento           like moviproc.cd-prestador-pagamento
field cd-unidade-prestador                 like notapres.cd-unidade-prestador
field cd-prestador                               like notapres.cd-prestador.

Definição campo a campo da tabela de saída wk-prest

  • cd-unidade-pagamento – Códido da unidade de pagamento;
  • cd-prestador-pagamento – Código do prestador de pagamento;
  • cd-unidade-prestador - Código da unidade da fatura do RC;
  • cd-prestador – Código do prestador da fatura do RC;