Arkadaşlar Merhaba, Sağlıklı günleriniz olsun. Bir yerde takıldım, sanırım mantık hatası yapıyorum yardımlarınıza ihtiyacım var.
Alış Faturasındaki Miktar , Fiyat ve Satış Faturasındaki İskonto3 alanlarını kullanmak istedim.
TBLSTHAR.STHAR_GCKOD='C' Satış Fatura
TBLSTHAR.STHAR_GCKOD='G' Alış Fatura
Bu sorgu çalışıyor fakat mükerrer kayıt listeliyor. Sorguya 'C' deki CARI_ISIM eklemek istiyorum.
SELECT SH.STHAR_GCKOD, SB.GRUP_KODU,SH.FISNO,SH.STHAR_TARIH,
SH.STOK_KODU, STOK_ADI, SH.STHAR_GCMIK AS MIKTAR, SH.STHAR_NF AS FIYAT,
(SH.STHAR_GCMIK*SH.STHAR_NF) AS TUTAR, TBL_C.STRA_SATISK3 AS ISK,
(SH.STHAR_GCMIK*SH.STHAR_NF) -(SH.STHAR_GCMIK*SH.STHAR_NF*TBL_C.STRA_SATISK3/100) AS IADE_TUT
FROM TBLSTHAR SH
INNER JOIN TBLSTSABIT SB ON SB.STOK_KODU=SH.STOK_KODU
INNER JOIN TBLSTHAR AS TBL_C ON SH.STOK_KODU=TBL_C.STOK_KODU AND TBL_C.STHAR_GCKOD='C'
INNER JOIN TBLCASABIT ON (TBLCASABIT.CARI_KOD = SH.STHAR_ACIKLAMA)
WHERE SH.STHAR_GCKOD='G' AND SH.STHAR_HTUR='J' AND TBL_C.STRA_SATISK3<>'0' AND SH.STOK_KODU='1200036'
GO
(26-02-2021, Saat: 07:31)OZCANK Adlı Kullanıcıdan Alıntı: Arkadaşlar Merhaba, Sağlıklı günleriniz olsun. Bir yerde takıldım, sanırım mantık hatası yapıyorum yardımlarınıza ihtiyacım var.
Alış Faturasındaki Miktar , Fiyat ve Satış Faturasındaki İskonto3 alanlarını kullanmak istedim.
TBLSTHAR.STHAR_GCKOD='C' Satış Fatura
TBLSTHAR.STHAR_GCKOD='G' Alış Fatura
Bu sorgu çalışıyor fakat mükerrer kayıt listeliyor. Sorguya 'C' deki CARI_ISIM eklemek istiyorum.
SELECT SH.STHAR_GCKOD, SB.GRUP_KODU,SH.FISNO,SH.STHAR_TARIH,
SH.STOK_KODU, STOK_ADI, SH.STHAR_GCMIK AS MIKTAR, SH.STHAR_NF AS FIYAT,
(SH.STHAR_GCMIK*SH.STHAR_NF) AS TUTAR, TBL_C.STRA_SATISK3 AS ISK,
(SH.STHAR_GCMIK*SH.STHAR_NF) -(SH.STHAR_GCMIK*SH.STHAR_NF*TBL_C.STRA_SATISK3/100) AS IADE_TUT
FROM TBLSTHAR SH
INNER JOIN TBLSTSABIT SB ON SB.STOK_KODU=SH.STOK_KODU
INNER JOIN TBLSTHAR AS TBL_C ON SH.STOK_KODU=TBL_C.STOK_KODU AND TBL_C.STHAR_GCKOD='C'
INNER JOIN TBLCASABIT ON (TBLCASABIT.CARI_KOD = SH.STHAR_ACIKLAMA)
WHERE SH.STHAR_GCKOD='G' AND SH.STHAR_HTUR='J' AND TBL_C.STRA_SATISK3<>'0' AND SH.STOK_KODU='1200036'
GO
Merhaba,
Aşağıdaki şekilde dener misiniz?
SELECT SH.STHAR_GCKOD, SB.GRUP_KODU,SH.FISNO,SH.STHAR_TARIH,
SH.STOK_KODU, sb.STOK_ADI, SH.STHAR_GCMIK AS MIKTAR, SH.STHAR_NF AS FIYAT,
(SH.STHAR_GCMIK*SH.STHAR_NF) AS TUTAR, SH.STRA_SATISK3 AS ISK,
(SH.STHAR_GCMIK*SH.STHAR_NF) -(SH.STHAR_GCMIK*SH.STHAR_NF*SH.STRA_SATISK3/100) AS IADE_TUT, C.CARI_ISIM
FROM TBLSTHAR SH
INNER JOIN TBLSTSABIT SB ON SB.STOK_KODU=SH.STOK_KODU
INNER JOIN TBLCASABIT as C ON (C.CARI_KOD = SH.STHAR_ACIKLAMA)
WHERE SH.STHAR_GCKOD='G' AND SH.STHAR_HTUR='J' AND SH.STRA_SATISK3<>'0' AND SH.STOK_KODU='1200036'
Merhaba sanırım stokların son durumları hakkında işlem yapmak ıstıyorsunuz
Fakat joınler yanlıs kurgulanmıs. Aşağıdaki satır 1-N eşleşmesi ( bire-çok) yapar ki buda mukerrer satır getırır.
INNER JOIN TBLSTHAR AS TBL_C ON SH.STOK_KODU=TBL_C.STOK_KODU AND TBL_C.STHAR_GCKOD='C'
Tam olarak ne yapmak ıstedıgınız acarsanız yardımcı olabılırız
Tabiki detaylandırayım;
TBLSTHAR Tablosunda G Giriş ve C Çıkış olarak kaydediyor. Ben burada Giriş stokların Miktar ve Fiyatlarını aynı zaman da çıkış C lerin İskonto 3 alanını sorguda ki ki gibi hesaplatmak istiyorum. Sonuç olarak Alış faturasındaki stokların Miktar ve fiyatlarının toplamını bulup , Satış Faturasındaki Stokların İskonto 3 oranı kadar indirim yapmak.
(26-02-2021, Saat: 08:52)Kardeşim teşekkür ederim ama mükerrer kayıt devam ediyor. hbulus Adlı Kullanıcıdan Alıntı:
(26-02-2021, Saat: 07:31)OZCANK Adlı Kullanıcıdan Alıntı: Arkadaşlar Merhaba, Sağlıklı günleriniz olsun. Bir yerde takıldım, sanırım mantık hatası yapıyorum yardımlarınıza ihtiyacım var.
Alış Faturasındaki Miktar , Fiyat ve Satış Faturasındaki İskonto3 alanlarını kullanmak istedim.
TBLSTHAR.STHAR_GCKOD='C' Satış Fatura
TBLSTHAR.STHAR_GCKOD='G' Alış Fatura
Bu sorgu çalışıyor fakat mükerrer kayıt listeliyor. Sorguya 'C' deki CARI_ISIM eklemek istiyorum.
SELECT SH.STHAR_GCKOD, SB.GRUP_KODU,SH.FISNO,SH.STHAR_TARIH,
SH.STOK_KODU, STOK_ADI, SH.STHAR_GCMIK AS MIKTAR, SH.STHAR_NF AS FIYAT,
(SH.STHAR_GCMIK*SH.STHAR_NF) AS TUTAR, TBL_C.STRA_SATISK3 AS ISK,
(SH.STHAR_GCMIK*SH.STHAR_NF) -(SH.STHAR_GCMIK*SH.STHAR_NF*TBL_C.STRA_SATISK3/100) AS IADE_TUT
FROM TBLSTHAR SH
INNER JOIN TBLSTSABIT SB ON SB.STOK_KODU=SH.STOK_KODU
INNER JOIN TBLSTHAR AS TBL_C ON SH.STOK_KODU=TBL_C.STOK_KODU AND TBL_C.STHAR_GCKOD='C'
INNER JOIN TBLCASABIT ON (TBLCASABIT.CARI_KOD = SH.STHAR_ACIKLAMA)
WHERE SH.STHAR_GCKOD='G' AND SH.STHAR_HTUR='J' AND TBL_C.STRA_SATISK3<>'0' AND SH.STOK_KODU='1200036'
GO
Merhaba,
Aşağıdaki şekilde dener misiniz?
SELECT SH.STHAR_GCKOD, SB.GRUP_KODU,SH.FISNO,SH.STHAR_TARIH,
SH.STOK_KODU, sb.STOK_ADI, SH.STHAR_GCMIK AS MIKTAR, SH.STHAR_NF AS FIYAT,
(SH.STHAR_GCMIK*SH.STHAR_NF) AS TUTAR, SH.STRA_SATISK3 AS ISK,
(SH.STHAR_GCMIK*SH.STHAR_NF) -(SH.STHAR_GCMIK*SH.STHAR_NF*SH.STRA_SATISK3/100) AS IADE_TUT, C.CARI_ISIM
FROM TBLSTHAR SH
INNER JOIN TBLSTSABIT SB ON SB.STOK_KODU=SH.STOK_KODU
INNER JOIN TBLCASABIT as C ON (C.CARI_KOD = SH.STHAR_ACIKLAMA)
WHERE SH.STHAR_GCKOD='G' AND SH.STHAR_HTUR='J' AND SH.STRA_SATISK3<>'0' AND SH.STOK_KODU='1200036'
(26-02-2021, Saat: 08:52)hbulus Adlı Kullanıcıdan Alıntı:
(26-02-2021, Saat: 07:31)OZCANK Adlı Kullanıcıdan Alıntı: Arkadaşlar Merhaba, Sağlıklı günleriniz olsun. Bir yerde takıldım, sanırım mantık hatası yapıyorum yardımlarınıza ihtiyacım var.
Alış Faturasındaki Miktar , Fiyat ve Satış Faturasındaki İskonto3 alanlarını kullanmak istedim.
TBLSTHAR.STHAR_GCKOD='C' Satış Fatura
TBLSTHAR.STHAR_GCKOD='G' Alış Fatura
Bu sorgu çalışıyor fakat mükerrer kayıt listeliyor. Sorguya 'C' deki CARI_ISIM eklemek istiyorum.
SELECT SH.STHAR_GCKOD, SB.GRUP_KODU,SH.FISNO,SH.STHAR_TARIH,
SH.STOK_KODU, STOK_ADI, SH.STHAR_GCMIK AS MIKTAR, SH.STHAR_NF AS FIYAT,
(SH.STHAR_GCMIK*SH.STHAR_NF) AS TUTAR, TBL_C.STRA_SATISK3 AS ISK,
(SH.STHAR_GCMIK*SH.STHAR_NF) -(SH.STHAR_GCMIK*SH.STHAR_NF*TBL_C.STRA_SATISK3/100) AS IADE_TUT
FROM TBLSTHAR SH
INNER JOIN TBLSTSABIT SB ON SB.STOK_KODU=SH.STOK_KODU
INNER JOIN TBLSTHAR AS TBL_C ON SH.STOK_KODU=TBL_C.STOK_KODU AND TBL_C.STHAR_GCKOD='C'
INNER JOIN TBLCASABIT ON (TBLCASABIT.CARI_KOD = SH.STHAR_ACIKLAMA)
WHERE SH.STHAR_GCKOD='G' AND SH.STHAR_HTUR='J' AND TBL_C.STRA_SATISK3<>'0' AND SH.STOK_KODU='1200036'
GO
Merhaba,
Aşağıdaki şekilde dener misiniz?
SELECT SH.STHAR_GCKOD, SB.GRUP_KODU,SH.FISNO,SH.STHAR_TARIH,
SH.STOK_KODU, sb.STOK_ADI, SH.STHAR_GCMIK AS MIKTAR, SH.STHAR_NF AS FIYAT,
(SH.STHAR_GCMIK*SH.STHAR_NF) AS TUTAR, SH.STRA_SATISK3 AS ISK,
(SH.STHAR_GCMIK*SH.STHAR_NF) -(SH.STHAR_GCMIK*SH.STHAR_NF*SH.STRA_SATISK3/100) AS IADE_TUT, C.CARI_ISIM
FROM TBLSTHAR SH
INNER JOIN TBLSTSABIT SB ON SB.STOK_KODU=SH.STOK_KODU
INNER JOIN TBLCASABIT as C ON (C.CARI_KOD = SH.STHAR_ACIKLAMA)
WHERE SH.STHAR_GCKOD='G' AND SH.STHAR_HTUR='J' AND SH.STRA_SATISK3<>'0' AND SH.STOK_KODU='1200036'
Şu şekilde düzenledim istediğim sonucu aldım , sadece burada Giriş G Miktar ve Fiyatını göstermem gerekiyor. Veya sizin sorguya Çıkış Cari İsim ve İskonto 3 oranı düzenleyerek de olur.
SELECT SH.STHAR_GCKOD, SB.GRUP_KODU,SH.FISNO,SH.STHAR_TARIH,
SH.STOK_KODU, SB.STOK_ADI, SH.STHAR_GCMIK AS MIKTAR, SH.STHAR_NF AS FIYAT,
(SH.STHAR_GCMIK*SH.STHAR_NF) AS TUTAR, SH.STRA_SATISK3 AS ISK,
(SH.STHAR_GCMIK*SH.STHAR_NF) -(SH.STHAR_GCMIK*SH.STHAR_NF*SH.STRA_SATISK3/100) AS IADE_TUT,C.CARI_ISIM
FROM TBLSTHAR SH
INNER JOIN TBLSTSABIT SB ON SB.STOK_KODU=SH.STOK_KODU
INNER JOIN TBLCASABIT AS C ON (C.CARI_KOD = SH.STHAR_CARIKOD)
WHERE SH.STHAR_GCKOD='C' AND SH.STHAR_HTUR='J' AND SH.STRA_SATISK3<>'0' AND SH.STOK_KODU='1200036'
Giriş Miktar ve Giriş Fiyat nasıl getirebilirim? Bu sorguda sıfır geliyor.
SELECT SH.STHAR_GCKOD, SB.GRUP_KODU,SH.FISNO,SH.STHAR_TARIH,
SH.STOK_KODU, SB.STOK_ADI,(CASE SH.STHAR_GCKOD WHEN 'G' THEN SH.STHAR_GCMIK END) AS MIKTAR,
(CASE WHEN SH.STHAR_GCKOD='G' THEN SH.STHAR_NF END) AS FIYAT,
(SH.STHAR_GCMIK*SH.STHAR_NF) AS TUTAR, SH.STRA_SATISK3 AS ISK,
(SH.STHAR_GCMIK*SH.STHAR_NF) - (SH.STHAR_GCMIK*SH.STHAR_NF*SH.STRA_SATISK3/100) AS IADE_TUT,CS.CARI_ISIM
FROM TBLSTHAR SH
INNER JOIN TBLSTSABIT SB ON SB.STOK_KODU=SH.STOK_KODU
INNER JOIN TBLCASABIT AS CS ON (CS.CARI_KOD = SH.STHAR_CARIKOD)
WHERE SH.STHAR_GCKOD='C' AND SH.STHAR_HTUR='J' AND SH.STRA_SATISK3<>'0' AND SH.STOK_KODU='1200036'
(27-02-2021, Saat: 16:50)OZCANK Adlı Kullanıcıdan Alıntı: Giriş Miktar ve Giriş Fiyat nasıl getirebilirim? Bu sorguda sıfır geliyor.
SELECT SH.STHAR_GCKOD, SB.GRUP_KODU,SH.FISNO,SH.STHAR_TARIH,
SH.STOK_KODU, SB.STOK_ADI,(CASE SH.STHAR_GCKOD WHEN 'G' THEN SH.STHAR_GCMIK END) AS MIKTAR,
(CASE WHEN SH.STHAR_GCKOD='G' THEN SH.STHAR_NF END) AS FIYAT,
(SH.STHAR_GCMIK*SH.STHAR_NF) AS TUTAR, SH.STRA_SATISK3 AS ISK,
(SH.STHAR_GCMIK*SH.STHAR_NF) - (SH.STHAR_GCMIK*SH.STHAR_NF*SH.STRA_SATISK3/100) AS IADE_TUT,CS.CARI_ISIM
FROM TBLSTHAR SH
INNER JOIN TBLSTSABIT SB ON SB.STOK_KODU=SH.STOK_KODU
INNER JOIN TBLCASABIT AS CS ON (CS.CARI_KOD = SH.STHAR_CARIKOD)
WHERE SH.STHAR_GCKOD='C' AND SH.STHAR_HTUR='J' AND SH.STRA_SATISK3<>'0' AND SH.STOK_KODU='1200036'
Birincisi burada sadece çıkışları ve faturaları çekmişsiniz. Burada giriş miktarı neye göre gelecek. Satış Faturasından giriş miktarı çok doğru değil.
Ha burada son giriş fiyatı isterseniz
SELECT SH.STHAR_GCKOD, SB.GRUP_KODU,SH.FISNO,SH.STHAR_TARIH,
SH.STOK_KODU, SB.STOK_ADI,(CASE SH.STHAR_GCKOD WHEN 'G' THEN SH.STHAR_GCMIK END) AS MIKTAR,
(SELECT TOP(1) STHAR_NF FROM TBLSTHAR WHERE STOK_KODU=SH.STOK_KODU AND STHAR_GCKOD ='G' AND STHAR_HTUR='J' ORDER BY STHAR_TARIH DESC) AS GIRIS_FIYATI,
(SH.STHAR_GCMIK*SH.STHAR_NF) AS TUTAR, SH.STRA_SATISK3 AS ISK,
(SH.STHAR_GCMIK*SH.STHAR_NF) - (SH.STHAR_GCMIK*SH.STHAR_NF*SH.STRA_SATISK3/100) AS IADE_TUT,CS.CARI_ISIM
FROM TBLSTHAR SH
INNER JOIN TBLSTSABIT SB ON SB.STOK_KODU=SH.STOK_KODU
INNER JOIN TBLCASABIT AS CS ON (CS.CARI_KOD = SH.STHAR_CARIKOD)
WHERE SH.STHAR_GCKOD='C' AND SH.STHAR_HTUR='J'AND SH.STOK_KODU='1200036'