Önce durmumu anlatayım..
Şirketimizin kullandığı ERP programına ek modül olarak karlılık raporu hazırlıyoruz ve kayıtlı stoklarımız için giriş miktarı,giriş tutarı gibi hesaplanması gereken değerler için SQL Server da tuttuğumuz function larımız var, bunları sql cümlesinin içinden çağırarak değerleri buluyorum. Ama fifo lifo maliyet hesapları yapmamız isteniyor ve bunu hesaplayan stored procedure müz var. Bu procedure ü sql cümlemin içine yazarak çağıramıyorum. Arkadaşlardan birinin verdiği öneri şöyle,her şube ve stok için bu procedure ü çalıştırıp hesapladığı değeri alıyorum. bir temp tablosuna değeri yazıyorum. sonra sql cümlemde bu tablodan değeri okuyorum.
Tabii bu yöntem biraz uzun ve yavaş bir yöntem. Ben de kbmmemtable bileşenini kullanmayı düşündüm, componenti install ettim ama nasıl kullanacağımı bilemiyorum. Kullanan arkadaşlar anlatabilirse çok sevinirim.
memory table (kbmmemtable)
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.
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.
kbmmemtable hakkinda malumatim yok.
Fakat sorununuzla ilgili tavsiyem. SQL Server uzerinde bir stored procedure yazin. Bu procedure bahsettiginiz isi aynen SQL Server uzerinde yapsin. Soyle ki sira ile gerekli her sube ve stok icin diger procedure'u calistirip olusan degerleri gecici bir tabloya atsin. Ve bu gecici tablodan select isini yapin. Herseyin ser4ver tarafinda olmasi ile daha hizli calisacaktir. Hatta Sybase ASA bir select statemen icinden fonksiyon cagirmaya izin veriyor eger benzer bir imkan SQL server'da varsa bu yontemle tek bir select ile gecici tablo da kullanmadan isi halledebilirsiniz ve bundan daha yuksek bir performans ile de bu is olmaz kanaatindeyim.
Bu dedigimi soyle ornekliyeyim. Ornegin her sube ve stok icin bunlarin kodlarini SUBE_STOK diye bir tablodan ceken. FN_ISLEM isimli bir fonksiyona bunu godneren ve bu fonksiyondan gelen sonuclari da select eden bir cumleyi Sybase ASA'da soyle yazabiliriz.
Zannediyorum bu yapiyi SQL Server'da da kullanabilirsiniz.
Kolay gelsin...
Fakat sorununuzla ilgili tavsiyem. SQL Server uzerinde bir stored procedure yazin. Bu procedure bahsettiginiz isi aynen SQL Server uzerinde yapsin. Soyle ki sira ile gerekli her sube ve stok icin diger procedure'u calistirip olusan degerleri gecici bir tabloya atsin. Ve bu gecici tablodan select isini yapin. Herseyin ser4ver tarafinda olmasi ile daha hizli calisacaktir. Hatta Sybase ASA bir select statemen icinden fonksiyon cagirmaya izin veriyor eger benzer bir imkan SQL server'da varsa bu yontemle tek bir select ile gecici tablo da kullanmadan isi halledebilirsiniz ve bundan daha yuksek bir performans ile de bu is olmaz kanaatindeyim.
Bu dedigimi soyle ornekliyeyim. Ornegin her sube ve stok icin bunlarin kodlarini SUBE_STOK diye bir tablodan ceken. FN_ISLEM isimli bir fonksiyona bunu godneren ve bu fonksiyondan gelen sonuclari da select eden bir cumleyi Sybase ASA'da soyle yazabiliriz.
Kod: Tümünü seç
select SONUC=FN_ISLEM(SS.SUBE_KODU, SS.STOK_KODU)
from SUBE_STOK as SS
Kolay gelsin...
Merhaba,
yöntemle ilgili Fahrettin abi öneride bulunmuş ben de kbmMemTable ile ilgili birkaç şey söyleyim o zaman.
Bu bileşen direk TDataset sınıfı komutlarını destekler. Append, Insert, Delete vs. tüm komutları aynı bir Table ile çalışıyormuş gibi kullanabilirsiniz.
Ayrıca paketin içinde bir .zip dosyada yanlış hatırlamıyorsam demo.zip olması lazım, özelliklerini ve kullanımını gösteren bir örnek var.
Kolay gelsin.
yöntemle ilgili Fahrettin abi öneride bulunmuş ben de kbmMemTable ile ilgili birkaç şey söyleyim o zaman.
Bu bileşen direk TDataset sınıfı komutlarını destekler. Append, Insert, Delete vs. tüm komutları aynı bir Table ile çalışıyormuş gibi kullanabilirsiniz.
Ayrıca paketin içinde bir .zip dosyada yanlış hatırlamıyorsam demo.zip olması lazım, özelliklerini ve kullanımını gösteren bir örnek var.
Kolay gelsin.