Arkadaşlar şöyle bir sorum var.firma diye bir tablom var.içinde ad soyad tel vs gibi alanlarım var. gridimin içinde veritabanımda olmayan bir alanı sql ile oluşturup urunler diye bir sütunda tutuyorum. Comcobox ile aramak istediğim bir firmayı aramak istediğimde şu kodu kullanıyorum
procedure TFrm_Firma.COB_FirmaClick(Sender: TObject);
begin
ZQ_Firma.Close;
ZQ_Firma.Sql.Clear;
ZQ_Firma.Sql.Add('SELECT * FROM firma WHERE UNVAN LIKE "%' + COB_Firma.Text + '%"');
//ZQ_Firma.Sql.Add('SELECT * FROM firma WHERE UNVAN LIKE " '+' %' +COB_Firma.Text + '%"');
ZQ_Firma.Open;
end;
firmayı buluyor sorun yok fakat ürünlerimi tuttuğum sütunu boş getiriyor. Bunu nasıl çözebilirim arkadaşlar???
Gridin içinde arama nasıl yapabilirim bir de?? Teşekkürler
dbgrid üzerinde arama yapmak???
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
- ozlemsaltan
- Üye
- Mesajlar: 38
- Kayıt: 01 Nis 2014 05:57
dbgrid üzerinde arama yapmak???
Çaylak yazılımcı:)
- greenegitim
- Üye
- Mesajlar: 713
- Kayıt: 28 Nis 2011 10:33
- Konum: İstanbul
Re: dbgrid üzerinde arama yapmak???
ürünleri tutuğunuz yer bir tablomu
firmalardan ayrı bir tablo ise ilişkilendirmiş iseniz
firmalar tablosundaki primary key alanınızı bir dbedite bağlayın ve onchange olayında ürünler tablosunu listelerin.
firmalardan ayrı bir tablo ise ilişkilendirmiş iseniz
firmalar tablosundaki primary key alanınızı bir dbedite bağlayın ve onchange olayında ürünler tablosunu listelerin.
Mücadele güzelleştirir!
- ozlemsaltan
- Üye
- Mesajlar: 38
- Kayıt: 01 Nis 2014 05:57
Re: dbgrid üzerinde arama yapmak???
ürünleri tuttuğum ayrı bir tablo var. firmanın içinde değil sql ile ürünleri ordan çekiyorum yani firma tablomda ürünlerin tutulduğu bir alan yok. Bu arada sizin ne demek istediğini anlayamadım biraz açar mısınız
Çaylak yazılımcı:)
Re: dbgrid üzerinde arama yapmak???
kodumuzu şu şekilde düzenleyip bir deneyelim sonuca göre devam ederiz
eski kodunuz
düzenlenmiş kod
düzenlenmiş kodu çalıştırabilmek için urunler tablosuna firma tablosundan ortak bir alan açmış olmanız gerekmektedir. yani örneğin urunler tablonuza Firma_unvai diyede açabilirsiniz ama bununda handikapı şu aynı isimde birden fazla firma olursa o zaman yanlış sonuç döner bunun için ben her zaman firma tablomda ki o firmaya ait olan id lerle işlemlerimi yaparım yani ürün tabloma firma_id isminde bir alan açıp firma_id sini oraya aktarırım bu şekilde raporlama aldığımda hata payım sıfıra düşer sizde bu şekilde yaparsanız daha sağlıklı sonuçlar alırsınız başarılar kolay gelsin.
eski kodunuz
Kod: Tümünü seç
procedure TFrm_Firma.COB_FirmaClick(Sender: TObject);
begin
ZQ_Firma.Close;
ZQ_Firma.Sql.Clear;
ZQ_Firma.Sql.Add('SELECT * FROM firma WHERE UNVAN LIKE "%' + COB_Firma.Text + '%"');
//ZQ_Firma.Sql.Add('SELECT * FROM firma WHERE UNVAN LIKE " '+' %' +COB_Firma.Text + '%"');
ZQ_Firma.Open;
end;
Kod: Tümünü seç
procedure TFrm_Firma.COB_FirmaClick(Sender: TObject);
begin
ZQ_Firma.Close;
ZQ_Firma.Sql.Clear;
ZQ_Firma.Sql.Add('SELECT * FROM urunler WHERE Firma_UNVAN LIKE "%' + COB_Firma.Text + '%"');
//ZQ_Firma.Sql.Add('SELECT * FROM firma WHERE UNVAN LIKE " '+' %' +COB_Firma.Text + '%"');
ZQ_Firma.Open;
end;
Soru Sorarken yazmaya Üşenmeyen Parmaklar Sorunun Çözüldükten Sonra Teşekkür etmeye de Üşenmesin.
- ozlemsaltan
- Üye
- Mesajlar: 38
- Kayıt: 01 Nis 2014 05:57
Re: dbgrid üzerinde arama yapmak???
benim şöyle bir tablom var zaten. firmaid ve ürün id tutuyor. zaten bu tabloyu kullanarak sql çekiyorum urunleri atıyorum gride. ürünler tablomda firma id tutumuyorumda profirma adı tablomda firmaid ve ürünid tutuyorum-
Çaylak yazılımcı:)
- ozlemsaltan
- Üye
- Mesajlar: 38
- Kayıt: 01 Nis 2014 05:57
Re: dbgrid üzerinde arama yapmak???
kolay gelsin Devexpress yükleyin orada filerrow özelliği var istediğiniz alanda istediğiniz şekilde aratabilirsiniz