MFC027 — Gerenciamento Conciliação Bancária (enriquecimento)
Menu: Financeiro > Movimentações > Gerenciamento Conciliação Bancária
Objetivo
O MFC027 permite importar o extrato bancário (arquivo OFX) e confrontá-lo com os movimentos de caixa do sistema, marcando manualmente ou por sugestão automática os pares que se correspondem em valor e data. Ao confirmar, o sistema grava a conciliação de forma definitiva, podendo gerar um novo lançamento de caixa quando não existir um movimento correspondente, e permite consultar, imprimir relatórios e cancelar conciliações já confirmadas.
Fluxo principal
- Na aba Filtros, informar Empresa e Banco e clicar em "Conciliar Movimentos" para abrir a aba Conciliação. (Filtros) —
source/MFC027/UMFC027.pas:2043-2103 (TfrmMFC027.btnConciliarMovClick) - Selecionar o arquivo de extrato bancário (.ofx) e clicar em "Ler Extrato" para importar os movimentos. (Conciliação) —
source/MFC027/UMFC027.pas:529-577 (TfrmMFC027.btnLEREXTRATOClick) - Informar a conta de saldo e o período e clicar em "Consultar Movimentos" para trazer os lançamentos de caixa correspondentes. (Conciliação) —
source/MFC027/UMFC027.pas:1016-1099 (TfrmMFC027.btnConsultarMovClick) - Marcar manualmente os itens do extrato e do caixa que se correspondem, ou usar "Sugerir Conciliação" para marcação automática por data/valor/tipo. (Conciliação) —
source/MFC027/UMFC027.pas:2725-2771 (TfrmMFC027.btnSugerirConcClick) - Clicar em "Conciliar": o sistema grava o vínculo pendente entre extrato e caixa; se não houver lançamento de caixa correspondente, oferece criar um lançamento avulso. (Conciliação) —
source/MFC027/UMFC027.pas:1253-1332 (TfrmMFC027.btnConciliarClick) - Repetir a seleção e conciliação para os demais itens do extrato. (Conciliação) —
source/MFC027/UMFC027.pas:1750-1824 (TfrmMFC027.LimpaSelecionados) - Na aba Consulta, localizar uma conciliação já confirmada e, se necessário, cancelá-la informando o motivo. (Consulta) —
source/MFC027/UMFC027.pas:1956-2023 (TfrmMFC027.btnCancelarConcClick)
Campos obrigatórios
| Campo | Condição | Mensagem | Fonte |
|---|---|---|---|
| Banco (aba Filtros) | Obrigatório para clicar em "Conciliar Movimentos" e abrir a tela de conciliação. | É Obrigatório informar o Banco para Fazer a Conciliação! | source/MFC027/UMFC027.pas:2043-2050 (TfrmMFC027.btnConciliarMovClick) |
| Conta de Saldo (aba Conciliação) | Obrigatório para consultar movimentos de caixa, para conciliar e para sugerir conciliação automática. | É Obrigado Informar a Conta para Filtrar os Movimentos! | source/MFC027/UMFC027.pas:1021-1025 (TfrmMFC027.btnConsultarMovClick) |
| Data Inicial e Data Final dos Movimentos de Caixa | Obrigatórias para consultar movimentos de caixa e para emitir o relatório de movimentos não conciliados; a inicial não pode ser maior que a final. | É Obrigado Informar a data Inicial dos Movimentos! / É Obrigado Informar a data Final dos Movimentos! / A Data Final não pode ser menor que a Inicial. Verifique! | source/MFC027/UMFC027.pas:1027-1043 (TfrmMFC027.btnConsultarMovClick) |
| Caminho do Arquivo de Extrato (.ofx) | Obrigatório para clicar em "Ler Extrato"; deve ter extensão OFX. | Selecione o Caminho do Arquivo! / Formato do arquivo Inválido. Verifique! | source/MFC027/UMFC027.pas:570-575 (TfrmMFC027.btnLEREXTRATOClick) |
| Motivo de Cancelamento (aba Consulta) | Obrigatório para cancelar uma conciliação já confirmada; deve estar cadastrado como motivo do tipo Cancelamento (TFA009). | Informe o Motivo de Cancelamento! / O Motivo de Cancelamento não está Cadastrado [TFA009]! | source/MFC027/UMFC027.pas:1962-1968 (TfrmMFC027.btnCancelarConcClick) |
| Conta ou Histórico (lançamento avulso de caixa) | Ao gerar um lançamento novo de caixa para um movimento do extrato sem correspondência, é obrigatório informar ao menos a conta ou o histórico. | É Obrigatório informar uma conta ou um Historico.Verifique! | source/MFC027/UfrmMFC027LancCaixa.pas:63-71 (TFrmMFC027LancCaixa.btnLancarClick) |
Mensagens: causa e ação
Banco Invalido Verifique! [TFC004]
Causa: O código de banco informado no filtro não existe na tabela BANCO.
Ação: Verificar/cadastrar o banco na tela TFC004 ou corrigir o código informado.
Fonte: source/MFC027/UdmMFC027.pas:274-289 (TdmMFC027.tabFILTROCD_BANCOValidate)
A Conta não está Cadastrada Verifique! [TCB002]!
Causa: O código de conta de saldo informado não retorna registro na consulta de contas de caixa/banco (VIEW_PARMSALDO/VIEW_PLANOCONTAS).
Ação: Cadastrar ou corrigir a conta na tela TCB002, ou verificar se ela está parametrizada como conta de saldo bancário.
Fonte: source/MFC027/UdmMFC027.pas:325-345 (TdmMFC027.tabFILTROCONTASCD_CONTAValidate)
Esse Movimento do extrato já foi Conciliado. Verifique!
Causa: O usuário tentou marcar um item do extrato que já está vinculado a uma conciliação com status válido.
Ação: Cancelar a conciliação existente na aba Consulta se o vínculo estiver incorreto, ou escolher outro movimento.
Fonte: source/MFC027/UdmMFC027.pas:353-357 (TdmMFC027.tabMOVIMENTOEXTRATOST_STATUSValidate)
O Movimento de Caixa %s já foi Conciliado. Verifique!
Causa: O lançamento de caixa marcado já está vinculado a outra conciliação válida.
Ação: Consultar a conciliação existente para esse lançamento e cancelá-la, se for o caso, antes de reutilizá-lo.
Fonte: source/MFC027/UdmMFC027.pas:400-403 (TdmMFC027.tabMOVCAIXAST_STATUSValidate)
A Consulta Não Retornou Registro. Verifique!
Causa: Não existe nenhuma conciliação confirmada que atenda aos filtros informados na aba Filtros.
Ação: Revisar/ampliar os filtros de banco, período, status ou identificador antes de consultar novamente.
Fonte: source/MFC027/UMFC027.pas:917-922 (TfrmMFC027.btnConsultarClick)
A data de Inicio da Conciliação não pode ser maior que a data Final. Verifique!
Causa: A data inicial do filtro de período de conciliação foi preenchida com valor posterior à data final.
Ação: Corrigir as datas de forma que a inicial seja igual ou anterior à final.
Fonte: source/MFC027/UMFC027.pas:2282-2288 (TfrmMFC027.montaWhere)
A data de Inicio dos Movimentos de Caixa não pode ser maior que a data Final. Verifique!
Causa: A data inicial do filtro de movimentos de caixa é posterior à data final.
Ação: Corrigir a ordem das datas do filtro de movimentos de caixa.
Fonte: source/MFC027/UMFC027.pas:2450-2456 (TfrmMFC027.montaWhere)
A data de Inicio dos Movimentos de Extrato não pode ser maior que a data Final. Verifique!
Causa: A data inicial do filtro de movimentos de extrato é posterior à data final.
Ação: Corrigir a ordem das datas do filtro de movimentos de extrato.
Fonte: source/MFC027/UMFC027.pas:2318-2324 (TfrmMFC027.montaWhere)
A Data Final não pode ser menor que a Inicial. Verifique!
Causa: Na consulta de movimentos de caixa por conta, a data final informada é anterior à inicial.
Ação: Ajustar as datas para que a final seja igual ou posterior à inicial.
Fonte: source/MFC027/UMFC027.pas:1039-1043 (TfrmMFC027.btnConsultarMovClick)
A Pessoa Física / Jurídica não está Ativa [TFA001]!
Causa: A pessoa informada no lançamento avulso está com situação inativa no cadastro.
Ação: Reativar a pessoa na tela TFA001 ou usar outra pessoa ativa.
Fonte: source/MFC027/UdmMFC027.pas:631-636 (TdmMFC027.tabLANCNOVOCD_PESSOAValidate)
A Pessoa Física / Jurídica não está Cadastrada [TFA001]!
Causa: O código de pessoa informado não existe no cadastro PESSOA.
Ação: Cadastrar a pessoa em TFA001 ou corrigir o código informado.
Fonte: source/MFC027/UdmMFC027.pas:639-642 (TdmMFC027.tabLANCNOVOCD_PESSOAValidate)
A Natureza do Histórico informado é diferente da natureza da operação [Hist: %sPagamento%sRecebimento - Operação: %sRecebimento%sPagamento]. Verifique [TCB003]
Causa: O histórico escolhido é de pagamento mas o lançamento é de recebimento (ou vice-versa).
Ação: Escolher um histórico avulso cuja natureza combine com o tipo de movimento (pagamento/recebimento) que está sendo lançado.
Fonte: source/MFC027/UdmMFC027.pas:672-675 (TdmMFC027.tabLANCNOVOCD_HISTORICOValidate)
Histórico informado não cadastrado. Verifique! [TCB003]
Causa: O código de histórico informado não existe no cadastro HISTORICO.
Ação: Cadastrar o histórico em TCB003 ou corrigir o código informado.
Fonte: source/MFC027/UdmMFC027.pas:689-692 (TdmMFC027.tabLANCNOVOCD_HISTORICOValidate)
O Histórico informado não está Ativo. Verifique [TCB003]
Causa: O histórico existe mas está marcado como inativo.
Ação: Ativar o histórico em TCB003 ou usar outro histórico ativo.
Fonte: source/MFC027/UdmMFC027.pas:677-680 (TdmMFC027.tabLANCNOVOCD_HISTORICOValidate)
O Histórico informado não é do tipo Avulso. Verifique [TCB003]
Causa: O histórico existe e está ativo, mas não é do tipo Avulso, exigido para lançamentos gerados pela conciliação.
Ação: Selecionar um histórico cadastrado como tipo Avulso em TCB003.
Fonte: source/MFC027/UdmMFC027.pas:681-684 (TdmMFC027.tabLANCNOVOCD_HISTORICOValidate)
A Conta informada não pode ser a Mesma da Origem do Lancamento[%s]. Verifique!
Causa: A conta escolhida para o lançamento avulso é igual à conta de saldo que está sendo conciliada.
Ação: Informar uma conta contábil diferente da conta de saldo de origem.
Fonte: source/MFC027/UdmMFC027.pas:717-719 (TdmMFC027.tabLANCNOVOCD_CONTAValidate)
O Motivo de Cancelamento não está Cadastrado [TFA009]!
Causa: O código de motivo informado não existe como motivo do tipo Cancelamento (TP_MOTIVO='C').
Ação: Selecionar um motivo de cancelamento válido em TFA009 (use F9 para buscar).
Fonte: source/MFC027/UdmMFC027.pas:605-611 (TdmMFC027.tabCONCILIACAOCONSULTACD_MOTIVOCANCValidate)
O Movimento de Caixa Estornado. Verifique!
Causa: O número de lançamento de caixa informado no filtro corresponde a um movimento já estornado.
Ação: Informar um lançamento de caixa que não esteja estornado.
Fonte: source/MFC027/UdmMFC027.pas:476-479 (TdmMFC027.tabMOVCAIXAFILTRONR_LANCCAIXAValidate)
Movimento de Caixa está Conciliado. Verifique!
Causa: No filtro de movimentos não conciliados, o número informado já pertence a uma conciliação válida.
Ação: Informar um lançamento de caixa ainda não conciliado, ou usar o filtro de relatório de conciliados.
Fonte: source/MFC027/UdmMFC027.pas:481-482 (TdmMFC027.tabMOVCAIXAFILTRONR_LANCCAIXAValidate)
Movimento de Caixa não pertence ao Banco Informado.
Causa: O número de lançamento de caixa filtrado é de um banco diferente do banco selecionado no filtro.
Ação: Informar um lançamento cujo banco coincida com o filtro de banco selecionado, ou limpar o filtro de banco.
Fonte: source/MFC027/UdmMFC027.pas:484-486 (TdmMFC027.tabMOVCAIXAFILTRONR_LANCCAIXAValidate)
O Movimento de Caixa não Existe. Verifique!
Causa: O número de lançamento de caixa informado no filtro de não conciliados não existe.
Ação: Conferir e corrigir o número do lançamento de caixa.
Fonte: source/MFC027/UdmMFC027.pas:490-491 (TdmMFC027.tabMOVCAIXAFILTRONR_LANCCAIXAValidate)
O Movimento de Caixa não Existe ou ainda não foi conciliado. Verifique!
Causa: No filtro de movimentos conciliados, o número informado não corresponde a nenhuma conciliação existente.
Ação: Conferir o número do lançamento ou usar o filtro de movimentos não conciliados.
Fonte: source/MFC027/UdmMFC027.pas:504-509 (TdmMFC027.tabMOVCAIXAFILTRONR_LANCCAIXAValidate)
O Movimento de Extrato ainda não foi conciliado. Verifique!
Causa: O identificador de movimento de extrato informado no filtro não corresponde a nenhuma conciliação existente.
Ação: Conferir o identificador informado ou aguardar a conciliação do item antes de filtrá-lo.
Fonte: source/MFC027/UdmMFC027.pas:532-538 (TdmMFC027.tabMOVEXTRATOFILTRONR_IDENTIFICADORValidate)
O Valor da Conciliação não Confere. Verifique!
Causa: O total dos valores marcados no extrato não é igual ao total dos valores marcados no caixa.
Ação: Ajustar a seleção de itens até que o total do extrato coincida com o total do caixa (ou usar a opção de lançamento novo, se aplicável).
Fonte: source/MFC027/UMFC027.pas:1291-1294 (TfrmMFC027.btnConciliarClick)
Não foi informado nenhuma conta Saldo para Conciliação. Verifique!
Causa: O usuário tentou conciliar sem ter informado a conta de saldo na aba Conciliação.
Ação: Preencher o campo de conta de saldo antes de clicar em Conciliar.
Fonte: source/MFC027/UMFC027.pas:1274-1278 (TfrmMFC027.btnConciliarClick)
Nenhum Movimento do Extrato foi Selecionado Verifique!
Causa: Nenhum item do extrato foi marcado ao clicar em Conciliar.
Ação: Marcar ao menos um movimento do extrato antes de conciliar.
Fonte: source/MFC027/UMFC027.pas:1269-1272 (TfrmMFC027.btnConciliarClick)
Nenhum Movimento de Conta foi Selecionado Verifique!
Causa: Não há movimento de caixa marcado e o usuário recusou a opção de criar um lançamento novo.
Ação: Marcar um movimento de caixa correspondente ou confirmar a criação de um lançamento avulso na próxima tentativa.
Fonte: source/MFC027/UMFC027.pas:1280-1285 (TfrmMFC027.btnConciliarClick)
Selecione o Caminho do Arquivo!
Causa: O usuário clicou em "Ler Extrato" sem antes selecionar um arquivo.
Ação: Clicar em "Procurar" e escolher o arquivo .ofx do extrato antes de ler.
Fonte: source/MFC027/UMFC027.pas:571-574 (TfrmMFC027.btnLEREXTRATOClick)
Formato do arquivo Inválido. Verifique!
Causa: O arquivo selecionado não possui a extensão .ofx.
Ação: Selecionar um arquivo de extrato no formato OFX exportado pelo banco.
Fonte: source/MFC027/UMFC027.pas:954-959 (TfrmMFC027.btnProcurarExtratoClick)
É Obrigado Informar a Conta para Filtrar os Movimentos!
Causa: A consulta de movimentos de caixa (ou a sugestão de conciliação) foi acionada sem a conta de saldo preenchida.
Ação: Preencher a conta de saldo na aba Conciliação antes de consultar/sugerir.
Fonte: source/MFC027/UMFC027.pas:1021-1025 (TfrmMFC027.btnConsultarMovClick)
É Obrigado Informar a data Inicial dos Movimentos! / É Obrigado Informar a data Final dos Movimentos!
Causa: As datas de período dos movimentos de caixa não foram preenchidas antes de consultar.
Ação: Preencher as datas inicial e final do período de movimentos de caixa.
Fonte: source/MFC027/UMFC027.pas:1027-1037 (TfrmMFC027.btnConsultarMovClick)
É Obrigatório informar o Banco para Fazer a Conciliação!
Causa: O usuário tentou abrir a aba de conciliação sem informar o banco no filtro.
Ação: Preencher o campo Banco na aba Filtros antes de clicar em "Conciliar Movimentos".
Fonte: source/MFC027/UMFC027.pas:2046-2049 (TfrmMFC027.btnConciliarMovClick)
É Obrigatório informar uma conta ou um Historico.Verifique!
Causa: Na tela de lançamento avulso de caixa, nem a conta nem o histórico foram preenchidos.
Ação: Informar ao menos a conta contábil ou o histórico avulso antes de confirmar o lançamento.
Fonte: source/MFC027/UfrmMFC027LancCaixa.pas:66-70 (TFrmMFC027LancCaixa.btnLancarClick)
Informe o Motivo de Cancelamento!
Causa: O usuário confirmou o cancelamento da conciliação sem informar o motivo.
Ação: Selecionar um motivo de cancelamento cadastrado (F9) antes de confirmar.
Fonte: source/MFC027/UMFC027.pas:1964-1968 (TfrmMFC027.btnCancelarConcClick)
Não Foram feitas Conciliações! Verifique!
Causa: O usuário clicou em "Confirmar Conciliação" sem ter gravado nenhum vínculo pendente na tabela CONCILIACAO.
Ação: Selecionar e conciliar ao menos um par de movimentos (ou lançamento novo) antes de confirmar.
Fonte: source/MFC027/UMFC027.pas:1578-1581 (TfrmMFC027.btnConfirmarConciliacaoClick)
Ocorreu um problema na inserção da conciliação. Não localizado o movimento de contra partida do lancamento numero %s Contate o suporte do sistema!
Causa: Inconsistência interna entre os registros pendentes de conciliação e a tabela auxiliar de lançamentos novos; não deveria ocorrer em uso normal.
Ação: Anotar o número do identificador exibido e acionar o suporte técnico do sistema.
Fonte: source/MFC027/UMFC027.pas:1707-1712 (TfrmMFC027.btnConfirmarConciliacaoClick)
Não foi possível identificar a Agência Bancária no arquivo importado. Revisar a configuração da tag "ACCTID" relativa à agência pelas telas TFC010 e FNC006!
Causa: A tag ACCTID configurada para o banco tem posições inicial/final incoerentes (diferença maior que 8 ou menor/igual a 0).
Ação: Corrigir, em FNC006, a posição inicial e final da tag de agência para o banco correspondente.
Fonte: source/MFC027/UMFC027.pas:710-711 (TfrmMFC027.montaCabecario)
O Banco selecionado não possui agência cadastrada! Verifique [TFC004].
Causa: Não existe nenhuma agência cadastrada para o banco do extrato importado.
Ação: Cadastrar uma agência para o banco na tela TFC004.
Fonte: source/MFC027/UMFC027.pas:731-734 (TfrmMFC027.montaCabecario)
Para o Banco "%s - %s", é necessário parametrizar a tag que identifica a Agência Bancária correspondente, pela tela FNC006.
Causa: O arquivo não tem BRANCHID e a tag ACCTID não está parametrizada para esse banco.
Ação: Cadastrar em FNC006, para o banco indicado, a tag do tipo Agência com as posições inicial e final do layout do extrato.
Fonte: source/MFC027/UMFC027.pas:704-708 (TfrmMFC027.montaCabecario)
Para comparar os movimentos do extrato e os movimentos da conta de saldo. Os checkboxes "Exibir mov. Conciliados" precisam ser Desmarcados!
Causa: O usuário tentou usar "Sugerir Conciliação" com um dos checkboxes de exibir movimentos conciliados ainda marcado.
Ação: Desmarcar os checkboxes "Exibir mov. Conciliados" antes de usar a sugestão automática de conciliação.
Fonte: source/MFC027/UMFC027.pas:2734-2736 (TfrmMFC027.btnSugerirConcClick)
Regras de negócio
MFC027.R001(verregras/MFC027/MFC027.R001.md)MFC027.R002(verregras/MFC027/MFC027.R002.md)MFC027.R003(verregras/MFC027/MFC027.R003.md)MFC027.R004(verregras/MFC027/MFC027.R004.md)MFC027.R005(verregras/MFC027/MFC027.R005.md)MFC027.R006(verregras/MFC027/MFC027.R006.md)MFC027.R007(verregras/MFC027/MFC027.R007.md)MFC027.R008(verregras/MFC027/MFC027.R008.md)MFC027.R009(verregras/MFC027/MFC027.R009.md)MFC027.R010(verregras/MFC027/MFC027.R010.md)MFC027.R011(verregras/MFC027/MFC027.R011.md)MFC027.R012(verregras/MFC027/MFC027.R012.md)MFC027.R013(verregras/MFC027/MFC027.R013.md)MFC027.R014(verregras/MFC027/MFC027.R014.md)MFC027.R015(verregras/MFC027/MFC027.R015.md)MFC027.R016(verregras/MFC027/MFC027.R016.md)MFC027.R017(verregras/MFC027/MFC027.R017.md)MFC027.R018(verregras/MFC027/MFC027.R018.md)MFC027.R019(verregras/MFC027/MFC027.R019.md)MFC027.R020(verregras/MFC027/MFC027.R020.md)
Perguntas frequentes
P: Por que aparece "Banco Invalido Verifique! [TFC004]" ao preencher o filtro?
R: O código de banco digitado não existe cadastrado; cadastre ou corrija o banco na tela TFC004.
Fonte: source/MFC027/UdmMFC027.pas:274-289 (TdmMFC027.tabFILTROCD_BANCOValidate)
P: Por que não consigo marcar um item do extrato ou do movimento de caixa (mensagem de 'já foi Conciliado')?
R: O item já está vinculado a uma conciliação com status válido; é preciso cancelar essa conciliação na aba Consulta antes de reutilizá-lo.
Fonte: source/MFC027/UdmMFC027.pas:351-357 (TdmMFC027.tabMOVIMENTOEXTRATOST_STATUSValidate), source/MFC027/UdmMFC027.pas:400-403 (TdmMFC027.tabMOVCAIXAST_STATUSValidate)
P: Por que dá a mensagem "O Valor da Conciliação não Confere" ao tentar conciliar?
R: A soma dos valores marcados do extrato precisa ser exatamente igual à soma dos valores marcados do caixa; ajuste a seleção até os totais fecharem.
Fonte: source/MFC027/UMFC027.pas:1291-1294 (TfrmMFC027.btnConciliarClick)
P: Por que o sistema recusa o arquivo OFX com "Formato do arquivo Inválido"?
R: O arquivo selecionado não tem extensão .ofx; selecione o extrato exportado pelo banco nesse formato.
Fonte: source/MFC027/UMFC027.pas:954-959 (TfrmMFC027.btnProcurarExtratoClick)
P: Por que aparece "O Extrato não pertence ao Banco Selecionado" ao ler o arquivo?
R: O banco identificado dentro do OFX é diferente do banco informado no filtro; confira se escolheu o banco correto ou o arquivo correto.
Fonte: source/MFC027/UMFC027.pas:544-549 (TfrmMFC027.btnLEREXTRATOClick)
P: Por que pede para parametrizar a tag de agência pela tela FNC006?
R: O layout do banco não tem a agência identificada por BRANCHID e a tag ACCTID não está cadastrada corretamente; é preciso configurar em FNC006 a tag do tipo Agência com as posições certas no arquivo.
Fonte: source/MFC027/UMFC027.pas:704-712 (TfrmMFC027.montaCabecario)
P: Por que não consigo cancelar uma conciliação já confirmada?
R: É obrigatório informar um Motivo de Cancelamento cadastrado (tipo Cancelamento) antes de confirmar o cancelamento.
Fonte: source/MFC027/UMFC027.pas:1962-1968 (TfrmMFC027.btnCancelarConcClick)
P: Ao cancelar uma conciliação, o lançamento de caixa é estornado?
R: Só é estornado se o movimento de caixa foi criado pela própria tela (lançamento avulso); movimentos de caixa que já existiam antes da conciliação permanecem intactos.
Fonte: source/MFC027/UMFC027.pas:1986-2003 (TfrmMFC027.btnCancelarConcClick)
P: Por que aparece "Não foi possível conciliar vários movimentos com o mesmo identificador"?
R: Já existe uma conciliação pendente com o mesmo identificador de extrato e o checkbox "Agrupar Identificador" não está marcado; marque-o para permitir agrupar.
Fonte: source/MFC027/UMFC027.pas:1398-1404 (TfrmMFC027.btnConciliarClick)
P: Por que não consigo lançar um movimento avulso de caixa sem preencher conta ou histórico?
R: A tela de lançamento avulso exige ao menos um dos dois campos preenchidos para permitir o lançamento.
Fonte: source/MFC027/UfrmMFC027LancCaixa.pas:66-70 (TFrmMFC027LancCaixa.btnLancarClick)
P: Por que o histórico escolhido no lançamento avulso é recusado com referência ao TCB003?
R: O histórico precisa estar cadastrado, ativo, do tipo Avulso e com natureza (pagamento/recebimento) compatível com o movimento; ajuste o cadastro em TCB003.
Fonte: source/MFC027/UdmMFC027.pas:655-701 (TdmMFC027.tabLANCNOVOCD_HISTORICOValidate)
P: Por que os botões Novo, Salvar e Excluir não aparecem para o usuário?
R: O usuário tem acesso somente de consulta ao programa MFC027; esses botões só aparecem para quem tem acesso de manutenção.
Fonte: source/MFC027/UMFC027.pas:297-302 (iniciar)
P: Por que a busca de agência fica reabrindo ao ler um extrato sem informação de agência?
R: Quando o arquivo não traz a agência (nem BRANCHID nem ACCTID), o sistema insiste chamando a tela de busca até que uma agência seja selecionada; é preciso escolher uma para prosseguir.
Fonte: source/MFC027/UMFC027.pas:736-747 (TfrmMFC027.montaCabecario)
Dúvidas em aberto (o código não responde)
- O laço de seleção obrigatória de agência (linhas 736-747 de UMFC027.pas) tem alguma forma de o usuário cancelar sem escolher uma agência? — O código chama Busca() repetidamente em um while até 'agencia' não ser vazio; não foi identificado tratamento de cancelamento do diálogo de busca dentro desse laço.
- Quais licenças/permissões específicas (além de tpAcesso=2 para somente consulta) controlam o acesso a botões como Cancelar Conciliação ou Estornar? — O código só distingue tpAcesso=2 (oculta Novo/Salvar/Excluir); não há checagem de permissão granular para Cancelar/Estornar dentro dos arquivos lidos.
- O que exatamente valida e retorna a procedure GRAVA_MOVTOCAIXA quando falha ao gerar o lançamento avulso na confirmação? — O código apenas trata o retorno O_DS_MENSAGEM da procedure (UMFC027.pas:1676-1686); o conteúdo interno de GRAVA_MOVTOCAIXA.sql não foi lido nesta sessão.
- As regras internas de RETORNA_TAGBANCO, RETORNA_MASCARATAG, VIEW_DIARIOCAIXA, VIEW_PARMSALDO, VIEW_PLANOCONTAS e RETORNA_SALDOCAIXAC (usadas para montar filtros, datas e saldos) têm alguma validação de negócio adicional relevante ao suporte? — Essas procedures/views foram identificadas apenas pelas chamadas SQL em UMFC027.pas/UdmMFC027.pas; seus corpos não foram lidos nesta sessão.