Versions Compared

Key

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

...

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.

...

  • Se o “Tipo de vencimento” (contrato.tipo_vencimento__c) for igual a Antecipado e “Período de apuração” (parametrizacao.snap_brok__Periodo_apuracao_faturamento__c) do objeto de parametrizações do SnapProperty for igual a “Mês fechado

    • A “Data do lançamento” = data de término da apuração - 1 mês.

  • Se o período de apuração igual Mês fechado

    • Terminar de documentar mês fechado.

  • Se o período de apuração igual Mês aberto

    • Se o mês da “Data do próximo reajuste” (contrato.Data_proximo_reajuste__c) for igual ao mês da “data de vencimento da próxima fatura” (contrato.Data_vencimento_proxima_fatura__c) e o ano da “Data do próximo reajuste” (contrato.Data_proximo_reajuste__c) do contrato for igual ao ano da “data de vencimento da próxima fatura” (contrato.Data_vencimento_proxima_fatura__c):

    • Se não houve erro para calcular o reajuste do aluguel o sistema irá criar o lançamento de aluguel da seguinte forma:

      • O campo “Contrato de administração” (lancamentoContrato.Contrato__c) do lançamento = “Contrato de administração” (contrato.Contrato_administracao__c) que está sendo gerado o lançamento;

      • O campo “Contrato de locação” (lancamentoContrato.Contrato_locacao__c) do lançamento = “Contrato de locação” (contrato.contrato.Id) que está sendo gerado o lançamento;

      • O campo “Ciclo de locação” (lancamentoContrato.Ciclo_locacao__r) do lançamento = ao ciclo financeiro criado na etapa anterior;

      • O campo “Data do lançamento” (lancamentoContrato.Data_lancamento__c) do lançamento = a datalancamento é igual a “data de lançamento” recebida como parâmetro do método;

      • O campo “Histórico” (lancamentoContrato.Historico__c) do lançamento = Histórico. Esse histórico é composto da seguinte forma: “Aluguel referente ao período de "Início de apuração" a "Término de apuração".”

      • O campo “Imóvel” (lancamentoContrato.Imovel__c) do lançamento = “Imóvel” (contrato.Imovel__c) que está sendo gerado o lançamento;

      • O campo “Tipo de registro” do lançamento = “Locatário” ou o campo “Tipo de registro” do lançamento = “Locador”;

      • O campo “Situação” (Lancamentocontrato.Situacao__c) do lançamento = “Aprovado”;

      • O campo “Tipo de lançamento” (lancamentoContrato.Tipo_lancamento_contrato__c) do lançamento = “Aluguel”;

      • O campo “Valor do lançamento” (lancamentoContrato.Valor_lancamento__c) do lançamento = valorLancamento. Se o processamento entrou na condicional de reajuste de aluguel, o valor será o valor reajustado processado pelo método de reajuste, caso contrário, será o valor corrigido do aluguel do contrato. Esse valor poderá ser negativo se for “Locatário” ou positivo se for “Locador”.

Irá criar o lançamento de aluguel da seguinte forma:

...

Crédito

...

Débito

...

Contrato de administração

...

Número do contrato de administração que originou o lançamento

...

Número do contrato de administração que originou o lançamento

...

Contrato de locação

...

      • O campo “Contraparte” (lancamentoContrato.Contraparte__c) do lançamento está sendo preenchido com o número do seu respectivo lançamento inverso. Isto é, se for um lançamento de crédito será preenchido com o número do lançamento de débito e vice versa.

      • O campo “ID externo” (snap_brok__Id_Externo__c) é preenchido com um sequencia alfa numérico, começando pelo módulo que gerou o lançamento, sendo que esse valor deverá ser único, sem repetição.

Irá criar o lançamento de aluguel da seguinte forma:

Crédito

Débito

Contrato de administração

Número do contrato de administração que originou o lançamento

Número do contrato de administração que originou o lançamento

Contrato de locação

Número do contrato de locação que originou o lançamento

Número do contrato de locação que originou o lançamento

Ciclo de locação

Número do ciclo que originou o lançamento

Número do ciclo que originou o lançamento

Data do lançamento

Data de vencimento da próxima fatura

Data de vencimento da próxima fatura

Histórico

Aluguel referente ao período de "Início de apuração" a "Término de apuração"

Aluguel referente ao período de "Início de apuração" a "Término de apuração"

Imóvel

Imóvel principal do contrato

Imóvel principal do contrato

Tipo de registro

Locador

Locatário

Situação

Aprovado

Aprovado

Tipo de lançamento

Aluguel

Aluguel

Valor do lançamento

Valor do aluguel corrigido

- Valor do aluguel corrigido

...

Contraparte

Número do lançamento de débito gerado do mesmo valor, tipo e data.

Número do lançamento de crédito gerado do mesmo valor, tipo e data.

Se o sistema entrou nessa condicional, significa que está no mês e ano do reajuste do contrato e, portanto, será realizado o reajuste de acordo ao processamento do reajuste do aluguel. Para entender a lógica do reajuste consulte o artigo xxxxxxxxxxxxxxxxxxxxxxx Reajuste do aluguel .

O sistema também inicializará a renovação do seguro contra incêndio pois após o reajuste do contrato é necessário novos lançamentos de seguro para esse contrato. Para saber mais sobre o processamento do módulo de seguro, consulte o artigo xxxxxxxxxxxxxxxxxx Seguro contra incêndio.

...

gerarLancamentosTaxaAdministracao

Este método recebe como parâmetro a “Data de início de apuração” e “Data de término de apuração” que foram calculadas na etapa anterior de período de apuração.

  • Se o “Tipo de vencimento” (contrato.tipo_vencimento__c) for igual a Antecipado e “Período de apuração” (parametrizacao.snap_brok__Periodo_apuracao_faturamento__c) do objeto de parametrizações do SnapProperty for igual a “Mês fechado

    • A “Data do lançamento” = data de término da apuração - 1 mês.

  • Se o período de apuração igual Mês fechado

    • Terminar de documentar mês fechado.

    Se o período de apuração igual Mês aberto

  • Se o mês da “Data do próximo reajuste” (contrato.Data_proximo_reajuste__c) for igual ao mês da “data de vencimento da próxima fatura” (contrato.Data_vencimento_proxima_fatura__c) e o ano da “Data do próximo reajuste” (contrato.Data_proximo_reajuste__c) do contrato for igual ao ano da “data de vencimento da próxima fatura” (contrato.Data_vencimento_proxima_fatura__c):

  • Se não houve erro para calcular a taxa de administração o sistema irá criar o lançamento de taxa de administração da seguinte forma:

    O campo “Contrato de administração” (lancamentoContrato.Contrato__c) do lançamento

    não houve erro para calcular a taxa de administração o sistema irá criar o lançamento de taxa de administração da seguinte forma:

    • O campo “Contrato de administração” (lancamentoContrato.Contrato__c) do lançamento = “Contrato de administração” (contrato.Contrato_administracao__c) que está sendo gerado o lançamento;

    • O campo “Contrato de locação” (lancamentoContrato.Contrato_locacao__c) do lançamento = “Contrato de locação” (contrato.contrato.Id) que está sendo gerado o lançamento;

    • O campo “Ciclo de locação” (lancamentoContrato.Ciclo_locacao__r) do lançamento = ao ciclo financeiro criado na etapa anterior;

    • O campo “Data do lançamento” (lancamentoContrato.Data_lancamento__c) do lançamento = a datalancamento é igual a “data de lançamento” recebida como parâmetro do método;

    • O campo “Histórico” (lancamentoContrato.Historico__c) do lançamento = Histórico. Esse histórico é composto da seguinte forma: “Taxa de administração de {0}% sobre o aluguel de R$ {1} referente ao período de {2} a {3}',” sendo os campos “Taxa de administração” (contrato.snap_brok__Taxa_administracao__c), “Valor do aluguel corrigido” (contrato.snap_brok__Valor_aluguel_corrigido__c), "Início de apuração" e "Término de apuração" respectivamente.

    • O campo “Imóvel” (lancamentoContrato.Imovel__c) do lançamento = “Imóvel” (contrato.Imovel__c) que está sendo gerado o lançamento;

    • O campo “Tipo de registro” do lançamento = “Administradora” ou o campo “Tipo de registro” do lançamento = “Locador”;

    • O campo “Situação” (Lancamentocontrato.Situacao__c) do lançamento = “Aprovado”;

    • O campo “Tipo de lançamento” (lancamentoContrato.Tipo_lancamento_contrato__c) do lançamento = “Taxa de administração”;

    • O campo “Valor do lançamento” (lancamentoContrato.Valor_lancamento__c) do lançamento = taxaAdministracao. Esse valor do lançamento é composto da seguinte forma: “Valor do aluguel corrigido” * “Taxa de administração”/100, isto é, (contrato.Valor_aluguel_corrigido__c * contrato.Taxa_administracao__c/100). Esse valor poderá ser negativo se for “Locador” ou positivo se for “Administradora”.

