Histórico da Página
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 e;
- 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 pp0410 pp0410o.p dentro da procedure imp-parametros é executado a cpc que irá atribuir o valor a variável que sera exibida no relatório.
Pontos de Utilização
- "BASE-IMPOSTOS"; "CALC-EVE-EXTR", "FIM-SELECAO", "CALC-ESPECIFICO", "PAGTO-PACOTE", "DATA-PRODUCAO" e "ALT-PREST", "APÓS-IMP-PARAM".
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
- 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 field nm-ponto-chamada-cpc as char format "x(15)"
field in-evento-programa as char format "x(20)"like titupres.cd-tipo-medicina
field cd-unidade -tipo-medicina-fim like preservtitupres.cd-tipo-unidademedicina
field cd-prestador aa-fatura-ini like preservmoviproc.cdaa-prestadorfatura
field cd-fornecedor aa-fatura-fim like preservlike moviproc.cdaa-contratantefatura
field dtcd-serie-anoref ini like perimovi.dt-anoref
field nr-perref like moviproc.cd-serie-nf
field cd-serie-fim like perimovimoviproc.nrcd-serie-perrefnf
field vlnr-base-cofins fatura-ini like titupreslike moviproc.vl-base-inss-movtonr-fatura
field vlnr-basefatura-csll fim like titupreslike moviproc.vl-base-inss-movtonr-fatura
field vlcd-base-pis-pasep local-ini like titupreslocaaten.vlcd-baselocal-inss-movtoatendimento
field dt-producao cd-local-fim as date like locaaten.cd-local-atendimento
field cd-unidade-operadora lg-transacao like preserv.cd-unidadeas log
field vl-base-imp-unico lg-procedimento like titupres.vl-base-inss-movtoas log
field cd-unidade-sel lg-insumo like preserv.cd-unidade as log
field cd-tipo-medicina-ini lg-periodo like titupres.cd-tipo-medicina as log
field cdin-tipo-medicina-fim liberado-1 like titupres.cd-tipo-medicina
field aa-fatura-ini as char format "x(1)"
field in-liberado-2 like moviproc.aa-fatura
field aa-fatura-fim as char format "x(1)"
field cd-transacao-ini like moviproc.aacd-fatura transacao
field cd-serie-ini transacao-fim like moviproc.cd-serie-nf transacao
field cd-unidade-serieprincipal-fim ini like preserv.cd-unidade
field cd-unidade-principal-fim like moviprocpreserv.cd-serie-nf unidade
field nrcd-prestador-faturaprincipal-ini like moviproc.nr-fatura
field nr-fatura like preserv.cd-prestador
field cd-prestador-principal-fim like moviproc.nr-fatura
field cd-local-ini like preserv.cd-prestador
field in-selec-benef like locaaten.cd-local-atendimento as char
field cdlg-local -fim like locaaten.cd-local-atendimento
field lg-transacao as log
field in-calculo-pagamento as log
field lg-procedimento as char format "x(1)"
field cd-tipo-insumo as loglike insumos.cd-tipo-insumo
field lgcd-proc-insumo like insumos.cd-insumo
field cd-pacote as log
field lg-periodo as logint64
field in-liberado-1 dt-realizacao as char format "x(1)"
field in-liberado-2 like moviproc.dt-realizacao
field dt-vencimento as char format "x(1)"
field cd-transacao-ini like moviproc.dt-realizacao
field vl-producao like moviproc.cd-transacao
field cd-transacao-fim titupres.vl-producao-movto
field lg-per-anterior as log
field ds-processo-aux like moviproc like pagapres.cdds-transacaoprocesso
field cdin-unidade-principal-ini like preserv.cd-unidade tipo-fatura as integer
field cd-unidade-principal-fim like contratante like preserv.cd-unidade contratante
field cd-prestador-principal-ini like preserv.cd-prestadorlg-pagamento-unificado as log initial false
field cd-prestador-principal-fim unidade-prestador like preservnotapres.cd-unidade-prestador
field incd-selec-benef serie-nf as char like notapres.cd-serie-nf
field lgcod-fatur-local ap as log
field in-calculo-pagamento like notapres.cod-fatur-ap
field nr-fatura as char format "x(1)"
field cd-tipo-insumo like insumos.cd-tipo-insumo
field cd-proc-insumo like notapres.nr-fatura
field h-tmp-prestador as handle
field i-num-ped-exec-rpw like insumos.cd-insumoas int
field cd-pacote nm-arquivo like paproins.cd-pacote
field dt-realizacao like moviproc.dt-realizacao
field dt-vencimento like moviproc.dt-realizacao
field vl-producao like titupres.vl-producao-movto.
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 – pode assumir os valores "LIMPA-TEMP", "ARMAZENA-IMPOSTO", "BUSCA-IMPOSTO", "CALCULO-PREVISAO".
- 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;
- Aa-fatura-ini – Ano da fatura inicial;
- Aa-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.
Tabela de saída tmp-cpc-pp0410o-saida
def temp-table tmp-cpc-pp0410o-saida no-undo
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 field lg-undo-retry as as log
field dslg-mensagem-relatorio calculo-especifico as char format "x(75)"as log
field lg-calcula-cofins valor-pacote as log
field lg-calculanm-pis-pasep arquivo-imp as logchar
field lgcd-calcula-csll evento-imp like evenfatu.cd-evento
field lg-considera-prest-imp as log
field lg-calcula-unico dt-vencimento as logdate
field lg-gera-evento-calculodeb-especifico imp as as log field lg-valor-
pacote field lg-habilita as log.
...
- 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.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-cofins unico – Variável que retorna se calcula cofins para o prestadorimposto ú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-calculavalor-pispacote - 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.
...
- 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 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 like moviproc.qt-procedimentos
field dt-real like moviproc.dt-realizacao
field cd-unidade-pres like like preserv.cd-unidade
field cd-prestador like preserv.cd-prestador
field c-asterisco as as char
index wk-movto1
cd-unidade-pres
cd-prestador
cd-movto
dt-real.
...
- rowid-movto – ROWID do movimento selecionado;
- Dsds-tipo-movto – Descrição do tipo do movimento;
- Cdcd-movto – Código do movimento (procedimento/insumo);
- Cdcd-tipo-insumo – Código do tipo do insumo, se movimento for insumo;
- Cdcd-unidade – Código da Unidade prestadora;
- Cdcd-transacao – Código da Transação do movimento/documento;
- Nrnr-serie-doc-original – Número de Série do Documento;
- Nrnr-doc-sistema – Número do Documento;
- Qtqt-movto – Quantidade de movimentos realizados;
- Dtdt-real – Data de realização dos movimentos
- Cdcd-unidade-pres – Código da Unidade do prestador executante;
- Cdcd-prestador – Código do prestador ejecutante;
- Cc-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 like moviproc.cd-unidade-pagamento
field cd-prestador-pagamento like moviproc.cd-prestador-pagamento
field cd-unidade-prestador like like notapres.cd-unidade-prestador
field cd-prestador prestador like 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;
- Variáveis de saídaaída lg-considera-wk-movto
- def {1} var lg-considera-wk-movto as log.
- Definição campo a campo das variáveis de saída
- -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;lg-considera-wk-movto – Indica se deverá ou não ser considerado os movimentos da tabela wk-movto no processo de seleção dos movimentos realizados.