Fórum Resolver Problema De Caixa #217350

29/02/2004

0

Gostaria De Fazer Um Caixa Simples..É O Seguinte Tenho Um Campo Entradas e Gostaria Em Outro Campo ir Somando as Entradas...Ate Aí Tudo Bem...Mas Como Eu Farei No Caso De Uma Edição/Exclusão De Um Registro... Como Fazer Para Atualizar O Valor Do CampoTotal, Se Um Houver Exclusão Ou Edição Do Campo Entrada.....Um Desnho Vale Mais Do Que Mil Palavras...
Entrada  Total
10,00      10,00  Entra 10,00 Dá 10,00 
 5,00       15,00  Entra   5,00 Dá 15,00 
12,00      27,00  Entra 12,00 Dá 27,00 
  3,00      30,00  Entra  3,00 Dá 30,00  
O Ploblema e Quando o Usuário Resolver Exclui Um Registro Na Tabela
Como Fazer a Atualização Do Valor Do Campo Total :?:
Por Exemplo, Suponha a Exclusão Do Segundo Registro, A Tabela Ficaria Assim:
Entrada   Total
10,00      10,00  
12,00      27,00  
  3,00      30,00  

Quanto o Correto Seria Assim:
Entrada   Total
10,00      10,00  
12,00      22,00  
  3,00      25,00  

Eu Teria Que Atualizar Todos Os Registros Imediatamente Abaixo Do Segundo Registro Excluido...Depedendo Do Tamanho Eu Por Meios De Programação Normal Vou Levar Um Tempo Atualizando O Valor Do Campo Total...O Que Gostaria Era De Uma Maneira Mais Leve De Fazer Isto, Uma Dica, Uma Opinião,Alguma Forma Que Já Foi Testada e Aprovada Pelos Senhores...Com Certeza é Um Problema Classico..
Desde Já Agradeço...


Marco Salles

Marco Salles

Responder

Posts

29/02/2004

Ariovaldo

Marco vou te dar uma idéia do que eu já vi em outro sistema mas realmente nunca fiz isso, você deve ter a mesma tabela para entrada e saída apenas o que muda é um campo que informa se é entrada ou saída a cada vez que vc for mostrar este campo total vc deve executar o SQL de Soma, acredito que seja por ai


Responder

Gostei + 0

29/02/2004

Marco Salles

Amigo, Obrigado Pela Sugestão , Mas Veja Bem Se Entendi o Seu Raciocíneo:
a
cada vez que vc for mostrar este campo total vc deve executar o SQL de Soma, acredito que seja por ai

Mas Voce Não Acha Que So Atualizaria O Campo Atual :?: Vamos Supor Que Eu Pegue Os Ultimos Dados Da Minha Tabela Anterior Apos a Exclusão e Entre Com o Valor 7,00 e Faço Sum Para Gravar No Campo Total...Ficaria Assim Na Minha Opinião:
Entrada   Total 
10,00      10,00  
12,00      27,00 ==> Valor Errado Pois Ja Tinha Sido Salvo 
  3,00      30,00 ==> Valor Errado Pois Ja Tinha Sido Salvo  
  7,00      32,00 ==> O Valor Do Total Esta Correto Pois Salvei Agora...


Se Eu Tiver Que Imprimir Isto, So o Ultimo Registro Terá Sentido :?:
A Tabela No Caso De Exclusão Ou Edição Ficara Desatualizada A Não Ser Que Eu Faco Uma Atalização Geral a Partir De Onde Se Deu Esta Exclusão Ou Edição...O Que Que Voces Acham Disto...Alguem Já Encontrou Esta Dificuldade e Já Superou Este Problema Com Um Livro Caixa :?: Como :?: E Qual a Melhopr Maneira :?:


Responder

Gostei + 0

01/03/2004

Thomaz_prg

usando da forma que você postou a primeira vez, você poderia fazer da seguinte forma, o valor referente ao registro que será excluido é armazenado em uma variável, e os registros que vierem após o registro que foi excluido, terão o valor total atualizado da seguinte forma:

