Informe a data inicial.
QuandoData inicial ou final vazia (mensagem de RelatorioGradeBase.data).
Caso sugerido para QA: o que fazer, o que esperar e como conferir no banco.
Recusa com a mensagem exata (HTTP 400, mostrada na tela).
Limitação, pendência ou ponto em que o código e a ajuda não coincidem.
Relatório (PDF ou planilha) que compara, dia a dia e por conta contábil do banco, o movimento do financeiro (o que o Boletim de Caixa, 3172, mostra) com o que a contabilidade lançou na conta contábil da conta bancária (conta_bancaria.idplconta, cadastro 173). Serve para achar o dia em que os dois se separaram antes de fechar o mês. Só lê. Desenho novo, sem equivalente no legado nem no ceif. Serviço: relatorio.RelatorioConferenciaFinanceiroContabilService; endpoint POST /lancamento/relatorios/relatorioConferenciaFinanceiroContabil; tela RelatorioConferenciaFinanceiroContabil.vue.
373 = antigo 3177 (renumerado em 29/09/2026, histórico 368; os filtros salvos de '3177' deixaram de aparecer, a chave nova é '373'). Menu: 3-Relatórios › 7-Conferências › 3. Ajuda 373.md. A ajuda cita o 3172 (Boletim de Caixa) como espelho do lado financeiro.
Um dia bate quando o contábil é igual a uma das duas colunas do financeiro (pela data do movimento ou pela data de conciliação), com tolerância de meia unidade da última casa da moeda. Cheque e pagamento coletivo só chegam ao banco na contabilidade quando conciliados (antes ficam em conta de trânsito, "CHEQUES EMITIDOS"/"RECAUDACIONES A DEPOSITAR"); a baixa sem cheque vai ao banco pela data. Por isso as duas colunas.
| Campo | Default | Limites | Efeito |
|---|---|---|---|
| Período de / até | dia 1 do mês corrente até hoje | Obrigatório; fim ≥ início ("A data final não pode ser anterior à inicial."); máx. 366 dias | Faixa meio-aberta nas três consultas: col >= ini AND col < DATE_ADD(fim, INTERVAL 1 DAY) |
| Filial | em branco = todas as do usuário | Escolhida precisa estar entre as filiais do usuário | Vale para o financeiro (filial do movimento: idfilial da baixa ou do lançamento bancário) e para o contábil (contabilidade_analitico.idfilial_dado) |
| Conta Bancária (multi) | em branco = todas | Só contas com conta contábil; as sem conta saem em seção à parte quando não há filtro de conta | Escolhida uma conta, entra o grupo inteiro (conta contábil + moeda): as outras contas bancárias que apontam para a mesma conta contábil entram juntas |
| Só os dias com diferença | marcada | — | Desmarcada, sai todo dia com movimento. O TOTAL DO PERÍODO de cada conta é sempre o do período inteiro, igual ao resumo |
| Paisagem (PDF) | marcada | — | Orientação do PDF. Há botões PDF e Excel (formato pdf|xls); contador "Gerando… (Ns)" |
A tela usa o SeletorMultiFiltros com filtros salvos por usuário e as Opções do relatório (useOpcoesRelatorio('373')).
| Coluna | O que é | SQL |
|---|---|---|
| Financeiro (data) | Movimento pela data da baixa / do lançamento bancário. Entrada soma, saída subtrai. | Lançamento bancário: financeiro_lancamento_banco com IF(tipo_lancamento_bancario.operacao='E', valor, −valor), flb.data. Baixa: financeiro_baixas com IF(financeiro_emissao.tipo_emissao='R', valor, −valor), fb.data_baixa |
| Financeiro (conciliação) | O mesmo movimento pela data de conciliação. | Idem, com flb.data_conciliacao / fb.data_conciliacao (linhas sem conciliação não entram) |
| Contábil | Débito − crédito na conta contábil do banco, na moeda da conta. | contabilidade_analitico: SUM(IF(deb_cre='D', valor, −valor)) por idplconta, idmoeda, DATE(data) |
| Contábil − financeiro / − conciliado | As duas diferenças do dia. | Cálculo no Java, 2 casas (HALF_UP) |
Regras do cálculo:
idplconta|idmoeda). Várias contas bancárias podem apontar para a mesma conta contábil (no central, uma tem 493); o financeiro soma todas.flb.idmoeda = cb.idmoeda e fe.idmoeda = cb.idmoeda. Título em outra moeda baixado na conta fica fora do financeiro; lançamento contábil em outra moeda é ignorado (não há aviso).excluido='T', somente_conversao='T' (diferença cambial, redondeo), ifrs='T', encerramento='T', resultado_ex='T', apertura='T'. Usa IndicesDaTabela.forceIndexPelaColuna sobre o índice de data.0,5 × 10^-decimais da moeda da conta (guarani 0,5; dólar 0,005). O dia diverge se |contábil − financeiro| > tol E |contábil − conciliado| > tol.Sem regra nomeada; o endpoint está em /lancamento/relatorios/* (JWT). O menu depende de opcao_sistema + grupo_permissao. Nada grava, nada trava. Alcance: filiais do usuário (FiliaisDoUsuario.permitidas).
Informe a data inicial.
QuandoData inicial ou final vazia (mensagem de RelatorioGradeBase.data).
Data inicial inválida: x (confira o ano).
QuandoData fora do formato ISO (idem final).
A data final não pode ser anterior à inicial.
QuandoPeríodo invertido.
O período pode ter no máximo um ano.
QuandoMais de 366 dias entre as datas.
A filial N não está entre as filiais do usuário.
QuandoFilial escolhida fora do alcance do usuário.
O usuário não tem filial de acesso.
QuandoSem filial permitida (lista vazia).
Não foram encontrados dados nessas condições.
QuandoNenhum dia com movimento nos grupos/contas escolhidos e nenhuma conta sem conta contábil com movimento (PdfReportBuilder.SEM_DADOS).
Sem chave de system_config, sem propriedade app.*, sem rotina agendada, sem e-mail. Dependências de cadastro e de processo:
conta_bancaria.idplconta (173): conta bancária sem conta contábil não é conferida (vai à seção 3 se tiver movimento).moeda.decimais da conta bancária.Gerar com os padrões
FazerAbrir 373, deixar o mês corrente, "Só os dias com diferença" marcado, clicar PDF.
EsperadoAbre o PDF com "Conferência financeiro × contábil por dia (contas bancárias) - só os dias com diferença", a grade (somente dias que divergem), as linhas "TOTAL DO PERÍODO: <conta>" e o "Resumo por conta contábil". Contas sem diferença aparecem só no resumo, com "Dias c/ dif." = 0.
ConferirReferência de tempo: filial 3, ago/2026, ~3 s (histórico 307).
Total do período não muda com o filtro de dias
FazerGerar com a opção marcada e desmarcada para a mesma conta e período.
EsperadoO TOTAL DO PERÍODO e o resumo trazem os mesmos números nos dois casos (antes o total somava só os dias listados). Desmarcada, aparecem todos os dias com movimento.
Conferir um dia à mão
FazerEscolher uma conta bancária e um dia da grade; refazer as três somas no banco.
EsperadoFinanceiro (data), Financeiro (conciliação) e Contábil batem ao centavo (2 casas) com os valores do relatório; as colunas de diferença são contábil − financeiro e contábil − conciliado.
Conferir-- financeiro pela data (baixas; some depois lançamentos bancários da mesma forma)
SELECT DATE(fb.data_baixa) d, SUM(IF(fe.tipo_emissao='R', fb.valor, -fb.valor)) v
FROM financeiro_baixas fb
JOIN financeiro_emissao fe ON fe.id = fb.idfinanceiro_emissao
JOIN conta_bancaria cb ON cb.id = fb.idconta_bancaria
WHERE fb.excluido <> 'T' AND fe.idmoeda = cb.idmoeda AND fb.idconta_bancaria = :conta
AND fb.data_baixa >= :dia AND fb.data_baixa < DATE_ADD(:dia, INTERVAL 1 DAY)
GROUP BY d;
-- lançamentos bancários
SELECT SUM(IF(tlb.operacao='E', flb.valor, -flb.valor))
FROM financeiro_lancamento_banco flb
JOIN conta_bancaria cb ON cb.id = flb.idconta_bancaria
LEFT JOIN tipo_lancamento_bancario tlb ON tlb.id = flb.idtipo_lancamento_bancario
WHERE flb.excluido <> 'T' AND flb.idmoeda = cb.idmoeda AND flb.idconta_bancaria = :conta
AND flb.data >= :dia AND flb.data < DATE_ADD(:dia, INTERVAL 1 DAY);
-- contábil
SELECT SUM(IF(ca.deb_cre='D', ca.valor, -ca.valor))
FROM contabilidade_analitico ca
WHERE ca.excluido <> 'T' AND IFNULL(ca.somente_conversao,'F') <> 'T' AND IFNULL(ca.ifrs,'F') <> 'T'
AND IFNULL(ca.encerramento,'F') <> 'T' AND IFNULL(ca.resultado_ex,'F') <> 'T' AND IFNULL(ca.apertura,'F') <> 'T'
AND ca.idplconta = (SELECT idplconta FROM conta_bancaria WHERE id = :conta)
AND ca.idmoeda = (SELECT idmoeda FROM conta_bancaria WHERE id = :conta)
AND ca.data >= :dia AND ca.data < DATE_ADD(:dia, INTERVAL 1 DAY)
Filtro por conta bancária
FazerEscolher uma conta que divide a conta contábil com outras e gerar.
EsperadoEntra o grupo inteiro (todas as contas bancárias da mesma conta contábil e moeda); o resultado da conta é o mesmo com e sem o filtro (conferido na conta 113 de fjfrigo_concepcion, 01-20/06/2026). A seção de contas sem conta contábil não sai quando há filtro de conta.
Conta sem conta contábil
FazerCom um movimento numa conta bancária sem idplconta (173), gerar sem filtro de conta.
EsperadoSeção "Contas bancárias com movimento e sem conta contábil (cadastre no 173)" lista a conta, o movimento pela data e os dias.
ConferirSELECT cb.id, cb.descricao FROM conta_bancaria cb WHERE IFNULL(cb.idplconta,0) = 0 AND (cb.data_desativacao IS NULL OR cb.data_desativacao > CURDATE())
Moeda diferente e lançamentos excluídos
FazerBaixar um título em USD numa conta em guarani/real; olhar também um lançamento contábil de diferença cambial.
EsperadoO título em outra moeda não entra no financeiro (nem o contábil dele no contábil da conta); lançamentos "somente conversão", IFRS, encerramento, resultado e apertura não entram no contábil.
Validações
FazerInverter as datas; 400 dias; filial fora do alcance; período sem movimento.
EsperadoMensagens da seção D.
Planilha
FazerGerar com o botão Excel.
EsperadoMesmas seções e totais do PDF, em planilha.
Filial do financeiro e do contábil vêm de colunas diferentes
O financeiro filtra por financeiro_baixas.idfilial / financeiro_lancamento_banco.idfilial e o contábil por contabilidade_analitico.idfilial_dado. Se uma conta bancária é movimentada por mais de uma filial e o usuário escolhe uma só, as duas pontas podem recortar conjuntos diferentes e gerar diferença que não é erro de lançamento. Conferido em 04/10/2026: é o par certo. contabilidade_analitico.idfilial é a filial de quem rodou a contabilização; idfilial_dado é a do dado. No fjfrigo_concepcion (agosto/2026), nas 2.454 linhas de baixa (tabela='fba') nas contas contábeis de banco, idfilial_dado = financeiro_baixas.idfilial em todas, e idfilial difere em 1.350. A diferença que sobra é a de conta bancária movimentada por várias filiais com uma filial só escolhida — recorte, não defeito.
Comparação de flags nulos
Corrigido em 04/10/2026: IFNULL(ca.somente_conversao,'F') <> 'T' e IFNULL(ca.ifrs,'F') <> 'T'. somente_conversao aceita nulo nos 12 bancos do servidor de homologação e ifrs aceita no fjfrigo_ct_carne; sem o IFNULL uma linha nula sumiria do contábil. Hoje nenhum dos 12 bancos tem linha viva com nulo nas duas colunas (os números não mudam). apertura, encerramento e resultado_ex já usavam IFNULL.
Contas bancárias desativadas
O agrupamento lê toda a conta_bancaria (não filtra data_desativacao); conta desativada com movimento no período entra normalmente. Só a seção de "sem conta contábil" é limitada ao movimento.
Tipo de lançamento bancário nulo conta como saída
O LEFT JOIN tipo_lancamento_bancario com IF(operacao='E', valor, -valor) trata lançamento sem tipo (ou operação diferente de E) como saída.
Pendências
Status REVISAR (status-porte.csv, 02/10/2026; a linha do 3177 não existe mais). Não testada na tela. Cheque e coletivo só batem pela coluna "conciliação"; diferença aparente antes da conciliação é esperada.
Nada bate com essa busca. Tente um trecho menor, ou limpe os filtros.