...

    • O campo “Contraparte” (lancamentoContrato.Contraparte__c) do lançamento está sendo preenchido com o número do seu respectivo lançamento inverso. Isto é, se for um lançamento de crédito será preenchido com o número do lançamento de débito e vice versa.

    • O campo “ID externo” (snap_brok__Id_Externo__c) é preenchido com um sequencia alfa numérico, começando pelo módulo que gerou o lançamento, sendo que esse valor deverá ser único, sem repetição.

Irá criar o lançamento de taxa de administração da seguinte forma:

Crédito

Débito

Contrato de administração

Número do contrato de administração que originou o lançamento

Número do contrato de administração que originou o lançamento

Contrato de locação

Número do contrato de locação que originou o lançamento

Número do contrato de locação que originou o lançamento

Ciclo de locação

Número do ciclo que originou o lançamento

Número do ciclo que originou o lançamento

Data do lançamento

Data de vencimento da próxima fatura

Data de vencimento da próxima fatura

Histórico

“Taxa de administração de {0}% sobre o aluguel de R$ {1} referente ao período de {2} a {3}',” sendo os campos “Taxa de administração” (contrato.snap_brok__Taxa_administracao__c), “Valor do aluguel corrigido” (contrato.snap_brok__Valor_aluguel_corrigido__c), "Início de apuração" e "Término de apuração" respectivamente.

“Taxa de administração de {0}% sobre o aluguel de R$ {1} referente ao período de {2} a {3}',” sendo os campos “Taxa de administração” (contrato.snap_brok__Taxa_administracao__c), “Valor do aluguel corrigido” (contrato.snap_brok__Valor_aluguel_corrigido__c), "Início de apuração" e "Término de apuração" respectivamente.

Imóvel

Imóvel principal do contrato

Imóvel principal do contrato

Tipo de registro

Adminstradora

Locador

Situação

Aprovado

Aprovado

Tipo de lançamento

Taxa de administração

Taxa de administração

Valor do lançamento

Valor do aluguel corrigidoda taxa de administração calculada

- Valor do aluguel corrigido

gerarLancamentosIptuContrato

...

da taxa de administração calculada

Contraparte

Número do lançamento de débito gerado do mesmo valor, tipo e data.

Número do lançamento de crédito gerado do mesmo valor, tipo e data.

gerarLancamentosIptuContrato

Este método recebe como parâmetro a “Contrato” (Contrato__c contrato), “Data de início de apuração” e “Data de término de apuração” que foram calculadas na etapa anterior de período de apuração além dos parâmetros “Lançamento do contrato” e “Ciclo da locação” List<Lancamento_contrato__c> lancamentos, Ciclo_locacao__c ciclo ??

                                                            Lancamento_contrato__c debito;
                                                            Lancamento_contrato__c credito;
                                                            String historico;
                                                            Decimal valorIptu;
                                                            Decimal rateioIptu;

                                                            Parametrizacao__c parametrizacao = ParametrizacaoServico.Parametrizacao;
                                                           
                                                            String regraApuracao = parametrizacao.snap_brok__Periodo_apuracao_faturamento__c;
                                                           
                                                            Date dataLancamento = inicioApuracao;

...

Se o “Tipo de vencimento” (contrato.tipo_vencimento__c) for igual a Antecipado e “Período de apuração” (parametrizacao.snap_brok__Periodo_apuracao_faturamento__c) do objeto de parametrizações do SnapProperty for igual a “Mês fechado

  • A “Data do lançamento” = data de término da apuração - 1 mês

Se o campo “Gerar Lançamentos para IPTU” do contrato de locação (contrato.Gerar_lancamento_iptu__c) estiver como Ativoo sistema faz as seguintes verificações:

Enquanto o contrato tiver mais de um imóvel, o sistema gera um lançamento de IPTU para cada imóvel do contrato. for (Imovel_contrato__c imovel: contrato.Imoveis_contrato__r)

Os valores são calculados da seguinte forma:

...

O campo rateioIptu = “Rateio para IPTU” do imóvel (imovel.Imovel__r.Rateio_iptu__c). Quando este campo não for informado, o sistema considera o valor do rateio como 100%.

...

O campo valorIptu = “Valor Mensal do IPTU” do imóvel (imovel.Imovel__r.Valor_iptu__c) * o campo “Rateio para IPTU” dividido por 100, isto é, (imovel.Imovel__r.Valor_iptu__c * rateioIptu / 100). Quando o campo “Valor mensal do IPTU” não for encontrado, o sistema considerá como zero.

...

.

  • Se o “Tipo de vencimento” (contrato.tipo_vencimento__c) for igual a Antecipado e “Período de apuração” (parametrizacao.snap_brok__Periodo_apuracao_faturamento__c) do objeto de parametrizações do SnapProperty for igual a “Mês fechado

    • A “Data do lançamento” = data de término da apuração - 1 mês.

  • Se o campo “Gerar Lançamentos para IPTU” do contrato de locação (contrato.Gerar_lancamento_iptu__c) estiver como Ativoo sistema faz as seguintes verificações:

    • O sistema gera um lançamento de IPTU para cada imóvel do contrato.

      • Os valores são calculados da seguinte forma:

        • O campo rateioIptu = “Rateio para IPTU” do imóvel (imovel.Imovel__r.Rateio_iptu__c). Quando este campo não for informado, o sistema considera o valor do rateio como 100%.

        • O campo valorIptu = “Valor Mensal do IPTU” do imóvel (imovel.Imovel__r.Valor_iptu__c) * o campo “Rateio para IPTU” dividido por 100, isto é, (imovel.Imovel__r.Valor_iptu__c * rateioIptu / 100). Quando o campo “Valor mensal do IPTU” não for encontrado, o sistema considerá como zero.

        • O campo historico = “IPTU do imóvel {0} no valor de R$ {1} referente ao rateio de {2}%'“ sendo preenchido com os campos “Imóvel” (imovel.Imovel__r.Name), valorIptu e rateioIptu calculados anteriormente;

    • Se o campo “Responsável pelo IPTU” (contrato.Responsavel_iptu__c) for igual a “Locatário” e o “Pagante IPTU” (contrato.Pagante_iptu__c) for igual a “Locatário”

      • O sistema não criará nenhum lançamento.

    • Senão o sistema irá criar o lançamento de IPTU da seguinte forma:

      • O campo “Contrato de administração” (lancamentoContrato.Contrato__c) do lançamento = “Contrato de administração” (contrato.Contrato_administracao__c) que está sendo gerado o lançamento;

      • O campo “Contrato de locação” (lancamentoContrato.Contrato_locacao__c) do lançamento = “Contrato de locação” (contrato.contrato.Id) que está sendo gerado o lançamento;

      • O campo “Ciclo de locação” (lancamentoContrato.Ciclo_locacao__r) do lançamento = ao ciclo financeiro criado na etapa anterior;

      • O campo “Data do lançamento” (lancamentoContrato.Data_lancamento__c) do lançamento = a datalancamento é igual a “data de lançamento” recebida como parâmetro do método;

      • O campo “Histórico” (lancamentoContrato.Historico__c) do lançamento = Histórico. Esse histórico é composto da seguinte forma: “IPTU do imóvel {0} no valor de R$ {1} referente ao rateio de {2}%'“ sendo preenchido com os campos “Imóvel” (imovel.Imovel__r.Name), valorIptu calculado anteriormente e rateioIptu também calculado anteriormente;

      Se o campo “Responsável pelo IPTU” for igual a “Locatário” e o “Pagante IPTU” for igual a “Locatário” if (contrato.Responsavel_iptu__c.equalsIgnoreCase('Locatário') && contrato.Pagante_iptu__c.equalsIgnoreCase('Locatário')){

      • o locatário deve enviar o comprovante de pagamento do IPTU para a administradora.

      • Senão o sistema irá criar o lançamento de IPTU da seguinte forma:

      • O campo “Contrato de administração” (lancamentoContrato.Contrato__c) do lançamento = “Contrato de administração” (contrato.Contrato_administracao__c) que está sendo gerado o lançamento;

      • O campo “Contrato de locação” (lancamentoContrato.Contrato_locacao

        O campo “Imóvel” (lancamentoContrato.Imovel__c) do lançamento = “Imóvel” (contrato.Imovel__c) que está sendo gerado o lançamento;

      • O campo “Tipo de registro” do lançamento = “Responsável pelo IPTU” (contrato.Responsavel_iptu__c) ou “Pagante IPTU” (contrato.Pagante_iptu__c);

      • O campo “Situação” (Lancamentocontrato.Situacao__c) do lançamento =

        “Contrato de locação” (contrato.contrato.Id) que está sendo gerado o lançamento

        “Aprovado”;

      • O campo

        “Ciclo

        “Tipo de

        locação”

        lançamento” (lancamentoContrato.

        Ciclo

        Tipo_

        locacao

        lancamento_contrato__

        r

        c) do lançamento =

        ao ciclo financeiro criado na etapa anterior

        “IPTU”;

      • O campo

        “Data

        “Valor do lançamento” (lancamentoContrato.

        Data

        Valor_lancamento__c) do lançamento =

        a datalancamento é igual a “data de lançamento” recebida como parâmetro do método;
      • O campo “Histórico” (lancamentoContrato.Historico__c) do lançamento = Histórico. Esse histórico é composto da seguinte forma: “Taxa de administração de {0}% sobre o aluguel de R$ {1} referente ao período de {2} a {3}',” sendo os campos “Taxa de administração” (contrato.snap_brok__Taxa_administracao__c), “Valor do aluguel corrigido” (contrato.snap_brok__Valor_aluguel_corrigido__c), "Início de apuração" e "Término de apuração" respectivamente.

      • O campo “Imóvel” (lancamentoContrato.Imovel__c) do lançamento = “Imóvel” (contrato.Imovel__c) que está sendo gerado o lançamento;

      • O campo “Tipo de registro” do lançamento = contrato.Responsavel_iptu__c

      • O campo “Tipo de registro” do lançamento = “Administradora” ou o campo “Tipo de registro” do lançamento = “Locador”;

      • O campo “Situação” (Lancamentocontrato.Situacao__c) do lançamento = “Aprovado”;

      • O campo “Tipo de lançamento” (lancamentoContrato.Tipo_lancamento_contrato__c) do lançamento = “Taxa de administração”;

      • O campo “Valor do lançamento” (lancamentoContrato.Valor_lancamento__c) do lançamento = taxaAdministracao. Esse valor do lançamento é composto da seguinte forma: “Valor do aluguel corrigido” * “Taxa de administração”/100, isto é, (contrato.Valor_aluguel_corrigido__c * contrato.Taxa_administracao__c/100). Esse valor poderá ser negativo se for “Locador” ou positivo se for “Administradora”.

      •                                                            
                                                                                    RecordTypeId = Schema.SObjectType.Lancamento_contrato__c.getRecordTypeInfosByName().get(contrato.Responsavel_iptu__c).getRecordTypeId(),
                                                                                    Situacao__c = 'Aprovado',
                                                                                    Tipo_lancamento_contrato__c = TIPO_LANCAMENTO,
                                                                                    Valor_lancamento__c = -valorIptu);
                                                                                lancamentos.add(debito);
                                                                               
                                                                                credito = new Lancamento_contrato__c(
                                                                                    Contrato__c = contrato.Contrato_administracao__c,
                                                                                    Contrato_locacao__c = contrato.Id,
                                                                                    Ciclo_locacao__r = ciclo,
                                                                                    Data_lancamento__c = dataLancamento,
                                                                                    Historico__c = historico,
                                                                                    Imovel__c = imovel.Imovel__c,
                                                                                    RecordTypeId = Schema.SObjectType.Lancamento_contrato__c.getRecordTypeInfosByName().get(contrato.Pagante_iptu__c).getRecordTypeId(),
                                                                                    Situacao__c = 'Aprovado',
                                                                                    Tipo_lancamento_contrato__c = TIPO_LANCAMENTO,
                                                                                    Valor_lancamento__c = valorIptu);
                                                                                lancamentos.add(credito);
                                                                            }

      O lançamento de crédito do IPTU é feito de acordo com a definição do campo "Pagante do IPTU" do contrato de locação, que pode ser "Administradora", "Locador" ou "Locatário".
      O campo “Contrato de administração” (lancamentoContrato.Contrato__c) do lançamento = “Contrato de administração” (contrato.Contrato_administracao__c) que está sendo gerado o lançamento;

      • O campo “Contrato de locação” (lancamentoContrato.Contrato_locacao__c) do lançamento = “Contrato de locação” (contrato.contrato.Id) que está sendo gerado o lançamento;

      • O campo “Ciclo de locação” (lancamentoContrato.Ciclo_locacao__r) do lançamento = ao ciclo financeiro criado na etapa anterior;

      • O campo “Data do lançamento” (lancamentoContrato.Data_lancamento__c) do lançamento = a datalancamento é igual a “data de lançamento” recebida como parâmetro do método;

      • O campo “Histórico” (lancamentoContrato.Historico__c) do lançamento = Histórico. Esse histórico é composto da seguinte forma: “Taxa de administração de {0}% sobre o aluguel de R$ {1} referente ao período de {2} a {3}',” sendo os campos “Taxa de administração” (contrato.snap_brok__Taxa_administracao__c), “Valor do aluguel corrigido” (contrato.snap_brok__Valor_aluguel_corrigido__c), "Início de apuração" e "Término de apuração" respectivamente.

      • O campo “Imóvel” (lancamentoContrato.Imovel__c) do lançamento = “Imóvel” (contrato.Imovel__c) que está sendo gerado o lançamento;

      • O campo “Tipo de registro” do lançamento = “Administradora” ou o campo “Tipo de registro” do lançamento = “Locador”;

      • O campo “Situação” (Lancamentocontrato.Situacao__c) do lançamento = “Aprovado”;

      • O campo “Tipo de lançamento” (lancamentoContrato.Tipo_lancamento_contrato__c) do lançamento = “Taxa de administração”;

      • O campo “Valor do lançamento” (lancamentoContrato.Valor_lancamento__c) do lançamento = taxaAdministracao. Esse valor do lançamento é composto da seguinte forma: “Valor do aluguel corrigido” * “Taxa de administração”/100, isto é, (contrato.Valor_aluguel_corrigido__c * contrato.Taxa_administracao__c/100). Esse valor poderá ser negativo se for “Locador” ou positivo se for “Administradora”.

Irá criar o lançamento de taxa de administração da seguinte forma:

...

Crédito

...

Débito

...

Contrato de administração

...

Número do contrato de administração que originou o lançamento

...

Número do contrato de administração que originou o lançamento

...

Contrato de locação

...

Número do contrato de locação que originou o lançamento

...

Número do contrato de locação que originou o lançamento

...

Ciclo de locação

...

Número do ciclo que originou o lançamento

...

Número do ciclo que originou o lançamento

...

Data do lançamento

...

Data de vencimento da próxima fatura

...

Data de vencimento da próxima fatura

...

Histórico

...

“Taxa de administração de {0}% sobre o aluguel de R$ {1} referente ao período de {2} a {3}',” sendo os campos “Taxa de administração” (contrato.snap_brok__Taxa_administracao__c), “Valor do aluguel corrigido” (contrato.snap_brok__Valor_aluguel_corrigido__c), "Início de apuração" e "Término de apuração" respectivamente.

...

“Taxa de administração de {0}% sobre o aluguel de R$ {1} referente ao período de {2} a {3}',” sendo os campos “Taxa de administração” (contrato.snap_brok__Taxa_administracao__c), “Valor do aluguel corrigido” (contrato.snap_brok__Valor_aluguel_corrigido__c), "Início de apuração" e "Término de apuração" respectivamente.

...

Imóvel

...

Imóvel principal do contrato

...

Imóvel principal do contrato

...

Tipo de registro

...

Administradora

...

Locador

...

Situação

...

Aprovado

...

Aprovado

...

Tipo de lançamento

...

IPTU

...

IPTU

...

Valor do lançamento

...

Valor do aluguel corrigido

...

  • Valor do aluguel corrigido

Antes de gerar o lançamento de IPTU o sistema realiza algumas validações:

                                                           
O valor do IPTU do imóvel pode ser cobrado mensalmente do locador ou do locatário.

O lançamento de IPTU só é gerado quando o campo "Gerar lançamentos para IPTU" do contrato de locação estiver selecionado.

Quando o contrato de locação possui mais de um imóvel, o sistema gera um lançamento de IPTU para cada imóvel do contrato.

O valor do lançamento do IPTU, para cada imóvel, é calculado pela fórmula: "Valor do IPTU" * "Rateio do IPTU".

  • Quando o "Rateio do IPTU" não for informado, o sistema considera o valor do rateio como 100%.

  • Quando o "Valor do IPTU" não for informado, o sistema considera o valor como zero.

O lançamento de débito do IPTU é feito de acordo com a definição do campo "Responsável pelo IPTU" do contrato de locação, que pode "Locador" ou "Locatário".

O lançamento de crédito do IPTU é feito de acordo com a definição do campo "Pagante do IPTU" do contrato de locação, que pode ser "Administradora", "Locador" ou "Locatário".

...

      • valorIptu. Esse valor do lançamento é composto pela variável valorIptu anteriormente calculado da seguinte forma: “Valor Mensal do IPTU” do imóvel (imovel.Imovel__r.Valor_iptu__c) vezes o “rateioIptu” dividido por 100, isto é, (imovel.Imovel__r.Valor_iptu__c * rateioIptu / 100). Quando o campo “Valor mensal do IPTU” não for encontrado, o sistema considerá como zero. Esse valor poderá ser negativo para o “Responsável pelo IPTU” ou positivo para o “Pagante IPTU”.

      • O campo “Contraparte” (lancamentoContrato.Contraparte__c) do lançamento está sendo preenchido com o número do seu respectivo lançamento inverso. Isto é, se for um lançamento de crédito será preenchido com o número do lançamento de débito e vice versa.

      • O campo “ID externo” (snap_brok__Id_Externo__c) é preenchido com um sequencia alfa numérico, começando pelo módulo que gerou o lançamento, sendo que esse valor deverá ser único, sem repetição.

Resumindo:

Crédito

Débito

Contrato de administração

Número do contrato de administração que originou o lançamento

Número do contrato de administração que originou o lançamento

Contrato de locação