table1.regvalortotal = tabela1.regvalortotal - aRetirar;

onde ´aRetirar´ é a variável onde foi armazenado o valor do registro excluído.

Espero ter ajudado.


Responder

Gostei + 0

01/03/2004

Thomaz_prg

usando da forma que você postou a primeira vez, você poderia fazer da seguinte forma, o valor referente ao registro que será excluido é armazenado em uma variável, e os registros que vierem após o registro que foi excluido, terão o valor total atualizado da seguinte forma:

table1.regvalortotal = tabela1.regvalortotal - aRetirar;

onde ´aRetirar´ é a variável onde foi armazenado o valor do registro excluído.
O mesmo procedimento pode ser usado no caso de uma alteração, só que teria que usar 2 variáveis, uma para gravar o valor antigo do registro e outra com o novo valor , e a atualização ficaria da seguinte forma:

table1.regvalortotal = tabela1.regvalortotal - ValorAntigo + ValorNovo

Espero ter ajudado.


Responder

Gostei + 0

01/03/2004

Danielclubedelphi

Pq vc precisa gravar o valor total? Se naum for uma NF onde vc tem q gravar tudo como forma de segurança, vc pode calcular o total sempre que quiser... com a vantagem de poder calcular por épocas, produtos, caixa, etc...

Se naum é imprecindivel gravar o total, só grave as parciais.. o total vc calcula na hora.


Responder

Gostei + 0

01/03/2004

Marco Salles

A Sua Lógica Parece Correta, No Meu Entender... O Problema Que Eu Vejo Nela( E Eu Não Sei Se Tem Saida e Como Sair) É Exatamente Na Atualização...Imagine Uma Tabela Com Muitos Registros...Devido a Uma Exclusão Ou Edição Eu Terei Que Fazer Uma Alteração Um Por Um Dos
Registros Posteriores...Obridado Pela Participação

usando da forma que você postou a primeira vez, você poderia fazer da seguinte forma, o valor referente ao registro que será excluido é armazenado em uma variável, e os registros que vierem após[size=16:a7fbc438f8][color=red:a7fbc438f8] o registro que foi excluido, terão o valor total atualizado da seguinte forma: [/color:a7fbc438f8][/size:a7fbc438f8] table1.regvalortotal = tabela1.regvalortotal - aRetirar; onde ´aRetirar´ é a variável onde foi armazenado o valor do registro excluído. O mesmo procedimento pode ser usado no caso de uma alteração, só que teria que usar 2 variáveis, uma para gravar o valor antigo do registro e outra com o novo valor , e a[size=16:a7fbc438f8] [color=red:a7fbc438f8]atualização[/color:a7fbc438f8] [/size:a7fbc438f8]ficaria da seguinte forma: table1.regvalortotal = tabela1.regvalortotal - ValorAntigo + ValorNovo


Quanto a Sugestõa Do Nosso Amigo: ´DanielClubeDelphi´ Eu Num Entendi Direito o Raciocíneo...O Que Eu Quero Fazer É Um Caixa Onde Para Simplificar So Estou Preocupado Com As Entradas e o Total... mas o Que Fazer Com o Campo Total Quando Um Registro For Excluido Ou Editado :?:


Responder

Gostei + 0

01/03/2004

Weber

Pq vc precisa gravar o valor total? Se naum for uma NF onde vc tem q gravar tudo como forma de segurança, vc pode calcular o total sempre que quiser... com a vantagem de poder calcular por épocas, produtos, caixa, etc... Se naum é imprecindivel gravar o total, só grave as parciais.. o total vc calcula na hora.



Realmente Marcos, pra que gravar o campo total?


Responder

Gostei + 0

02/03/2004

Buosinet

Você está trabalhando com movimentações e gravando totais, é inviável. Grave as movimentações, e calcule tudo no final

Outra coisa: Cuidado ao eliminar registros em tabelas de movimentação, a consistência é importante...


Responder

Gostei + 0

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

Aceitar