dbgrid tıklama

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
lavi34
Üye
Mesajlar: 78
Kayıt: 16 Tem 2008 01:14

dbgrid tıklama

Mesaj gönderen lavi34 »

dbgrid'de listelenen kayıtlardan herhangi birinin bulunduğu satıra tıklayınca başka bir dbgridde bu kaydın diğer bilgilerini getirmek istiyorum.query'lerim çalışyor fakat bu yazdığımı yapamadım.yardımlarınız bekliyorum
Kullanıcı avatarı
selimr
Üye
Mesajlar: 556
Kayıt: 16 Eki 2003 02:07

Re: dbgrid tıklama

Mesaj gönderen selimr »

master , detail uygulayacaksın..
bu kodunad forumda çok bilgi var..


query lerde;

birinci query nin bağlı olduğu datasource nin OnDataChange olayına ; ikinci gridde gösterilmesini istediğin koşullu query yi yazacaksın..
lavi34
Üye
Mesajlar: 78
Kayıt: 16 Tem 2008 01:14

Re: dbgrid tıklama

Mesaj gönderen lavi34 »

aşağıdaki sorguyla gride verileri getiriyorum.
************
query1------

select fatura_no,tarih,fatura_sahibi,sum(adet*birim_fiyat )*1.18 as miktar,(select ADI from SATICI where ID=gir_fatura.fatura_sahibi)as Satici,(select KOD from SATICI where ID=gir_fatura.fatura_sahibi)as kodu,(select UNVAN from SATICI where ID=gir_fatura.fatura_sahibi)as unvn
from gir_fatura
group by fatura_no,tarih,fatura_sahibi
order by fatura_sahibi asc

****************
bu sorguyuda bir gride bağladım..

query2-----

select id, miktar,ACIKLAMA,TARIH,kalan,ALINAN,FATURA_NO,FATUR A_SAHIBI
from verecekler
where fatura_no= :fatno and fatura_sahibi= :satici and tarih= :tarih
order by id asc
********************
Yapmak istediğim şu idi;
query1 in bağlı olduğu gridden bir kayır seçince query2 nin bağlı olduğu gridde kaydın verecekler tablosundan bilgilerini getirmesi...
Kullanıcı avatarı
selimr
Üye
Mesajlar: 556
Kayıt: 16 Eki 2003 02:07

Re: dbgrid tıklama

Mesaj gönderen selimr »

birinci query nin "query1" bağlı olduğu datasourcenin "datachange" olayına aşağıdaki kodu yazacaksın..


Kod: Tümünü seç

procedure TForm1.Datasource1DataChange(Sender: TObject; Field: TField);
begin
  Query2.Close;
  Query2.Params.ParamByName('fatno') := Query1.FieldByName('fatura_no').AsString;
  Query2.Params.ParamByName('satici'):= Query1.FieldByName('fatura_sahibi').AsString;
  Query2.Params.ParamByName('tarih') := Query1.FieldByName('tarih').AsDateTime;
  Query2.Open;
end;
 

şu andaki kullandığım makinede delphi yok; lazarus vardı, yazlımda biraz farklılık olabilir .. bilemiyorum...
lavi34
Üye
Mesajlar: 78
Kayıt: 16 Tem 2008 01:14

Re: dbgrid tıklama

Mesaj gönderen lavi34 »

tşk.ler.verdiğin kodları yazım.1.gridde kayda tıklayınca 2. gridde ilgili kaydı getirmem içi ne yazıcam.yani nasıl bağlantı yapıcam?
lavi34
Üye
Mesajlar: 78
Kayıt: 16 Tem 2008 01:14

Re: dbgrid tıklama

Mesaj gönderen lavi34 »

yani gridin boubleclick olayına nasıl bağlatı olacakki tıklayınca kayıt gelsin?
lavi34
Üye
Mesajlar: 78
Kayıt: 16 Tem 2008 01:14

Re: dbgrid tıklama

Mesaj gönderen lavi34 »

çok teşk ederim.yaptım oldu.sorun çözüldü.allah razı olsun..
lavi34
Üye
Mesajlar: 78
Kayıt: 16 Tem 2008 01:14

Re: dbgrid tıklama

Mesaj gönderen lavi34 »

sorun çözüldü dedim ama ufak bir sorun daha var.query2 yi bağladığım grid üzerinde kayıtlarda değişiklik yapamıyorum..yardım edebilirmisin?
Cevapla