Stok Bakiye Ve satis Raporu
Nereden Yazdırıldığı: ERP Nedir? | Türkiye'nin ERP Forum Platformu
Kategori: ERP Temel Paketler
Forum Adı: ERP Rapor Modülü
Forum Tanımlaması: Rapor Modülü İle İlgili Bilgiler ve Sorular İçin...
URL: http://www.erpne.org/forum_posts.asp?TID=3250
Tarih: 21 Kasım 2024 Saat 14:09 Program Versiyonu: Web Wiz Forums 11.10 - http://www.webwizforums.com
Konu: Stok Bakiye Ve satis Raporu
Mesajı Yazan: sessizkule
Konu: Stok Bakiye Ve satis Raporu
Mesaj Tarihi: 03 Ekim 2012 Saat 18:22
Merhabalar,
Daha önce verildiyse bulamadim, kusura bakmayin.
Rapor olarak
tarih ve cari kod kisit verip
STOK KODU
STOK ADI
MERKEZ SATIS MIKTARI
SUBE1 SATIS MIKTARI
SUBE2 SATIS MIKTARI
SUBE3 SATIS MIKTARI
SUBE4 SATIS MIKTARI
SUBE5 SATIS MIKTARI
TOPLAM SATIS MIKTARI
TOPLAM BAKIYE (subeler dahil)
alanlarini almak istiyorum
Yardimci olabilirseniz sevinirim.
|
Cevaplar:
Mesajı Yazan: bybarone
Mesaj Tarihi: 04 Ekim 2012 Saat 10:37
CREATE VIEW STOKSUBESATIS
AS
SELECT
SH.STOK_KODU,
ST.STOK_ISMI,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='0' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END)AS MERKEZ_SATIS_MIKTARI,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='1' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END)AS SUBE1_SATIS_MIKTARI,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='2' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END)AS SUBE2_SATIS_MIKTARI,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='3' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END)AS SUBE3_SATIS_MIKTARI,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='4' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END)AS SUBE4_SATIS_MIKTARI,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='5' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END)AS SUBE5_SATIS_MIKTARI,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END)AS TOPLAM_SATIS_MIKTAR,
SUM(CASE WHEN SH.STHAR_GCKOD='G' THEN SH.STHAR_GCMIK ELSE -SH.STHAR_GCMIK END)AS TOPLAM_BAKIYE,
FROM TBLSTHAR SH
LEFT OUTER JOIN TBLSTSABIT ST ON(SH.STOK_KODU=ST.STOK_KODU)
View'i olusturun ve rapor modülünden dizayn edin...
------------- Iyi çalismalar.
Barancan GENÇ
barancan.genc@hotmail.com
|
Mesajı Yazan: sessizkule
Mesaj Tarihi: 04 Ekim 2012 Saat 11:01
Sayin bybarone,
Msg 156, Level 15, State 1, Procedure STOKSUBESATIS, Line 14
Incorrect syntax near the keyword 'FROM'.
Hatasi verdi
|
Mesajı Yazan: bybarone
Mesaj Tarihi: 04 Ekim 2012 Saat 11:13
pardon
en alttaki
SUM(CASE WHEN SH.STHAR_GCKOD='G' THEN SH.STHAR_GCMIK ELSE -SH.STHAR_GCMIK END)AS TOPLAM_BAKIYE,<-----
virgülü kaldirin öyle çalistirin
------------- Iyi çalismalar.
Barancan GENÇ
barancan.genc@hotmail.com
|
Mesajı Yazan: sessizkule
Mesaj Tarihi: 04 Ekim 2012 Saat 11:52
CREATE VIEW STOKSUBESATIS
AS
SELECT
SH.STOK_KODU,
ST.STOK_ADI,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='0' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END) MERKEZ_SATIS,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='1' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END) SUBE1_SATIS_MIKTARI,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='2' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END) SUBE2_SATIS_MIKTARI,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='3' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END) SUBE3_SATIS_MIKTARI,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='4' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END) SUBE4_SATIS_MIKTARI,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='5' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END) SUBE5_SATIS_MIKTARI,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END)AS TOPLAM_SATIS_MIKTAR,
SUM(CASE WHEN SH.STHAR_GCKOD='G' THEN SH.STHAR_GCMIK ELSE -SH.STHAR_GCMIK END)AS TOPLAM_BAKIYE
FROM TBLSTHAR SH group by sh.stok_kodu
--LEFT OUTER JOIN TBLSTSABIT ST ON(SH.STOK_KODU=ST.STOK_KODU)
BAZI HATALAR VARDI DÜZENLEDIM
Msg 4104, Level 16, State 1, Procedure STOKSUBESATIS, Line 3
The multi-part identifier "ST.STOK_ADI" could not be bound.
HATASI VERIYOR
bybarone.
|
Mesajı Yazan: bybarone
Mesaj Tarihi: 04 Ekim 2012 Saat 16:35
yine pardon
dur düzenliyorum ve tekrar yapistiriyorum
CREATE VIEW STOKSUBESATIS
AS
SELECT
SH.STOK_KODU,
ST.STOK_ADI,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='0' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END)AS MERKEZ_SATIS_MIKTARI,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='1' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END)AS SUBE1_SATIS_MIKTARI,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='2' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END)AS SUBE2_SATIS_MIKTARI,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='3' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END)AS SUBE3_SATIS_MIKTARI,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='4' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END)AS SUBE4_SATIS_MIKTARI,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='5' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END)AS SUBE5_SATIS_MIKTARI,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END)AS TOPLAM_SATIS_MIKTAR,
SUM(CASE WHEN SH.STHAR_GCKOD='G' THEN SH.STHAR_GCMIK ELSE -SH.STHAR_GCMIK END)AS TOPLAM_BAKIYE
FROM TBLSTHAR SH
LEFT OUTER JOIN TBLSTSABIT ST ON(SH.STOK_KODU=ST.STOK_KODU)
GROUP BY
SH.STOK_KODU,
ST.STOK_ADI
Tamamdir simdi oldu kusura bakmayin ezbere yazdim ondan oldu...
------------- Iyi çalismalar.
Barancan GENÇ
barancan.genc@hotmail.com
|
Mesajı Yazan: sessizkule
Mesaj Tarihi: 05 Ekim 2012 Saat 10:20
bybarone kusura kalma görmemistim yazini,
ben ekleme yaptim biraz.
--
CREATE VIEW STOKSUBESATIS
AS
SELECT
SH.STOK_KODU,
ST.STOK_ADI,
ST.SATICI_KODU,
SH.STHAR_TARIH,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='0' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END) MERKEZ_SATIS,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='1' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END) SUBE1_SATIS,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='2' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END) SUBE2_SATIS,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='3' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END) SUBE3_SATIS,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='4' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END) SUBE4_SATIS,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='5' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END) SUBE5_SATIS,
SUM(CASE WHEN SH.STHAR_GCKOD='C' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END)AS TOPLAM_SATIS_MIKTAR,
SUM(CASE WHEN SH.STHAR_GCKOD='G' THEN SH.STHAR_GCMIK ELSE -SH.STHAR_GCMIK END)AS TOPLAM_BAKIYE
FROM TBLSTHAR SH
LEFT OUTER JOIN TBLSTSABIT ST ON(SH.STOK_KODU=ST.STOK_KODU)
group by sh.stok_kodu, ST.STOK_ADI, ST.SATICI_KODU, SH.STHAR_TARIH
--
bu sekilde düzenledim.
bunu serbest rapordan aliyorum fakat
tarih araligi verip rapor aldigimda
o tarihler arasi stogu giris çikislari çikarip veriyor.
yani stok yanlis oluyor.
Tarih araligi vermeyip rapor alirsam sikinti olmuyor.
Senden Ricam Konu ile alakali bilgini paylasabilirsen çok sevinirim.
ve ayrica emegine saglik.
|
Mesajı Yazan: bybarone
Mesaj Tarihi: 05 Ekim 2012 Saat 21:47
bak hem giris hem çikisi zaten alamazsin
tarih kisiti ver siralamada kümüle döküm yap ve stok koduna göre sirala ozaman herhangi bir sikinti çekmezsin
çok basit birsey bu kadar ugrastiracak birsey degil...
------------- Iyi çalismalar.
Barancan GENÇ
barancan.genc@hotmail.com
|
Mesajı Yazan: mbaykan
Mesaj Tarihi: 05 Ekim 2012 Saat 23:08
CREATE VIEW STOKSUBESATIS AS SELECT SH.STOK_KODU, ST.STOK_ADI, ST.SATICI_KODU, SH.STHAR_TARIH, CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='0' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END MERKEZ_SATIS, CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='1' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END SUBE1_SATIS, CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='2' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END SUBE2_SATIS, CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='3' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END SUBE3_SATIS, CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='4' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END SUBE4_SATIS, CASE WHEN SH.STHAR_GCKOD='C' AND SH.SUBE_KODU='5' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END SUBE5_SATIS, CASE WHEN SH.STHAR_GCKOD='C' AND SH.STHAR_HTUR IN ('H','I','J','K') THEN SH.STHAR_GCMIK ELSE 0 END AS TOPLAM_SATIS_MIKTAR, CASE WHEN SH.STHAR_GCKOD='G' THEN SH.STHAR_GCMIK ELSE -SH.STHAR_GCMIK END)AS TOPLAM_BAKIYE FROM TBLSTHAR SH INNER JOIN TBLSTSABIT ST ON(SH.STOK_KODU=ST.STOK_KODU)
Seklinde view olusturursaniz Tarih kisiti verirsiniz, merkez ve sube satislarda stok kodu degisimnide toplam ve kümüle dmküm istediginizi verir
------------- Mehmet Baykan
|
Mesajı Yazan: sessizkule
Mesaj Tarihi: 06 Ekim 2012 Saat 09:46
Stok kodu degisimiden kümüle aliyorum sorun yok benim demek istedigim ürünün stogu yanlis çikiyor.
en Son kolonda Toplam Satis Miktari kaç adet ise
toplam stokta ya ayni çikiyor yada bir eksigi çikiyor.
Tarih kisiti vermeyip rapor alirsam sikinti olmuyor.
|
Mesajı Yazan: bybarone
Mesaj Tarihi: 06 Ekim 2012 Saat 10:19
Bakiye getirirken diyorsunuz yanlis veriyor
evet tabiki verir çünkü tarih araligi verirseniz sadece o araliktaki verileri algilar ve o araliktaki verilerden deger hesapladigi için bakiyeyide yanlis getirir
Bakiye getirmesi için fonskiyon yazin hatta yazayim;
Create Function BAKIYE (@STOK_KODU TDBSTOKKOD,@SUBE_KODU TDBSMALLINT,@DEPO_KODU TDBSMALLINT)
RETURNS TDBFLOAT
AS
BEGIN
DECLARE @GIRIS_MIKTARI TDBFLOAT
DECLARE @CIKIS_MIKTARI TDBFLOAT
DECLARE @BAKIYE TDBFLOAT
SET @GIRIS_MIKTARI = (SELECT PH.TOP_GIRIS_MIK FROM TBLSTOKPH PH WHERE PH.STOK_KODU=@STOK_KODU AND PH.SUBE_KODU=@SUBE_KODU AND PH.DEPO_KODU=@DEPO_KODU)
SET @CIKIS_MIKTARI = (SELECT PH2.TOP_CIKIS_MIK FROM TBLSTOKPH PH2 WHERE PH2.STOK_KODU=@STOK_KODU AND PH2.SUBE_KODU=@SUBE_KODU AND PH2.DEPO_KODU=@DEPO_KODU)
SET @BAKIYE = (@GIRIS_MIKTARI - @CIKIS_MIKTARI)
RETURN ISNULL(@BAKIYE,0)
END
Bunu olusturun view'in
su kisminida su sekilde degistirin
CASE WHEN SH.STHAR_GCKOD='G' THEN SH.STHAR_GCMIK ELSE -SH.STHAR_GCMIK END)AS TOPLAM_BAKIYE
dbo.BAKIYE(SH.STOK_KODU,SH.SUBE_KODU,SH.DEPO_KODU) AS BAKIYE
------------- Iyi çalismalar.
Barancan GENÇ
barancan.genc@hotmail.com
|
Mesajı Yazan: sessizkule
Mesaj Tarihi: 08 Ekim 2012 Saat 11:13
sayin bybarone,
biz depo kullanmiyoruz herhalde siz depo_kodu kullandiginiz için sonuç degismedi.
merkez bakiyesi bizim depo bakiyemiz oluyor.
birde fonksiyonlara yabanciyim.
olusturdugumuz fonksiyon nerede duruyor
mesela view lar view menüsünde bulabiliyorum
fakat fonksiyon için bir kisim bulamadim
silmek istersem ne yapacam. bana yardimci olabilirmisiniz.
|
Mesajı Yazan: bybarone
Mesaj Tarihi: 08 Ekim 2012 Saat 21:01
Programmability menüsünün altinda fonksiyonlar mevcut
Depo kodlarini kaldirin ozaman dogru sonuç verecektir
------------- Iyi çalismalar.
Barancan GENÇ
barancan.genc@hotmail.com
|
|