Número do contrato de locação que originou o lançamento

Número do contrato de locação que originou o lançamento

Ciclo de locação

Número do ciclo que originou o lançamento

Número do ciclo que originou o lançamento

Data do lançamento

Data de vencimento da próxima fatura

Data de vencimento da próxima fatura

Histórico

“IPTU do imóvel {0} no valor de R$ {1} referente ao rateio de {2}%'“ sendo preenchido com os campos “Imóvel” (imovel.Imovel__r.Name), valorIptu calculado anteriormente e rateioIptu também calculado anteriormente

“IPTU do imóvel {0} no valor de R$ {1} referente ao rateio de {2}%'“ sendo preenchido com os campos “Imóvel” (imovel.Imovel__r.Name), valorIptu calculado anteriormente e rateioIptu também calculado anteriormente

Imóvel

Imóvel principal do contrato

Imóvel principal do contrato

Tipo de registro

Pagante IPTU

Responsável pelo IPTU

Situação

Aprovado

Aprovado

Tipo de lançamento

IPTU

IPTU

Valor do lançamento

Valor do IPTU calculado

- Valor do IPTU calculado

Contraparte

Número do lançamento de débito gerado do mesmo valor, tipo e data.

Número do lançamento de crédito gerado do mesmo valor, tipo e data.

Após a criação do lançamento de IPTU o sistema poderá criar o lançamento da taxa de serviço.

  • Se o campo "Taxa de serviço para encargo" do contrato (contrato.Taxa_de_servico_para_encargo__c) for diferente de nulo e o campo "Pagante IPTU" (contrato.Pagante_iptu__c) for igual a "Administradora", o sistema realiza as seguintes atividades para gerar um lançamento de taxa de serviço para IPTU.  

    • Se em parametrizações o campo “Locador paga taxa de serviço” (parametrizacao.snap_brok__Locador_paga_taxa_servico__c) estiver selecionado o débito da taxa de serviço será para o locador.

    • O campo “Histórico” (lancamentoContrato.Historico__c) do lançamento = Histórico. Esse histórico é composto da seguinte forma: “Taxa de serviço de {0}% para pagamento do IPTU do imóvel {1} referente ao rateio de {2}%'”, sendo preenchido com os campos “Taxa de serviço para encargo” (contrato.Taxa_de_servico_para_encargo__c), “Imóvel” (imovel.Imovel__r.Name), “rateioIptu” calculado anteriormente,respectivamente.

    • O campo “Valor do lançamento” (lancamentoContrato.Valor_lancamento__c) do lançamento = valorTaxa. Esse valor do lançamento é composto pela variável valorIptu (calculado anteriormente)* “Taxa de serviço para encargo” (contrato.Taxa_de_servico_para_encargo__c) dividido por 100, isto é, (valorIptu * contrato.Taxa_de_servico_para_encargo__c/100). Esse valor poderá ser negativo para o “Responsável pelo IPTU” ou positivo para o “Pagante IPTU”.

    • O campo “Contrato de administração” (lancamentoContrato.Contrato__c) do lançamento = “Contrato de administração” (contrato.Contrato_administracao__c) que está sendo gerado o lançamento;

    • O campo “Contrato de locação” (lancamentoContrato.Contrato_locacao__c) do lançamento = “Contrato de locação” (contrato.contrato.Id) que está sendo gerado o lançamento;

    • O campo “Ciclo de locação” (lancamentoContrato.Ciclo_locacao__r) do lançamento = ao ciclo financeiro criado na etapa anterior;

    • O campo “Data do lançamento” (lancamentoContrato.Data_lancamento__c) do lançamento = a datalancamento é igual a “data de lançamento” recebida como parâmetro do método;

    • O campo “Imóvel” (lancamentoContrato.Imovel__c) do lançamento = “Imóvel” (contrato.Imovel__c) que está sendo gerado o lançamento;

    • O campo “Tipo de registro” do lançamento = “Responsável pelo IPTU” (contrato.Responsavel_iptu__c) ou “Pagante IPTU” (contrato.Pagante_iptu__c);

    • O campo “Situação” (Lancamentocontrato.Situacao__c) do lançamento = “Aprovado”;

    • O campo “Tipo de lançamento” (lancamentoContrato.Tipo_lancamento_contrato__c) do lançamento = “Taxa de serviço IPTU”;

    • O campo “Contraparte” (lancamentoContrato.Contraparte__c) do lançamento está sendo preenchido com o número do seu respectivo lançamento inverso. Isto é, se for um lançamento de crédito será preenchido com o número do lançamento de débito e vice versa.

    • O campo “ID externo” (snap_brok__Id_Externo__c) é preenchido com um sequencia alfa numérico, começando pelo módulo que gerou o lançamento, sendo que esse valor deverá ser único, sem repetição.
                         

Resumindo:

Crédito

Débito

Contrato de administração

Número do contrato de administração que originou o lançamento

Número do contrato de administração que originou o lançamento

Contrato de locação

Número do contrato de locação que originou o lançamento

Número do contrato de locação que originou o lançamento

Ciclo de locação

Número do ciclo que originou o lançamento

Número do ciclo que originou o lançamento

Data do lançamento

Data de vencimento da próxima fatura

Data de vencimento da próxima fatura

Histórico

“Taxa de serviço de {0}% para pagamento do IPTU do imóvel {1} referente ao rateio de {2}%'”, sendo preenchido com os campos “Taxa de serviço para encargo” (contrato.Taxa_de_servico_para_encargo__c), “Imóvel” (imovel.Imovel__r.Name), “rateioIptu” calculado anteriormente,respectivamente.

“Taxa de serviço de {0}% para pagamento do IPTU do imóvel {1} referente ao rateio de {2}%'”, sendo preenchido com os campos “Taxa de serviço para encargo” (contrato.Taxa_de_servico_para_encargo__c), “Imóvel” (imovel.Imovel__r.Name), “rateioIptu” calculado anteriormente,respectivamente.

Imóvel

Imóvel principal do contrato

Imóvel principal do contrato

Tipo de registro

Pagante IPTU

Responsável pelo IPTU

Situação

Aprovado

Aprovado

Tipo de lançamento

Taxa de serviço IPTU

Taxa de serviço IPTU

Valor do lançamento

Valor da taxa de serviço de IPTU calculado

- Valor da taxa de serviço de IPTU calculado

Contraparte

Número do lançamento de débito gerado do mesmo valor, tipo e data.

Número do lançamento de crédito gerado do mesmo valor, tipo e data.

gerarLancamentosCondominioContrato

Este método recebe como parâmetro a “Contrato” (Contrato__c contrato), “Data de início de apuração” e “Data de término de apuração” que foram calculadas na etapa anterior de período de apuração.

  • Se o “Tipo de vencimento” (contrato.tipo_vencimento__c) for igual a Antecipado e “Período de apuração” (parametrizacao.snap_brok__Periodo_apuracao_faturamento__c) do objeto de parametrizações do SnapProperty for igual a “Mês fechado”.

    • A “Data do lançamento” = data de término da apuração - 1 mês.

  • Se o campo “Gerar Lançamentos para Condomínio” do contrato de locação (contrato.Gerar_lancamento_condominio__c) estiver como Ativoo sistema faz as seguintes verificações:

    • O sistema gera um lançamento de condomínio para cada imóvel do contrato.

      • Os valores são calculados da seguinte forma:

        • O campo valorCondominio = “Valor do condomínio” do imóvel (imovel.Imovel__r.Valor_condominio__c).

        • O campo historico = “Condomínio do imóvel {0} no valor de R$ {1}'“, sendo preenchido com os campos “Imóvel” (imovel.Imovel__r.Name), valorCondominio calculado anteriormente;                        

  • Se o campo “Responsável Condomínio” (contrato.Responsavel_condominio_c)for igual a “Locatário” e o “Pagante Condomínio” (contrato.Pagante_condominio__c)for igual a “Locatário”

    • O sistema não criará nenhum lançamento.

  • Senão o sistema irá criar o lançamento de condomínio da seguinte forma:

    • O campo “Contrato de administração” (lancamentoContrato.Contrato__c) do lançamento = “Contrato de administração” (contrato.Contrato_administracao__c) que está sendo gerado o lançamento;

    • O campo “Contrato de locação” (lancamentoContrato.Contrato_locacao__c) do lançamento = “Contrato de locação” (contrato.contrato.Id) que está sendo gerado o lançamento;

    • O campo “Ciclo de locação” (lancamentoContrato.Ciclo_locacao__r) do lançamento = ao ciclo financeiro criado na etapa anterior;

    • O campo “Data do lançamento” (lancamentoContrato.Data_lancamento__c) do lançamento = a datalancamento é igual a “data de lançamento” recebida como parâmetro do método;

    • O campo “Histórico” (lancamentoContrato.Historico__c) do lançamento = Histórico. Esse histórico é composto da seguinte forma: “Condomínio do imóvel {0} no valor de R$ {1}'“, sendo preenchido com os campos “Imóvel” (imovel.Imovel__r.Name), valorCondominio calculado anteriormente;

    • O campo “Imóvel” (lancamentoContrato.Imovel__c) do lançamento = “Imóvel” (contrato.Imovel__c) que está sendo gerado o lançamento;

    • O campo “Tipo de registro” do lançamento = “Responsável Condomínio” (contrato.Responsavel_condominio__c) ou “Pagante Condomínio” (contrato.Pagante_condominio__c);

    • O campo “Situação” (Lancamentocontrato.Situacao__c) do lançamento = “Aprovado”;

    • O campo “Tipo de lançamento” (lancamentoContrato.Tipo_lancamento_contrato__c) do lançamento = “Condomínio”;

    • O campo “Valor do lançamento” (lancamentoContrato.Valor_lancamento__c) do lançamento = valorCondominio. Esse valor poderá ser negativo para o “Responsável Condomínio” ou positivo para o “Pagante Condomínio”.

    • O campo “Contraparte” (lancamentoContrato.Contraparte__c) do lançamento está sendo preenchido com o número do seu respectivo lançamento inverso. Isto é, se for um lançamento de crédito será preenchido com o número do lançamento de débito e vice versa.

    • O campo “ID externo” (snap_brok__Id_Externo__c) é preenchido com um sequencia alfa numérico, começando pelo módulo que gerou o lançamento, sendo que esse valor deverá ser único, sem repetição.

                          

