Genel Bilgiler
İstatistikler
→ Kullandığı Nesneler (0)
Bağımlılık bulunamadı
← Kullanan Nesneler (1)
→ Bağımlılık Ağacı
Bağımlılık bulunamadı
← Etki Ağacı
- GENEL_EKSIK_SIPARISUSES_VIEW
Tam SQL Kodu
CREATE VIEW dbo.[00001_SATIS_ADETLERI]
AS
SELECT QQ.STOCKREF, SUM(QQ.A2022) AS ADET2022, SUM(QQ.A2021) AS ADET2021
FROM ((SELECT STOCKREF, SUM(AMOUNT) AS A2022, 0 AS A2021
FROM [UNIVERSALDB].[dbo].LG_011_08_STLINE
WHERE CANCELLED = 0 AND TRCODE = 8 AND LINETYPE = 0
GROUP BY STOCKREF)
UNION ALL
(SELECT STOCKREF, 0 AS A2022, SUM(AMOUNT) AS A2021
FROM [UNIVERSALDB].[dbo].LG_011_07_STLINE
WHERE CANCELLED = 0 AND TRCODE = 8 AND LINETYPE = 0
GROUP BY STOCKREF)) QQ
GROUP BY QQ.STOCKREF
Kodun Çalışma Mantığı (Adım Adım)
Analiz Ekle/DüzenleSELECT STOCKREF, SUM(AMOUNT) AS A2022, 0 AS A2021
FROM [UNIVERSALDB].[dbo].LG_011_08_STLINE
WHERE CANCELLED = 0 AND TRCODE = 8 AND LINETYPE = 0
GROUP BY STOCKREF
Bu adımda yapılan işlem:
-
LG_011_08_STLINEtablosu taranıyor. -
Sadece şu satırlar dahil ediliyor:
-
CANCELLED = 0→ iptal olmayan satırlar -
TRCODE = 8→ Toptan Satış Faturası satırları -
LINETYPE = 0→ malzeme (stok) satırı (promosyon/indirim/hizmet değil)
-
-
Kalan satırlar
STOCKREF’e göre gruplanıyor veAMOUNTtoplanıyor. -
Bu toplam bu adımda A2022 alanına yazılıyor; diğer dönem alanı 0 basılıyor.
Senin örneğinle: “LG_011_08_STLINE = (mesela) 2025 dönemi” gibi düşünürsen, bu adım 2025 satış miktarlarını STOCKREF bazında toplar.
SELECT STOCKREF, 0 AS A2022, SUM(AMOUNT) AS A2021
FROM [UNIVERSALDB].[dbo].LG_011_07_STLINE
WHERE CANCELLED = 0 AND TRCODE = 8 AND LINETYPE = 0
GROUP BY STOCKREF
Bu adımda da aynı filtre ve aynı toplama var, sadece:
-
Toplam bu kez A2021 alanına yazılıyor,
-
A2022 alanı 0 basılıyor.
Senin örneğinle: “LG_011_07_STLINE = (mesela) 2024 dönemi” gibi düşünürsen, bu adım 2024 satış miktarlarını STOCKREF bazında toplar.
...
UNION ALL
...
UNION ALL burada şunu yapıyor:
-
-
adımın sonuçlarını getiriyor (A2022 dolu, A2021=0)
-
-
-
adımın sonuçlarını bunun altına ekliyor (A2022=0, A2021 dolu)
-
Bu aşamada aynı STOCKREF iki satır olarak bulunabilir (biri 08’den, biri 07’den).
SELECT QQ.STOCKREF,
SUM(QQ.A2022) AS ADET2022,
SUM(QQ.A2021) AS ADET2021
FROM ( ... ) QQ
GROUP BY QQ.STOCKREF
Burada olan şu:
-
QQiçindeki satırlar tekrarSTOCKREF’e göre gruplanıyor. -
Aynı stok için:
-
A2022 kolonundaki değerler toplanıp ADET2022
-
A2021 kolonundaki değerler toplanıp ADET2021
olarak tek satıra indiriliyor.
-
✅ Net sonuç: Her STOCKREF için iki dönemin toptan satış miktarı yan yana.