Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Estou precisando buscar um valor final do dia anterior, para que apareça no valor inicial do dia atual, fiz este select no banco :
Código: Select resumo.gtf as GTF From resumo Where Data = data
e me retornou todos os valores finais, como posso trazer na aplicação, o valor final referente ao dia anterior para cada caixa.
Exemplo:
Caixa nº 1 do dia 17/03/2007 valor final R$ 1200,00
Caixa nº 1 do dia 19/03/2007 valor inicial R$ 1200,00 esse valor que precisa aparecer automaticamente no DBEdit, e que estou com problemas, se fizeram algo parecido preciso de ajuda .
Abraços.
Fiz o seguinte
Select codcaixa, data, resumo.gtf as GTF From resumo Where Data = data-1 order by codcaixa, data
no banco não deu erro, mas retornou valore nulos. ok
depois fiz isto
procedure TformResumo.dbGTIEnter(Sender: TObject); begin inherited; IBDataset1.Close; IBDataset1.ClearFields; IBDataset1.SelectSQL.Add('select resumo.gtf as GTF'); IBDataset1.SelectSQL.Add('from resumo'); IBDataset1.SelectSQL.Add('where data =data-1'); IBDataset1.SelectSQL.Add('order by codcaixa,data'); IBDataset1.Open; if not IBDataset1.IsEmpty then begin IBDataset1GTI.Value := IBDataset1.FieldByName('GTF').Value; IBDataset1.Close; end; end;
dá o seguinte erro : IBDataset1 not in edit or insert mode
Não sei o que fazer !
Primeiramente... esse erro ocorreu por causa dessa linha:
IBDataset1GTI.Value := IBDataset1.FieldByName('GTF').Value;
Você gostaria que ese valor fosse exibido onde?
Bom, explique melhor, pois acho que o que o amigo Márcio falou se encaixa perfeitamente... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif
Se você atribuir o valor, precisa antes editar e depois salvar:
IBDataset1GTI.Edit;IBDataset1GTI.Value := IBDataset1.FieldByName('GTF').Value; IBDataset1GTI.Post;IBDataset1GTI.Close;
Hugo, esse valor tem que ser exibido no DBEdit Valor Inicial = dbGTI, no exemplo do Márcio, ele utilizou uma Query eu estou usando IBDataset , não sei se tem diferença, só que não está dando certo, estou colocando o codigo no evento onEnter do DBEdit, um exemplo, gostaria que retornasse o valor do GTF do PDV nº 1 dia 25/03/2007 já gravado no banco (Firebird) para o GTI do PDV nº 1 dia 26/03/2007 , como fosse uma sequencia entende........ GTI = Grande Total Inicial GTF= Grande Total Final
Faz o SQL, abre a query e depois atribui ao campo da tabela, tipo:
Pois o DBEdit é ligado a um campo, e é para este campo que deve de atribuir o valor.