Árvore de páginas

Versões comparadas

Chave

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

Tempo aproximado para leitura: 05 min

ÍNDICE

Índice
maxLevel5
indent8.1.1
exclude.*ndice
stylenone

01. VISÃO GERAL

A rotina FINA645 - PDD (Provisão de Devedores Duvidosos) constitui a provisão para devedores duvidosos.

Outras denominações dessa provisão:

  • Perdas Estimadas em Créditos de Liquidação Duvidosa (PECLD).
  • Provisão para Perdas Sobre Créditos (PPSC).
  • Provisões para Créditos de Liquidação Duvidosa (PCLD).

Esta provisão cobre perdas prováveis no recebimento das duplicatas. Assim, uma vez constituída tal provisão e, não ocorrendo o recebimento de algumas duplicatas pela empresa, essas eram obrigatoriamente baixadas em contrapartida com a Provisão para Devedores Duvidosos.

Por exemplo: Se ao final do ano, o total de perdas não atingisse o valor da Provisão, a sobra era revertida, ou seja, era contabilizada como receita, zerando a Provisão antiga, para na sequência efetuar-se uma nova Provisão para Provisão para o ano seguinte.


Importante: Rotina disponibilizada a partir do release 12.1.25

02. EXEMPLO DE UTILIZAÇÃO


Expandir
titleConstituição da provisão para devedores duvidosos


Expandir
titleFluxograma Macro

expand
Expandir
titleDescrição do processo
  1. Pré-requisito:
    1. Crie uma situação de cobrança de PDD no sistema através da rotina de cadastro FINA022 - Situação de Cobrança. (Ex: A - Carteira PDD)
    2. Cadastre a situação de cobrança:
      1. Usa Banco (FRV_BANCO) = Não.
      2. Situação PDD (FRV_SITPDD) = Sim.
  2. Acesse Financeiro / Miscelânea Atualizações / Contábil / Provisão de PDDContas a Receber / Provis Dev Duvidos (FINA645).
  3. Clique na opção Constituição.
  4. Na tela apresentada, selecione os seguintes critérios de provisão:
    1. Data Referência?
      1. Data de referência para a contagem do atraso do título.

    2. Dias de Atraso?
      1. Quantidade de dias de atraso para considerar os títulos para provisão.

    3. Transferir para Provisão? 
              Exemplo: Dias de atraso = 90. 
      1. Todos os Títulos
        1. Serão considerados todos os títulos vencidos e a vencer do cliente que tenha atraso superior a 90 dias (90+1) e esteja dentro do range de data de emissão.
      2. Títulos vencidos
        1. Serão considerados apenas os títulos vencidos do cliente que tenha atraso superior a 90 dias (90+1).
      3. Títulos vencidos após dias de atraso.
        1. Serão considerados apenas os títulos atrasados a mais de 90 dias (90+1).

    4. Cliente De?
      1. Selecione o cliente inicial para seleção dos títulos que pretende filtrar.

    5. Loja De?
      1. Selecione a loja do cliente inicial para seleção dos títulos que pretende filtrar.

    6. Cliente Até?
      1. Selecione o cliente final para seleção dos títulos que pretende filtrar.

    7. Loja Até?
      1. Selecione a loja do cliente final para seleção dos títulos que pretende filtrar.

    8. Emissão de?
      1. Selecione a data inicial da emissão dos títulos que pretende filtrar.

    9. Emissão Até?
      1. Selecione a data final da emissão dos títulos que pretende filtrar.

    10. Seleciona Filial?
      1. Sim
        1. Aparecerá uma tela de seleção de filiais após a confirmação das perguntas.
        2. Serão processados os registros das filiais selecionadas.
      2. Não
        1. Serão processados apenas os registros da filial corrente.

    11. Situação de Cobrança PDD?
      1. Informe qual a situação de cobrança PDD que os títulos serão transferidos após efetivação.

    12. Considera Títulos Baixados por Negociação?
      1. Sim
        1. Caso o título seja baixado pela rotina Liquidação (FINA460) e o seu vencimento se enquadre no critério de PDD, ele deve ser considerado para a constituição do PDD.
        2. Para o título pai não ser considerado mais para o PDD, todos os títulos filhos deverão estar baixados.
        3. Caso sejam liquidados múltiplos títulos em uma negociação, será considerado o prazo do título mais velho para considerar ele no critério de PDD.
