arkadaşlar autocreate formlar formx.show la çağrılmasalar bile üzerindeki datacontrollerin bağlı olduğu datasetlerde değişiklik olurken o formlarda arka tarafta datacontroller işlem görüyormu eğer öyleyse program hakikaten yavaşlar diye düşünüyorum.sorum tam anlaşılsın diye örnek vereyim..
form1:ana form;
form2:stoklistesi;
form3:fatura_stoklistesi;
formların hepside autocreate olsun form2 ile form 3 stok_qry ye bağlı olsun ve üzerlerinde dbgrid olsun form2.show la formu görünür yapıp üzerindeki dbgridde satırlar arasında gezindiğimizde arka tarafta form3 deki dbgridde aynı şekilde satırlar arasında gezinmişmi oluyor..
eğer öyle ise lazım olan formu application.createform ile çağırmakmı hızı ve hafıza kullanımını iyileştirir yoksa tüm stok listelerini bir formda tutup stok listesinin hangi modülden çağrıldığını bir değişkenle yakalayıp..liste formu üzerinde modüle göre yaptığımız işlemleri if...then lerle kontrol etsek dahamı iyi olur hafıza ve hız açısından..
fikirleriniz için şimdiden sağolun arkadaşlar.
hafıza ve veritabanı hızı hakkında..
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Serkan Demişki:
Bunun iiçin şunu tavsiye ederim.Delphide sadece database kontrolleri için oluşturulmuş olan bir form çeşidi var.DataModule.Bundan kullanmanı tavsiye ederim.Bütün database kontrollerini bunun üzerine yerleştirirsin buradan erişirsin.Datamodulu autocreate yaparsın.Dolayısıyla yukarıda ki mantığın aynısını hafızayı yormadan gerçekleştirmiş olursun.Mantık gayet basit.
Adoquery1.Post yada Append yerine
DataModule1.Adoquery1.Append yada post dersin.
Kolay gelsin.
Evet aynen öyle oluyor.Belki bir kaç form autocreate olursa sorun olmaz ama bu sayı artınca sorun olur.Ayrıca düşünkü windowsta çalışan diğer programlarda aynı mantıkla çalışırsa o zaman vay windowsun haline.formların hepside autocreate olsun form2 ile form 3 stok_qry ye bağlı olsun ve üzerlerinde dbgrid olsun form2.show la formu görünür yapıp üzerindeki dbgridde satırlar arasında gezindiğimizde arka tarafta form3 deki dbgridde aynı şekilde satırlar arasında gezinmişmi oluyor..
Bunun iiçin şunu tavsiye ederim.Delphide sadece database kontrolleri için oluşturulmuş olan bir form çeşidi var.DataModule.Bundan kullanmanı tavsiye ederim.Bütün database kontrollerini bunun üzerine yerleştirirsin buradan erişirsin.Datamodulu autocreate yaparsın.Dolayısıyla yukarıda ki mantığın aynısını hafızayı yormadan gerçekleştirmiş olursun.Mantık gayet basit.
Adoquery1.Post yada Append yerine
DataModule1.Adoquery1.Append yada post dersin.
Kolay gelsin.