Resumindo:

Crédito

Débito

Contrato de administração

Número do contrato de administração que originou o lançamento

Número do contrato de administração que originou o lançamento

Contrato de locação

Número do contrato de locação que originou o lançamento

Número do contrato de locação que originou o lançamento

Ciclo de locação

Número do ciclo que originou o lançamento

Número do ciclo que originou o lançamento

Data do lançamento

Data de vencimento da próxima fatura

Data de vencimento da próxima fatura

Histórico

“Condomínio do imóvel {0} no valor de R$ {1}'“, sendo preenchido com os campos “Imóvel” (imovel.Imovel__r.Name), valorCondominio calculado anteriormente;

“Condomínio do imóvel {0} no valor de R$ {1}'“, sendo preenchido com os campos “Imóvel” (imovel.Imovel__r.Name), valorCondominio calculado anteriormente;

Imóvel

Imóvel principal do contrato

Imóvel principal do contrato

Tipo de registro

Pagante Condomínio

Responsável Condomínio

Situação

Aprovado

Aprovado

Tipo de lançamento

Condomínio

Condomínio

Valor do lançamento

Valor do condomínio calculado

- Valor do condomínio calculado

Contraparte

Número do lançamento de débito gerado do mesmo valor, tipo e data.

Número do lançamento de crédito gerado do mesmo valor, tipo e data.

       
   Após a criação do lançamento de condomínio o sistema poderá criar o lançamento da taxa de serviço.

  • Se o campo "Taxa de serviço para encargo" do contrato (contrato.Taxa_de_servico_para_encargo__c) for diferente de nulo e o campo "Pagante Condomínio" (contrato.snap_brok__Pagante_condominio__c) for igual a "Administradora", o sistema realiza as seguintes atividades para gerar um lançamento de taxa de serviço para condomínio.  

    • Se em parametrizações o campo “Locador paga taxa de serviço” (parametrizacao.snap_brok__Locador_paga_taxa_servico__c) estiver selecionado o débito da taxa de serviço será para o locador.   

    • O campo “Histórico” (lancamentoContrato.Historico__c) do lançamento = Histórico. Esse histórico é composto da seguinte forma: “'Taxa de serviço de {0}% para pagamento do Condomínio do imóvel {1} referente ao valor de R${2}'”, sendo preenchido com os campos “Taxa de serviço para encargo” (contrato.Taxa_de_servico_para_encargo__c), “Imóvel” (imovel.Imovel__r.Name), “valorCondominio” calculado anteriormente,respectivamente.

    • O campo “Valor do lançamento” (lancamentoContrato.Valor_lancamento__c) do lançamento = valorTaxa. Esse valor do lançamento é composto pela variável valorCondominio (calculado anteriormente)* “Taxa de serviço para encargo” (contrato.Taxa_de_servico_para_encargo__c) dividido por 100, isto é, (valorCondominio * contrato.Taxa_de_servico_para_encargo__c/100). Esse valor poderá ser negativo para o “Responsável Condomínio” ou positivo para o “Pagante Condomínio”.

    • O campo “Contrato de administração” (lancamentoContrato.Contrato__c) do lançamento = “Contrato de administração” (contrato.Contrato_administracao__c) que está sendo gerado o lançamento;

    • O campo “Contrato de locação” (lancamentoContrato.Contrato_locacao__c) do lançamento = “Contrato de locação” (contrato.contrato.Id) que está sendo gerado o lançamento;

    • O campo “Ciclo de locação” (lancamentoContrato.Ciclo_locacao__r) do lançamento = ao ciclo financeiro criado na etapa anterior;

    • O campo “Data do lançamento” (lancamentoContrato.Data_lancamento__c) do lançamento = a datalancamento é igual a “data de lançamento” recebida como parâmetro do método;

    • O campo “Imóvel” (lancamentoContrato.Imovel__c) do lançamento = “Imóvel” (contrato.Imovel__c) que está sendo gerado o lançamento;

    • O campo “Tipo de registro” do lançamento = “Responsável Condomínio” (contrato.snap_brok__Responsavel_condominio__c) ou “Pagante Condomínio” (contrato.snap_brok__Pagante_condominio__c);

    • O campo “Situação” (Lancamentocontrato.Situacao__c) do lançamento = “Aprovado”;

    • O campo “Tipo de lançamento” (lancamentoContrato.Tipo_lancamento_contrato__c) do lançamento = “Taxa de serviço”;

    • O campo “Contraparte” (lancamentoContrato.Contraparte__c) do lançamento está sendo preenchido com o número do seu respectivo lançamento inverso. Isto é, se for um lançamento de crédito será preenchido com o número do lançamento de débito e vice versa.

    • O campo “ID externo” (snap_brok__Id_Externo__c) é preenchido com um sequencia alfa numérico, começando pelo módulo que gerou o lançamento, sendo que esse valor deverá ser único, sem repetição.

Resumindo:

Crédito

Débito

Contrato de administração

Número do contrato de administração que originou o lançamento

Número do contrato de administração que originou o lançamento

Contrato de locação

Número do contrato de locação que originou o lançamento

Número do contrato de locação que originou o lançamento

Ciclo de locação

Número do ciclo que originou o lançamento

Número do ciclo que originou o lançamento

Data do lançamento

Data de vencimento da próxima fatura

Data de vencimento da próxima fatura

Histórico

“'Taxa de serviço de {0}% para pagamento do Condomínio do imóvel {1} referente ao valor de R${2}'”, sendo preenchido com os campos “Taxa de serviço para encargo” (contrato.Taxa_de_servico_para_encargo__c), “Imóvel” (imovel.Imovel__r.Name), “valorCondominio” calculado anteriormente,respectivamente.

“'Taxa de serviço de {0}% para pagamento do Condomínio do imóvel {1} referente ao valor de R${2}'”, sendo preenchido com os campos “Taxa de serviço para encargo” (contrato.Taxa_de_servico_para_encargo__c), “Imóvel” (imovel.Imovel__r.Name), “valorCondominio” calculado anteriormente,respectivamente.

Imóvel

Imóvel principal do contrato

Imóvel principal do contrato

Tipo de registro

Pagante Condomínio

Responsável Condomínio

Situação

Aprovado

Aprovado

Tipo de lançamento

Taxa de serviço

Taxa de serviço

Valor do lançamento

Valor da taxa de serviço de Condomínio calculada

- Valor da taxa de serviço de Condomínio calculada

Contraparte

Número do lançamento de débito gerado do mesmo valor, tipo e data.

Número do lançamento de crédito gerado do mesmo valor, tipo e data.

gerarLancamentosTaxaColetaLixoContrato