Aviso
titleAtenção

Para seleção dos título liquidados, é preciso que esteja na estrutura de tabelas atual o FINA460, ou seja, que tabelas Cabeçalho de Simulação (FO0), Títulos Negociados (FO1), Títulos Gerados (FO2)gravadas 

      1. Não
        1. Os títulos negociados não serão considerados para o PDD.

        2. Após a confirmação, o sistema seleciona os clientes e
  1. Não
    Os títulos negociados não serão considerados para o PDD.
    Após a confirmação, o sistema seleciona os clientes e
        1. os títulos conforme os critérios parametrizados pelo usuário e apresenta a tela de seleção de clientes/Títulos. 

        2. Selecione os clientes ou títulos.

        3. Confirme e o sistema grava a provisão com status Simulação.

        4. Seleciona a provisão e clique em Efetivar para confirmar a operação.
          Nesta etapa, o sistema:
          1. Transfere os títulos selecionados para a situação de cobrança em PDD.
          2. Executa o lançamento padrão de Provisão de Devedores Duvidosos.
          3. Grava a provisão com o status de Efetivado.

          Nesse lançamento, as seguintes tabelas estarão posicionadas para ajudar a configuração do lançamento padrão:
          1. Cliente (SA1)
          2. Títulos a Receber (SE1)
          3. Natureza (SED)

          O sistema cria um documento contábil por filial selecionada.

Importante: Caso algum título de um cliente em PDD seja incluído após a constituição, o título será transferido para provisão apenas na próxima vez que o usuário executar o processamento da rotina.

    1. O título com a situação de PDD não poderá ser alterado ou excluído do sistema.
    2. A situação de cobrança PDD não poderá ser utilizada pela rotina de transferência (FINA060 e FINA061).
    3. A rotina de transferência não poderá transferir títulos em PDD.
    4. Será incluído o lançamento padrão 54A para a contabilização do lançamento. Esse lançamento não será chamado pela rotina CTBAFIN - Contabilização off-line.


Aviso
title
Exemplos de utilização
Outras Ações

Acessando o menu "Outras Ações" serão apresentadas as opções adicionais da rotina:

  • Inverte Seleção Clientes: Irá inverter a marcação dos clientes em tela na grid central da tela (clientes)
  • Inverte Seleção Títulos: Irá inverter a marcação dos títulos em tela na grid inferior da tela (títulos)
  • Situação PDD Clientes: Todos os títulos de todos os clientes da provisão serão alterados
  • Situação PDD Títulos: Todos os títulos de todos do cliente selecionado serão alterados
    • Nas opções "Situação PDD Clientes" e "Situação PDD Títulos", antes do processamento, será apresentada uma nova tela solicitando os parâmetros adicionais (print abaixo):

Image Added

Expandir
titleExemplos de utilização


Expandir
titleEx.: 001 - Seleção de títulos e clientes

A seleção de títulos e clientes será com base nas informações da tabela abaixo:

ClientePrefixoTítulosEmissãoVencimento
Expandir
titleEx.: 001 - Seleção de títulos e clientes

A seleção de títulos e clientes será com base nas informações da tabela abaixo:

ClientePrefixoTítulosEmissãoVencimentoBaixaVencerValorObservação
A00100000101/10/201731/10/2017
120R$ 100,00mais 90 dias
A00100000201/11/201711/12/2017
89R$ 100,00mais de 61 a 90 dias
A00100000305/03/201816/04/2018
-45R$ 100,00a vencer
B00200000401/11/201711/12/2017
79R$ 120,00mais de 61 a 90 dias
B00200000502/02/201814/03/2018
-14R$ 120,00a vencer
C00300000601/10/201710/11/201710/11/20170R$ 90,00pago
C00300000702/01/201811/02/201811/02/20180R$ 90,00pago
D00400000801/10/201731/10/2017
120R$ 150,00mais 90 dias
D00400000905/03/201816/04/2018
-45R$ 150,00a vencer


Parametrização da rotina para simular a constituição da provisão:

Data de Referencia ?28/02/2018
Dias de Atraso ?90
Transferir para Provisão ?Todos os títulos
Cliente De ?A
Loja De ?01
Cliente Ate ?D
Loja Ate?01
Emissão De ?01/10/2017
Emissão Ate ?07/01/2019
Seleciona Filial ?1
Sit. Cobrança PDD ?A
Seleciona Sit. de Cobrança ?Sim
Considera Negociados ?Sim


