Wilke1 0 Denunciar post Postado Fevereiro 27, 2009 ola pessoal ,estou tentando fazer esse calcula usando o dbgrid no evento do campo, mas dar um erro complicado estou tentando fazer assim procedure TFmControMesa.QryitensVL_PRECOChange(Sender: TField); var Calc:Real; teste:string; QT:String; Preco:String; begin inherited; teste:='teste'; //QryItens.FieldByName('cd_mesa').Value:=QryMesaCad.FieldByName('cd_mesa').Value; QT:= QryItens['QT_PEDIDA'] * QryItens['VL_PRECO']; // Preco:=QryItens['VL_PRECO']; // Calc:= QT * Preco; // Calc:=QryItens['QT_PEDIDA'] * QryItens['VL_PRECO']; QryItens['VL_PED_TOTAL']:=QT;desde ja agradeço pela ajuda Compartilhar este post Link para o post Compartilhar em outros sites
Chrnos 30 Denunciar post Postado Fevereiro 27, 2009 Porque não executa este cálculo no próprio select de busca dos dados? Ficaria algo assim: SELECT CD_MESA, QT_PEDIDA, VL_PRECO, (QT_PEDIDA * VL_PRECO) AS VL_PED_TOTAL FROM TABELA Ps.: uma query não aceita este tipo de atribuição de valores QryItens['VL_PED_TOTAL']:=QT; []'s Compartilhar este post Link para o post Compartilhar em outros sites
Wilke1 0 Denunciar post Postado Fevereiro 27, 2009 Porque não executa este cálculo no próprio select de busca dos dados? Ficaria algo assim: SELECT CD_MESA, QT_PEDIDA, VL_PRECO, (QT_PEDIDA * VL_PRECO) AS VL_PED_TOTAL FROM TABELA Ps.: uma query não aceita este tipo de atribuição de valores QryItens['VL_PED_TOTAL']:=QT; []'s amigo será que não existe uma forma de fazer esse calculo direito na linha do dbgrid? Compartilhar este post Link para o post Compartilhar em outros sites
Chrnos 30 Denunciar post Postado Fevereiro 27, 2009 Existir até existe, eu só não lembro agora como fazer... mas porque você não usa a query de busca para trazer este valor já calculado como eu sugeri? Por qual razão você quer fazer o cálculo em runtime dentro do grid?? Compartilhar este post Link para o post Compartilhar em outros sites
Wilke1 0 Denunciar post Postado Fevereiro 27, 2009 Existir até existe, eu só não lembro agora como fazer... mas porque você não usa a query de busca para trazer este valor já calculado como eu sugeri? Por qual razão você quer fazer o cálculo em runtime dentro do grid?? e porque esse dbgrid vai ser usado como orçamento e no final dos itens inseridos ele dará o total em baixo. Compartilhar este post Link para o post Compartilhar em outros sites
Chrnos 30 Denunciar post Postado Março 2, 2009 Você vai por o total dentro do grid?? Ou num campo fora dele? Se for fora, você poderia dar um sum nos valores via sql e jogar neste campo sempre que inserisse ou retirasse algum valor do grid... acho que seria mais simples. Qual banco de dados está usando? Se for o sql server posso ajudar a montar uma procedure para isto. []'s Compartilhar este post Link para o post Compartilhar em outros sites
Wilke1 0 Denunciar post Postado Março 2, 2009 Você vai por o total dentro do grid?? Ou num campo fora dele? Se for fora, você poderia dar um sum nos valores via sql e jogar neste campo sempre que inserisse ou retirasse algum valor do grid... acho que seria mais simples. Qual banco de dados está usando? Se for o sql server posso ajudar a montar uma procedure para isto. []'s valeu amigo obrigado eu consegui fazer , mas aproveitando a oportunidade, gostaria de saber , como cancelar um setfocus? Compartilhar este post Link para o post Compartilhar em outros sites
Chrnos 30 Denunciar post Postado Março 2, 2009 Até onde sei não tem como cancelar um setfocus... o que pode-se fazer é algum teste para executar o comando ou não se há situações que não se usa ele. Compartilhar este post Link para o post Compartilhar em outros sites