Fórum ajuda no plano de contas #328441

01/09/2006

0

[URL=http://server5.pictiger.com/img/539740/picture-hosting/imagem-1.php][img:77ab497018]http://images5.pictiger.com/thumbs/d2/3b16469955932ab3e36e5b568225ffd2.th.jpg[/img:77ab497018][/URL]

[b:77ab497018]tenho uma tabela de plano de contas com as seguintes campos[/b:77ab497018]
CODIGO VARCHAR(4) NOT NULL,
DESCRICAO VARCHAR(60) NOT NULL,
NIVEL VARCHAR(10) NOT NULL,
CONTA INTEGER

[b:77ab497018]tenho uma tabela de movimentacao de Caixa[/b:77ab497018]
DATA DATA NOT NULL,
CONTA INTEGER NOT NULL,
VALOR NUMERIC(9,2)

as 2 tabelas fazen junção com o campo [b:77ab497018]CONTA[/b:77ab497018] que existem em ambas as tabelas

Agora preciso tirar meu plano de Contas como segue a imagem e colocar os totais nas contas cabeças igual contabilidade, como segue o exemplo;

1 . Pagamentos
1.1 - Pagamento Funcionarios
1.1.1 - Pagamento de Funcionarios da Empresa
1.1.1.1 Salario
1.1.1.2 13º Salario
1.1.1.3 Ferias
1.1.1.4 Horas Extras

Se Tiver feito pagamento de 1.000 vai ser distribuido nas suas sub-contas


1 . Pagamentos [b:77ab497018]1.000,00[/b:77ab497018]
1.1 - Pagamento Funcionarios 800,00
1.1.1 - Pagamento de Funcionarios da Empresa 800,00

1.1.1.1 Salario 400,00
1.1.1.2 13º Salario 200,00
1.1.1.3 Ferias 150,00
1.1.1.4 Horas Extras 50,00
--------------------------------------------------------------
Total [b:77ab497018]800,00[/b:77ab497018]

1.2 - Pagamento Impostos 200.00
1.2.1 - Pagamento de Imposto de Salario 200.00
1.2.1.1 - INSS 80,00
1.2.1.2 - FGTS 90,00
1.2.1.3 - Imposto Diversos 30,00
----------------------------------------------------------------------
Total [b:77ab497018]200.00[/b:77ab497018]


preciso fazer a somatoria das sub-contas e jogar o total das sub-contas nas contas principais.

se alguem tiver ideia de como fazer isso, entre em contato,

valeu pessoal


Fernando

Fernando

Responder

Posts

02/09/2006

Ronaldo.cutu

eu fiz um pararecido para meu sistema de contabilidade

so consigui resolver isso somandos os niveis

fiz um procedure no Firebird que retorna uma exttrutua parecida o meu é um balancete

fiz um loop no plano de contas, no loop ele faz selects pegando valores totais dos niveis do movimento e depois relacionando as contas

essa é uma ideia que funcionou para mim

att

Ronaldo


Responder

Gostei + 0

02/09/2006

Dadonas

Existe um ótimo componente chamado dxDbGrid é uma grid e nele vc consegue fazer isso como vc exatamente precisa.


Responder

Gostei + 0

03/09/2006

Dalbem

Olá,

Quero fazer um programa simples para cadastro de um plano de contas. Já sei quantos níveis eu terei (5) e quantos algarismos cada nível vai ter.
Ex:

1. Ativo
1.1 Circulante
1.1.1 xxxxxx
1.1.2 yyyyyyyy
...

Alguma idéia de como posso armazenar isso no meu BD?
Preciso do código da conta e descrição, mas que tipo de dados serão estes?

E como controlar, via programação ou qqer outra forma, que uma conta com código 1.2.1 não seja criada sem existir a conta superior 1.2 ?

Obrigado


Responder

Gostei + 0

04/09/2006

Ronaldo.cutu

eu criei uma tabela para cada nivel

NIVEL_1
id_nivel_1
ds_nivel_1

NIVEL_2
id_nivel_2 (pode repetir mais em conjunto com nivel 1 ex: 1.1 e 2.1)
ds_nivel_2
cod_nivel_1

NIVEL_3
id_nivel_3 (pode repetir mais em conjunto com nivel 1 e 2 ex: 1.1.1 e 2.1.1)
ds_nivel_3
cod_nivel_1
cod_nivel_2

NIVEL_4
id_nivel_4 (pode repetir mais em conjunto com nivel 1, 2 e 3 ex: 1.1.1.1 e 2.1.1.1)
ds_nivel_4
cod_nivel_1
cod_nivel_2
cod_nivel_3

NIVEL_5
id_nivel_5 (não se repete)
ds_nivel_5
cod_nivel_1
cod_nivel_2
cod_nivel_3
cod_nivel_4

att

Ronaldo


Responder

Gostei + 0

04/09/2006

Gilberto Fernandes

eu uso td em uma tabela só, definindo qual é Sintética e qual é Analítica, e tenho uma rotina para fazer as somas para as contas sintéticas de acordo com o nível


Responder

Gostei + 0

04/09/2006

Dalbem

ronaldo.cutu,

obrigado pela idéia. Vamos assumir que o contador deseja encerrar o plano de contas e criar outro com 6 níveis agora. O software teria que voltar para a software house.

Queria fazer de uma forma que ficasse tudo parametrizado.

Abraços


Responder

Gostei + 0

04/09/2006

Dalbem

Gilberto, poderia dar um exemplo mostrando a estrutura da sua tabela?

Você controla se o usuário quiser cadastrar conta 1.2.1 sem ter a conta 1.2 previamente cadastrada?

Qual a lógica de seu programa?

Obrigado


Responder

Gostei + 0

04/09/2006

Gilberto Fernandes

Não faço esse tratamento de existir a sintética

mas a estrutura da tabela é simples,

Código varchar(8)
Nome varchar(45)
Tipo varchar(1) S/A

aí tenho uma procedure q efetua a soma para as contas sintéticas, faço um loop pela tabela, se a conta for sintética eu pego todas as analíticas q comecem com o mesmo código do q aquela sintética

Trabalho desse jeito pq tenho fechamentos mensais, com rotina de fechamento mensal, onde faço esse somatório, mesmo se não for o modo mais eficaz, como é uma rotina feita poucas vezes não atrapalha o desempenho do sistema.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar