Satış Analizi Panosu

Satış Analizi panosu Netsis Erp entegrasyonu ile gelen satış verileri kullanılarak hazırlanmış olup satış performansını izlemek, analiz etmek ve stratejik kararlar almak için tasarlanmıştır. Farklı satış verilerini görsel olarak bir araya getirerek hızlı ve etkili bir şekilde kararlar alınmasını sağlar.


Genel Durum Analizi

Genel Durum Analizi sayfasında üst tarafta Toplam Tutar, İndirim, İade Tutar, Müşteri Sayısı KPI değerleri mini grafikler eklenerek gösterilmiştir. Sol tarafta Tarih filtresi, Şube, Depo Adı, Belge Türü, Belge Tipi gibi filtreler kullanılmıştır. Bu filtreler ile analiz yapılmak istenen veri seti daraltılarak panoda farklı grafikler üzerinde bu sonuçlar izlenebilmektedir. Ortadaki çizgi grafiğinde satışların zamana bağlı değişimi gösterilmiştir. Sağ taraftaki tabloda ilk 10 Malzeme ile en çok satan ürünlerin sıralaması yer almaktadır.

Rapor sayfasının yüksekliği arttırılarak sayfa aşağıya doğru uzatılmıştır. Alt tarafta çizgi grafik üzerinde Cari Bazlı İndirim/Tutar ilişkisi gösterilmiştir. Hangi müşteride en fazla indirim yapıldığı ve bunun karlılığı nasıl etkilediği analiz edilebilir. Sağ taraftaki tablo üzerinde ise ilk 10 cari bilgisi gösterilmiştir.


Karşılaştırma Analizi 

Karşılaştırma analizi sayfası, iki farklı grubu seçerek (örneğin iki farklı şube, malzeme, tarih, plasiyer adı) bu grupların satış performanslarını zamana bağlı karşılaştırmayı sağlar. Grup 1 ve Grup 2 filtrelerinden yapılan seçimler ile satışların zamana bağlı değişimini gösteren çizgi grafik üzerinde karşılaştırma yapılabilmektedir. 



Rapor Sorgusu

Rapor sorgusu SQL veri tabanında ilgili şirket database altında tablo olarak oluşturulduktan sonra içeri alınan rapor şablonunun veri modeli aşağıdaki ekrandan düzenlenmelidir.

 Satış Analizi rapor sorgusu için tıklayınız.