O sistema exibe os seguintes títulos, de acordo com as parametrizações:


  • Transferir para Provisão = Todos os Títulos
ClientePrefixoTítulosEmissãoVencimentoBaixaVencerValorObservação
A00100000101/10/201731/10/2017
120R$ 100,00mais 90 dias
A00100000201/11/201711/12/2017
89R$ 100,00mais de 61 a 90 dias
A00100000305/03/201816/04/2018
-45R$ 100,00a vencer
D00400000801/10/201731/10/2017
120R$ 150,00mais 90 dias
D00400000905/03/201816/04/2018
-45R$ 150,00a vencer


  • Transferir para Provisão = Títulos Vencidos
ClientePrefixoTítulosEmissãoVencimentoBaixaVencerValorObservação
A00100000101/10/201731/10/2017
120R$ 100,00mais 90 dias
A00100000201/11/201711/12/2017
89R$ 100,00mais de 61 a 90 dias
D00400000801/10/201731/10/2017
120R$ 150,00mais 90 dias


  • Transferir para Provisão = Vencidos Após Atraso
ClientePrefixoTítulosEmissãoVencimentoBaixaVencerValorObservação
A00100000101/10/201731/10/2017
120R$ 100,00mais 90 dias
D00400000801/10/201731/10/2017
120R$ 150,00mais 90 dias


Expandir
titleEx.: 002 - Seleção de títulos negociados

O cliente E possui os seguintes títulos:

ClientePrefixoTítulosEmissãoVencimentoBaixaVencerValorObservação
E00500001001/10/201731/10/2017
120R$ 100,00mais 90 dias
E00500001102/12/201711/01/2018
45R$ 100,00mais 30 as 60 dias
E00500001202/02/201814/03/2018
-14R$ 100,00a vencer
E00500001305/03/201514/04/2018
-45R$ 100,00a vencer


Data da negociação: Março de 2018.

Títulos: 000010, 000011 e 000012.

Parcelas: 2 X R$ 200,00 (150,00 + 50,00 de juros).

Vencimento de cada parcela: 30/04/2018, 30/05/2018.

ClientePrefixoTítulosParcelaEmissãoVencimentoBaixaVencerValorAcréscimoObservação
E005000010
01/10/201731/10/201731/03/2018120R$ 100,00
mais 90 dias
E005000011
02/12/201711/01/201831/03/201848R$ 100,00
mais 30 as 60 dias
E005000012
02/02/201814/03/201831/03/2018-14R$ 100,00
a vencer
E005000013
05/03/201514/04/2018
-48R$ 100,00
a vencer
E005

000014

00131/03/201830/04/2018
-30R$ 200,00R$ 50,00a vencer
E005000014

002

31/03/201830/05/2018
-60R$ 200,00R$ 50,00a vencer


Parametrização da rotina para simular a constituição da provisão:

Data de Referencia ?31/03/2018
Dias de Atraso ?90
Transferir para Provisão ?Todos os títulos
Cliente De ?E
Loja De ?01
Cliente Ate ?E
Loja Ate?01
Emissão De ?01/10/2017
Emissão Ate ?07/01/2019
Seleciona Filial ?1
Sit. Cobrança PDD ?A
Seleciona Sit. de Cobrança ?Sim
Considera Negociados ?Sim


O sistema exibe os seguintes títulos:

ClientePrefixoTítulosParcelaEmissãoVencimentoBaixaVencerValorAcréscimoObservação
E005000013
05/03/201514/04/2018
-48R$ 100,00
a vencer
E005

000014

00131/03/201830/04/2018
-30R$ 200,00R$ 50,00a vencer
E005000014

002

31/03/201830/05/2018
-60R$ 200,00R$ 50,00a vencer


Importante: Quando o título foi negociado (Liquidado), para composição dos valores devidos e estipular o período de atraso, considera-se os dados do título pai, onde o cliente adquiriu a divida e não o prazo renegociado.


Expandir
Expandir
titleReversão de Provisão para Perdas Sobre Créditos


Expandir
titleFluxograma Macro

Expandir
titleDescrição do processo

