[firebase-br] Indice

Gustavo Moda gustavo.moda em gmail.com
Qua Mar 11 12:03:51 -03 2009


2009/3/10 Adriano Luiz de Souza <adriano em riodeserto.com.br>

>   Na verdade não considero besteira seu comentário, aliás bastante
> oportuno. Sei que sou estranho tantas foreign keys... Mas esta única tabela
> que armazena todos os lançamentos contábeis de todos os módulos de um
> sistema ERP se faz necessário. Antes eu tinha várias tabelas para armazenar
> os lançamentos contábeis de cada módulo, conceitualmente obedencendo as
> formas normais. No entanto, para fazer relatórios gerenciais utilizando mais
> de 10 tabelas diferentes se demonstrou mais lento e trabalhoso do que ter
> tudo em uma única tabela. Sem contar as buscas que devo fazer nas tabelas
> para achar lançamentos, totalizações por conta contábil, onde eram
> necessários vários unions para o resultado, gerando assim um processamento
> enorme.
>   Cada caso é um caso, para mim, essa foi a melhor solução.
>   Só para constar, não misturo os lançamentos bancários com lançamentos
> contábeis, e sim os lançamentos contábeis relacionados com o lançamento
> bancário. Para armazenar os lançamentos bancários existe uma outra tabela.
> Se excluir ou alterar o lançamento bancário, os lançamentos contábeis são
> atualizados. Para isso que existem relatórios conciliadores, razões e outros
> relatórios auxiliares.



Adriano,

Fiz o mesmo esquema que você para a contabilidade do ERP que trabalhamos.
Caso o campo da tabela que contém a FK for nulo, use LEFT JOIN, o firebird
vai trabalhar melhos.



Mais detalhes sobre a lista de discussão lista