SELECT
S.STHAR_TARIH AS TARIH
,F.FATIRS_NO AS FATURA_NO
,S.STHAR_ACIKLAMA AS CARI_HESAP_KOD
,S.STHAR_CARIKOD AS CARI_HESAP_KOD2
,$(vFirmDbName).dbo.TRK(C.CARI_ISIM) AS CARI_HESAP_UNVANI
,$(vFirmDbName).dbo.TRK(D.CARI_ISIM) AS CARI_HESAP_UNVANI2
,$(vFirmDbName).dbo.TRK(C.CARI_IL) AS CH_SEHIR
,$(vFirmDbName).dbo.TRK(D.CARI_IL) AS CH_SEHIR2
,$(vFirmDbName).dbo.TRK(C.CARI_ILCE) AS CH_ILCE
,$(vFirmDbName).dbo.TRK(D.CARI_ILCE) AS CH_ILCE2
,CAIL.SEHIRKODU
,CAIL2.SEHIRKODU AS SEHIRKODU2
,CAULKE.ULKEADI
,CAULKE2.ULKEADI AS ULKEADI2
,X.DURUM
,X.ZARFID
,X.ZARF_ACIKLAMA
,S.STHAR_FTIRSIP AS BELGE_TURU
,F.TIPI
,S.STOK_KODU
,$(vFirmDbName).dbo.TRK(SB.STOK_ADI) AS STOK_ADI
,S.STHAR_GCMIK
,S.STHAR_GCMIK2
,S.EXPORTMIK
,S.STHAR_NF
,S.STHAR_BF
,S.STHAR_KDV
,SB.OLCU_BR1
,SB.OLCU_BR2
,SB.OLCU_BR3
,SB.PAY_1
,SB.PAYDA_1
,SB.PAY2
,SB.PAYDA2
,S.DEPO_KODU
,$(vFirmDbName).dbo.TRK(DP.DEPO_ISMI) AS DEPO_ADI
,S.STHAR_HTUR
,s.STHAR_DOVTIP
,KUR.ISIM AS KUR_ISIM
,S.PROMASYON_KODU
,S.STHAR_DOVFIAT
,S.STHAR_KOD1 AS OZELKOD1
,S.STHAR_KOD2 AS OZELKOD2
,S.STHAR_SIPNUM AS SIPARIS_NO
,S.STHAR_SIP_TURU AS SIPARIS_TURU
,S.PLASIYER_KODU
,$(vFirmDbName).dbo.TRK(P.PLASIYER_ACIKLAMA) AS PLASIYER_ADI
,S.IRSALIYE_NO
,S.IRSALIYE_TARIH AS IRSALIYE_TARIHI
,S.KOSULKODU
,$(vFirmDbName).dbo.TRK(KOS.ACIKLAMA) AS KOSUL_ADI
,S.OLCUBR
,S.VADE_TARIHI
,S.SUBE_KODU
,$(vFirmDbName).dbo.TRK(SUBE.UNVAN) AS SUBE_ADI
,S.PROJE_KODU
,$(vFirmDbName).dbo.TRK(PRJ.PROJE_ACIKLAMA) AS PROJE_ADI
,C.GRUP_KODU AS CARI_GRUP_KODU
,$(vFirmDbName).dbo.TRK(CG.GRUP_ISIM) AS CARI_GRUP_ISIM
,C.RAPOR_KODU1
,$(vFirmDbName).dbo.TRK(C1.GRUP_ISIM) AS CARI_KOD1_ISIM
,C.RAPOR_KODU2
,$(vFirmDbName).dbo.TRK(C2.GRUP_ISIM) AS CARI_KOD2_ISIM
,C.RAPOR_KODU3
,$(vFirmDbName).dbo.TRK(C3.GRUP_ISIM) AS CARI_KOD3_ISIM
,C.RAPOR_KODU4
,$(vFirmDbName).dbo.TRK(C4.GRUP_ISIM) AS CARI_KOD4_ISIM
,C.RAPOR_KODU5
,$(vFirmDbName).dbo.TRK(C5.GRUP_ISIM) AS CARI_KOD5_ISIM
,SB.GRUP_KODU AS STOK_GRUP_KODU
,$(vFirmDbName).dbo.TRK(SG.GRUP_ISIM) AS STOK_GRUP_ISIM
,SB.KOD_1
,$(vFirmDbName).dbo.TRK(S1.GRUP_ISIM) AS STOK_KOD1_ISIM
,SB.KOD_2
,$(vFirmDbName).dbo.TRK(S2.GRUP_ISIM) AS STOK_KOD2_ISIM
,SB.KOD_3
,$(vFirmDbName).dbo.TRK(S3.GRUP_ISIM) AS STOK_KOD3_ISIM
,SB.KOD_4
,$(vFirmDbName).dbo.TRK(S4.GRUP_ISIM) AS STOK_KOD4_ISIM
,SB.KOD_5
,$(vFirmDbName).dbo.TRK(S5.GRUP_ISIM) AS STOK_KOD5_ISIM
,F.ACIKLAMA
,F.KOD1
,$(vFirmDbName).dbo.TRK(OK1.ACIKLAMA) AS OZELKOD1_ACIKLAMASI
,F.KOD2
,OK2.ACIKLAMA AS OZELKOD2_ACIKLAMASI
,S.STHAR_CARIKOD AS STHAR_CARIKOD
,F.CARI_KOD2 AS CARI_KOD2
,S.YAPKOD AS YAPKOD
,ESN.YAPACIK AS YAPACIK
,ESN.GEN_ACIKLAMA AS GEN_ACIKLAMA
,ESN.GEN_ACIKLAMA2 AS GEN_ACIKLAMA2
,S.FIRMA_DOVTIP AS FIRMA_DOVTIP
,S.FIRMA_DOVTUT AS FIRMA_DOVTUT
FROM $(vFirmDbName).dbo.TBLSTHAR S(NOLOCK)
LEFT JOIN $(vFirmDbName).dbo.TBLCASABIT C(NOLOCK) ON C.CARI_KOD = S.STHAR_ACIKLAMA
LEFT JOIN $(vFirmDbName).dbo.TBLCASABIT D(NOLOCK) ON D.CARI_KOD = S.STHAR_CARIKOD
LEFT JOIN $(vFirmDbName).dbo.TBLSTSABIT SB(NOLOCK) ON SB.STOK_KODU = S.STOK_KODU
LEFT JOIN $(vFirmDbName).dbo.TBLCARIPLASIYER P(NOLOCK) ON P.PLASIYER_KODU = S.PLASIYER_KODU
LEFT JOIN $(vFirmDbName).dbo.TBLPROJE PRJ(NOLOCK) ON PRJ.PROJE_KODU = S.PROJE_KODU
LEFT JOIN $(vFirmDbName).dbo.TBLSTOKDP DP(NOLOCK) ON DP.DEPO_KODU = S.DEPO_KODU
LEFT JOIN $(vFirmDbName).dbo.TBLSUBELER SUBE(NOLOCK) ON SUBE.SUBE_KODU = S.SUBE_KODU
LEFT JOIN $(vFirmDbName).dbo.TBLKOSULMAS KOS(NOLOCK) ON KOS.KOSUL_KOD = S.KOSULKODU
LEFT JOIN $(vFirmDbName).dbo.TBLFATUIRS F(NOLOCK) ON F.FATIRS_NO = S.FISNO AND S.SUBE_KODU=F.SUBE_KODU AND F.FTIRSIP = S.STHAR_FTIRSIP AND S.STHAR_ACIKLAMA=F.CARI_KODU
LEFT OUTER JOIN (SELECT GIB_FATIRS_NO,FATIRS_NO,Z.DURUM,Z.ZARFID,E.SUBE_KODU,E.FTIRSIP,E.CARI_KODU,Z.ACIKLAMA as ZARF_ACIKLAMA FROM $(vFirmDbName).dbo.TBLEFATURA E INNER JOIN $(vFirmDbName).dbo.TBLEFATZARF Z ON E.ZARFID=Z.ZARFID AND E.SUBE_KODU=Z.SUBE_KODU AND E.CARI_KODU=Z.CARI_KODU)X ON S.FISNO=X.FATIRS_NO
AND S.SUBE_KODU=X.SUBE_KODU AND S.STHAR_ACIKLAMA=X.CARI_KODU AND S.STHAR_FTIRSIP=X.FTIRSIP
LEFT JOIN $(vFirmDbName).dbo.TBLISLETMELER ISL(NOLOCK) ON ISL.ISLETME_KODU = F.ISLETME_KODU
LEFT JOIN $(vFirmDbName).dbo.TBLCAGRUP CG(NOLOCK) ON CG.GRUP_KOD = C.GRUP_KODU
LEFT JOIN $(vFirmDbName).dbo.TBLCARIKOD1 C1(NOLOCK) ON C1.GRUP_KOD = C.RAPOR_KODU1
LEFT JOIN $(vFirmDbName).dbo.TBLCARIKOD2 C2(NOLOCK) ON C2.GRUP_KOD = C.RAPOR_KODU2
LEFT JOIN $(vFirmDbName).dbo.TBLCARIKOD3 C3(NOLOCK) ON C3.GRUP_KOD = C.RAPOR_KODU3
LEFT JOIN $(vFirmDbName).dbo.TBLCARIKOD4 C4(NOLOCK) ON C4.GRUP_KOD = C.RAPOR_KODU4
LEFT JOIN $(vFirmDbName).dbo.TBLCARIKOD5 C5(NOLOCK) ON C5.GRUP_KOD = C.RAPOR_KODU5
LEFT JOIN $(vFirmDbName).dbo.TBLSTGRUP SG(NOLOCK) ON SG.GRUP_KOD = SB.GRUP_KODU
LEFT JOIN $(vFirmDbName).dbo.TBLSTOKKOD1 S1(NOLOCK) ON S1.GRUP_KOD = SB.KOD_1
LEFT JOIN $(vFirmDbName).dbo.TBLSTOKKOD2 S2(NOLOCK) ON S2.GRUP_KOD = SB.KOD_2
LEFT JOIN $(vFirmDbName).dbo.TBLSTOKKOD3 S3(NOLOCK) ON S3.GRUP_KOD = SB.KOD_3
LEFT JOIN $(vFirmDbName).dbo.TBLSTOKKOD4 S4(NOLOCK) ON S4.GRUP_KOD = SB.KOD_4
LEFT JOIN $(vFirmDbName).dbo.TBLSTOKKOD5 S5(NOLOCK) ON S5.GRUP_KOD = SB.KOD_5
LEFT JOIN $(vFirmDbName).dbo.TBLOZELKOD1 OK1(NOLOCK) ON OK1.OZELKOD = F.KOD1
LEFT JOIN $(vFirmDbName).dbo.TBLOZELKOD2 OK2(NOLOCK) ON OK2.OZELKOD = F.KOD2
LEFT JOIN $(vMasterDbName).[dbo].SEHIRSABIT CAIL(NOLOCK) ON CAIL.SEHIRADI=C.CARI_IL AND C.ULKE_KODU=CAIL.ULKEKODU collate database_default
LEFT JOIN $(vMasterDbName).[dbo].SEHIRSABIT CAIL2(NOLOCK) ON CAIL2.SEHIRADI=D.CARI_IL AND D.ULKE_KODU=CAIL2.ULKEKODU collate database_default
LEFT JOIN $(vMasterDbName).[dbo].ULKESABIT CAULKE(NOLOCK) ON CAULKE.ULKEKODU=C.ULKE_KODU collate database_default
LEFT JOIN $(vMasterDbName).[dbo].ULKESABIT CAULKE2(NOLOCK) ON CAULKE2.ULKEKODU=D.ULKE_KODU collate database_default
LEFT JOIN $(vMasterDbName).[dbo].KUR (NOLOCK) ON KUR.SIRA=S.STHAR_DOVTIP
LEFT JOIN $(vFirmDbName).dbo.TBLESNYAPMAS ESN(NOLOCK) ON ESN.YAPKOD=S.YAPKOD
WHERE (
(F.FTIRSIP IN('2','4') AND F.TIPI='4')
OR
(F.FTIRSIP IN('1','3') AND F.TIPI<>'4')
)




Rapor Şablonu

Rapor şablonu yetkilendirme/panolar altından aksiyonlar içerisinden dışarı aktarılarak alınan örnek Satış Analizine ait rapor şablonudur. Bu rapor şablonu aksiyonlar altından içeri aktarılarak kullanılabilir.

Örnek Satış Analizi.nav