Este método recebe como parâmetro a “Contrato” (Contrato__c contrato), “Data de início de apuração” e “Data de término de apuração” que foram calculadas na etapa anterior de período de apuração.

  • Se o “Tipo de vencimento” (contrato.tipo_vencimento__c) for igual a Antecipado e “Período de apuração” (parametrizacao.snap_brok__Periodo_apuracao_faturamento__c) do objeto de parametrizações do SnapProperty for igual a “Mês fechado”.

    • A “Data do lançamento” = data de término da apuração - 1 mês.

  • Se o campo “Gerar Lançamentos para Coleta de Lixo” do contrato de locação (contrato.Gerar_lancamentos_coleta_lixo__c) estiver como Ativoo sistema faz as seguintes verificações:

    • O sistema gera um lançamento de taxa de coleta de lixo para cada imóvel do contrato.

      • Os valores são calculados da seguinte forma:

        • O campo valorColetaLixo = “Valor mensal de coleta de lixo” do imóvel (imovel.Imovel__r.Valor_mensal_Coleta_lixo__c).

        • O campo historico = “'Taxa da coleta de lixo do imóvel {0} no valor de R$ {1}'“, sendo preenchido com os campos “Imóvel” (imovel.Imovel__r.Name), valorColetaLixo recebido anteriormente;                        

  • Se o campo “Responsável Coleta de Lixo” (contrato.Responsavel_coleta_lixo__c)for igual a “Locatário” e o “Pagante Coleta de Lixo” (contrato.Pagante_coleta_lixo__c)for igual a “Locatário”

    • O sistema não criará nenhum lançamento.

  • Senão o sistema irá criar o lançamento de taxa de coleta de lixo da seguinte forma:

    • O campo “Contrato de administração” (lancamentoContrato.Contrato__c) do lançamento = “Contrato de administração” (contrato.Contrato_administracao__c) que está sendo gerado o lançamento;

    • O campo “Contrato de locação” (lancamentoContrato.Contrato_locacao__c) do lançamento = “Contrato de locação” (contrato.contrato.Id) que está sendo gerado o lançamento;

    • O campo “Ciclo de locação” (lancamentoContrato.Ciclo_locacao__r) do lançamento = ao ciclo financeiro criado na etapa anterior;

    • O campo “Data do lançamento” (lancamentoContrato.Data_lancamento__c) do lançamento = a datalancamento é igual a “data de lançamento” recebida como parâmetro do método;

    • O campo “Histórico” (lancamentoContrato.Historico__c) do lançamento = Histórico. Esse histórico é composto da seguinte forma: “'Taxa da coleta de lixo do imóvel {0} no valor de R$ {1}'“, sendo preenchido com os campos “Imóvel” (imovel.Imovel__r.Name), valorColetaLixo calculado anteriormente;

    • O campo “Imóvel” (lancamentoContrato.Imovel__c) do lançamento = “Imóvel” (contrato.Imovel__c) que está sendo gerado o lançamento;

    • O campo “Tipo de registro” do lançamento = “Responsável Coleta de Lixo” (contrato.Responsavel_coleta_lixo__c) ou “Pagante Coleta de Lixo” (contrato.Pagante_coleta_lixo__c);

    • O campo “Situação” (Lancamentocontrato.Situacao__c) do lançamento = “Aprovado”;

    • O campo “Tipo de lançamento” (lancamentoContrato.Tipo_lancamento_contrato__c) do lançamento = “Taxa de Lixo”;

    • O campo “Valor do lançamento” (lancamentoContrato.Valor_lancamento__c) do lançamento = valorColetaLixo. Esse valor poderá ser negativo para o “Responsável Coleta de Lixo” ou positivo para o “Pagante Coleta de Lixo”.

    • O campo “Contraparte” (lancamentoContrato.Contraparte__c) do lançamento está sendo preenchido com o número do seu respectivo lançamento inverso. Isto é, se for um lançamento de crédito será preenchido com o número do lançamento de débito e vice versa.

    • O campo “ID externo” (snap_brok__Id_Externo__c) é preenchido com um sequencia alfa numérico, começando pelo módulo que gerou o lançamento, sendo que esse valor deverá ser único, sem repetição.

                          

Resumindo:

Crédito

Débito

Contrato de administração

Número do contrato de administração que originou o lançamento

Número do contrato de administração que originou o lançamento

Contrato de locação

Número do contrato de locação que originou o lançamento

Número do contrato de locação que originou o lançamento

Ciclo de locação

Número do ciclo que originou o lançamento

Número do ciclo que originou o lançamento

Data do lançamento

Data de vencimento da próxima fatura

Data de vencimento da próxima fatura

Histórico

“'Taxa da coleta de lixo do imóvel {0} no valor de R$ {1}'“, sendo preenchido com os campos “Imóvel” (imovel.Imovel__r.Name), valorColetaLixo recebido anteriormente;

“'Taxa da coleta de lixo do imóvel {0} no valor de R$ {1}'“, sendo preenchido com os campos “Imóvel” (imovel.Imovel__r.Name), valorColetaLixo recebido anteriormente;

Imóvel

Imóvel principal do contrato

Imóvel principal do contrato

Tipo de registro

Pagante coleta de lixo

Responsável coleta de lixo

Situação

Aprovado

Aprovado

Tipo de lançamento

Taxa de Lixo

Taxa de lixo

Valor do lançamento

Valor da taxa de coleta de lixo calculado

- Valor da taxa de coleta de lixo calculado

Contraparte

Número do lançamento de débito gerado do mesmo valor, tipo e data.

Número do lançamento de crédito gerado do mesmo valor, tipo e data.

         Após a criação do lançamento de coleta de lixo o sistema poderá criar o lançamento da taxa de serviço.

  • Se o campo "Taxa de serviço para encargo" do contrato (contrato.Taxa_de_servico_para_encargo__c) for diferente de nulo e o campo "Pagante Coleta Lixo" (contrato.Pagante_coleta_lixo__c) for igual a "Administradora", o sistema realiza as seguintes atividades para gerar um lançamento de taxa de serviço de coleta de lixo.  

    • Se em parametrizações o campo “Locador paga taxa de serviço” (parametrizacao.snap_brok__Locador_paga_taxa_servico__c) estiver selecionado o débito da taxa de serviço será para o locador. 

    • O campo “Histórico” (lancamentoContrato.Historico__c) do lançamento = Histórico. Esse histórico é composto da seguinte forma: “Taxa de serviço de {0}% para pagamento da Coleta de lixo do imóvel {1} referente ao valor de R${2}'”, sendo preenchido com os campos “Taxa de serviço para encargo” (contrato.Taxa_de_servico_para_encargo__c), “Imóvel” (imovel.Imovel__r.Name), “valorColetaLixo” calculado anteriormente,respectivamente.

    • O campo “Valor do lançamento” (lancamentoContrato.Valor_lancamento__c) do lançamento = valorTaxa. Esse valor do lançamento é composto pela variável valorColetaLixo (calculado anteriormente)* “Taxa de serviço para encargo” (contrato.Taxa_de_servico_para_encargo__c) dividido por 100, isto é, (valorColetaLixo * contrato.Taxa_de_servico_para_encargo__c/100). Esse valor poderá ser negativo para o “Responsável Coleta Lixo” ou positivo para o “Pagante Coleta Lixo”.

    • O campo “Contrato de administração” (lancamentoContrato.Contrato__c) do lançamento = “Contrato de administração” (contrato.Contrato_administracao__c) que está sendo gerado o lançamento;

    • O campo “Contrato de locação” (lancamentoContrato.Contrato_locacao__c) do lançamento = “Contrato de locação” (contrato.contrato.Id) que está sendo gerado o lançamento;

    • O campo “Ciclo de locação” (lancamentoContrato.Ciclo_locacao__r) do lançamento = ao ciclo financeiro criado na etapa anterior;

    • O campo “Data do lançamento” (lancamentoContrato.Data_lancamento__c) do lançamento = a datalancamento é igual a “data de lançamento” recebida como parâmetro do método;

    • O campo “Imóvel” (lancamentoContrato.Imovel__c) do lançamento = “Imóvel” (contrato.Imovel__c) que está sendo gerado o lançamento;

    • O campo “Tipo de registro” do lançamento = “Responsável Coleta Lixo” (contrato.Responsavel_coleta_lixo__c) ou “Pagante Coleta Lixo” (contrato.Pagante_coleta_lixo__c);

    • O campo “Situação” (Lancamentocontrato.Situacao__c) do lançamento = “Aprovado”;

    • O campo “Tipo de lançamento” (lancamentoContrato.Tipo_lancamento_contrato__c) do lançamento = “Taxa de serviço”;

    • O campo “Contraparte” (lancamentoContrato.Contraparte__c) do lançamento está sendo preenchido com o número do seu respectivo lançamento inverso. Isto é, se for um lançamento de crédito será preenchido com o número do lançamento de débito e vice versa.

    • O campo “ID externo” (snap_brok__Id_Externo__c) é preenchido com um sequencia alfa numérico, começando pelo módulo que gerou o lançamento, sendo que esse valor deverá ser único, sem repetição.

Resumindo:

Crédito

Débito

Contrato de administração

Número do contrato de administração que originou o lançamento

Número do contrato de administração que originou o lançamento

Contrato de locação

Número do contrato de locação que originou o lançamento

Número do contrato de locação que originou o lançamento

Ciclo de locação

Número do ciclo que originou o lançamento

Número do ciclo que originou o lançamento

Data do lançamento

Data de vencimento da próxima fatura

Data de vencimento da próxima fatura

Histórico

“Taxa de serviço de {0}% para pagamento da Coleta de lixo do imóvel {1} referente ao valor de R${2}'”, sendo preenchido com os campos “Taxa de serviço para encargo” (contrato.Taxa_de_servico_para_encargo__c), “Imóvel” (imovel.Imovel__r.Name), “valorColetaLixo” calculado anteriormente,respectivamente.

“Taxa de serviço de {0}% para pagamento da Coleta de lixo do imóvel {1} referente ao valor de R${2}'”, sendo preenchido com os campos “Taxa de serviço para encargo” (contrato.Taxa_de_servico_para_encargo__c), “Imóvel” (imovel.Imovel__r.Name), “valorColetaLixo” calculado anteriormente,respectivamente.

Imóvel

Imóvel principal do contrato

Imóvel principal do contrato

Tipo de registro

Pagante coleta lixo

Responsável coleta lixo

Situação

Aprovado

Aprovado

Tipo de lançamento

