Fonksiyon kullanımı

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
dost
Üye
Mesajlar: 104
Kayıt: 08 Oca 2004 11:33

Fonksiyon kullanımı

Mesaj gönderen dost »

Merhaba,

Kod: Tümünü seç

function TRecordCount(Q: TIBQuery): Integer;
begin
  Q.Close;
  Q.SQL.Text := 'SELECT COUNT(*) AS n FROM TBL_KIMLIK';
  Q.Open;
  Result := Q.Fields[0].Value;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Label2.Caption := IntToStr(TRecordCount());
end;
Yukarıdaki fonksiyondan tablonun toplam kayıt sayısını alamadım.
Yardımcı olabilirmisiniz ?

Teşekkürler.
Kullanıcı avatarı
nitro
Üye
Mesajlar: 1112
Kayıt: 23 Ağu 2004 01:18
Konum: Çanakkale
İletişim:

Mesaj gönderen nitro »

Kod: Tümünü seç

function tform1.TRecordCount(Q: TIBQuery): Integer; 
begin 
  Q.Close; 
  Q.SQL.Text := 'SELECT COUNT(*) AS n FROM TBL_KIMLIK'; 
  Q.Open; 
  Result := Q.Fields[0].Value; 
end; 

procedure TForm1.Button1Click(Sender: TObject); 
begin 
  Label2.Caption := IntToStr(TRecordCount(form1.q)); 
end; 
şeklinde çalışır.
kolay gelsin.
ulu coder
Üye
Mesajlar: 838
Kayıt: 01 Nis 2006 06:46
Konum: Ankara

Mesaj gönderen ulu coder »

Ufak bir öneri:

Bu tür işlemleriniz için hiç bir yere (DBEdit, DBGrid vs.) bağlı olmayan bir Query nesnesini projenize ekleyin. Örneğin qryTemp adında.

Toplam Kayıt Sayısı ve benzeri işlemler için de fonksiyonları şu hale getirin:

Kod: Tümünü seç

function TotalRecord(TableName: String): Integer;
begin
  qryTemp.SQL.Text := 'select COUNT(*) from '+TableName;
  qryTemp.Open;
  Result := qryTemp.Fields[0].AsInteger;
end;
Ne faydası oldu:
Bu tür işlemler(Toplam kayıt sayısı, min, max...) için tek bir query(qryTemp) yeterli.
Her tablo için fonksiyon yazmak zorunda değilsiniz.
Kod okunurluğu daha bi hoş oldu : ) (TotalRecord('TBL_KIMLIK'));

Kolay gele...
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

ulu coder yazdı:Ufak bir öneri:

Bu tür işlemleriniz için hiç bir yere (DBEdit, DBGrid vs.) bağlı olmayan bir Query nesnesini projenize ekleyin. Örneğin qryTemp adında.
...
Dersine çalışan nasılda belli oluyor :wink: :) :) (reklamlardan...)
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
Kullanıcı avatarı
sadettinpolat
Moderator
Mesajlar: 2131
Kayıt: 07 Ara 2003 02:51
Konum: Ankara
İletişim:

Mesaj gönderen sadettinpolat »

ulu coder yazdı:Query nesnesini projenize ekleyin. Örneğin qryTemp adında.
e sen simdi benim kullandigim degisken adini kullanmissin. seni mahkemeye versem surum surum surunursun valla :)
"Sevmek, ne zaman vazgececegini bilmektir." dedi, bana.

---
http://sadettinpolat.blogspot.com/
ulu coder
Üye
Mesajlar: 838
Kayıt: 01 Nis 2006 06:46
Konum: Ankara

Mesaj gönderen ulu coder »

rsimsek hocam: :oops:

sadettinpolat hocam: ben Delphi'yi ilk olarak Yüksel İnan & Nihat Demirli'den öğrendim :wink:
Tartışma yaratmak istemem, fakat,
1- Benzerliğin nerde olduğunu karar veren Nihat Demirli & Yüksel İnan değil, onların iddiası bu(i, j) değildir gibi sanki.

2- Haklı haksız bir çok saldırıya mağruz kalmış bir insan olan sayın Memik Yanık'ın başkalarına suçlar şekilde 'Kapitalist' demesi şık olmadı bence.

Herneyse, eski günler geldi aklıma, bi arkadaşın tabiriyle "DelphiTurkiye'de yatıp DelphiTurkiye'de kalktığım" günler... :roll: Sohbet ettiğim, yorum yaptığım günler... Özledim sizi be :D

(Off topic için özür...)
dost
Üye
Mesajlar: 104
Kayıt: 08 Oca 2004 11:33

Mesaj gönderen dost »

Merhaba,

Kod: Tümünü seç

function TForm1.TRecordCount(Q: TIBQuery): Integer;
begin
  Q.Close;
  Q.SQL.Text := 'SELECT COUNT(*) AS n FROM TBL_KIMLIK';
  Q.Open;
  Result := Q.Fields[0].Value;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Label2.Caption := IntToStr(TRecordCount(Form1.IBQuery1));
end;
İlgilenen herkese çok teşekkür ederim.
sayenizde yukarıdaki şekilde çalıştırdım.
Cevapla