Rotina | Tipo de Operação | Opção de Menu | Regras de Negócio |
Histórico de Extrato de Caixa | Criação | Contas a pagar/receber -> Movimentações Bancárias -> Controle Bancário -> Extratos de Caixa | - |
Posição Financeira | Criação | Contas a pagar/receber -> Movimentações Bancárias -> Controle Bancário -> Posição Financeira | - |
Liberação de Período] | Alteração | Utilitários -> Outros -> Liberação de Período | - |
Funções de Fórmula | Alteração | Serviços Globais -> Administração -> Cadastros -> Fórmulas | |
Histórico para posição atual
Está contemplado no processo descrito para o histórico de lançamentos.
Histórico de dados dos extratos de caixa
Deve ser implementado um histórico no extrato de caixa que contemple alguns dos processos sofridos por ele e alteração de parte dos campos. Será criada tabela de histórico com as seguintes informações:
- Histórico do extrato (FXCXHST) que controlará os seguintes campos:
- Coligada
- Referência extrato
- Id do Histórico
- Processo executado
- Data do processo
- Data da operação
- Número do Documento
- Tipo
- Centro de Custo
- Coligada da Conta/Caixa
- Coligada da Natureza Orçamentária Financeira
- Coligada da Conta/Caixa de Transferência
- Coligada do Extrato de Transferência
- Conta/Caixa
- Conta/Caixa de Transferência
- Departamento
- Filial
- Natureza Orçamentária Financeira
- Compensado
- Data
- Data de Cancelamento
- Data de Compensação
- Data de Estorno
- Data de Reconciliação
- Data de Vencimento
- Extrato Estornado
- Extrato Reconciliado
- Extrato de Transferência
- Valor
- Forma de Pagamento
Para cada processo executado no extrato que altere alguma informação relacionada, gravaremos uma linha na tabela de histórico. Será armazenado o processo executado e uma cópia dos dados da tabela, ou seja, o registro de histórico será uma cópia do extrato no momento após a execução da operação. A tabela será preenchida na execução dos seguintes processos:
- Conversor pra carga da posição atual
- Incluir extrato
- Incluir extrato de transferência: criado um extrato em cada filial
- Alterar extrato: somente se um houver alteração em algum dos campos controlados (vide lista acima).
- Alteração Global de extrato: somente se algum dos campos controlados for alterado.
- Cancelar extrato
- Excluir extrato
- Compensar
- Cancelar compensação
- Conciliar
- Cancelar conciliação
- Emissão de cheque
- Cancelar cheque
O campo Data do processo deve ser preenchido com a data considerada na operação, por exemplo, data da compensação, data do cancelamento, etc. Já a Data da operação deve ser preenchida com a data do sistema. O campo Id do Histórico será um sequencial.
Liberação de período
Quando ocorrer a liberação de período também devem ser excluídos todos os registros da tabela de histórico para o extrato (FXCXHST) com Data do Processo anterior ou igual à data de liberação.
Anexo de histórico do extrato
Criar um anexo que exiba os dados de histórico do extrato (registro da tabela FXCXHST) ) juntamento com campos da tabela original de lançamento (FXCX) que são Código das Tabelas de Classificação (1 a 5), além do Código da Forma de Pagamento (TFORMAPAGTO). Será possível filtrar por todos os campos dessa tabela, mas não será permitido executar nenhum processo sobre essa entidade. Também não teremos formulário de edição, somente visão.
Posição financeira
A posição financeira é o estado de um extrato numa data específica, ou seja, os valores para o extrato caso se tirada uma “fotografia” do registro naquele momento. O registro será selecionado da seguinte forma:
Buscar o maior registro da tabela FXCXHST pelo campo Id do Histórico
com Data do Processo menor ou igual à data pesquisada
A busca deve ser feita como indicado porque podem existir situações em que foi realizada uma operação com data de processo retroativa, como exemplificado a seguir:
01/03 (data da operação): realizada uma compensação com data 01/03 (data do processo), Id Processo 1 -> Status “Compensado”
05/03: realizado o cancelamento da compensação com data 05/03, Id Processo 2 -> Status “Não compensado”
08/03: realizada uma compensaçao com data 20/02, Id Processo 3 -> Status “Compensado”
10/03: realizado o cancelamento da compensação com data 09/03, Id Processo 4 -> Status ”Não Compensado”
Posição:Dia 25/02: status “compensado”
Dia 05/03: status “compensado”
Dia 08/03: status “compensado”
Dia 09/03 ou posterior: status “não compensado”
OBS: se a posição tivesse sido solicitada no dia 05/03, quando a operação realizada no dia 08/03 ainda não existia, a posição seria “não compensado”.
Será criada uma visão onde o usuário irá informar a data da posição desejada e clicando num botão o sistema buscará a posição de cada um dos extratos de acordo com a regra definida acima. Haverá uma opção para visular a soma do valor dos registros selecionados. O usuário poderá usar o filtro padrão de visões para filtrar os registros, o filtro pela coligada corrente é fixo.
Funções de Fórmula
Serão criadas novas funções de fórmula para trazer a posição financeira do extrato numa data específica. Serão baseadas nos dados da tabela de histórico com o regristro selecionado como indicado no tópico “Posição Financeira”.
- TABEXTRATOPF: Valor de um campo de extrato numa determinada data.
- VALOREXTRATOPS: Valor do extrato numa determinada data.
- VALORCOMPENSADOPS: Valor compensado do extrato numa determinada data.
As funções de fórmula acima receberão como o parâmetro, além daqueles relacionados à sua regra, a data da posição financeira desejada. O retorno será sempre sobre os dados da tabela de histórico.
OBS: no contexto de chamada do provider das funções somente serão aceitas “rows” com coluna do Identificador do Extrato (IDXCX), Identificador do Lançamento (IDLAN) ou de Baixa (IDBAIXA) não irão funcionar como acontece com as funções comuns do extrato.
Tabelas Utilizadas
- FXCX – Extratos de Caixa
- FXCXHST – Histórico de alteração de Extrato de Caixa