Taxa de serviço

Taxa de serviço

Valor do lançamento

Valor da taxa de serviço de coleta lixo calculada

- Valor da taxa de serviço de coleta lixo calculada

Contraparte

Número do lançamento de débito gerado do mesmo valor, tipo e data.

Número do lançamento de crédito gerado do mesmo valor, tipo e data.

            

gerarLancamentosTaxaMarinhaContrato

Este método recebe como parâmetro a “Contrato” (Contrato__c contrato), “Data de início de apuração” e “Data de término de apuração” que foram calculadas na etapa anterior de período de apuração.

  • Se o “Tipo de vencimento” (contrato.tipo_vencimento__c) for igual a Antecipado e “Período de apuração” (parametrizacao.snap_brok__Periodo_apuracao_faturamento__c) do objeto de parametrizações do SnapProperty for igual a “Mês fechado”.

    • A “Data do lançamento” = data de término da apuração - 1 mês.

  • Se o campo “Gerar Lançamentos para Taxa Marinha” do contrato de locação (contrato.Gerar_lancamentos_taxa_marinha__c) estiver como Ativoo sistema faz as seguintes verificações:

    • O sistema gera um lançamento de taxa de marinha para cada imóvel do contrato.

      • Os valores são calculados da seguinte forma:

        • O campo valorTaxaMarinha = “Valor mensal de Taxa Marinha” do imóvel (imovel.Imovel__r.Valor_mensal_Taxa_Marinha__c).

        • O campo historico = “'Taxa marinha do imóvel {0} no valor de R$ {1}'“, sendo preenchido com os campos “Imóvel” (imovel.Imovel__r.Name), valorTaxaMarinha calculado anteriormente;                        

  • Se o campo “Responsável Taxa Marinha” (contrato.Responsavel_taxa_marinha__c)for igual a “Locatário” e o “Pagante Taxa Marinha” (contrato.Pagante_taxa_marinha__c)for igual a “Locatário”

    • O sistema não criará nenhum lançamento.

  • Senão o sistema irá criar o lançamento de taxa marinha da seguinte forma:

    • O campo “Contrato de administração” (lancamentoContrato.Contrato__c) do lançamento = “Contrato de administração” (contrato.Contrato_administracao__c) que está sendo gerado o lançamento;

    • O campo “Contrato de locação” (lancamentoContrato.Contrato_locacao__c) do lançamento = “Contrato de locação” (contrato.contrato.Id) que está sendo gerado o lançamento;

    • O campo “Ciclo de locação” (lancamentoContrato.Ciclo_locacao__r) do lançamento = ao ciclo financeiro criado na etapa anterior;

    • O campo “Data do lançamento” (lancamentoContrato.Data_lancamento__c) do lançamento = a datalancamento é igual a “data de lançamento” recebida como parâmetro do método;

    • O campo “Histórico” (lancamentoContrato.Historico__c) do lançamento = Histórico. Esse histórico é composto da seguinte forma: “'Taxa marinha do imóvel {0} no valor de R$ {1}'“, sendo preenchido com os campos “Imóvel” (imovel.Imovel__r.Name), valorTaxaMarinha calculado anteriormente;  

    • O campo “Imóvel” (lancamentoContrato.Imovel__c) do lançamento = “Imóvel” (contrato.Imovel__c) que está sendo gerado o lançamento;

    • O campo “Tipo de registro” do lançamento = “Responsável Taxa Marinha” (contrato.Responsavel_taxa_marinha__c) ou “Pagante Taxa Marinha” (contrato.Pagante_taxa_marinha__c);

    • O campo “Situação” (Lancamentocontrato.Situacao__c) do lançamento = “Aprovado”;

    • O campo “Tipo de lançamento” (lancamentoContrato.Tipo_lancamento_contrato__c) do lançamento = “Taxa Marinha”;

    • O campo “Valor do lançamento” (lancamentoContrato.Valor_lancamento__c) do lançamento = valorTaxaMarinha. Esse valor poderá ser negativo para o “Responsável Taxa Marinha” ou positivo para o “Pagante Taxa Marinha”.

    • O campo “Contraparte” (lancamentoContrato.Contraparte__c) do lançamento está sendo preenchido com o número do seu respectivo lançamento inverso. Isto é, se for um lançamento de crédito será preenchido com o número do lançamento de débito e vice versa.

    • O campo “ID externo” (snap_brok__Id_Externo__c) é preenchido com um sequencia alfa numérico, começando pelo módulo que gerou o lançamento, sendo que esse valor deverá ser único, sem repetição.

                          

Resumindo:

Crédito

Débito

Contrato de administração

Número do contrato de administração que originou o lançamento

Número do contrato de administração que originou o lançamento

Contrato de locação

Número do contrato de locação que originou o lançamento

Número do contrato de locação que originou o lançamento

Ciclo de locação

Número do ciclo que originou o lançamento

Número do ciclo que originou o lançamento

Data do lançamento

Data de vencimento da próxima fatura

Data de vencimento da próxima fatura

Histórico

“'Taxa marinha do imóvel {0} no valor de R$ {1}'“, sendo preenchido com os campos “Imóvel” (imovel.Imovel__r.Name), valorTaxaMarinha calculado anteriormente

“'Taxa marinha do imóvel {0} no valor de R$ {1}'“, sendo preenchido com os campos “Imóvel” (imovel.Imovel__r.Name), valorTaxaMarinha calculado anteriormente 

Imóvel

Imóvel principal do contrato

Imóvel principal do contrato

Tipo de registro

Pagante taxa marinha

Responsável taxa marinha

Situação

Aprovado

Aprovado

Tipo de lançamento

Taxa marinha

Taxa marinha

Valor do lançamento

Valor da taxa marinha calculada

- Valor da taxa marinha calculada

Contraparte

Número do lançamento de débito gerado do mesmo valor, tipo e data.

Número do lançamento de crédito gerado do mesmo valor, tipo e data.

         Após a criação do lançamento de taxa marinha o sistema poderá criar o lançamento da taxa de serviço.

  • Se o campo "Taxa de serviço para encargo" do contrato (contrato.Taxa_de_servico_para_encargo__c) for diferente de nulo e o campo "Pagante taxa marinha" (contrato.snap_brok__Pagante_taxa_marinha__c) for igual a "Administradora", o sistema realiza as seguintes atividades para gerar um lançamento de taxa de serviço de taxa marinha.  

  • Se em parametrizações o campo “Locador paga taxa de serviço” (parametrizacao.snap_brok__Locador_paga_taxa_servico__c) estiver selecionado o débito da taxa de serviço será para o locador.                

    •  O campo “Histórico” (lancamentoContrato.Historico__c) do lançamento = Histórico. Esse histórico é composto da seguinte forma: “'Taxa de serviço de {0}% para pagamento da Taxa marinha do imóvel {1} referente ao valor de R${2}'”, sendo preenchido com os campos “Taxa de serviço para encargo” (contrato.Taxa_de_servico_para_encargo__c), “Imóvel” (imovel.Imovel__r.Name), “valorTaxaMarinha” calculado anteriormente,respectivamente.

    • O campo “Valor do lançamento” (lancamentoContrato.Valor_lancamento__c) do lançamento = valorTaxaMarinha. Esse valor do lançamento é composto pela variável valorTaxaMarinha (calculado anteriormente)* “Taxa de serviço para encargo” (contrato.Taxa_de_servico_para_encargo__c) dividido por 100, isto é, (valorTaxaMarinha * contrato.Taxa_de_servico_para_encargo__c/100). Esse valor poderá ser negativo para o “Responsável Taxa Marinha” ou positivo para o “Pagante Taxa Marinha”.

    • O campo “Contrato de administração” (lancamentoContrato.Contrato__c) do lançamento = “Contrato de administração” (contrato.Contrato_administracao__c) que está sendo gerado o lançamento;

    • O campo “Contrato de locação” (lancamentoContrato.Contrato_locacao__c) do lançamento = “Contrato de locação” (contrato.contrato.Id) que está sendo gerado o lançamento;

    • O campo “Ciclo de locação” (lancamentoContrato.Ciclo_locacao__r) do lançamento = ao ciclo financeiro criado na etapa anterior;

    • O campo “Data do lançamento” (lancamentoContrato.Data_lancamento__c) do lançamento = a datalancamento é igual a “data de lançamento” recebida como parâmetro do método;

    • O campo “Imóvel” (lancamentoContrato.Imovel__c) do lançamento = “Imóvel” (contrato.Imovel__c) que está sendo gerado o lançamento;

    • O campo “Tipo de registro” do lançamento = “Responsável Taxa Marinha” (contrato.snap_brok__Responsavel_taxa_marinha__c) ou “Pagante Taxa Marinha” (contrato.snap_brok__Pagante_taxa_marinha__c);

    • O campo “Situação” (Lancamentocontrato.Situacao__c) do lançamento = “Aprovado”;

    • O campo “Tipo de lançamento” (lancamentoContrato.Tipo_lancamento_contrato__c) do lançamento = “Taxa de serviço”;

    • O campo “Contraparte” (lancamentoContrato.Contraparte__c) do lançamento está sendo preenchido com o número do seu respectivo lançamento inverso. Isto é, se for um lançamento de crédito será preenchido com o número do lançamento de débito e vice versa.

    • O campo “ID externo” (snap_brok__Id_Externo__c) é preenchido com um sequencia alfa numérico, começando pelo módulo que gerou o lançamento, sendo que esse valor deverá ser único, sem repetição.
                         
      Resumindo:

Crédito

Débito

Contrato de administração

Número do contrato de administração que originou o lançamento

Número do contrato de administração que originou o lançamento

Contrato de locação

Número do contrato de locação que originou o lançamento

Número do contrato de locação que originou o lançamento

Ciclo de locação

Número do ciclo que originou o lançamento

Número do ciclo que originou o lançamento

Data do lançamento

Data de vencimento da próxima fatura

Data de vencimento da próxima fatura

Histórico

“'Taxa de serviço de {0}% para pagamento da Taxa marinha do imóvel {1} referente ao valor de R${2}'”, sendo preenchido com os campos “Taxa de serviço para encargo” (contrato.Taxa_de_servico_para_encargo__c), “Imóvel” (imovel.Imovel__r.Name), “valorTaxaMarinha” calculado anteriormente,respectivamente.

“'Taxa de serviço de {0}% para pagamento da Taxa marinha do imóvel {1} referente ao valor de R${2}'”, sendo preenchido com os campos “Taxa de serviço para encargo” (contrato.Taxa_de_servico_para_encargo__c), “Imóvel” (imovel.Imovel__r.Name), “valorTaxaMarinha” calculado anteriormente,respectivamente.

Imóvel

Imóvel principal do contrato

Imóvel principal do contrato

Tipo de registro

Pagante taxa marinha

Responsável taxa marinha

Situação

Aprovado

Aprovado

Tipo de lançamento

Taxa marinha

Taxa marinha

Valor do lançamento

Valor da taxa marinha calculada

- Valor da taxa marinha calculada

Contraparte

Número do lançamento de débito gerado do mesmo valor, tipo e data.

Número do lançamento de crédito gerado do mesmo valor, tipo e data.

                      

gerarLancamentosTaxaComissao13Contrato

Este método recebe como parâmetro a “Contrato” (Contrato__c contrato), “Data de início de apuração” e “Data de término de apuração” que foram calculadas na etapa anterior de período de apuração.

  • Por princípio o sistema não irá gerar a taxa de serviço de comissão do décimo terceiro.

  • Se o “Tipo de vencimento” (contrato.tipo_vencimento__c) for igual a Antecipado e “Período de apuração” (parametrizacao.snap_brok__Periodo_apuracao_faturamento__c) do objeto de parametrizações do SnapProperty for igual a “Mês fechado”.

    • A “Data do lançamento” = data de término da apuração - 1 mês.

    • Se mês da data de lançamento é igual a 10

      • então gerarTaxa = verdadeiro;

  • Se o “Tipo de vencimento” (contrato.tipo_vencimento__c) for igual a Vencido e “Período de apuração” (parametrizacao.snap_brok__Periodo_apuracao_faturamento__c) do objeto de parametrizações do SnapProperty for igual a “Mês fechado”.

    • Se mês da data de lançamento é igual a 11

      • então gerarTaxa = verdadeiro;

  • Se gerarTaxa igual a verdadeiro:

    • Se “Valor do aluguel corrigido” (contrato.Valor_aluguel_corrigido__c) diferente de nulo e “Valor do aluguel corrigido” (contrato.Valor_aluguel_corrigido__c) maior que zero e “Taxa de comissão 13o“(contrato.Taxa_administracao_Novembro__c) diferente de nulo e“Taxa de comissão 13o“(contrato.Taxa_administracao_Novembro__c) maior que zero

      • Os valores são calculados da seguinte forma:

        • O campo valorTaxaComissao13 = “Valor do aluguel corrigido” do imóvel (contrato.Valor_aluguel_corrigido__c) * “Taxa de comissão 13o“(contrato.Taxa_administracao_Novembro__c)/100, isto é, (contrato.Valor_aluguel_corrigido__c * contrato.Taxa_administracao_Novembro__c/100). Esse valor poderá ser negativo para o “Locador” ou positivo para o “Administradora”.

      • O campo historico = “'Taxa de novembro de {0}% sobre o aluguel de R$ {1}'“, sendo preenchido com os campos “Taxa de comissão 13o” (contrato.Taxa_administracao_Novembro__c) e “Valor do aluguel corrigido”.  

      • O campo “Contrato de administração” (lancamentoContrato.Contrato__c) do lançamento = “Contrato de administração” (contrato.Contrato_administracao__c) que está sendo gerado o lançamento;

      • O campo “Contrato de locação” (lancamentoContrato.Contrato_locacao__c) do lançamento = “Contrato de locação” (contrato.contrato.Id) que está sendo gerado o lançamento;

      • O campo “Ciclo de locação” (lancamentoContrato.Ciclo_locacao__r) do lançamento = ao ciclo financeiro criado na etapa anterior;

      • O campo “Data do lançamento” (lancamentoContrato.Data_lancamento__c) do lançamento = a datalancamento é igual a “data de lançamento” recebida como parâmetro do método;

      • O campo “Histórico” (lancamentoContrato.Historico__c) do lançamento = Histórico. Esse histórico é composto da seguinte forma: “'Taxa de novembro de {0}% sobre o aluguel de R$ {1}'“, sendo preenchido com os campos “Taxa de comissão 13o” (contrato.Taxa_administracao_Novembro__c) e “Valor do aluguel corrigido”.  

      • O campo “Tipo de registro” do lançamento = “Administradora” ou “Locador” .

      • O campo “Situação” (Lancamentocontrato.Situacao__c) do lançamento = “Aprovado”;

      • O campo “Tipo de lançamento” (lancamentoContrato.Tipo_lancamento_contrato__c) do lançamento = “Taxa de novembro”;

      • O campo “Valor do lançamento” (lancamentoContrato.Valor_lancamento__c) do lançamento = valorTaxaComissao13. Esse valor poderá ser negativo para o “Locador” ou positivo para o “Administradora”.

      • O campo “Contraparte” (lancamentoContrato.Contraparte__c) do lançamento está sendo preenchido com o número do seu respectivo lançamento inverso. Isto é, se for um lançamento de crédito será preenchido com o número do lançamento de débito e vice versa.

      • O campo “ID externo” (snap_brok__Id_Externo__c) é preenchido com um sequencia alfa numérico, começando pelo módulo que gerou o lançamento, sendo que esse valor deverá ser único, sem repetição.

                          

Resumindo:

Crédito

Débito

Contrato de administração

Número do contrato de administração que originou o lançamento

Número do contrato de administração que originou o lançamento

Contrato de locação

Número do contrato de locação que originou o lançamento

Número do contrato de locação que originou o lançamento

Ciclo de locação

Número do ciclo que originou o lançamento

Número do ciclo que originou o lançamento

Data do lançamento

Data de vencimento da próxima fatura

Data de vencimento da próxima fatura

Histórico

“'Taxa de novembro de {0}% sobre o aluguel de R$ {1}'“, sendo preenchido com os campos “Taxa de comissão 13o” (contrato.Taxa_administracao_Novembro__c) e “Valor do aluguel corrigido”;  

“'Taxa de novembro de {0}% sobre o aluguel de R$ {1}'“, sendo preenchido com os campos “Taxa de comissão 13o” (contrato.Taxa_administracao_Novembro__c) e “Valor do aluguel corrigido”;  

Imóvel

Imóvel principal do contrato

Imóvel principal do contrato

Tipo de registro

Administradora

Locador

Situação

Aprovado

Aprovado

Tipo de lançamento

Taxa novembro

Taxa novembro

Valor do lançamento

Valor da taxa novembro calculada

- Valor da taxa novembro calculada

Contraparte

Número do lançamento de débito gerado do mesmo valor, tipo e data.

Número do lançamento de crédito gerado do mesmo valor, tipo e data.

Após todas as gerações desses lançamentos, o sistema verifica se o locatário principal do contrato é pessoa jurídica, e se algum participante com papel “Locador” é pessoa Física. Caso o contrato possua essa configuração o sistema irá gerar lançamentos de imposto de renda que pode ser verificado no seguinte artigo Geração de lançamento de retenção do imposto de renda

O sistema cria um evento no contrato com o tipo de evento sendo lançamento e a data do evento sendo a data atual para cada contrato que foi gerado lançamento.

Após a realização com sucesso da geração de lançamentos o sistema atualiza os seguintes campos:

  • atualiza o campo “Data do próximo lançamento” adicionando um mês

  • atualiza o campo “Data do último lançamento” com a data atual

  • atualiza o campo “Lançamento” para sucesso

Note

Caso ocorra algum erro na geração de lançamento o sistema enviará emails com os erros ocorridos para os emails que estiverem no campo “emails lançamento” do metadados configuração “Ciclo Financeiro”.

Info

Todos os lançamentos de débitos gerados estão sendo vinculados ao seu respectivo lançamento de crédito. Esse vínculo está sendo informado no campo “contraparte” e pode ser verificado no repasse dependendo da configuração do sistema/contrato.