ibdataset çoklu alanda arama

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Lord_Ares
Üye
Mesajlar: 1070
Kayıt: 15 Eki 2006 04:33
Konum: Çorlu

ibdataset çoklu alanda arama

Mesaj gönderen Lord_Ares »

merhab, daha önce paradox veritabanı ile kullandığım bu kodu ibdataset ile kullandığımda çalışmıyor.
amacım şu satış datasında aynı isim, başlangıç tarihi, bitiş tarihinde kayıt varsa kayda konumlanıp kaydı editleyeceğim.

Kod: Tümünü seç

IF DataM.TTURSATIS.LOCATE('TURADI; TURBASTARIH; TURBITTARIH',VarArrayOf([Form1.TURCOMBO.Text,Form1.DateTimePicker4.Date,Form1.DateTimePicker5.Date]),[loCaseInsensitive])=TRUE THEN showmessage('kayıt var') else showmessage('kayıt yok') ;
yaptığım denemelerde sadece adını aratırsam çalışıyor fakat sadece tarihi aratırsam çalışmıyor. Sanırım Locate ile 10.11.2008 şeklinde kayıtlı bir veriyi aratamıyoruz.

veritabanında adı, başlangıç ve bitiş tarihi eğer aynı ise kayda konumlan veriyi değiştir, adı aynı tarihler farklı ise yeni kayıt ekle nasıl yapabilirim.
teşekkürler
Kullanıcı avatarı
greenegitim
Üye
Mesajlar: 713
Kayıt: 28 Nis 2011 10:33
Konum: İstanbul

Re: ibdataset çoklu alanda arama

Mesaj gönderen greenegitim »

Örnek alanlar edite dolu ise sqli ona göre oluşturuyoruz.

Kod: Tümünü seç

  if edt_plaka.Text<> '' then cumle:=cumle+' and plakasi='+QuotedStr(edt_plaka.Text);
  if edt_tarih1.Text<> '' then cumle:=cumle+' and baslamatarihi >='+QuotedStr(edt_tarih1.Text);
  if edt_tarih2.Text<> '' then cumle:=cumle+ ' and baslamatarihi <='+QuotedStr(edt_tarih2.Text);
  if edt_musteri.Text<> '' then cumle:=cumle+' and mustericariunvan='+QuotedStr(edt_musteri.Text);
  if edt_guzergah.Text<> '' then cumle:=cumle+' and malincinsi='+QuotedStr(edt_guzergah.Text);
  qrynakliye.Close;
  qrynakliye.SQL.Text:='';
  qrynakliye.SQL.Text:='select * from nakliye where 1=1 '+cumle+'';
  qrynakliye.Open;
  qrynakliye.FetchAll;
Mücadele güzelleştirir!
Lord_Ares
Üye
Mesajlar: 1070
Kayıt: 15 Eki 2006 04:33
Konum: Çorlu

Re: ibdataset çoklu alanda arama

Mesaj gönderen Lord_Ares »

greenegitim örnek kod için teşekkürler fakat bunla kaydı seçili duruma ( kayda konumlamıyorum) getiremiyorum, ya ben yanlış yapıyorum yada mecburen locate ile ilgili bir çözüm bulacağım.( where ile kaydır arattığımda Büyük küçük harf farkından dolayı bulamadığı oluyor)
Lord_Ares
Üye
Mesajlar: 1070
Kayıt: 15 Eki 2006 04:33
Konum: Çorlu

Re: ibdataset çoklu alanda arama

Mesaj gönderen Lord_Ares »

locate ile olan sorunu buldum, tarihleri stringe çevirmeden verdiğim için bulamamış. şuan locate çalışıyor.
Cevapla