Implantação do ciclo financeiro da locação
Este artigo descreve as etapas e atividades necessárias para implantar o ciclo financeiro da locação.
Cadastros
Na tabela abaixo estão relacionados os cadastros que devem ser preenchidos no início da implantação.
# | Objeto | Descrição |
---|---|---|
1 | País | |
2 | Estado | |
3 | Cidade | |
4 | Bairro | |
5 | Cep |
Parametrização
Na tabela abaixo estão relacionadas as parametrizações necessárias para o ciclo financeiro.
# | Parametrização | Descrição |
---|---|---|
1 | Abertura do Período | Realizar a abertura do período Anual dentro do cadastro de empresas |
2 | ||
3 |
Importação
Na tabela abaixo estão relacionadas os objetos que devem ser importados para o ciclo financeiro.
# | Objeto | Descrição | Notas |
---|---|---|---|
1 | Conta | Contas de locadores, locatários, fiadores e beneficiários do tipo pessoa física e jurídica. | |
2 | Contato | Contatos das contas do tipo pessoa jurídica | |
3 | Condomínio | Condomínios para associar | Nota 2 |
4 | Imóvel | Imóveis referenciados pelos contratos de administração e locação | |
5 | Contrato de administração | Nota 1 | |
6 | Imóvel do contrato de administração | Nota 1 | |
7 | Participante do contrato de administração | Nota 1 | |
8 | Beneficiário do contrato de administração | Nota 1 | |
9 | Contrato de locação | ||
10 | Participante do contrato de locação | ||
11 | Beneficiário do contrato de locação | ||
12 | Imóvel do contrato de locação |
Notas
- O contrato de administração não é imprescindível para o ciclo financeiro.
- O condomínio não é imprescindível para o ciclo financeiro. As informações do condomínio são importantes para complementar a descrição do imóvel.
Inicialização do ciclo financeiro
Para inicializar as datas de lançamento, faturamento e vencimento dos contratos, siga os passos abaixo.
- Clique no ícone de configuração e selecione a opção "Developer console".
- Selecione a opção "Debug" e clique no item "Open Execute Anonymous Window".
Copie o código abaixo e cole na janela "Enter Apex Code",
Código ApexInteger ano = 2019; Integer mes = 9; snap_brok.IniciarCicloFinanceiroBatch batch = new snap_brok.IniciarCicloFinanceiroBatch(ano, mes); Id idBatch = Database.executeBatch(batch, 100);
Atualize a variável "ano" com o número do ano para o primeiro ciclo financeiro.
Atualize a variável "mes" com o número do mês para o primeiro ciclo financeiro.
Clique no botão "Execute".
- Aguarde no seu email uma mensagem informando a conclusão da operação.
- Consulte o relatório "" para confirmar que as datas de lançamento, faturamento e vencimento de todos os contratos foram atualizadas corretamente.
Verificação
Depois de concluída a inicialização do ciclo financeiro, verifique se as datas de lançamento, faturamento e vencimento de todos os contratos de locação ativos foram atualizadas com sucesso.
Validação
Depois de concluir a inicialização do ciclo financeiro, siga os passos abaixo para validar os dados dos contratos para o ciclo financeiro.
- Selecione o aplicativo "Financeiro" e clique na guia "Contratos".
- Clique no botão "Validar".
O resultado da validação vai chegar no email do usuário que iniciou a operação.
Nota sobre o email
Se o campo "Enviar notificações por email" da parametrização "Ciclo financeiro" não estiver selecionado o sistema não envia a mensagem de email.
- Consulte o relatório "Contratos com erros de validação" para identificar os contratos que não foram validados.
Todos os contratos devem estar validados antes de prosseguir para a próxima etapa da implantação.
Verificação dos erros de validação
Erros de validação
Para consultar os contratos com erro de validação, utilize o relatório "Contratos com erro de validação" disponível na pasta "Contratos de locação (financeiro)".
Notas:
- O campo "Validado para faturamento" é alterado para "Falso" quando o sistema encontra algum erro de validação.
- O campo "Erros para faturamento" do contrato exibe a mensagem criada pelo sistema durante a validação do contrato.
Log
O serviço de validação cria os seguintes registros no log:
Evento | Tipo | Mensagem | Descrição |
---|---|---|---|
Início da execução do serviço | Validação de contratos para faturamento | Serviço iniciado | Serviço iniciado em dd/mm/aaaa às h:mm:ss |
Lote processado | Validação de contratos para faturamento | Lote n concluído com sucesso | Contratos validados: 604, Contrato com erro: 3 |
Término da execução do serviço | Validação de contratos para faturamento | Serviço concluído | Status: Completed; Lotes processados: n; Lotes com erro de processamento: 0 |
Notas para o desenvolvedor
- O serviço é acionado pelo componente "validarContratosFaturamento".
- O serviço é implementado pela classe "ContratoValidarFaturamentoBatch".
- O tamanho do lote para processamento é de 1000 contratos.
Ativação dos serviços
Na tabela abaixo estão discriminados os serviços responsáveis pelo processamento do ciclo financeiro devem ser ativados.
# | Serviço | Código para ativação |
---|---|---|
1 | 01. Lançamento | Database.executeBatch(new snap_brok.GeracaoLancamentosContratosBatch(), 100); |
2 | 02. Faturamento | Database.executeBatch(new snap_brok.FaturaBatch(), 100); |
3 | 03. Emissão de boletos | Database.executeBatch(new snap_brok.CobrancaEmitirBoletoBatch(), 100); |
4 | 04. Consulta de boletos | Database.executeBatch(new snap_brok.CobrancaConsultarBoletoBatch(), 5); |
5 | 05. Geração de faturas | Database.executeBatch(new snap_brok.FaturaGerarArquivoBatch(), 100); |
6 | 06. Repasse | Database.executeBatch(new snap_brok.RepasseBatch(), 100); |
7 | Contabilização de faturas | Database.executeBatch(new snap_brok.FaturaContabilizarBatch(), 100); |
| ||
9 | Atualização de títulos | Database.executeBatch(new snap_brok.CobrancaAtualizarTituloBatch(), 100); |
10 | Envio de SMS | Database.executeBatch(new snap_brok.EnviarSmsBatch(), 100); |
11 | Atualização de cobranças | Database.executeBatch(new snap_brok.CobrancaAtualizarCobrancaBatch(), 100); |
12 | 12. Limpeza de logs | Database.executeBatch(new snap_brok.LogLimparBatch(), 100); |
13 | Geração de pagamento | Database.executeBatch(new snap_finan.PagamentoGerarBatch(), 100); |
14 | Envio do Extrato do Locador | snap_brok__.EnvioExtratoRepasseBatch batch = new snap_brok__.EnvioExtratoRepasseBatch(); Id batchJobId = Database.executeBatch(batch); |
15 | Envio do Extrato da Fatura - TituloRegistradoEnviarFaturaBatch | snap_brok__.TituloRegistradoEnviarFaturaBatch batch = new snap_brok__.TituloRegistradoEnviarFaturaBatch(); Id batchJobId = Database.executeBatch(batch, 1); |
16 | Enviar cobrança | snap_brok__.CobrancaAtualizarFaturaBatch batch = new snap_brok__.CobrancaAtualizarFaturaBatch(); Id batchJobId = Database.executeBatch(batch); |
17 | Contabilizar Repasse - RepasseContabilizadoBatch | snap_brok__.RepasseContabilizadoBatch batch = new snap_brok__.RepasseContabilizadoBatch(); Id batchJobId = Database.executeBatch(batch, 1); |
18 | ImovelAtualizarScheduler | snap_brok__.ImovelIndexarBatch batch = new snap_brok__.ImovelIndexarBatch(); snap_brok__Exportar_imovel__mdt configExportarImovel = snap_brok__.ImovelServico.configuracaoExportarImovel; Id idBatch = Database.executeBatch(batch, Integer.valueOf(configExportarImovel.snap_brok__Lote__c)); |
19 | Atualização da fatura e Adicionar fatura ao processo de cobrança | CobrancaAtualizarFaturaScheduler |
20 | ConsultarRemessaAlteracaoBatch | snap_brok__.ConsultarRemessaAlteracaoBatch batch = new snap_brok__.ConsultarRemessaAlteracaoBatch(); Id batchJobId = Database.executeBatch(batch, 1); |
21 | atualizar os saldos das contas contábeis | snap_brok.CalcularSaldoContabilBatch batch = new snap_brok.CalcularSaldoContabilBatch('ID do Exercício contábil do ano escolhido'); |