Konuyu biraz araştırdım fakat sonuca ulaşamadım, yapmak istediğim sql sorgusunu kısaca anlatayım.
3 adet tablom var diyelim,
1. Tablo STOK olsun alanlarıda KOD, ADI olsun
2. Tablo DEPO olsun alanlarıda KOD, STOKKODU, ADI olsun
3. Tablo STOKHAREKET olsun alanlarıda KOD, STOKKODU, DEPOKODU, GIREN, CIKAN olsun
normalde 2 query ile
Kod: Tümünü seç
select KOD, ADI from STOK
diyerek tüm stokları çekip gride atıyorum,
altınada başka bir gide bağlanacak sql kodunu yazıyorum,
Kod: Tümünü seç
select KOD,STOKKODU,DEPOKODU,GIREN,CIKAN from STOKHAREKET WHERE STOKKODU=:KOD AND DEPOKODU=:DKODU
deyip, bu query'ide stok query sine datasource den bağlayınca seçili STOK'a ve DEPOYA ait giren çıkan işlemleri görebiliyorum.
Yapmak istediğim ise şu;
Öyle bir sql kodu yazmalıyım ki, stokları çekerken, kaç adet depo varsa bunları döngüye sokup stokhareket tablosundan da sum(giren-cikan) as kalan şeklinde dışarıya çıktı versin.
Kısaca görmek istediğim tablo şu,
STOK_ADI DEPO1KALAN DEPO2KALAN DEPO3KALAN .....
Ürün1 15 0 7 .....
gibi, fakat önemli nokta şudur, yeni bir depo ekleme olasılığı her an var. Eklendiği zaman ise ben koda müdehale etmiyeyim otomatik eklesin querye.
Bu arada bu işlem dolaylı yollardan elbetteki çözülebiliyor, formun oncreate inde depoları saydırıp ona göre bir sql kodu yazılabilir vs.vs. benim öğrenmek istediğim view ile veya tek bir query de bu işlem yapılabilirmi?