...
Seleciona todos os contratos de locação com pelo menos uma fatura recebida no período correspondente ao ano de competência da declaração.
Cria um item da Dimob para cada locador de cada contrato de locação selecionado no passo 1.
Para cada item da Dimob criado:
Calcula o valor do “Aluguel”:
Seleciona os itens das faturas recebidas para o contrato de locação, no período de apuração da declaração, filtrando apenas os itens de fatura associados a um tipo de lançamento onde o campo “Incide Dimob” for igual a “Aluguel”.
Agrupa os itens selecionados pelo mês da “Data de recebimento” da fatura e atribui a soma do campo “Valor do item” ao período correspondente no item da dimob.
Calcula o valor do “IR”:
Seleciona os itens das faturas recebidas para o contrato de locação e para o locador, no período de apuração da declaração, filtrando apenas os itens de fatura associados a um tipo de lançamento onde o campo “Incide Dimob” for igual a “Imposto“.
Agrupa os itens selecionados pelo mês da “Data de recebimento” da fatura e atribui a soma do campo “Valor do item”. ao período correspondente no item da dimob.
Calcula o valor da “Comissão”:
Seleciona os itens dos repasses pagos para o contrato de locação e para o locador, no período de apuração da declaração.
Agrupa os itens selecionados pelo mês da “Data de pagamento” do repasse e atribui a soma do campo “Valor da administração” ao período correspondente no item da dimob.
Descrição detalhada
Cadastrar Dimob
Essa é a primeira etapa do processo, responsável pela criação do registro da Dimob e os respectivos itens.
Atividades
Criar uma lista de faturas recebidas, agrupadas por contrato de locação.
Parâmetros para filtro: dataInicio, dataTermino
Filtro para faturas: Empresa__c = idEmpresa AND Situação = Recebida AND Data_recebimento__c >= dataInicio AND Data_recebimento__c ,+ dataTermino
Extrair os contratos de locação contidos na lista de faturas recebidas.
Recuperar informações dos contratos de locação.
Criar o registro de uma nova Dimob__c
Criar um item da Dimob (Item_dimob__c) para cada locador dos contratos de locação.
Componentes
DimobServico.cadastrarDimob
Gerar valores
Essa é a segunda etapa do processo, responsável pelo cálculo dos valores de aluguel, IR e comissão (taxa de administração) dos itens da Dimob.
Atividades
Criar lista de contratos a partir dos itens da Dimob
Calcular valores de aluguel:
Agrupar itens de faturas recebidas por contrato e por mês
Filtro: Situação = Recebida AND Data de recebimento entre dataInicio e dataTermino AND Incide Dimob = Aluguel
Criar um Map de valores de aluguel por mês e por contrato:
Calcular valores de imposto de renda retido na fonte
Calcular valores de taxa de administração:
Agrupar itens de repasse pagos no período, por contrato, por locador e por mês da data de recebimento da fatura
Filtro: Situação = Pago | Enviado | Contabilizado | Nota emitida
Criar um Map de valores de administração (snap_brok__Valor_administracao__c) por contrato, locador e por mês da data de recebimento da fatura
Adicionar os valores de administração originados por taxa de intermediação e que não estão vinculados a nenhuma fatura:
Base: Itens de repasse (Item_repasse__c)
Filtro:
Calcular valores da taxa de intermediação:
Calcular valores dos encargos financeiros (multa, juros e correção)
Atualizar os itens da dimob:
Atualizar valores do aluguel:
Atualizar valor do aluguel em janeiro:
valorAluguel = Valor do aluguel * participação
valorEncargos = valorEncargos * participação
item.snap_brok__Valor_aluguel_mes_Janeiro__c = valorAluguel + valorEncargos
Repete o mesmo cálculo para todos os meses do ano
Atualizar valores do imposto:
Atualizar valores da comissão:
Valor da comissão = Valor da administração (passo 4) + Valor da intermediação (passo 5)
Componentes
DimobGerarValoresBatch