Me parece que são transações abertas, se eu estiver certo, você ao fechar e abrir o relatório os dados aparecem, correto?
Se for isso, tente fechar os dataset´s e abrir novamente antes de puxar o relatório.
Sim, os datasets estão sempre abertos. Acontece da forma que você descreveu.
O correto seria então SEMPRE fechar o dataset quando desejo ter os registros atualizados? Esta solução pareceria meio arcaica, concorda?
Eu fiquei perdido na questão porque:
Eu dou uma entrada/saída no caixa. (logo abaixo tem um DBEdit ligado em uma view da tabela SALDO mostrando o saldo do caixa)
Depois de executar o post, uma trigger, no after insert e no after update, vai na tabela SALDO e recalcula o saldo do caixa, então ocorre o ApplyUpdates(0) e nenhum erro é retornado pelo firebird...
Executo o dataset.Refresh(); na tabela SALDO.
O valor, correspondente ao saldo do caixa, não é atualizado no DBEdit.
Vou no IBExperte e virifico o valor que está gravado no campo. Está correto e atualizado.
Volto ao aplicativo e clico em um outro botão que contém a instrução dataset.Refresh(); e o valor do DBEdit é atualizado
Talvez eu não tenha me espressado corretamente no post anterior, mas a minha dúvida é: Porque o dataset não foi atualizado automáticamente após o ApplyUpdates(0)?
Agradeço por qualquer ajuda.
Sucesso à todos!