Descrição do processo

  1. Pré-requisito:
    1. Para efetuar a reversão do PDD é necessário que antes tenha sido efetuada uma constituição de PDD.
  2. Acesse 
  3. Acesse Financeiro / Miscelaneas Atualizações / Contábil / Provisão de PDDContas a Receber / Provis Dev Duvidos (FINA645).
  4. Clique na opção Reversão.
  5. Na tela apresentada, selecione os seguintes critérios de provisão:
    1. Reverter Provisão? 

      1. Todos os Títulos. 

      2. Apenas títulos baixados. 

        1. A reversão nessa opção também trata as seguintes situações: 

          1. Baixas de Titulo .

          2. Prorrogação de Título

          3. Renegociação.

          4. Liquidação.

      3. Abertos 

        1. Reverte apenas os títulos em aberto.

    2. Cliente De?
      1. Selecione o cliente inicial para seleção dos títulos que pretende filtrar.

    3. Loja De?
      1. Selecione a loja do cliente inicial para seleção dos títulos que pretende filtrar.

    4. Cliente Até?
      1. Selecione o cliente final para seleção dos títulos que pretende filtrar.

    5. Loja Até?
      1. Selecione a loja do cliente final para seleção dos títulos que pretende filtrar.

    6. Seleciona Filial?
      1. Sim
        1. Serão processados os registros das filiais selecionadas.
      2. Não
        1. Serão processados apenas os registros da filial corrente.

    7. Data Referência?
      1. Data de referência para a contagem do atraso do título.
      2. O atraso é calculado pelo intervalo de dias entre a data aqui informada e o vencimento do título (E1_VENCTO). Já o atraso real considera o vencimento real do título (E1_VENCREA)
    8. Data de Constituição de?
      1. Informe a data da constituição inicial para seleção dos títulos.
      2. Essa informação será utilizada para filtrar o período e localizar os títulos para a reversão, através do campo FJX_DTREF
      Data de Constituição de?
      1. Informe a data da constituição inicial para seleção dos títulos.
    9. Data de Constituição até?
      1. Informe a data da constituição final para seleção dos títulos.
      2. Essa informação será utilizada para filtrar o período e localizar os títulos para a reversão, através do campo FJX_DTREF.
    10. Tit. Baixados Após Dt. Ref.?
      1. Sim: Irá reverter os títulos que tem sua baixa (E1_BAIXA) maior que a data de referência da provisão (FJX_DTREF).

      2. Não: Irá reverter os títulos que tem sua baixa (E1_BAIXA) entre a data de referência da provisão (FJX_DTREF) e data de referencia (MV_PAR07).

  6. Após a confirmação o sistema seleciona os clientes e os títulos conforme critérios parametrizados pelo usuário e apresenta a tela de seleção de clientes/Títulos. 

  7. Selecione os clientes ou títulos.

  8. Confirme e o sistema grava a reversão de provisão com status Simulação.

  9. Selecione a provisão Após a confirmação o sistema seleciona os clientes e os títulos conforme critérios parametrizados pelo usuário e apresenta a tela de seleção de clientes/Títulos. 
    Selecione os clientes ou títulos.
    Confirme e o sistema grava a reversão de provisão com status Simulação.
    Selecione a provisão e clique em Efetivação da Reversão para confirmar a operação.
    Nesta etapa, sistema:
    1. Transfere os títulos para os bancos e situações anteriores da provisão.
    2. Executa o lançamento padrão de Reversão de Provisão de Devedores Duvidosos.
    3. Grava nas tabelas de provisão o código da reversão dos títulos revertidos.
  10. O sistema cria um documento contábil por filial selecionada.

    Importante
    : A reversão de títulos de PDD, mesmos para os títulos já baixados será realizada , serão realizadas pela nova rotina FINA645

    F645TITF

    .
    Será incluído o lançamento padrão 54B para a contabilização do lançamento. Esse lançamento não será chamado pela rotina CTBAFIN - Contabilização off-line.
Expandir
titleRelatório Provisão de Devedores Duvidosos (FINR645)

O relatório Provisão de Devedores Duvidosos (FINR645) demonstra os clientes e títulos que constituíram a provisão.


O relatório foi desenvolvido utilizando a tecnologia TReport, onde permite a inclusão de campos da
tabela de provisão, títulos a receber (SE1), Clientes (SA1), Complemento de Cliente (AI0), Nota fiscal
de Saída (SD2) e Situação de Cobrança (FRV), Produto (SB1), Complemento de Produto (SBM) e
Referência do Contas a Receber(SK1).


