Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

Operações de sistema

O serviço autônomo responsável por gerar lançamento é o GeracaoLancamentosContratosBatch
 que é executado uma vez ao dia, de acordo com o agendamento da classe GeracaoLancamentosContratosScheduler.

Seleção dos contratos

Este batch seleciona todos os contratos que cumpram os seguintes critérios:

...

#

...

Campo

...

Descrição

...

1

...

Tipo de registro

...

O campo "Tipo de registro" do contrato deve ser igual a "Locação".

...

2

...

Contrato ativo

...

O campo "Ativo" deve ser igual a "Verdadeiro".

...

3

...

Contrato para faturar

...

O campo "Faturar" deve ser igual a "Verdadeiro".

...

4

...

Data do próximo lançamento

...

O campo "Data do próximo lançamento" deve ser igual à data da execução do serviço.

Observação: Os contratos que tiverem o campo “Situação do lançamento” igual a “Pendente” e as condições acima listadas cumpridas (com exceção do campo “Data do próximo lançamento”) também serão inclusos no processamento.

Após selecionar os contratos será executado o método gerarLancamentosContratoLocacao da classe ContratoServico.

gerarLancamentosContratoLocacao

Ao iniciar esse método, o processamento passará por uma validação de contratos que será executada pelo método validarContratoFaturamento da classe ContratoServico.

validarContratoFaturamento

Essa validação realiza a verificação dos contratos e, para cada contrato que foi selecionado, funciona da seguinte forma:

...

Table of Contents

Operações de sistema

O serviço autônomo responsável por gerar lançamento é o GeracaoLancamentosContratosBatch
 que é executado uma vez ao dia, de acordo com o agendamento da classe GeracaoLancamentosContratosScheduler.

Seleção dos contratos

Este batch seleciona todos os contratos que cumpram os seguintes critérios:

#

Campo

Descrição

1

Tipo de registro

O campo "Tipo de registro" do contrato deve ser igual a "Locação".

2

Contrato ativo

O campo "Ativo" deve ser igual a "Verdadeiro".

3

Contrato para faturar

O campo "Faturar" deve ser igual a "Verdadeiro".

4

Data do próximo lançamento

O campo "Data do próximo lançamento" deve ser igual à data da execução do serviço.

Observação: Os contratos que tiverem o campo “Situação do lançamento” igual a “Pendente” e as condições acima listadas cumpridas (com exceção do campo “Data do próximo lançamento”) também serão inclusos no processamento.

Após selecionar os contratos será executado o método gerarLancamentosContratoLocacao da classe ContratoServico.

gerarLancamentosContratoLocacao

Ao iniciar esse método, o processamento passará por uma validação de contratos que será executada pelo método validarContratoFaturamento da classe ContratoServico.

validarContratoFaturamento

