firebird ile yapılmış projenin...

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
droxee
Üye
Mesajlar: 86
Kayıt: 15 May 2009 04:29

firebird ile yapılmış projenin...

Mesaj gönderen droxee »

s.a.
firebird ile yapmış olduğum projede exe ye tıkladıktan 7-8 sn sonra ana formumun gelmesi normal midir? kodlarımı da paylaşayım

Kod: Tümünü seç

procedure Tfrm_ana.FormShow(Sender: TObject);
var
j,k:integer;
begin
DModule.IBDbase.DatabaseName:=Extractfilepath(Application.Exename)+'\DATA.FDB';
DModule.IBDbase.Connected:=True;
DModule.IBDataSet_Birim.Active:=True;
DModule.IBDataSet_Detay.Active:=True;
DModule.IBDataSet_Durum.Active:=True;
DModule.IBDataSet_Envanter.Active:=True;
DModule.IBDataSet_Kull.Active:=True;
DModule.IBDataSet_Marka.Active:=True;
DModule.IBDataSet_Model.Active:=True;
DModule.IBDataSet_Tip.Active:=True;
DModule.IBDataSet_Tur.Active:=True;
DModule.IBDataSet_Urun.Active:=True;
DModule.IBDataSet_Bina.Active:=True;
DModule.IBDataSet_Oda.Active:=True;
DModule.IBDataSet_Birlik.Active:=True;
DModule.IBDataSet_ED.Active:=True;
DModule.IBDataSet_Senet.Active:=True;
DModule.IBDataSet_Islem.Active:=True;
DModule.IBDataSet_Baglanti.Active:=True;

DModule.IBQuery.Close;
DModule.IBQuery.SQL.Clear;
DModule.IBQuery.SQL.Add('SELECT TIP_KOD,TIP_AD FROM TBL_TIP ORDER BY TIP_KOD');
DModule.IBQuery.Open;
for j:=1 to DModule.IBQuery.RecordCount do
begin
DModule.IBQuery.Close;
DModule.IBQuery.SQL.Clear;
DModule.IBQuery.SQL.Add('SELECT TIP_KOD,TIP_AD FROM TBL_TIP where tip_kod='''+inttostr(j)+''' ORDER BY TIP_KOD');
DModule.IBQuery.Open;
RzListBox1.Items.Add(DModule.IBQuery.Fields.Fields[1].Value);
DModule.IBQuery.Close;
DModule.IBQuery.SQL.Clear;
DModule.IBQuery.SQL.Add('SELECT COUNT(TIP_KOD) FROM TBL_ENVANTER WHERE TIP_KOD='''+inttostr(j)+'''');
DModule.IBQuery.Open;
RzListBox2.Items.Add(DModule.IBQuery.Fields.Fields[0].Value);
end;
DModule.IBQuery.Close;
DModule.IBQuery.SQL.Clear;
DModule.IBQuery.SQL.Add('SELECT BARKOD_NO FROM TBL_ENVANTER');
DModule.IBQuery.Open;
LEDDISPLAY.Caption:=INTTOSTR(DModule.IBQuery.RecordCount);
///////////////********************
DModule.IBQuery.Close;
DModule.IBQuery.SQL.Clear;
DModule.IBQuery.SQL.Add('SELECT TUR_KOD,TUR_AD FROM TBL_TUR ORDER BY TUR_KOD');
DModule.IBQuery.Open;
for k:=1 to DModule.IBQuery.RecordCount do
begin
DModule.IBQuery.Close;
DModule.IBQuery.SQL.Clear;
DModule.IBQuery.SQL.Add('SELECT TUR_KOD,TUR_AD FROM TBL_TUR where TUR_kod='''+inttostr(k)+''' ORDER BY TUR_KOD');
DModule.IBQuery.Open;
RzListBox4.Items.Add(DModule.IBQuery.Fields.Fields[1].Value);
DModule.IBQuery.Close;
DModule.IBQuery.SQL.Clear;
DModule.IBQuery.SQL.Add('SELECT COUNT(TUR_KOD) FROM TBL_URUN WHERE TUR_KOD='''+inttostr(k)+'''');
DModule.IBQuery.Open;
RzListBox3.Items.Add(DModule.IBQuery.Fields.Fields[0].Value);
end;
DModule.IBQuery.Close;
DModule.IBQuery.SQL.Clear;
DModule.IBQuery.SQL.Add('SELECT URUN_KOD FROM TBL_URUN');
DModule.IBQuery.Open;
RzLEDDisplay2.Caption:=INTTOSTR(DModule.IBQuery.RecordCount);
///////////////////////*********************
DModule.IBQuery.Close;
DModule.IBQuery.SQL.Clear;
DModule.IBQuery.SQL.Add('SELECT KULL_KOD,KULL_AD FROM TBL_KULL ORDER BY KULL_KOD');
DModule.IBQuery.Open;
for k:=1 to DModule.IBQuery.RecordCount do
begin
DModule.IBQuery.Close;
DModule.IBQuery.SQL.Clear;
DModule.IBQuery.SQL.Add('SELECT KULL_KOD,KULL_AD FROM TBL_KULL where KULL_KOD='''+inttostr(k)+''' ORDER BY KULL_KOD');
DModule.IBQuery.Open;
RzListBox6.Items.Add(DModule.IBQuery.Fields.Fields[1].Value);
DModule.IBQuery.Close;
DModule.IBQuery.SQL.Clear;
DModule.IBQuery.SQL.Add('SELECT COUNT(KULL_KOD) FROM TBL_ENVANTER WHERE KULL_KOD='''+inttostr(k)+'''AND TIP_KOD=2');
DModule.IBQuery.Open;
RzListBox5.Items.Add(DModule.IBQuery.Fields.Fields[0].Value);
end;
DModule.IBQuery.Close;
DModule.IBQuery.SQL.Clear;
DModule.IBQuery.SQL.Add('SELECT COUNT(BARKOD_NO) FROM TBL_ENVANTER WHERE TIP_KOD=2');
DModule.IBQuery.Open;
RzLEDDisplay1.Caption:=INTTOSTR(DModule.IBQuery.Fields.Fields[0].Value);
end;
Kullanıcı avatarı
Battosai
Üye
Mesajlar: 1316
Kayıt: 01 Eki 2007 12:02
Konum: Ankara

Re: firebird ile yapılmış projenin...

Mesaj gönderen Battosai »

merhaba açılma hızı birçok nedene bağlıdır. DB uygulamalarında temel prensip tabloların gerektiği zaman aktif edilmesi ve gerektiği kadar data çekilmesidir. Gördüğüm kadar ile siz bir çok tabloyu aktif etmişsiniz. Bunlardan sadece gerekli olanları aktif yapmanız hız açısından işe yaracaktır. Eğer bu tablolardaki kayıt sayısı az ise çok fark etmeyecektir. Kayıt sayısı çok tablolar olan tablolar için Query kullanın ve arama esaslı listeleme yaptırın.
Kullanıcı avatarı
droxee
Üye
Mesajlar: 86
Kayıt: 15 May 2009 04:29

Re: firebird ile yapılmış projenin...

Mesaj gönderen droxee »

kayıt sayım envanter tablomda 1000 civarı diğer tablolarım max 100 kayıt formları kapatırkende datasetleri close yapsam fark eder mi?
Cevapla