DBGrid

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Kullanıcı avatarı
sungur
Üye
Mesajlar: 11
Kayıt: 17 Tem 2004 11:59

DBGrid

Mesaj gönderen sungur » 19 Tem 2004 12:30

Bir database(Paradox) bağlanmış DBGrid e girilmiş kayıtlar üzerindeyken seçtiğim bir kayıtın (seçilen kayda ait) ayrıntısını ayrıntı butonuna tıkladığımda başka bir formda nasıl görebilirim.Çok acil...

Yardımlarınızı bekliyorum...

İyi çalışmalar...

P206
Kıdemli Üye
Mesajlar: 395
Kayıt: 17 Haz 2003 11:36
Konum: İstanbul

Mesaj gönderen P206 » 19 Tem 2004 01:07

Bunu yapman için butona tıklayarak

Kod: Tümünü seç

 KodNo:=Table1kod.asstring;

Diye (mesele kod mumarası olduğunu düşünelim ana formada). Buradan kod numarasını KodNo adlı değişkene alır, buradan da ikinci formuna yollayıp buradan bir query veya table ile bilgileri görebilirsin.

Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4319
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Mesaj gönderen aslangeri » 19 Tem 2004 02:01

S.A.
İki formdaki bileşenleri de aynı dataset ile ilişkilendir.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim

Kullanıcı avatarı
sungur
Üye
Mesajlar: 11
Kayıt: 17 Tem 2004 11:59

DBGrid

Mesaj gönderen sungur » 19 Tem 2004 02:09

afedersiniz ama cevabınızı tam olarak anlamadım.Biraz daha açarsanız konuyu memnun olurum.(özellikle ikinci formdaki olayı)

Saygılar...

Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7507
Kayıt: 09 Haz 2003 11:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek » 19 Tem 2004 02:12

bir tane datamodule oluştur ve dataset2leri ve datasource'ları buraya koy. Daha sonra her 2 formda da ortak dataseti kullan. Mesela 1. formda Query1'i kullanıyorsan, 2. formdaki bileşenleri de Query1'e bağla.

Kolay gelsin.

Kullanıcı avatarı
sungur
Üye
Mesajlar: 11
Kayıt: 17 Tem 2004 11:59

DBGrid

Mesaj gönderen sungur » 19 Tem 2004 04:10

Teşekkür ederim.
Bir database(Paradox) bağlanmış DBGrid e girilmiş kayıtlar üzerindeyken seçtiğim bir kayıtın (seçilen kayda ait) ayrıntısı ayrıntı butonuna tıkladığımda başka bir formda DBEdit ve DBGrid bulunmakta.DBEdit ta aktif kaydın görünmesi sorun olmuyor ama DBGrid i datasource bağladığım için listedeki kayıtların hepsi görünüyor.Sadece aktif olan kaydı DBGrid de nasıl gösterebirim?

İyi çalışmalar...

Saygılar...

Kullanıcı avatarı
mege
Admin
Mesajlar: 2360
Kayıt: 05 Şub 2004 04:32
Konum: Beşiktaş
İletişim:

Mesaj gönderen mege » 19 Tem 2004 04:18

bende benzer bir form var. tablodaki kayıtı çift tıkladığında başka bir form create ediyorum. bu fonksiyona ayrıca çift tıkladığım alanın key'inide gönderip o formdaki query ile bu keyi çekiyorum.
en mantıklısı bu, yoksa boşuna tüm tablodaki verileri çekeceksin :)

Kullanıcı avatarı
mussimsek
Admin
Mesajlar: 7507
Kayıt: 09 Haz 2003 11:26
Konum: İstanbul
İletişim:

Mesaj gönderen mussimsek » 19 Tem 2004 04:19

Merhaba,

bir Query koyup sadece o alanı seçin. Mesela anahtar alanınız KOD ise, SQL cümleniz şöyle olmalı

Kod: Tümünü seç

....
Query2.SQL.Add('SELECT * FROM FİLANCA_TABLO');
Query2.SQL.Add('WHERE KOD=' + Query1.FieldByName('KOD').AsString);
Query2.Open;
....
Kolay gelsin.

Kullanıcı avatarı
mege
Admin
Mesajlar: 2360
Kayıt: 05 Şub 2004 04:32
Konum: Beşiktaş
İletişim:

Mesaj gönderen mege » 19 Tem 2004 04:36

ana tablonuzun dubleklikine

