Fórum Somar valor digitado com valor da tabela #389746
31/10/2010
0
Pessoal, queria saber se vocês podem me ajudar! Com uma dúvida que eu estou tendo ..
ex:
# p.s: edit5 -> data do dia
edit3 -> valor digitado
o que eu quero fazer é o seguinte, se o dia atual for igual ao dia gravado na tabela, então eu somo o valor da tabela + valor digitado..
Se o dia atual não for igual ao da tabela, então eu gravo normal.
Eu tentei fazer com esse código aí, mas não ta funcionando! Haa!! mas o problema é o seguinte, na minha tabela o valor, no caso o campo 'Recebido', está com o tipo Alpha numérico, tendo um R$ junto do valor. Isso tem algum problema, na hora de somar ??
Será que alguém poderia me dá uma forcinha nessa ??
Desde já agradeço.
Beijão '-'
ex:
var soma, digitado, tabela: float;
begin
If table1.fieldbyname('Data').asstring = edit5.text then
begin
table1.edit;
dig:= FloattoStrf(edit3.text);
tab:= FloattoStrf(table1['Recebido']);
soma:= (dig) + (tab);
table1.fieldbyname('Recebido').asstring:=(soma);
end
else
begin
table1.edit;
table1.insert;
table1.fieldbyname('Recebido').asstring:=(edit3.text);
dbnavigator1.btnclick(nbinsert);
end; # p.s: edit5 -> data do dia
edit3 -> valor digitado
o que eu quero fazer é o seguinte, se o dia atual for igual ao dia gravado na tabela, então eu somo o valor da tabela + valor digitado..
Se o dia atual não for igual ao da tabela, então eu gravo normal.
Eu tentei fazer com esse código aí, mas não ta funcionando! Haa!! mas o problema é o seguinte, na minha tabela o valor, no caso o campo 'Recebido', está com o tipo Alpha numérico, tendo um R$ junto do valor. Isso tem algum problema, na hora de somar ??
Será que alguém poderia me dá uma forcinha nessa ??
Desde já agradeço.
Beijão '-'
Yuli Chrysostomo
Curtir tópico
+ 0
Responder
Posts
01/11/2010
Ricardo Araujo
boa noite,
segue o código abaixo.
var
ValorDigitado, valorTabela, SomaTotal : Double;
begin
// este dbBanco, séria o valor recebido do banco de dados
// este DateTimePicker1.Date séria o valor recebido no dia atual.
If dbBanco.Date = DateTimePicker1.Date then
begin
{* aqui você da um edit na sua tabela
* tabela.edit;
*}
ValorDigitado := StrToFloat(edtvalor.Text);
// aqui estou simulando um exemplo como se estivesse pegando o dados do banco
valorTabela := StrToFloat(edtBanco.Text);
SomaTotal := ValorDigitado + valorTabela;
//aqui estou adicionando na memo, mas é a mesma coisa para o banco de dados.
Memo1.Lines.Add(FormatFloat('##0.00',SomaTotal));
{* aqui seria o valor de amazenamento da tabela.
*// table1.fieldbyname('Recebido').asstring :=(soma);
*aqui terá que colocar o post para salvar no banco de dados.
* table1.post;
*}
end else begin
//table1.edit;
//table1.insert;
// table1.fieldbyname('Recebido').asstring:=(edit3.text);
{* vou fazer um exemplo simples para adicionar em um
* memo séria a mesma coisa para adicionar no banco de dados.
*}
Memo2.Lines.Add(FormatFloat('##.000',edtvalor.Value));
end;
end;
a imagem do exemplo esta abaixo:
este exemplo que fiz, não salva nada em banco de dados, é apenas uma simulação de como estivesse salvando os dados.
apenas faz o calculo que a data for igual e salva no memo1.
se a data for diferente, apenas amazena o valor atual no banco, que séria o memo2.
estou usando dois memo, 1 para amazenar o valor de soma, e outro para amazenar o valor recebido.
Espero ter ajudado.
att.
rbbarreto
segue o código abaixo.
var
ValorDigitado, valorTabela, SomaTotal : Double;
begin
// este dbBanco, séria o valor recebido do banco de dados
// este DateTimePicker1.Date séria o valor recebido no dia atual.
If dbBanco.Date = DateTimePicker1.Date then
begin
{* aqui você da um edit na sua tabela
* tabela.edit;
*}
ValorDigitado := StrToFloat(edtvalor.Text);
// aqui estou simulando um exemplo como se estivesse pegando o dados do banco
valorTabela := StrToFloat(edtBanco.Text);
SomaTotal := ValorDigitado + valorTabela;
//aqui estou adicionando na memo, mas é a mesma coisa para o banco de dados.
Memo1.Lines.Add(FormatFloat('##0.00',SomaTotal));
{* aqui seria o valor de amazenamento da tabela.
*// table1.fieldbyname('Recebido').asstring :=(soma);
*aqui terá que colocar o post para salvar no banco de dados.
* table1.post;
*}
end else begin
//table1.edit;
//table1.insert;
// table1.fieldbyname('Recebido').asstring:=(edit3.text);
{* vou fazer um exemplo simples para adicionar em um
* memo séria a mesma coisa para adicionar no banco de dados.
*}
Memo2.Lines.Add(FormatFloat('##.000',edtvalor.Value));
end;
end;
a imagem do exemplo esta abaixo:
este exemplo que fiz, não salva nada em banco de dados, é apenas uma simulação de como estivesse salvando os dados.
apenas faz o calculo que a data for igual e salva no memo1.
se a data for diferente, apenas amazena o valor atual no banco, que séria o memo2.
estou usando dois memo, 1 para amazenar o valor de soma, e outro para amazenar o valor recebido.
Espero ter ajudado.
att.
rbbarreto
Responder
Gostei + 0
02/11/2010
Yuli Chrysostomo
Ricardo,
pelo que eu entendi .. esse código você fez pra delphi 7, certo ?!
só que eu uso o delphi 4.. porqe é um projeto do colégio, e não quero arriscar de usar outra versão sem ser a deles.
Será qe esse código funcionará no delphi 4 ??
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)