Yapmak istediğiniz işle ilgili doğru bileşeni bulmak için burayı kullanabilirsiniz. Sadece bulmak için, diğer sorular Programlama forumuna lütfen.
Forum kuralları
Bu forum sadece yapacağınız işle alakalı doğru bileşeni bulmak içindir. Şöyle bir şey yapmam lazım, hangi bileşeni kullanıyım diyorsanız, doğru yerdesiniz.
MS SQL SERVER veritabanı kullanarak yaptığım uygulamada... SQL Server ManagementStudio içinde query çalıştırdığım zaman hız değerleri SQL Server parse and compile time:
CPU time = 0 ms, elapsed time = 0 ms.
(3387 row(s) affected)
SQL Server Execution Times:
CPU time = 16 ms, elapsed time = 180 ms.
SQL Server parse and compile time:
CPU time = 0 ms, elapsed time = 0 ms.
Fakat aynı query delphide firedac ile çalıştırınca 10s de kayıtları getiriyor..
Firedac setinin query componentinde nasıl bir ayar yaparsak SQL Server ManagementStudio hızı yakalayabililiriz.
Select *
From
MUHASEBE.FISMASTER Left Outer Join
MUHASEBE.CARIKODLAR On MUHASEBE.FISMASTER.CARIKOD=MUHASEBE.CARIKODLAR.CARIKOD AND MUHASEBE.CARIKODLAR.SUBEKODU=0
where (MUHASEBE.FISMASTER.YIL=:PYIL)
AND
(MUHASEBE.FISMASTER.FISTURU=:PFISTURU)
ORDER BY
MUHASEBE.FISMASTER.FISNO
Eğer veriyi devexpress gibi bir grid üzerine yüklüyorsanız, auto width/height, sum gibi özellikler performans kaybına neden olur. Bunun için gridlerin render işlemini kayıtlar yüklendikren sonra yapmakta yarar var.
Maalesef devexpress cxgrid kullanıyorum kaliteli diye ama filter özelliğinin güzelliklerinden dolayı fakat programı çok şişiriyor.. Grid modu güzel fakat onda da kayıtlar full yüklenmediği için filter mod sorunu var...Başka bir grid araştıyorum bakalım bulabilecekmiyim...Tavsiye ettiğiniz bir grid varmı filter mod özelliği güzel ve pratik çalışan...ve colonları kolayca son kullanıcının gösterip gizleyebileceği...
devexpress'de remote filter ver mı yok mu emin değilim ancak parçalı yükleme desteği olması lazım. Yani sorguyu grid oluşturuyor ve sonraki sayfa demeden dataları yüklemiyor. Tabi bu durumda sum özelliğini kullanamıyordunuz (belki şimdi yapılmıştır)
Dediğim gibi grid'i datasourceını boş bırakın. Kayıtlar yüklendikten sonra atama yapın, fark edecektir. Bunun başka bir yolu daha vardı ancak kullanmayalı yıllar oldu unutmuşum.
Devexpress güzel bir bileşen seti, bu özelliklere kullanıcınız alıştıysa bırakmanız mümkün değil.
Sıradan her programcı bilgisayarın anlayabileceği kodlar yazabilir.
Sadece iyi programcılar insanların da anlayabileceği kodlar yazarlar.
Martin Fowler (http://martinfowler.com/)
3-4bin kayıt hiç bir şey değil. Bu sorunun devexpress'in Grid'i ile doğrudan alakalı olduğunu sanmıyorum. Eğer master/detail şeklinde bağlı ya da datasource/dataset'in afterscroll gibi bir event'inde yazılı kodlarınız varsa cxGrid'in filtreleri doldurmak vs gibi (DevExpress'in dolaylı bir etkisinden dolayı) nedenler ile Query'nin tüm kayıtlarını teker teker gezmesinden kaynaklı bir sorun yaşıyor olabilirsiniz.
Öncelikle bunu kontrol etmenizi tavsiye ederim. Boş bir form'un üzerinde sadece cxGrid ve bağlı olduğunu bağlantı nesnelerinin olduğu yeni bir projede test etmenizi tavsiye ederim.