AdoQuery kullanarak veritabanına bağlandım ve istediğim kayıtları yükledim.Bu kayıtları ileri ve geri tuşları ile edit içinde gösteriyorum , sorum şu geri yaptığım zaman ilk kayıta kadar geliyor ancak bir kez daha basıyorum ve o zaman "ilk kayıt" diye hazırladığım show mesaj çıkıyor.Son kayıttada durum böyle yani son kayıttayım ama bir kez daha basınca "son kayıt" mesajı çıkıyor.Nedir bunun sebebi
with dm do
begin
if qryTemp.Bof then
begin
ShowMessage('İlk Kayıt');
end
else
begin
qryTemp.Prior;
Edit1.Text := qryTemp.Fields[1].AsString;
Edit2.Text := qryTemp.Fields[2].AsString;
end;
end;
Sonm kayıttayken bir daha son kayıt dersen msj çıkması gerekmezmi ?
Kolay gelsin.
Gün gelecek, dilleri, elleri ve ayakları yapmış oldukları bütün kötülükleri tek tek bildirerek aleyhlerinde şahitlik edecektir. [Nur Suresi 24]
_________________
s.a.
eğer tablonun başına eya sonuna gelinmiş ise ilgili editin enable sini false yaparak kullanıcının tekrar o düğmeye tıklamasını engelleyebilirsin.
tabi düğmeleri tekrar enable yapmayı unutma.
forma bitane navigator koyup onun nasıl çalıştığını bi incele istersen.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Normali de bu zaten. Delphi bir önceki kayıta git dediğin zaman bir önceki kayıta gitmeye çalışır, gidemediği zamanda BOF döner.
İlk kayıta kadar bir önceki kayıt olduğu için normal gelir ve ilk kayıtta, bir önceki kayıta git dediğin zaman bulamadığı için BOF döner ve butonları vs. ayarlar.
NOT : Bu ileri - geri olayını mümkün olduğu kadar kullanmayın, SQL Server veritabanlarının mantığına ters. Kullanıcılar arama yaparak kayıtları bulsunlar.
mussimsek yazdı:
NOT : Bu ileri - geri olayını mümkün olduğu kadar kullanmayın, SQL Server veritabanlarının mantığına ters. Kullanıcılar arama yaparak kayıtları bulsunlar.
Mssql mantığına neden ters bunu açabilrmisiniz acaba. Eof,Beof bazen kullanılması gerekebiliyor. Eğer yavaşlıktan kastediyorsanız haklısınız yani eof beof veya firs, last gibi komutlar baya vtyi kasıyor. ama mantığına ters düşüyor demeniz kafamı karıştırdı.
Saygılarımla
Teşekkürler.
Gün gelecek, dilleri, elleri ve ayakları yapmış oldukları bütün kötülükleri tek tek bildirerek aleyhlerinde şahitlik edecektir. [Nur Suresi 24]
_________________
SQL Serverlarda (Oracle, MS SQL, Sybase, FireBird vs.) cursor'ler tek yönlüdür, ileri doğru. Bir önceki kayda gitmek baya maliyetli ve yavaş bir işlemdir. Arka planda bir sürü işlem yapılır.
Ayrıca iş mantığı olarak pek mantıklı gelmiyor bana. Mesela müşteriler olan bir ekranda bir önceki müşteriyi görüyüm demez veya işine yaramaz. Ad soyad veya numara işlem yapar.
Merhaba;
Mustafa hocam bende yavaşlıktan kastettiğiniz anlmıştım sizinde belirtiğiniz gibi ilk kayıt,on kayıt işlemlerindeserver çok fazla kasılıyor.
Kolay gelsin.
Gün gelecek, dilleri, elleri ve ayakları yapmış oldukları bütün kötülükleri tek tek bildirerek aleyhlerinde şahitlik edecektir. [Nur Suresi 24]
_________________