Parâmetros do relatório:

    1. Cliente De?
      1. Selecione o cliente inicial para seleção dos títulos que pretende filtrar.

    2. Loja De?
      1. Selecione a loja do cliente inicial para seleção dos títulos que pretende filtrar.

    3. Cliente Até?
      1. Selecione o cliente final para seleção dos títulos que pretende filtrar.

    4. Loja Até?
      1. Selecione a loja do cliente final para seleção dos títulos que pretende filtrar.

    5. Código da Provisão?
      1. Informe a provisão que será listada no relatório. Parâmetro do tipo range, possibilitando intervalos com ponto e vírgula.

    1. Data Provisão Inicial?
      1. Selecione a data inicial da provisão que pretende filtrar.

    2. Data Provisão Final?
      1. Selecione a data final da provisão que pretende filtrar.

    3. Demonstra?
      1. Todos
      2. Constituídos
      3. Revertidos

    4. Seleciona Filial
      1. Sim
        1. Serão processados os registros das filiais selecionadas.
      2. Não
        1. Serão processados apenas os registros da filial corrente.
    5. Situação de cobrança
      1. Informe quais situações de cobrança serão consideradas no relatório.

    6. Mostra Rateio NF
      1. Defina se mostrará o rateio por item lançado na nota fiscal.

    7. Status Proc.?
      1. Todos
      2. Simulados
      3. Efetivados

    8. Data de Referência De?
      1. Selecione a data inicial de referência que pretende filtrar.

    9. Data de Referência Até?
      1. Selecione a data final de referência que pretende filtrar.
Expandir
titleContabilização

A constituição de PDD e a reversão da constituição serão contabilizadas a partir dos lançamentos padrão:


CódigoDescrição

Tabelas posicionadas

54A

Constituição PDD

SA1 | SE1 | FJZ
54BReversão PDDSA1 | SE1 | FJZ
54C

Constituição PDD com Rateio por Item da Nota

SA1 | SE1 | FJZ |FWZ
54D

Reversão da Constituição PDD com Rateio por Item da Nota

SA1 | SE1 | FJZ |FWZ
54EConstituição PDD com títulos de origem no módulo PLSSA1 | SE1 | BM1
54FReversão PDD com títulos de origem no módulo PLSSA1 | SE1 | BM1

03. PARÂMETROS


Nome da VariávelMV_PDDREF
TipoCaracter
Descrição

Campo para considerar na regra do PDD:
1= Vencimento Real (E1_VENCREA)
2 = Vencimento do Título (E1_VENCTO)
3 = Vencimento Original (E1_VENCORI)

Valor Padrão1
Nome da VariávelMV_PDDRTNF
TipoNumérico
Descrição

Indica se a rotina de PDD irá realizar o rateio por item da nota fiscal que gerou o título.
1=Sim ou 2= Não

Valor Padrão2
Nome da VariávelMV_PDDACRE
TipoCarácter
Descrição

Selecione se o saldo liquido do PDD irá considerar o acréscimo e decréscimo do título.
1=Sim ou 2= Não

Valor Padrão1

04. PONTOS DE ENTRADA

05. TABELAS UTILIZADAS

Nome da VariávelMV_BAIXPDD
TipoLógico
Descrição

Indica se a rotina de PDD irá considerar também os títulos baixados em sua totalidade com atraso.
.T. = Irá considerar títulos baixados com atraso.
.F. = Não Irá considerar títulos baixados com atraso.

Obs.: Este parâmetro será incorporado ao produto a partir do release 12.1.27. Havendo necessidade de uso é possível a inclusão do mesmo através do módulo configurador.

Valor Padrão.F.


04. PONTOS DE ENTRADA


05. TABELAS UTILIZADAS


ChaveNomeModoPYME
FJXProcessamento PDDCS
FJYClientes em PDDCS
FJZTítulos ProvisicionadosCS
ChaveNomeModoPYME
FJXProcessamento PDDCS
FJYClientes em PDDCS
FJZTítulos ProvisicionadosCS
FWZRateio de Tìtulos PDDCS
FRVSituação de CobrançaCS


06. EXECUÇÃO AUTOMÁTICA

- FINA645

Para a correta execução automática da ExecAuto do rotina FINA645, é necessario necessário informar os parametros parâmetros da função conforme abaixo:

lAutomato     = .T.

nOperation = Informar qual a operação deverá ser realizada.

  • Constituição    = 43
  • Efetivação        = 4
  • Alteração         = 47
  • Reversão          = 45
  • Exclusão           = 58
  • Efetivação da Reversão = 46

aSitCob    = Este array deverá receber quais são as Situações de Cobranças que devem ser tratadas para o filtro.

Ex.:  Aadd(aSitCob, '0')
       Aadd(aSitCob, '3')
       Aadd(aSitCob, '4')
       Aadd(aSitCob, '5')
       Aadd(aSitCob, '6')
       Aadd(aSitCob, '7')

cNroProc    = Numero do Processo Gerado da tabela FJX.

aDdsAlt = Este array deverá receber qual quais as informações da chave que será pesquisada serão pesquisadas na tabela FJZ e quais as alterações que devem ser efetuadas. A variavel variável lGrvOk será utilizada para marcar ou desmarcar o titulotítulo, e a variavel variável cSitCob será usada para alteração da situação de cobrança.

Ex.:  Aadd(aDdsChv, xFilial("FJZ") )
       Aadd(aDdsChv, cNroProc     )
       Aadd(aDdsChv, cItemCliZ     )
       Aadd(aDdsChv, cItemZ         )
       Aadd(aDdsChv, cFilCliZ        )
       Aadd(aDdsChv, cPref           )
       Aadd(aDdsChv, cNum         )
       Aadd(aDdsChv, cParc          ) 
       Aadd(aDdsChv, cTipo          )

lGrvOk  := .F.

cSitCob := "2"

Aadd(aDdsAlt, { cSitCob, aDdsChv, lGrvOk } )

Execuções implementadas

Parâmetros a serem preenchidos

Constituição

FINA645(lAutomato, nOperation, aSitCob )
EfetivaçãoFINA645(lAutomato, nOperation, aSitCob, cNroProc  )

Alteração

FINA645(lAutomato, nOperation, aSitCob, cNroProc  )

Reversão

FINA645(lAutomato, nOperation, aSitCob, cNroProc  )
Efetivação da ReversãoFINA645(lAutomato, nOperation, , cNroProc,  aDdsAlt )
ExclusãoFINA645(lAutomato, nOperation,  , cNroProc  )


Para a execução da Constituição deverá ser alimentado o Grupo de Perguntas e Respostas correspondente (FINA645C), conforme exemplo abaixo:

Grupo de Perguntas e Respostas - FINA645C
Data de Referência?Data ReferenciaMV_PAR01
Número de dias de atraso?Qtde de dias para atrasoMV_PAR02
Transferir para Provisão?1 = Sim ou 2 = NãoMV_PAR03
Cliente De?Código do Cliente DeMV_PAR04
Loja do Cliente De?Loja do Cliente DeMV_PAR05
Cliente Ate?Código do Cliente AteMV_PAR06
Loja do Cliente Ate?Loja do Cliente AteMV_PAR07
Emissão De?Data da Emissão do Título DeMV_PAR08
Emissão Ate?Data da Emissão do Título AteMV_PAR09
Seleciona Filial?1 = Sim ou 2 = NãoMV_PAR10
Situação de Cobrança PDD?Informe a situação da cobrançaMV_PAR11
Seleciona Sit. de Cobrança?1 = Sim ou 2 = NãoMV_PAR12
Considera Negociados?1 = Sim ou 2 = NãoMV_PAR13


Para a execução da Efetivação, Efetivação da Reversão e Alteração deverá ser alimentado informado o Grupo de Perguntas e Respostas correspondente (FINA645D), conforme exemplo abaixo:

Grupo de Perguntas e Respostas - FINA645D
Mostra Lançamento?1 = Sim ou 2 = NãoMV_PAR01
Aglutina Lançamento?1 = Sim ou 2 = NãoMV_PAR02
Considera movimento posterior geração do processo?1 = Sim ou 2 = NãoMV_PAR03


Para a execução da Reversão deverá ser alimentado o informado Grupo de Perguntas e Respostas correspondente (FINA645E), conforme exemplo abaixo:

Grupo de Perguntas e Respostas - FINA645E
Reverter Provisão?1 = Todos / 2 = Titulos Baixados / 3 = AbertosMV_PAR01
Cliente De?Código do Cliente DeMV_PAR02
Loja do Cliente De?Loja do Cliente DeMV_PAR03
Cliente Ate?Código do Cliente AteMV_PAR04
Loja do Cliente Ate?Loja do Cliente AteMV_PAR05
Seleciona Filial?1 = Sim ou 2 = NãoMV_PAR06
Data de RefenrenciaData ReferenciaMV_PAR07
Emissão De?Data da Emissão do Título DeMV_PAR08
Emissão Ate?Data da Emissão do Título AteMV_PAR09
MV_PAR08
Emissão Ate?Data da Emissão do Título AteMV_PAR09


07. EXEMPLO DE EXECUÇÃO AUTOMÁTICA

Bloco de código
languagejava
themeMidnight
titleExemplo de rotina automática - Constituição
collapsetrue
#include "protheus.ch"
#include "topconn.ch"
#include "RWMAKE.CH"
#include "TBICONN.CH"

/*/{Protheus.doc} F645Const

Constituição PDD

@type function
@version 1.0
@author totvs
@return nil
/*/
User Function F645Const()

    Local lAutomato := .T.
    Local nOperation:= 3
    Local aSitCob   := {}

    Private lMsErroAuto := .f. 
	Private lAutoErrNoFile	:= .T.

    PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01"

    //Situações de cobrança a serem filtradas
	Aadd(aSitCob, '0')
	Aadd(aSitCob, '3')
	Aadd(aSitCob, '4')
	Aadd(aSitCob, '5')
	Aadd(aSitCob, '6')
	Aadd(aSitCob, '7')

    //Ajusta perguntas (F12)

    Pergunte("FINA645C",.F.) 

    SetMVValue("FINA645C","MV_PAR01", DDATABASE )              // Data de Referencia ?                                          
    SetMVValue("FINA645C","MV_PAR02", 1 )                      // Numero de dias de atraso ?                                                                                  
    SetMVValue("FINA645C","MV_PAR03", 3 )                      // Transferir para Provisao ?                                                 
    SetMVValue("FINA645C","MV_PAR04", "PDD001"  )              // Cliente De ?                                                                                 
    SetMVValue("FINA645C","MV_PAR05", "01" )                   // Loja do Cliente De ?                                                              
    SetMVValue("FINA645C","MV_PAR06", "PDD001"  )              // Cliente Ate ?                            
    SetMVValue("FINA645C","MV_PAR07", "01" )                   // Loja do Cliente Ate ?                          
    SetMVValue("FINA645C","MV_PAR08", CTOD("01/01/2001") )     // Emissão De ?                                     
    SetMVValue("FINA645C","MV_PAR09", CTOD("31/12/2049") )     // Emissão Ate ?                                                   
    SetMVValue("FINA645C","MV_PAR10", 2 )                      // Seleciona Filial ? 1 = Sim 2 = Não                                                              
    SetMVValue("FINA645C","MV_PAR11", "8" )                    // Situação de Cobrança PDD ?                                                                
    SetMVValue("FINA645C","MV_PAR12", 2 )                      // Seleciona Sit. de Cobrança ?  1 = Sim 2 = Não                                                                            
    SetMVValue("FINA645C","MV_PAR13", 2 )                      // Considera Negociados ?   1 = Sim 2 = Não  

    //Constituição
    MSExecAuto({|a,b,c| FINA645(a,b,c)},  lAutomato, nOperation, aSitCob )

    If !lMsErroAuto
        conout("sucesso! ")
    Else
        conout("Erro!")
        mostraErro()
    EndIf

Return
Bloco de código
languagejava
themeMidnight
titleExemplo de rotina automática - Efetivação da Constituição
collapsetrue
#include "protheus.ch"
#include "topconn.ch"
#include "RWMAKE.CH"
#include "TBICONN.CH"

