(27-12-2022, Saat: 19:31)sadikacar60 Adlı Kullanıcıdan Alıntı: arkadaslar son kayitdaki tarih bilgisini asagidaki sekilde aliyorum daha dogru bir yontem varsa paylasirsaniz sevinirim
saygilar
DMoyunlar.IBQuery1.SQL.Clear;
DMoyunlar.IBQuery1.SQL.Add('Select MAX(ID) from TBL_KASA' );
DMoyunlar.IBQuery1.Open;
id:= DMoyunlar.IBQuery1.Fields[0].AsInteger;
DMoyunlar.IBQuery1.SQL.Clear;
DMoyunlar.IBQuery1.SQL.Add('Select * from TBL_KASA WHERE ID='+IntToStr(id));
DMoyunlar.IBQuery1.Open;
trh:= DMoyunlar.IBQuery1.fieldbyname('DATE_').value;
Merhaba ,
Tek sorgu ifadesiyle alabilirsiniz.
DMoyunlar.IBQuery1.SQL.Clear;
DMoyunlar.IBQuery1.SQL.Add('Select DATE_ from TBL_KASA WHERE ID=(Select MAX(ID) from TBL_KASA)');
DMoyunlar.IBQuery1.Open;
trh:= DMoyunlar.IBQuery1.fieldbyname('DATE_').value;
sagolun hocam tarih bilgisini string olarak '21.12.2022' olarak aldim simdi bugunun tarihini '27.12.2022' olarak alip
karsilastirma yapmam lazim
tarih kucuk ise diye islem yapmam lazim bunu nasil yapariz acaba netde arastiriyorum ama pek saglikli bir sey bulamadim.
(27-12-2022, Saat: 20:02)sadikacar60 Adlı Kullanıcıdan Alıntı: sagolun hocam tarih bilgisini string olarak '21.12.2022' olarak aldim simdi bugunun tarihini '27.12.2022' olarak alip
karsilastirma yapmam lazim
tarih kucuk ise diye islem yapmam lazim bunu nasil yapariz acaba netde arastiriyorum ama pek saglikli bir sey bulamadim.
If CompareDate(trhKyt, myDate )=-1 Then
Begin
end;
Merhaba ,
Sorgudan dönen tarih alanını direk "TDate" olarak kullanabilirsiniz yani sorgunun altından şöyle devam edebilirsiniz;
DMoyunlar.IBQuery1.SQL.Clear;
DMoyunlar.IBQuery1.SQL.Add('Select DATE_ from TBL_KASA WHERE ID=(Select MAX(ID) from TBL_KASA)');
DMoyunlar.IBQuery1.Open;
if DMoyunlar.IBQuery1.fieldbyname('DATE_').AsDateTime < Date then
begin
end;
Hangi değerin hangisinden küçüklüğünü kontrol edeceğinizi bilemedim duruma göre if koşulundaki tarafları değiştirebilrisiniz. "Date" size günün tarihi verir.
(27-12-2022, Saat: 19:31)sadikacar60 Adlı Kullanıcıdan Alıntı: arkadaslar son kayitdaki tarih bilgisini asagidaki sekilde aliyorum daha dogru bir yontem varsa paylasirsaniz sevinirim
saygilar
DMoyunlar.IBQuery1.SQL.Clear;
DMoyunlar.IBQuery1.SQL.Add('Select MAX(ID) from TBL_KASA' );
DMoyunlar.IBQuery1.Open;
id:= DMoyunlar.IBQuery1.Fields[0].AsInteger;
DMoyunlar.IBQuery1.SQL.Clear;
DMoyunlar.IBQuery1.SQL.Add('Select * from TBL_KASA WHERE ID='+IntToStr(id));
DMoyunlar.IBQuery1.Open;
trh:= DMoyunlar.IBQuery1.fieldbyname('DATE_').value;
"DMoyunlar1.Last" dersen son kayıta ulaşabilirsin.
Aşağıdaki yöntemle de dosyaya tek seferde erişim sağlayarak istediğiniz elde edebilrsiniz.
DMoyunlar.IBQuery1.SQL.Clear;
DMoyunlar.IBQuery1.SQL.Add('Select Top 1 DATE_ from TBL_KASA with(nolock) Order By ID Desc)');
DMoyunlar.IBQuery1.Open;
if DMoyunlar.IBQuery1.fieldbyname('DATE_').AsDateTime < Date then
begin
end;
Bu dünyada kendine sakladığın bilgi ahirette işine yaramaz.
(29-12-2022, Saat: 14:50)adelphiforumz Adlı Kullanıcıdan Alıntı: Aşağıdaki yöntemle de dosyaya tek seferde erişim sağlayarak istediğiniz elde edebilrsiniz.
DMoyunlar.IBQuery1.SQL.Clear;
DMoyunlar.IBQuery1.SQL.Add('Select Top 1 DATE_ from TBL_KASA with(nolock) Order By ID Desc)');
DMoyunlar.IBQuery1.Open;
if DMoyunlar.IBQuery1.fieldbyname('DATE_').AsDateTime < Date then
begin
end;
hocam orneginiz cok guzel hata aldim problem ne olabilir acaba DATE_ hucresi varchar ve 02.01.2023 seklinde deger kaydediyor
string ile tarih degerini karsilastirdigimiz icin mi hata aliyorum acaba.
saygilar
Ekmeğimi yazılımdan kazanmıyorum kendi halimde bir şeyler yapıyorum. 49 yaşında emekliyim.
İğne sokmadan yardımcı olacaksan başımın üstünde yerin var.
DMoyunlar.IBQuery1.SQL.Clear;
DMoyunlar.IBQuery1.SQL.Add('Select Top 1 convert(date,DATE_,104) DATE_ from TBL_KASA with(nolock) Order By ID Desc)');
DMoyunlar.IBQuery1.Open;
if DMoyunlar.IBQuery1.fieldbyname('DATE_').AsDateTime < Date then
begin
end;
Bu şekilde test edebilirmisiniz. Sadece sorgu içine convert(date,DATE_,104) DATE_ bunu ekledim
DMoyunlar.IBQuery1.SQL.Clear;
DMoyunlar.IBQuery1.SQL.Add('Select Top 1 cast(DATE_ AS DATE) DATE_ from TBL_KASA with(nolock) Order By ID Desc)');
DMoyunlar.IBQuery1.Open;
if DMoyunlar.IBQuery1.fieldbyname('DATE_').AsDateTime < Date then
veya (denemedim)
DMoyunlar.IBQuery1.SQL.Clear;
DMoyunlar.IBQuery1.SQL.Add('Select Top 1 cast(DATE_ AS DATE) from TBL_KASA with(nolock) Order By ID Desc)');
DMoyunlar.IBQuery1.Open;
if DMoyunlar.IBQuery1.fieldbyname('DATE_').AsDateTime < Date then
Şöyle deneyiniz...
__________________________
From Now I will only Reading.