Kod: Tümünü seç

uses ...unit2;
...
procedure TForm1.DBGrid1DblClick(Sender: TObject);
begin
ShowDetail(Table1BatchCode.asstring);
end;
sonra unit 2 diye tanımladığın formda bi query ve data source ve tablo edit artık ne istersen koy.

Kod: Tümünü seç

procedure ShowDetail(lBNo:string);
var
  fmDetail: TForm2;
begin
{}
try
  fmDetail:=TForm2.Create(Application);
  fmDetail.Query1.Close;
  fmDetail.Query1.SQL.Clear;
  fmDetail.Query1.SQL.Add('select * from arsiv');
  fmDetail.Query1.SQL.Add('where batchcode='''+lBNo + '''');
  fmDetail.Query1.Open;
  fmDetail.Showmodal;
finally
  fmDetail.free;
end;
end;

Kullanıcı avatarı
sungur
Üye
Mesajlar: 11
Kayıt: 17 Tem 2004 11:59

DBGrid

Mesaj gönderen sungur » 19 Tem 2004 05:07

Çalışmıyor!!!
Lütfen çok acil...

Kullanıcı avatarı
mege
Admin
Mesajlar: 2360
Kayıt: 05 Şub 2004 04:32
Konum: Beşiktaş
İletişim:

Re: DBGrid

Mesaj gönderen mege » 19 Tem 2004 05:11

sungur yazdı:Çalışmıyor!!!
Lütfen çok acil...
hata nerde hani göremiyom ben :evil:

kural 1: hata kodunu yazıcaksın
kural 2: nerde verdiğini yazıcaksın
kural 3: gazozuna dahi kumar oynamıcaksın
kural 4: ..

zengin
Üye
Mesajlar: 199
Kayıt: 06 Ağu 2003 09:13

Mesaj gönderen zengin » 20 Tem 2004 07:56

merhaba sungur kardeşim dbgrid ile sorununvar biliyorum fakat iki ayrı yerde aynı sorunun cevabını arıyorsun

kardeşim bak adamsana ne güzel izah etmiş üstelikte kodunu vermiş daha neresini yapamıyorsun

selimr kardeşimizin yazmış oldugu örnek kodu ben denedim cokda güzel calışıyor kusura kalma ama
bu kodu dene senin işini görür

procedure TMUSHAREKETLE.DBGrid1KeyPress(Sender: TObject; var Key: Char);
begin
MHAREKET.MHtable1.append;
MHAREKET.MHtable1.fieldbyname('Aciklama').asstring:=Query1.fieldbyname('Aciklama').asstring;

MUSHAREKETLE.CLOSE;
end;


selimr
Üye


Kayıt: 16 Ekm 2003
Mesajlar: 16

Tarih: Pzr Tem 18, 2004 12:28 Mesaj konusu:

--------------------------------------------------------------------------------

ikinci tabloda grid in dbclick olayinda

table1.append;
table1.fieldbyname('adi').asstring:=table2.fieldbyname('adi').asstring;
table1.fieldbyname('soyadi').asstring:=table2.fieldbyname('soyadi').asstring;
vs.
gibi

eger soruyu yanlis anlamadiysam..
böyle yapabilirsin
Zengin

Kullanıcı avatarı
sungur
Üye
Mesajlar: 11
Kayıt: 17 Tem 2004 11:59

DBGrid

Mesaj gönderen sungur » 20 Tem 2004 10:09

Teşekkür ederim yardımcı olan herkese...
Peki aktif kaydı görüntülüyorum.'YENİ' butonuna tıkladığımda kayıt eklemek için DBGrid i nasıl boş olarak getirebilirim.

İyi çalışmalar...

Kullanıcı avatarı
mege
Admin
Mesajlar: 2360
Kayıt: 05 Şub 2004 04:32
Konum: Beşiktaş
İletişim:

Mesaj gönderen mege » 20 Tem 2004 10:11

kayıt girmek için tabloyu kullanmak bence iyi bir fikir değil. (bence :) )
:idea: kontrolü senin elinde olan yeni bir form açıp oradan girdi yaptırman daha iyi olur.

Kullanıcı avatarı
sungur
Üye
Mesajlar: 11
Kayıt: 17 Tem 2004 11:59

DBGrid

Mesaj gönderen sungur » 20 Tem 2004 10:32

Bence de iyi fikir değil ama.programın bir yerinde kullanmak zorundayım. :(

Cevapla