Essa validação realiza a verificação dos contratos e, para cada contrato que foi selecionado, funciona da seguinte forma:

  1. Se o campo “Ativo” (contrato.Ativo__c) for nulo o sistema incrementará a mensagem de erro: 'O contrato ainda não foi ativado; ';

  2. Se o campo “Faturar” (contrato.Faturar__c) for nulo o sistema incrementará a mensagem de erro: 'O contrato não está habilitado para faturamento; ';

  3. Se o campo “Data de início de Vigência” (contrato.Data_inicio_vigencia__c) for nulo o sistema incrementará a mensagem de erro: 'Data de início de vigência não foi definida; ';

  4. Se o campo “Data da posse do locatário” (contrato.Data_posse_locatario__c) for nulo o sistema incrementará a mensagem de erro: 'O contrato ainda não foi ativado; ';

  5. Se o campo “Empresa” (contrato.Empresa__c) for nulo o sistema incrementará a mensagem de erro: 'A empresa administradora do contrato não foi definida; ';

  6. Se o campo “Tipo de vencimento” (contrato.Tipo_vencimento__c) for nulo o sistema incrementará a mensagem de erro: 'O tipo de vencimento do contrato não foi definido; ';

  7. Se o campo “Periodicidade do reajuste” (contrato.Peridiocidade_reajuste__c) for nulo o sistema incrementará a mensagem de erro: 'A periodicidade de reajuste do valor do aluguel não foi definida; ';

  8. Se o campo “Valor do aluguel original” (contrato.Valor_aluguel__c) for nulo o sistema incrementará a mensagem de erro: 'O contrato ainda Valor do aluguel não foi ativadodefinido; ';

  9. Se o campo “Faturar” campo “Valor do aluguel corrigido” (contrato.FaturarValor_aluguel_corrigido__c) for nulo o sistema incrementará a mensagem de erro: 'O contrato não está habilitado para faturamentoValor do aluguel corrigido não foi definido; ';

  10. Se o campo “Data “Taxa de início de Vigência”administração” (contrato.DataTaxa_inicio_vigenciaadministracao__c) for nulo o sistema incrementará a mensagem de erro: 'Data de início de vigência Taxa de administração do contrato não foi definida; ';

  11. Se o campo “Data da posse do locatário” “Taxa de intermediação para locação” (contrato.DataTaxa_posse_locatariointermediacao__c) for nulo o sistema incrementará a mensagem de erro: 'O Taxa de intermediação do contrato ainda não foi ativadodefinida; ';

  12. Se o campo “Empresa” “Data vencimento da próxima fatura” (contrato.EmpresaData_vencimento_proxima_fatura__c) for nulo o sistema incrementará a mensagem de erro: 'A empresa administradora do contrato Data de vencimento da próxima fatura não foi definidapreenchida; ';

  13. Se o campo “Tipo de vencimento” “Data do próximo lançamento” (contrato.TipoData_proximo_vencimentoaluguel__c) for nulo o sistema incrementará a mensagem de erro: 'O tipo de vencimento do contrato Data do próximo lançamento não foi definidopreenchida; ';

  14. Se o campo “Periodicidade do reajuste” “Locatário” (contrato.Peridiocidade_reajustesnap_brok__Locatario__c) for nulo o sistema incrementará a mensagem de erro: 'A periodicidade de reajuste do valor do aluguel O locatário não foi definidapreenchida; ';

  15. Se o campo “Valor do aluguel original” “Locador” (contrato.Valor_aluguelsnap_brok__Locador__c) for nulo o sistema incrementará a mensagem de erro: 'Valor do aluguel O locador não foi definidopreenchida; ';

  16. Se o campo “Valor do aluguel corrigido” “Carteira” (contrato.Valor_aluguel_corrigido.Empresa__r.snap_finan__Carteira__c) for nulo o sistema incrementará a mensagem de erro: 'Valor do aluguel corrigido A carteira da empresa não foi definidopreenchida; ';

  17. Se o campo “Taxa de administração” “Gerar lançamentos para IPTU” (contrato.TaxaGerar_lancamento_administracaoiptu__c) for nulo o sistema incrementará a mensagem de erro: 'Taxa de administração do contrato não foi definida; ';Se o campo “Taxa de intermediação para locação” (contrato.Taxa_intermediacaoestiver igual a “Ativo”:

    1. O sistema validará também:

      1. se o campo “Responsável pelo IPTU” (contrato.Responsavel_iptu__c) for igual a nulo

    o sistema incrementará a mensagem de
      1. será incrementado o seguinte erro: '

    Taxa de intermediação do contrato
      1. O responsável do IPTU não foi

    definida
      1. preenchido; ';

    Se
      1. se o campo

    “Data vencimento da próxima fatura”
      1. “Pagante IPTU” (contrato.

    Data
      1. Pagante_

    vencimento_proxima
      1. iptu_

    fatura
      1. _

    _
      1. c) for igual a nulo

    o sistema incrementará a mensagem de
      1. será incrementado o seguinte erro: '

    Data de vencimento da próxima fatura
      1. O pagante do IPTU não foi

    preenchida
      1. preenchido; ';

  18. Se o campo “Data do próximo lançamento” (contrato.Data_proximo_aluguel__c) for nulo o sistema incrementará a mensagem de erro: 'Data do próximo lançamento não foi preenchida; ';

  19. Se o campo “Locatário” (contrato.snap_brok__Locatario__c) for nulo o sistema incrementará a mensagem de erro: 'O locatário
      1.  

      2. se o contrato tiver algum imóvel cadastrado o sistema irá percorrer os imóveis e, para cada imóvel do contrato, validará as seguintes informações:

        1. “Valor mensal do IPTU” (imovel.Imovel__r.Valor_iptu__c), caso esse campo seja nulo será incrementado o seguinte erro: 'O valor do IPTU do imóvel ' + “Imóvel” (imovel.Imovel__r.Name) + ' não foi preenchida; ';

    Se o campo “Locador” (contrato.snap_brok__Locador
        1. “Rateio IPTU” (imovel.Imovel__r.Rateio_iptu__c)

    for nulo o sistema incrementará a mensagem de
        1. , caso esse campo seja nulo será incrementado o seguinte erro: 'O

    locador não foi preenchida; ';Se o campo “Carteira” (contrato.Empresa
        1. valor do rateio do IPTU do imóvel ' + “Imóvel” (imovel.Imovel__r.

    snap_finan__Carteira__c) for nulo o sistema incrementará a mensagem de erro: 'A carteira da empresa
        1. Name) + ' não foi preenchida; ';

  20. Se o campo “Gerar lançamentos para IPTU” condomínio” (contrato.Gerar_lancamento_iptucondominio__c) estiver igual a “Ativo”:

    1. O sistema validará também:

      1. se o campo “Responsável pelo IPTU” condomínio” (contrato.Responsavel_iptucondominio__c) for igual a nulo será incrementado o seguinte erro: 'O responsável do IPTU condomínio não foi preenchido; ';  

      2. se o campo “Pagante IPTU”condomínio” (contrato.Pagante_iptucondominio__c) for igual a nulo será incrementado o seguinte erro: 'O pagante do IPTU condomínio não foi preenchido; ';   

      3. se o contrato tiver algum imóvel cadastrado o sistema irá percorrer os imóveis e, para cada imóvel do contrato, validará as seguintes informações:

        1. se o campo “Valor mensal do IPTU” condomínio” (imovel.Imovel__r.Valor_iptucondominio__c), caso esse campo seja nulo será incrementado o seguinte erro: 'O valor do IPTU condomínio do imóvel ' +  “Imóvel” “Imóvel” (imovel.Imovel__r.Name) + ' não foi preenchida; ';“Rateio IPTU” (imovel.Imovel__r.Rateio_iptu__c), caso esse campo seja

  21. Se o campo “Gerar lançamentos para condomínio” (contrato.Gerar_lancamentos_coleta_lixo__c) estiver igual a “Ativo”:

    1. O sistema validará também:

      1. se o campo “Responsável coleta de lixo” (contrato.Responsavel_coleta_lixo__c) for igual a nulo será incrementado o seguinte erro: 'O

        valor do rateio do IPTU do imóvel ' + “Imóvel” (imovel.Imovel__r.Name) + ' não foi preenchida; ';

    Se o campo “Gerar lançamentos para condomínio” (contrato.Gerar_lancamento_condominio__c) estiver igual a “Ativo”:

    1. O sistema validará também:

      1. se o campo “Responsável condomínio” (contrato.Responsavel_condominio__c) for igual a nulo será incrementado o seguinte erro: 'O responsável do condomínio não foi preenchido; ';  

      2. se o campo “Pagante condomínio” (contrato.Pagante_condominio__c) for igual a nulo será incrementado o seguinte erro: 'O pagante do condomínio não foi preenchido; ';   

      3. se o contrato tiver algum imóvel cadastrado o sistema irá percorrer os imóveis e, para cada imóvel do contrato, validará as seguintes informações:

        se o campo “Valor do condomínio” (imovel.Valor_condominio__c), caso esse campo seja

        responsável da coleta do lixo não foi preenchido; '; 

      4. se o campo “Pagante coleta de lixo” (contrato.Pagante_coleta_lixo__c) for igual a nulo será incrementado o seguinte erro: 'O pagante da coleta do lixo não foi preenchido; '; 

      5. se o contrato tiver algum imóvel cadastrado o sistema irá percorrer os imóveis e, para cada imóvel do contrato, validará as seguintes informações:

        1. se o campo “Valor mensal de coleta de lixo” (imovel.Imovel__r.Valor_mensal_Coleta_lixo__c), caso esse campo seja nulo será incrementado o seguinte erro: 'O valor da coleta do lixo do imóvel ' + “Imóvel”  (imovel.Imovel__r.Name) + ' não foi preenchida; ';

  22. Se o campo “Gerar lançamentos para condomínio” (contrato.Gerar_lancamentos_taxa_marinha__c) estiver igual a “Ativo”:

    1. O sistema validará também:

      1. se o campo “Responsável taxa marinha” (contrato.Responsavel_taxa_marinha__c) for igual a nulo será incrementado o seguinte erro: 'O

        valor do condomínio do imóvel ' + “Imóvel” (imovel.Imovel__r.Name) + ' não foi preenchida

        responsável da taxa marinha não foi preenchido; ';

    Se
      1. se o campo

    “Gerar lançamentos para condomínio”
      1. “Pagante taxa marinha” (contrato.

    Gerar
      1. Pagante_

    lancamentos
      1. taxa_

    coleta_lixo
      1. marinha__c)

    estiver igual a “Ativo”:
    1. O sistema validará também
      1. for igual a nulo será incrementado o seguinte erro: 'O pagante da taxa marinha não foi preenchido; '; 

      2. se o contrato tiver algum imóvel cadastrado o sistema irá percorrer os imóveis e, para cada imóvel do contrato, validará as seguintes informações:

        1. se o campo

        “Responsável coleta de lixo” (contrato.Responsavel_coleta_lixo
        1. “Valor mensal de taxa marinha” (imovel.Imovel__r.Valor_mensal_Taxa_Marinha__c)

        for igual a
        1. , caso esse campo seja nulo será incrementado o seguinte erro: 'O

        responsável
        1. valor da

        coleta do lixo não foi preenchido; '; 
      3. se o campo “Pagante coleta de lixo” (contrato.Pagante_coleta_lixo__c) for igual a nulo será incrementado o seguinte erro: 'O pagante da coleta do lixo não foi preenchido; '; 

      4. se o contrato tiver algum imóvel cadastrado o sistema irá percorrer os imóveis e, para cada imóvel do contrato, validará as seguintes informações:

        1. se o campo “Valor mensal de coleta de lixo” (imovel.Imovel__r.Valor_mensal_Coleta_lixo__c), caso esse campo seja nulo será incrementado o seguinte erro: 'O valor da coleta do lixo do imóvel ' + “Imóvel”  (imovel.Imoveltaxa marinha do imóvel ' + “Imóvel”  (imovel.Imovel__r.Name)  + ' não foi preenchida; ';

Após, o sistema irá percorrer os participantes do contrato e validar as seguintes informações para cada participante encontrado:

  1. Se o campo “Papel” do participante (part.snap_brok__Papel__c) se for igual “Locatário”

    1. Se o campo “Tipo de Pessoa” (part.snap_brok__Participante__r.snap_finan__tipo_pessoa__c) da conta do participante for igual “Física”

      1. Se o campo “CPF” (part.snap_brok__Participante__r.snap_finan__Cpf_2__pc) da conta do participante estiver nulo o sistema incrementará a mensagem de erro: 'O CPF do locatário ' + “Nome da conta” (part.snap_brok__Participante__r.Name) + ' não foi

        preenchida

        preenchido; ';

      2. Se o campo

    “Gerar lançamentos para condomínio” (contrato.Gerar_lancamentos_taxa_marinha__c) estiver igual a “Ativo”:Se o campo “Papel” do participante
    1. O sistema validará também:

      1. se o campo “Responsável taxa marinha” (contrato.Responsavel_taxa_marinha__c) for igual a nulo será incrementado o seguinte erro: 'O responsável da taxa marinha não foi preenchido; ';

      2. se o campo “Pagante taxa marinha” (contrato.Pagante_taxa_marinha__c) for igual a nulo será incrementado o seguinte erro: 'O pagante da taxa marinha “CPF - ERP” (part.snap_brok__Participante__r.snap_finan__CPFF__c) da conta do participante estiver nulo o sistema incrementará a mensagem de erro: 'O CPF (ERP) do locatário ' + “Nome da conta” (part.snap_brok__Participante__r.Name) + ' não foi preenchido; '; 

        se o contrato tiver algum imóvel cadastrado o sistema irá percorrer os imóveis e, para cada imóvel do contrato, validará as seguintes informações:

        se o campo “Valor mensal de taxa marinha” (imovel.Imovel__r.Valor_mensal_Taxa_Marinha__c), caso esse campo seja nulo será incrementado o seguinte erro: 'O valor da taxa marinha do imóvel ' + “Imóvel”  (imovel.Imovel
    2. Se o “Tipo de pessoa” (part.snap_brok__Participante__r.snap_finan__tipo_pessoa__c) da conta do participante for diferente de “Física”

      1. Se o campo “CNPJ” da conta do participante estiver nulo (part.snap_brok__Participante__r.snap_finan__CNPJ__c) o sistema incrementará a mensagem de erro: 'O CNPJ do locatário ' + “Nome da conta” (part.snap_brok__Participante__r.Name)

          

         + ' não foi

        preenchida; ';

Após, o sistema irá percorrer os participantes do contrato e validar as seguintes informações para cada participante encontrado:

      1. preenchido;';

      2. Se a campo “Razão social” (part.snap_brok__

    Papel
      1. Participante__r.snap_finan__razao_social__c)

    se for igual “Locatário”
    1. Se o campo “Tipo de Pessoa”
      1. da conta do participante estiver nulo, o sistema incrementará a mensagem de erro: 'A razão social do locatário ' + “Nome da conta” (part.snap_brok__Participante__r.

      snap_finan__tipo_pessoa__c) da conta do participante for igual “Física”
      1. Name) + ' não foi preenchida; ';

  1. Se o campo

    “CPF”

    “Endereço para cobrança” (part.snap_brok__Participante__r.snap_finan__

    Cpf

    Logradouro_

    2

    cobranca__

    pc

    c) da conta do participante

    estiver

    for nulo o sistema incrementará a mensagem de erro: 'O

    CPF

    logradouro do endereço de cobrança do locatário ' + “Nome da conta” (part.snap_brok__Participante__r.Name)

     

    + ' não foi preenchido; ';

  2. Se o campo

    “CPF - ERP”

    “Bairro para cobrança” (part.snap_brok__Participante__r.snap_finan__Bairro_

    CPFF

    cobranca__c) da conta do participante

    estiver

    for nulo o sistema incrementará a mensagem de erro: 'O

    CPF (ERP)

    bairro do endereço de cobrança do locatário ' + “Nome da conta” (part.snap_brok__Participante__r.Name) + ' não foi preenchido;

    ';Se o “Tipo de pessoa” (part.snap_brok__Participante__r.snap_finan__tipo_pessoa__c) da conta do participante for diferente de “Física”

    ';

  3. Se o campo

    “CNPJ” da conta do participante estiver nulo

    “CEP para cobrança” (part.snap_brok__Participante__r.snap_finan__

    CNPJ

    Cep_cobranca__c) da conta do participante for nulo o sistema incrementará a mensagem de erro: 'O

    CNPJ

    cep do endereço de cobrança do locatário ' + “Nome da conta” (part.snap_brok__Participante__r.Name) + ' não foi preenchido; ';

  4. Se

    a campo “Razão social”

    o campo “Cidade para cobrança” (part.snap_brok__Participante__r.snap_finan__Cidade_

    razao

    para_cobranca_

    social

    texto__c) da conta do participante

    estiver

    for nulo

    ,

    o sistema incrementará a mensagem de erro: 'A

    razão social

    cidade do endereço de cobrança do locatário ' + “Nome da conta” (part.snap_brok__Participante__r.Name) + ' não foi preenchida; ';

  5. Se o campo “Endereço “UF para cobrança” (part.snap_brok__Participante__r.snap_finan__UF_Logradouropara_cobranca__c) da conta do participante for nulo o sistema incrementará a mensagem de erro: 'O logradouro estado (UF) do endereço de cobrança do locatário ' + “Nome da conta” (part.snap_brok__Participante__r.Name) + ' não foi preenchidopreenchida; ';

Se o

...

sistema incrementou uma ou mais mensagens de erro em alguma das validações acima, ele atualizará:

  1. O valor do campo “Validado para faturamento” (snap_brok__Validado_faturamento__c) será colocado com “Falso”.

  2. O campo “Erros para faturamento” (snap_brok__ParticipanteErros_faturamento_r.snap_finan__Bairro_cobranca__c) da conta do participante for nulo o sistema incrementará a mensagem de erro: 'O bairro do endereço de cobrança do locatário ' + “Nome da conta” (part.snap_brok__Participante__r.Name) + ' não foi preenchido; ';Se o campo “CEP para cobrança” (partc) será preenchido com os erros incrementados durante a validação.

  3. o campo “Situação do lançamento” (snap_brok__Situacao_faturamento__c) será preenchido com“Erro”.

Note

O sistema valida o campo “Quantidade de dias para lançamentos” (parametrizacao.snap_brok__

...

Quantidades_dias_

...

para_lancamentos__c)

...

do registro “Padrão” do parametrizações do SnapProperty, se o campo estiver nulo o sistema

...

dará o seguinte erro: 'O

...

Se o campo “Cidade para cobrança” (part.snap_brok__Participante__r.snap_finan__Cidade_para_cobranca_texto__c) da conta do participante for nulo o sistema incrementará a mensagem de erro: 'A cidade do endereço de cobrança do locatário ' + “Nome da conta” (part.snap_brok__Participante__r.Name) + ' não foi preenchida; ';

...

Se o campo “UF para cobrança” (part.snap_brok__Participante__r.snap_finan__UF_para_cobranca__c) da conta do participante for nulo o sistema incrementará a mensagem de erro: 'O estado (UF) do endereço de cobrança do locatário ' + “Nome da conta” (part.snap_brok__Participante__r.Name) + ' não foi preenchida; ';

Se o sistema incrementou uma ou mais mensagens de erro em alguma das validações acima, ele atualizará:

...

O valor do campo “Validado para faturamento” (snap_brok__Validado_faturamento__c) será colocado com “Falso”.

...

O campo “Erros para faturamento” será preenchido com os erros incrementados durante a validação.

...

Info

O sistema valida o campo “Quantidade de dias para lançamentos” parâmetro com a quantidade de dias para lançamentos não foi definido', abortando a geração de lançamento.

Se o sistema encontrar algum erro na validação acima descrita, incluirá os contratos com erro em uma lista para notificação por e-mail. Os contratos que foram validados com sucesso seguirão para geração de lançamento.

Período de Apuração

Existem duas modalidades de período de apuração para a geração de lançamentos “Mês aberto” e “Mês fechado” para definir qual será o tipo de apuração da org será verificado o campo “Período de apuração do faturamento” (snap_brok__Periodo_apuracao_faturamento__c) do objeto de parametrizações do SnapProperty.

Definições

Término de apuração: Término de apuração será a data limite final que o sistema se utilizará para apurar os lançamentos, por exemplo, um aluguel tem sua data de término de apuração definindo até quando será pago aquele aluguel.

Início de apuração: Início de apuração será a data inicial que o sistema se utilizará para apurar os lançamentos, por exemplo, um aluguel tem sua data de início de apuração definindo desde quando será pago aquele aluguel.

Mês Aberto

  • Término de apuração = data do “Próximo lançamento do contrato” (contrato.Data_proximo_aluguel__c)+ “Dias do lançamento” (parametrizacao.snap_brok__Quantidades_dias_para_lancamentos__c

...

Se o sistema encontrar algum erro na validação acima descrita, incluirá os contratos com erro em uma lista para notificação por e-mail. Os contratos que foram validados com sucesso seguirão para geração de lançamento.

Período de Apuração

Existem duas modalidades de período de apuração para a geração de lançamentos “Mês aberto” e “Mês fechado” para definir qual será o tipo de apuração da org será verificado o campo “Período de apuração do faturamento” (snap_brok__Periodo_apuracao_faturamento__c) do objeto de parametrizações do SnapProperty.

Mês Aberto

Término de apuração: Término de apuração será a data limite final que o sistema se utilizará para apurar os lançamentos, ou seja, um aluguel tem sua data de término de apuração definindo até quando foi pago aquele aluguel. Esta data é composta da seguinte maneira:

...

Se o mês da data do próximo lançamento do contrato for igual a 2

sdsdsssd

Code Block
sfsds

sadsdsd

Code Block
novo trecho
dwdfsdf

fwerewf

...

  • ) do objeto parametrizações do SnapProperty.

  • Se o mês da “Data do próximo lançamento” do contrato for igual a 2 e “Tipo de vencimento” do contrato for igual “Vencido” e “Dia do vencimento” for maior que 28:

    • Término de apuração = dia igual 28, mês igual a mês da data de término da apuração - 1 mês, ano igual ao ano da data de término da apuração.

    • Início de apuração = data do término de apuração - 1 mês.

    • O sistema define qual é o último dia do mês do início de apuração calculado na etapa anterior.

    • Início de apuração = ano do início de apuração, mês do início de apuração e último dia encontrado na etapa anterior.

Se o sistema entrou nessa condicional, quer dizer que o dia de vencimento do contrato não está aderente com o mês de fevereiro que o lançamento compete, pois o mês de fevereiro, com exceção de anos bissextos, não possui mais que 28 dias e, portanto, a data de apuração deverá respeitar o último dia do mês de fevereiro e não o dia de vencimento estipulado no contrato no campo “Dias de vencimento”.

Mês Fechado