/*/{Protheus.doc} F645EfeCon

Efetiva Constituição PDD

@type function
@version 1.0
@author totvs
@return nil
/*/
User Function F645EfeCon()

    Local lAutomato := .T.
    Local nOperation:= 4
    Local aSitCob   := {}
    Local cNroProc  := "000010"

    Private lMsErroAuto := .f. 
	Private lAutoErrNoFile	:= .T.

    PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01"

    //Ajusta perguntas (F12)
    Pergunte("FINA645D",.F.)        
    SetMVValue("FINA645D","MV_PAR01", 2 )  // Mostra Lançamento ?                                     
    SetMVValue("FINA645D","MV_PAR02", 2 )  // Aglutina Lançamento ?                                                                       
    SetMVValue("FINA645D","MV_PAR03", 2 )  // Considera movimento posterior geração do processo ?                                                     

    //Efetivação
    MSExecAuto({|a,b,c,d| FINA645(a,b,c,d)},  lAutomato, nOperation, aSitCob, cNroProc )

    If !lMsErroAuto
        conout("sucesso! ")
    Else
        conout("Erro!")
        mostraErro()
    EndIf

Return
Bloco de código
languagejava
themeMidnight
titleExemplo de rotina automática - Reversão da Constituição
collapsetrue
#include "protheus.ch"
#include "topconn.ch"
#include "RWMAKE.CH"
#include "TBICONN.CH"

/*/{Protheus.doc} F645Revers

Reversão da Constituição PDD

@type function
@version 1.0
@author totvs
@return nil
/*/
User Function F645Revers()

    Local lAutomato := .T.
    Local nOperation:= 5
    Local aSitCob   := {}
    Local cNroProc  := "000010"
    Local dDtRef    := CTOD("14/10/2021")
    Private lMsErroAuto := .f. 
	Private lAutoErrNoFile	:= .T.

    PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01"

    //Ajusta perguntas (F12)

    Pergunte("FINA645E",.F.) 
                                         
    SetMVValue("FINA645E","MV_PAR01", 1 )             // Reverter Provisão ? - 1 = Todos / 2 = Titulos Baixados / 3 = Abertos
    SetMVValue("FINA645E","MV_PAR02", "PDD001" )      // Cliente De ?                                                  
    SetMVValue("FINA645E","MV_PAR03", "01" )          // Loja do Cliente De ?             
    SetMVValue("FINA645E","MV_PAR04", "PDD001"  )     // Cliente Ate ?                            
    SetMVValue("FINA645E","MV_PAR05", "01" )          // Loja do Cliente Ate ?                 
    SetMVValue("FINA645E","MV_PAR06", 2  )            // Seleciona Filial ? 1 = Sim 2 = Não
    SetMVValue("FINA645E","MV_PAR07", dDtRef )        // Data de Refenrencia ?
    SetMVValue("FINA645E","MV_PAR08", dDatabase )     // Emissão De ?
    SetMVValue("FINA645E","MV_PAR09", dDatabase )     // Emissão Ate ?

    //Reversão da Constituição
    MSExecAuto({|a,b,c,d| FINA645(a,b,c,d)},  lAutomato, nOperation, aSitCob, cNroProc )

    If !lMsErroAuto
        conout("sucesso! ")
    Else
        conout("Erro!")
        mostraErro()
    EndIf

Return
Bloco de código
languagejava
themeMidnight
titleExemplo de rotina automática - Efetivação da eversão da Constituição
collapsetrue
#include "protheus.ch"
#include "topconn.ch"
#include "RWMAKE.CH"
#include "TBICONN.CH"

/*/{Protheus.doc} F645EfetRev

Efetiva a Reversão da Constituição PDD

@type function
@version 1.0
@author totvs
@return nil
/*/
User Function F645EfetRev()

    Local lAutomato := .T.
    Local nOperation:= 6  //Efetiva Reversão
    Local aSitCob   := {}
    Local cNroProc  := "000010"

    Private lMsErroAuto := .f. 
	Private lAutoErrNoFile	:= .T.

    PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01"

    //Ajusta perguntas (F12)
    Pergunte("FINA645D",.F.)        
    SetMVValue("FINA645D","MV_PAR01", 2 )  // Mostra Lançamento ?                                     
    SetMVValue("FINA645D","MV_PAR02", 2 )  // Aglutina Lançamento ?                                                                       
    SetMVValue("FINA645D","MV_PAR03", 2 )  // Considera movimento posterior geração do processo ?                                                     

    //Efetivação
    MSExecAuto({|a,b,c,d| FINA645(a,b,c,d)},  lAutomato, nOperation, aSitCob, cNroProc )

    If !lMsErroAuto
        conout("sucesso! ")
    Else
        conout("Erro!")
        mostraErro()
    EndIf

Return
HTML
<!-- esconder o menu --> 


<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;
}
</style>