Bilnex YazılımBilnex Yazılım
  • Anasayfa
  • Bilgi Bankası
  • Dökümanlar
  • Soru & Cevap
  • Diğer
    • Eğitim Videoları
    • Forum Topluluğu
    • Google Drive
    • Bilnex Yardım
    • Kurumsal Site
  • Anasayfa
  • Bilgi Bankası
  • Dökümanlar
  • Soru & Cevap
  • Diğer
    • Eğitim Videoları
    • Forum Topluluğu
    • Google Drive
    • Bilnex Yardım
    • Kurumsal Site
Anasayfa/Bilgi Bankası/SQL Çözümler/Mükerrer Kayıt Kontrol Rapor Sorgusu

Mükerrer Kayıt Kontrol Rapor Sorgusu

20 Görüntüleme 0 27 Şubat 2025 Güncelleme: 27 February 2025 Hasan Özkavaklı

Aşağıdaki sorgu genel Database içerisinde olmaması gereken veya bir şekilde oluşmuş olan çiftleyen kayıtları gösterir.

Buradan itibaren kopyalayabilirsizini. Fakat kopyalama işleminde bazı karakterler sorun oluşturabilir. Bu durumda ekteki dosyayı indirerek kopyalama işlemini yapabilirsiniz. 

 

/*
{2TOPLAMLAR.[Depo Kodu]”Depo Kodu”}
{5STOK.KODU”Stok Kodu”}
{5STOK.CINSI”Stok Cinsi”}
{5STOK.BIRIM1″Birim”}
{5STOK.ANAGRUP”Ana Grup”}
{5STOK.ALTGRUP”Alt Grup”}
{5STOK.URETICI”Üretici”}
{5STOK.REYON”Reyon”}
{5STOK.SORUMLU”Sorumlu”}
{5STOK.TEDARIKCI”Tedarikçi”}
{8STOK.OZEL_TANIM01″Özel Tanım 1″}
{8STOK.OZEL_TANIM02″Özel Tanım 2″}
{8STOK.OZEL_TANIM03″Özel Tanım 3″}
{8STOK.OZEL_TANIM04″Özel Tanım 4″}
{8STOK.OZEL_TANIM05″Özel Tanım 5″}
{8STOK.OZEL_TANIM06″Özel Tanım 6″}
{8STOK.OZEL_TANIM07″Özel Tanım 7″}
{8STOK.OZEL_TANIM08″Özel Tanım 8″}
{8STOK.OZEL_TANIM09″Özel Tanım 9″}
{8STOK.OZEL_TANIM10″Özel Tanım10″}
*/
SET NOCOUNT ON
DECLARE @ILKTARIH DATETIME
DECLARE @SONTARIH DATETIME
DECLARE @KDVDAHIL     NVARCHAR(80)
DECLARE @RAPORLA      NVARCHAR(80)
DECLARE @STOKMIKTAR   NVARCHAR(80)
DECLARE @BIRIMALIYET  NVARCHAR(80)
DECLARE @KAYITDURUMU  NVARCHAR(80)
DECLARE @DEVIRTARIH   DATETIME
DECLARE @SATILAN      NVARCHAR(100)
DECLARE @GRUPLAMA     NVARCHAR(11)
DECLARE @KALANENVANTER NVARCHAR(100)
DECLARE @IADESATINALMA NVARCHAR(100)
DECLARE @IADESATIS     NVARCHAR(100)
DECLARE @KONTROL       NVARCHAR(100)
SET  @ILKTARIH = :”İlk Tarih”
SET  @SONTARIH = :”Son Tarih”
SET  @KDVDAHIL = :”Kdv Şekli”
SET  @RAPORLA  = :”Raporlama Dövizi”
SET  @STOKMIKTAR= :”Stok Miktarı”   — <Hepsi,Pozitif,Negatif,Mıktarsız
SET  @BIRIMALIYET=:”Birim Maliyet”   — <Hepsi,Maliyetli,Maliyetsiz
SET  @KAYITDURUMU =:”Kullanım Durumu” —-<Hepsi,Aktif,Pasif
SET  @SATILAN  = :”Çıkış Maliyet Hesaplansın” —-<Evet,Hayır
SET  @GRUPLAMA  =:”Depolara Göre Grupla”
SET  @KALANENVANTER =:”Kalan Envanter Hesaplama Şekli”
SET  @IADESATINALMA =:”Karlılıkta İade Satınalma Düşülsün”
SET  @IADESATIS     =:”Karlılıkta İade Satışlar Eklensin”
SET  @KONTROL       =:”Giriş Toplamı İle Çıkış Maliyeti Fark Kontrolü Yapılsın”   —<Evet,Hayır
DECLARE @MALIYET NVARCHAR(100)
SET @MALIYET=:Yontem
If(OBJECT_ID(‘tempdb..#KALANDEVIR’) Is Not Null)
Begin
    Drop Table #KALANDEVIR
End;
CREATE TABLE #KALANDEVIR
      (
   ID                    INT,
   FIRMA_KODU            NVARCHAR(50) COLLATE TURKISH_CI_AS,
   SUBE_KODU             NVARCHAR(50) COLLATE TURKISH_CI_AS,
   DEPO                  NVARCHAR(30) COLLATE TURKISH_CI_AS,
   STOKKODU              NVARCHAR(50) COLLATE TURKISH_CI_AS,
   STOKADI               NVARCHAR(500) COLLATE TURKISH_CI_AS,
          KDVHARICTLMALIYET     FLOAT,
   KDVDAHILTLMALIYET     FLOAT,
   KDVHARICRDMALIYET     FLOAT,
   KDVDAHILRDMALIYET     FLOAT,
   USDKUR                FLOAT,
   EUROKUR               FLOAT
  );
CREATE CLUSTERED INDEX IX_#KALANDEVIR_01 ON #KALANDEVIR (ID)
CREATE NONCLUSTERED INDEX IX_#KALANDEVIR_02 ON #KALANDEVIR(STOKKODU,SUBE_KODU,DEPO,FIRMA_KODU)
If(OBJECT_ID(‘tempdb..#KALANENVANTER’) Is Not Null)
Begin
    Drop Table #KALANENVANTER
End;
CREATE TABLE #KALANENVANTER
      (
   ID                    INT,
   FIRMA_KODU            NVARCHAR(50) COLLATE TURKISH_CI_AS,
   SUBE_KODU             NVARCHAR(50) COLLATE TURKISH_CI_AS,
   DEPO                  NVARCHAR(30) COLLATE TURKISH_CI_AS,
   STOKKODU              NVARCHAR(50) COLLATE TURKISH_CI_AS,
   STOKADI               NVARCHAR(500) COLLATE TURKISH_CI_AS,
       KDVHARICTLMALIYET     FLOAT,
   KDVDAHILTLMALIYET     FLOAT,
   KDVHARICRDMALIYET     FLOAT,
   KDVDAHILRDMALIYET     FLOAT,
   USDKUR                FLOAT,
   EUROKUR               FLOAT
  );
CREATE CLUSTERED INDEX IX_#KALANENVANTER_01 ON #KALANENVANTER (ID)
CREATE NONCLUSTERED INDEX IX_#KALANENVANTER_02 ON #KALANENVANTER(STOKKODU,SUBE_KODU,DEPO)
If(OBJECT_ID(‘tempdb..#IADEMALIYET’) Is Not Null)
Begin
    Drop Table #IADEMALIYET
End;
CREATE TABLE #IADEMALIYET
      (
   COUNTER               INT,
   FCOUNTER              INT,
   ECOUNTER              INT,
   FIRMA_KODU            NVARCHAR(50) COLLATE TURKISH_CI_AS,
   SUBE_KODU             NVARCHAR(50) COLLATE TURKISH_CI_AS,
   DEPO                  NVARCHAR(30) COLLATE TURKISH_CI_AS,
   STOKKODU              NVARCHAR(50) COLLATE TURKISH_CI_AS,
       KDVHARICTLMALIYET     FLOAT,
   KDVDAHILTLMALIYET     FLOAT,
   KDVHARICRDMALIYET     FLOAT,
   KDVDAHILRDMALIYET     FLOAT,
   MODUL                 NVARCHAR(100) COLLATE TURKISH_CI_AS,
   ISLEM                 NVARCHAR(100) COLLATE TURKISH_CI_AS,
   MIKTAR                FLOAT,
   NORMALIADE            INT
  );
CREATE CLUSTERED INDEX IX_#KALANDEVIR_01    ON #IADEMALIYET (COUNTER)
CREATE NONCLUSTERED INDEX IX_#KALANDEVIR_02 ON #IADEMALIYET(STOKKODU,SUBE_KODU,DEPO,FIRMA_KODU)
INSERT INTO #IADEMALIYET
SELECT
      COUNTER,FCOUNTER,ECOUNTER,FIRMA_KODU,SUBE_KODU,DEPO,KODU,KDVHARICTLMALIYET,KDVDAHILTLMALIYET,KDVHARICRDMALIYET,KDVDAHILRDMALIYET,MODUL,ISLEM,MIKTAR,NORMALIADE
FROM BV_IADE
 WHERE TARIH BETWEEN @ILKTARIH AND @SONTARIH AND ISLEM LIKE ‘%Satınalma%’
SET @MALIYET=(select TOP 1 KISAAD FROM MALIYETYONTEM WHERE UZUNAD=@MALIYET)
DECLARE @DEGER INT
INSERT INTO RAPOR_CALISMA (BASLANGIC)
VALUES (cast(GETDATE() as SmallDateTime))
SELECT @DEGER=SCOPE_IDENTITY()
INSERT INTO FILTER_STOK (NEWID_,KODU)
SELECT  @DEGER,KODU
FROM
(
SELECT STOKKODU AS KODU,
(SELECT STOK.CINSI  FROM STOK WHERE STOK.KODU =TMP.STOKKODU)CINSI,
(SELECT STOK.BIRIM1  FROM STOK WHERE STOK.KODU =TMP.STOKKODU)BIRIM1,
(SELECT STOK.ANAGRUP  FROM STOK WHERE STOK.KODU =TMP.STOKKODU)ANAGRUP,
(SELECT STOK.ALTGRUP  FROM STOK WHERE STOK.KODU =TMP.STOKKODU)ALTGRUP,
(SELECT STOK.URETICI  FROM STOK WHERE STOK.KODU =TMP.STOKKODU)URETICI,
(SELECT STOK.REYON    FROM STOK WHERE STOK.KODU =TMP.STOKKODU)REYON,
(SELECT STOK.SORUMLU  FROM STOK WHERE STOK.KODU =TMP.STOKKODU)SORUMLU,
(SELECT STOK.TEDARIKCI  FROM STOK WHERE STOK.KODU =TMP.STOKKODU)TEDARIKCI
FROM StokHareketDetay TMP
WHERE TMP.TARIH<=@SONTARIH
) AS STOK
WHERE 5=5
GROUP BY KODU
SET @DEVIRTARIH = DATEADD(DAY,-1,@ILKTARIH)
—- Devir Bilgilerini Alma
INSERT INTO #KALANDEVIR
EXECUTE Sp_Envanter_Lıstele @DEVIRTARIH,@MALIYET,@DEGER,’Özet’
—- Kalan Bilgilerini Alma
INSERT INTO #KALANENVANTER
EXECUTE Sp_Envanter_Lıstele @SONTARIH,@MALIYET,@DEGER,’Özet’
If(OBJECT_ID(‘tempdb..#STOK_MALIYET’) Is Not Null) Begin Drop Table #STOK_MALIYET End
CREATE TABLE #STOK_MALIYET
(
NEWID_            INT,
STOKHAR           INT,
FCOUNTER          INT,
ECOUNTER          INT,
MODUL             NVARCHAR(60) COLLATE TURKISH_CI_AS,
FIRMA_KODU        INT,
SUBE_KODU         INT,
DEPO              NVARCHAR(60) COLLATE TURKISH_CI_AS,
STOKKODU          NVARCHAR(60) COLLATE TURKISH_CI_AS,
KDVHARICTLMALIYET FLOAT,
KDVDAHILTLMALIYET FLOAT,
KDVHARICRDMALIYET FLOAT,
KDVDAHILRDMALIYET FLOAT,
USDKUR            FLOAT,
EUROKUR           FLOAT,
CIKISMODUL        NVARCHAR(50) COLLATE TURKISH_CI_AS,
CIKISISLEM        NVARCHAR(100) COLLATE TURKISH_CI_AS,
MIKTAR            FLOAT,
    NORMALIADE        INT
)
CREATE CLUSTERED    INDEX IX_#STOK_MALIYET_01 ON #STOK_MALIYET (NEWID_)
CREATE NONCLUSTERED INDEX IX_#STOK_MALIYET_02 ON #STOK_MALIYET (FCOUNTER,ECOUNTER)
CREATE NONCLUSTERED INDEX IX_#STOK_MALIYET_03 ON #STOK_MALIYET (MODUL)
IF @SATILAN=’Evet’
BEGIN
     INSERT INTO #STOK_MALIYET
     EXECUTE dbo.Sp_Maliyet_Al   @ILKTARIH,@SONTARIH,@MALIYET,@DEGER ,’Özet’
END
If(OBJECT_ID(‘tempdb..#CIKIS_HASILAT’) Is Not Null) Begin Drop Table #CIKIS_HASILAT End
SELECT STOKKODU,DEPO,sum(MIKTAR*
CASE WHEN @KDVDAHIL = ‘Hariç’ and @RAPORLA = ‘Hayır’ then KDVHARICTLMALIYET
                WHEN @KDVDAHIL = ‘Hariç’ and @RAPORLA = ‘Evet’  then KDVHARICRDMALIYET
WHEN @KDVDAHIL = ‘Dahil’ and @RAPORLA = ‘Hayır’ then KDVDAHILTLMALIYET
WHEN @KDVDAHIL = ‘Dahil’ and @RAPORLA = ‘Evet’  then KDVDAHILRDMALIYET
               END
) CIKISMALIYET ,CIKISISLEM,NORMALIADE
INTO  #CIKIS_HASILAT
FROM  #STOK_MALIYET
GROUP BY  STOKKODU,DEPO,CIKISISLEM,NORMALIADE
CREATE CLUSTERED INDEX IX_#CIKIS_HASILAT ON #CIKIS_HASILAT (STOKKODU,DEPO,CIKISISLEM)
SELECT   [Depo Kodu],
         [Depo Adı],
         [Ana Grup Kodu],
  [Ana Grup Adı],
  ISNULL(SUM([Devir Miktar]),0)  AS [Devir Miktar],
  DBO.fn_bolme(SUM([Devir Tutarı]),SUM([Devir Miktar])) [Devir Birim Maliyet],
  SUM([Devir Tutarı]) [Devir Tutarı],
  SUM([Giren Miktar]) [Giren Miktar],
  SUM([Giren Tutar]) [Giren Tutar],
  SUM([Satınalma Miktarı]) [Satınalma Miktarı],
  SUM([Satınalma Tutarı]) [Satınalma Tutarı],
  SUM([İade Satış Miktarı]) [İade Satış Miktarı],
  SUM([İade Satış Tutarı]) [İade Satış Tutarı],
         SUM([İade Satış Maliyeti]) [İade Satış Maliyeti],
  SUM([Net Satınalma Miktarı]) [Net Satınalma Miktarı],
  SUM([Net Satınalma Tutarı]) [Net Satınalma Tutarı],
  SUM([Giriş Fişi Miktarı]) [Giriş Fişi Miktarı],
  SUM([Giriş Fişi Tutarı]) [Giriş Fişi Tutarı],
  SUM([Çıkış Fişi Miktarı]) [Çıkış Fişi Miktarı] ,
  SUM([Çıkış Fişi Tutarı]) [Çıkış Fişi Tutarı],
  SUM([Çıkış Fişi Maliyeti]) [Çıkış Fişi Maliyeti],
  SUM([Tüketim Fişi Miktarı])[Tüketim Fişi Miktarı],
  SUM([Tüketim Fişi Tutarı]) [Tüketim Fişi Tutarı],
  SUM([Tüketim Fişi Maliyeti]) [Tüketim Fişi Maliyeti],
  SUM([Fire Fişi Miktarı]) [Fire Fişi Miktarı],
  SUM([Fire Fişi Tutarı]) [Fire Fişi Tutarı],
  SUM([Fire Fişi Maliyeti]) [Fire Fişi Maliyeti],
  SUM([Depo Sevk Giriş Fişi Miktarı]) [Depo Sevk Giriş Fişi Miktarı] ,
  SUM([Depo Sevk Giriş Fişi Tutar]) [Depo Sevk Giriş Fişi Tutar],
  SUM([Depo Sevk Çıkış Fişi Miktarı]) [Depo Sevk Çıkış Fişi Miktarı],
  SUM([Depo Sevk Çıkış Fişi Tutarı]) [Depo Sevk Çıkış Fişi Tutarı],
  SUM([Satış Miktarı]) [Satış Miktarı],
  SUM([Satış Tutarı]) [Satış Tutarı],
  SUM([Satış Maliyeti]) [Satış Maliyeti],
  SUM([İade Satınalma Miktarı]) [İade Satınalma Miktarı],
  SUM([İade Satınalma Tutarı]) [İade Satınalma Tutarı],
  SUM([İade Satınalma Maliyeti]) AS [İade Satınalma Maliyeti],
  SUM([Net Satış Miktarı]) AS [Net Satış Miktarı],
  SUM([Net Satış Tutarı]) AS [Net Satış Tutarı],
  SUM([Çıkan Miktar]) AS [Çıkan Miktar],
  SUM([Çıkan Tutar]) AS [Çıkan Tutar],
  SUM([Çıkış Maliyeti]) AS [Çıkış Maliyeti],
  SUM([Envanter Miktar]) AS [Envanter Miktar] ,
  dbo.fn_Bolme(SUM([Envanter Maliyeti]),SUM([Envanter Miktar]))  AS [Envanter Brim Maliyet],
  SUM([Envanter Maliyeti]) [Envanter Maliyeti],
         SUM([Satış Maliyeti Net])  [Satış Maliyeti Net],
         SUM([Satış Karı])  [Satış Kar(+) / Zarar(-)]
FROM (
SELECT
        TOPLAMLAR.[Depo Kodu] as [Depo Kodu],
        TOPLAMLAR.[Depo Adı],
  STOK.KODU AS [Stok Kodu],
CASE WHEN ISNULL(stok.AKTIF,0)=1 THEN ‘Aktif’ ELSE ‘Pasif’ end [Aktif / Pasif],
        STOK.ADI  AS [Adı 1],
STOK.ADI2   AS [Adı 2],
STOK.ACIKLAMA1   AS  [Açıklama 1],
STOK.ACIKLAMA2  AS [Açıklama 2],
STOK.ACIKLAMA3  AS [Açıklama 3],
STOK.ACIKLAMA4  AS  [Açıklama 4],
STOK.BIRIM1  AS [Ana Birim],
CASE WHEN ISNULL(STOK.ANAGRUP,”)=” THEN ‘Tanımsız’ else ISNULL(STOK.ANAGRUP,”) END  AS  [Ana Grup Kodu],
ISNULL((SELECT   ANAGRUP.ADI  FROM   STOK_ANA_GRUP    AS ANAGRUP WITH(NOLOCK)  WHERE ANAGRUP.KODU    = STOK.ANAGRUP),”)  AS [Ana Grup Adı],
CASE WHEN ISNULL(STOK.ALTGRUP,”)= ”  THEN ‘Tanımsız’ else  ISNULL(STOK.ALTGRUP,”)  end    AS  [Alt Grup Kodu],
ISNULL((SELECT   ALTGRUP.ADI       FROM   STOK_ALT_GRUP    AS ALTGRUP WITH(NOLOCK)  WHERE ALTGRUP.KODU = STOK.ALTGRUP  AND STOK.ANAGRUP=ALTGRUP.ANAGRUP) ,”)   AS [Alt Grup Adı],
CASE WHEN ISNULL(STOK.URETICI,”)=”  THEN ‘Tanımsız’ else  ISNULL(STOK.URETICI,”) end AS  [Üretici Kodu],
ISNULL((SELECT    URETICI.ADI        FROM   STOK_URETICI     AS URETICI WITH(NOLOCK)  WHERE URETICI.KODU = STOK.URETICI  ) ,”) AS [Üretici Adı],
case WHEN ISNULL(STOK.REYON,”)=”   THEN ‘Tanımsız’ else ISNULL(STOK.REYON,”)  end AS [Reyon Kodu],
ISNULL((SELECT    REYON.ADI          FROM   STOK_REYON       AS REYON   WITH(NOLOCK)  WHERE REYON.KODU = STOK.REYON),”) AS  [Reyon Adı],
case when ISNULL(STOK.SORUMLU,”)=” then ‘Tanımsız’ else  ISNULL(STOK.SORUMLU,”) end AS  [Personel Kodu],
ISNULL((SELECT TOP 1  PERSONEL.ADI       FROM   PERSONEL     WITH(NOLOCK)  WHERE PERSONEL.KODU = STOK.SORUMLU) ,”) AS  [Personel Adı],
case when ISNULL(STOK.TEDARIKCI,”)=” then ‘Tanımsız’ else   ISNULL(STOK.TEDARIKCI,”) end  AS [Cari Kodu],
ISNULL((SELECT TOP 1  CARI.ADI           FROM   CARI WITH(NOLOCK)  WHERE CARI.KODU       = STOK.TEDARIKCI ) ,”)  AS  [Cari Adı],
case when ISNULL(STOK.SEZON,”)=” then ‘Tanımsız’ else  ISNULL(STOK.SEZON,”) end AS  [Sezon Kodu],
ISNULL((SELECT TOP 1  SEZON.ADI         FROM SEZON  WITH(NOLOCK)  WHERE SEZON.KODU      = STOK.SEZON),”)  AS [Sezon Adı],
ISNULL((SELECT TOP 1  BARKOD.BARKODNO         FROM   STOK_BARKOD      AS BARKOD  WITH(NOLOCK)  WHERE BARKOD.STOK     = STOK.KODU          ORDER BY BARKOD.BARKODNO DESC),”)AS [Barkod],
ISNULL(STOK.OZELKOD1,”)  AS [Özel Kod 1],
ISNULL(STOK.OZELKOD2,”)  AS [Özel Kod 2],
ISNULL(STOK.OZELKOD3,”)   AS [Özel Kod 3],
ISNULL(STOK.OZELKOD4,”)  AS [Özel Kod 4],
ISNULL(STOK.OZEL_TANIM01,”) AS [Özel Tanım 1 Kodu],
ISNULL((SELECT   TANIM1.ADI   FROM   OZEL_TANIM       AS TANIM1  WITH(NOLOCK)  WHERE TANIM1.KODU     = STOK.OZEL_TANIM01   AND TANIM1.MODUL = ‘STOK’  AND TANIM1.SIRA=1 ),”)  AS [Özel Tanım 1 Adı],
ISNULL(STOK.OZEL_TANIM02,”)  AS [Özel Tanım 2 Kodu],
ISNULL((SELECT   TANIM2.ADI              FROM   OZEL_TANIM       AS TANIM2  WITH(NOLOCK)  WHERE TANIM2.KODU     = STOK.OZEL_TANIM02     AND TANIM2.MODUL = ‘STOK’  AND TANIM2.SIRA=2  )   ,”)   AS [Özel Tanım 2 Adı],
ISNULL(STOK.OZEL_TANIM03,”)  AS [Özel Tanım 3 Kodu],
ISNULL((SELECT   TANIM3.ADI              FROM   OZEL_TANIM       AS TANIM3  WITH(NOLOCK)  WHERE TANIM3.KODU     = STOK.OZEL_TANIM03    AND TANIM3.MODUL = ‘STOK’  AND TANIM3.SIRA=3  )    ,”)   AS      [Özel Tanım 3 Adı],
ISNULL(STOK.OZEL_TANIM04,”) AS      [Özel Tanım 4 Kodu],
ISNULL((SELECT   TANIM4.ADI              FROM   OZEL_TANIM       AS TANIM4  WITH(NOLOCK)  WHERE TANIM4.KODU     = STOK.OZEL_TANIM04    AND TANIM4.MODUL = ‘STOK’  AND TANIM4.SIRA=4  )  ,”) AS      [Özel Tanım 4 Adı],
ISNULL(STOK.OZEL_TANIM05,”) AS      [Özel Tanım 5 Kodu],
ISNULL((SELECT   TANIM5.ADI              FROM   OZEL_TANIM       AS TANIM5  WITH(NOLOCK)  WHERE TANIM5.KODU     = STOK.OZEL_TANIM05     AND TANIM5.MODUL = ‘STOK’  AND TANIM5.SIRA=5  )      ,”)AS      [Özel Tanım 5 Adı],
ISNULL(STOK.OZEL_TANIM06,”)  AS      [Özel Tanım 6 Kodu],
ISNULL((SELECT   TANIM6.ADI              FROM   OZEL_TANIM       AS TANIM6  WITH(NOLOCK)  WHERE TANIM6.KODU     = STOK.OZEL_TANIM06    AND TANIM6.MODUL = ‘STOK’  AND TANIM6.SIRA=6  )      ,”)   AS    [Özel Tanım 6 Adı],
ISNULL(STOK.OZEL_TANIM07,”) AS      [Özel Tanım 7 Kodu],
ISNULL((SELECT   TANIM7.ADI              FROM   OZEL_TANIM       AS TANIM7  WITH(NOLOCK)  WHERE TANIM7.KODU     = STOK.OZEL_TANIM07   AND TANIM7.MODUL = ‘STOK’  AND TANIM7.SIRA=7  )     ,”) AS      [Özel Tanım 7 Adı],
ISNULL(STOK.OZEL_TANIM08,”) AS      [Özel Tanım 8 Kodu],
ISNULL((SELECT   TANIM8.ADI              FROM   OZEL_TANIM       AS TANIM8  WITH(NOLOCK)  WHERE TANIM8.KODU     = STOK.OZEL_TANIM08   AND TANIM8.MODUL = ‘STOK’  AND TANIM8.SIRA=8  )       ,”) AS      [Özel Tanım 8 Adı],
ISNULL(STOK.OZEL_TANIM09,”) AS      [Özel Tanım 9 Kodu],
ISNULL((SELECT   TANIM9.ADI              FROM   OZEL_TANIM       AS TANIM9  WITH(NOLOCK)  WHERE TANIM9.KODU     = STOK.OZEL_TANIM09     AND TANIM9.MODUL = ‘STOK’  AND TANIM9.SIRA=9    )   ,”) AS      [Özel Tanım 9 Adı],
ISNULL(STOK.OZEL_TANIM10,”)  AS      [Özel Tanım 10 Kodu],
ISNULL((SELECT   TANIM10.ADI             FROM   OZEL_TANIM       AS TANIM10 WITH(NOLOCK)  WHERE TANIM10.KODU    = STOK.OZEL_TANIM10    AND TANIM10.MODUL = ‘STOK’  AND TANIM10.SIRA=10  )   ,”) AS      [Özel Tanım 10 Adı],
TOPLAMLAR.[Devir Miktar],
TOPLAMLAR.[Devir Birim Maliyet],
CASE WHEN  TOPLAMLAR.[Devir Miktar]>0 THEN TOPLAMLAR.[Devir Tutarı] ELSE 0 END AS [Devir Tutarı],
TOPLAMLAR.[Giren Miktar],
TOPLAMLAR.[Giren Tutar],
TOPLAMLAR.[Satınalma Miktarı],
TOPLAMLAR.[Satınalma Tutarı],
TOPLAMLAR.[İade Satış Miktarı],
TOPLAMLAR.[İade Satış Tutarı],
              TOPLAMLAR.[İade Satış Maliyeti],
TOPLAMLAR.[Satınalma Miktarı]-TOPLAMLAR.[İade Satış Miktarı] as [Net Satınalma Miktarı],
TOPLAMLAR.[Satınalma Tutarı]-TOPLAMLAR.[İade Satış Tutarı] as [Net Satınalma Tutarı],
TOPLAMLAR.[Giriş Fişi Miktarı],
TOPLAMLAR.[Giriş Fişi Tutarı],
TOPLAMLAR.[Çıkış Fişi Miktarı],
TOPLAMLAR.[Çıkış Fişi Tutarı],
TOPLAMLAR.[Çıkış Fişi Maliyeti],
TOPLAMLAR.[Tüketim Fişi Miktarı],
TOPLAMLAR.[Tüketim Fişi Tutarı],
TOPLAMLAR.[Tüketim Fişi Maliyeti],
TOPLAMLAR.[Fire Fişi Miktarı],
TOPLAMLAR.[Fire Fişi Tutarı],
TOPLAMLAR.[Fire Fişi Maliyeti],
TOPLAMLAR.[Depo Sevk Giriş Fişi Miktarı],
TOPLAMLAR.[Depo Sevk Giriş Fişi Tutar],
TOPLAMLAR.[Depo Sevk Çıkış Fişi Miktarı],
TOPLAMLAR.[Depo Sevk Çıkış Fişi Tutarı],
TOPLAMLAR.[Satış Miktarı],
TOPLAMLAR.[Satış Tutarı],
TOPLAMLAR.[Satış Maliyeti],
TOPLAMLAR.[İade Satınalma Miktarı],
TOPLAMLAR.[İade Satınalma Tutarı],
TOPLAMLAR.[İade Satınalma Maliyeti],
TOPLAMLAR.[Net Satış Miktarı],
TOPLAMLAR.[Net Satış Tutarı],
TOPLAMLAR.[Çıkan Miktar],
TOPLAMLAR.[Çıkan Tutar],
CASE WHEN   @KALANENVANTER = ‘Hareketlerden’  THEN TOPLAMLAR.[Çıkış Maliyeti]
     WHEN   @KALANENVANTER = ‘Toplamlardan’   THEN ((ISNULL(TOPLAMLAR.[Devir Tutarı],0)+ISNULL(TOPLAMLAR.[Giren Tutar],0))-ISNULL(TOPLAMLAR.[Envanter Maliyeti],0))
ELSE 0 END  AS [Çıkış Maliyeti],
TOPLAMLAR.[Envanter Miktar],
TOPLAMLAR.[Envanter Brim Maliyet]  AS [Envanter Brim Maliyet],
CASE WHEN TOPLAMLAR.[Envanter Miktar]>0 THEN  TOPLAMLAR.[Envanter Maliyeti]  ELSE 0 END [Envanter Maliyeti],
              ISNULL(TOPLAMLAR.[Satış Maliyeti],0)-ISNULL(TOPLAMLAR.[İade Satınalma Maliyeti],0)AS [Satış Maliyeti Net],
               ((TOPLAMLAR.[Satış Tutarı]-ISNULL(TOPLAMLAR.[Satış Maliyeti],0))+ (CASE WHEN  @IADESATIS= ‘Evet’  then (TOPLAMLAR.[İade Satış Tutarı]-ISNULL(TOPLAMLAR.[İade Satış Maliyeti],0))  else 0  end ))- (case when @IADESATINALMA = ‘Evet’ then  (ISNULL(TOPLAMLAR.[İade Satınalma Maliyeti],0)-TOPLAMLAR.[İade Satınalma Tutarı]) else 0 end )  [Satış Karı]
FROM STOK  WITH(NOLOCK)
INNER JOIN
(
SELECT
[Stok Kodu],
case when  @GRUPLAMA = ‘Hayır’ then [Depo Kodu] else ‘Tüm Depo’ end as [Depo Kodu],
case when  @GRUPLAMA = ‘Hayır’ then [Depo Adı] else ‘Tüm Depo’ end as [Depo Adı],
SUM(TMP.[Devir Miktar]) AS [Devir Miktar],
DBO.FN_BOLME(SUM(TMP.[Devir Miktar]*TMP.[Devir Birim Maliyet]),SUM(TMP.[Devir Miktar])) [Devir Birim Maliyet],
SUM(TMP.[Devir Miktar]*TMP.[Devir Birim Maliyet])[Devir Tutarı],
SUM(TMP.[Giren Miktar]) [Giren Miktar],
SUM(TMP.[Giren Tutar]) [Giren Tutar],
SUM(TMP.[Satınalma Miktarı]) [Satınalma Miktarı],
SUM(TMP.[Satınalma Tutarı]) [Satınalma Tutarı],
SUM(TMP.[İade Satış Miktarı]) [İade Satış Miktarı],
SUM(TMP.[İade Satış Tutarı]) [İade Satış Tutarı],
    SUM([İade Satış Maliyeti]) [İade Satış Maliyeti],
SUM(TMP.[Satınalma Miktarı]-TMP.[İade Satış Miktarı]) as [Net Satınalma Miktarı],
SUM(TMP.[Satınalma Tutarı]-TMP.[İade Satış Tutarı]) as [Net Satınalma Tutarı],
SUM(TMP.[Giriş Fişi Miktarı]) [Giriş Fişi Miktarı],
SUM(TMP.[Giriş Fişi Tutarı]) [Giriş Fişi Tutarı],
SUM(TMP.[Çıkış Fişi Miktarı]) [Çıkış Fişi Miktarı],
SUM(TMP.[Çıkış Fişi Tutarı]) [Çıkış Fişi Tutarı],
SUM(TMP.[Çıkış Fişi Maliyeti]) AS [Çıkış Fişi Maliyeti],
SUM(TMP.[Tüketim Fişi Miktarı]) [Tüketim Fişi Miktarı],
SUM(TMP.[Tüketim Fişi Tutarı]) [Tüketim Fişi Tutarı],
SUM(TMP.[Tüketim Fişi Maliyeti]) AS [Tüketim Fişi Maliyeti],
SUM(TMP.[Fire Fişi Miktarı]) [Fire Fişi Miktarı],
SUM(TMP.[Fire Fişi Tutarı])[Fire Fişi Tutarı],
SUM(TMP.[Fire Fişi Maliyeti]) AS [Fire Fişi Maliyeti],
SUM(TMP.[Depo Sevk Giriş Fişi Miktarı]) [Depo Sevk Giriş Fişi Miktarı],
SUM(TMP.[Depo Sevk Giriş Fişi Tutar]) [Depo Sevk Giriş Fişi Tutar],
SUM(TMP.[Depo Sevk Çıkış Fişi Miktarı]) [Depo Sevk Çıkış Fişi Miktarı],
SUM(TMP.[Depo Sevk Çıkış Fişi Tutarı]) [Depo Sevk Çıkış Fişi Tutarı],
SUM(TMP.[Satış Miktarı]) [Satış Miktarı],
SUM(TMP.[Satış Tutarı]) [Satış Tutarı],
SUM(TMP.[Satış Maliyeti]) [Satış Maliyeti],
SUM(TMP.[İade Satınalma Miktarı]) [İade Satınalma Miktarı],
SUM(TMP.[İade Satınalma Tutarı]) [İade Satınalma Tutarı] ,
SUM(TMP.[İade Satınalma Maliyeti]) AS [İade Satınalma Maliyeti],
SUM(TMP.[Satış Miktarı]- TMP.[İade Satınalma Miktarı]) as [Net Satış Miktarı],
SUM(TMP.[Satış Tutarı]-  TMP.[İade Satınalma Maliyeti]) as [Net Satış Tutarı],
SUM(TMP.[Çıkan Miktar]) [Çıkan Miktar],
SUM(TMP.[Çıkan Tutar]) [Çıkan Tutar],
SUM(TMP.[Çıkış Maliyeti]) [Çıkış Maliyeti],
SUM(TMP.[Envanter Miktar]) [Envanter Miktar],
dbo.fn_bolme(SUM(TMP.[Envanter Miktar]*TMP.[Envanter Brim Maliyet]),SUM(TMP.[Envanter Miktar])) [Envanter Brim Maliyet],
SUM(TMP.[Envanter Miktar]*TMP.[Envanter Brim Maliyet]) [Envanter Maliyeti]
FROM
(
SELECT
       [Stok Kodu],
   [Depo Kodu],
   [Depo Adı],
       SUM(TOPLAMLAR.[Devir Miktar]) AS [Devir Miktar],
   (
       SELECT  CASE WHEN @KDVDAHIL = ‘Hariç’ and @RAPORLA = ‘Hayır’ then ISNULL(KDVHARICTLMALIYET,0)
                WHEN @KDVDAHIL = ‘Hariç’ and @RAPORLA = ‘Evet’  then ISNULL(KDVHARICRDMALIYET,0)
WHEN @KDVDAHIL = ‘Dahil’ and @RAPORLA = ‘Hayır’ then ISNULL(KDVDAHILTLMALIYET,0)
WHEN @KDVDAHIL = ‘Dahil’ and @RAPORLA = ‘Evet’  then ISNULL(KDVDAHILRDMALIYET,0)
               END BIRIMMALIYET
   FROM #KALANDEVIR AS DEVIRENVANTER WHERE   DEVIRENVANTER.STOKKODU =TOPLAMLAR.[Stok Kodu] AND DEVIRENVANTER.DEPO =TOPLAMLAR.[Depo Kodu] ) AS   [Devir Birim Maliyet],
SUM(TOPLAMLAR.[Giren Miktar]) [Giren Miktar],
SUM(TOPLAMLAR.[Giren Tutar]) [Giren Tutar],
SUM(TOPLAMLAR.[Satınalma Miktarı]) [Satınalma Miktarı],
SUM(TOPLAMLAR.[Satınalma Tutarı]) [Satınalma Tutarı],
SUM(TOPLAMLAR.[İade Satış Miktarı]) [İade Satış Miktarı],
SUM(TOPLAMLAR.[İade Satış Tutarı]) [İade Satış Tutarı],
ISNULL((SELECT  SUM(CIKISMALIYET) FROM #CIKIS_HASILAT T  WHERE CIKISISLEM LIKE ‘%Satış%’  and T.STOKKODU = TOPLAMLAR.[Stok Kodu] and  T.DEPO = TOPLAMLAR.[Depo Kodu] and NORMALIADE=1),0) [İade Satış Maliyeti],
SUM(TOPLAMLAR.[Satınalma Miktarı]-TOPLAMLAR.[İade Satış Miktarı]) as [Net Satınalma Miktarı],
SUM(TOPLAMLAR.[Satınalma Tutarı]-TOPLAMLAR.[İade Satış Tutarı])   as [Net Satınalma Tutarı],
SUM(TOPLAMLAR.[Giriş Fişi Miktarı]) [Giriş Fişi Miktarı],
SUM(TOPLAMLAR.[Giriş Fişi Tutarı]) [Giriş Fişi Tutarı],
SUM(TOPLAMLAR.[Çıkış Fişi Miktarı]) [Çıkış Fişi Miktarı],
SUM(TOPLAMLAR.[Çıkış Fişi Tutarı]) [Çıkış Fişi Tutarı],
ISNULL((SELECT  SUM(CIKISMALIYET) FROM #CIKIS_HASILAT T  WHERE CIKISISLEM = ‘Çıkış Fişi’  and T.STOKKODU = TOPLAMLAR.[Stok Kodu] and T.DEPO = TOPLAMLAR.[Depo Kodu] ),0) [Çıkış Fişi Maliyeti],
SUM(TOPLAMLAR.[Tüketim Fişi Miktarı]) [Tüketim Fişi Miktarı],
SUM(TOPLAMLAR.[Tüketim Fişi Tutarı]) [Tüketim Fişi Tutarı],
ISNULL((SELECT  SUM(CIKISMALIYET) FROM #CIKIS_HASILAT T  WHERE CIKISISLEM LIKE ‘%Tüketim Fişi%’  and T.STOKKODU = TOPLAMLAR.[Stok Kodu] and  T.DEPO = TOPLAMLAR.[Depo Kodu] ),0) [Tüketim Fişi Maliyeti],
SUM(TOPLAMLAR.[Fire Fişi Miktarı]) [Fire Fişi Miktarı],
SUM(TOPLAMLAR.[Fire Fişi Tutarı])[Fire Fişi Tutarı],
ISNULL((SELECT  SUM(CIKISMALIYET) FROM #CIKIS_HASILAT T  WHERE CIKISISLEM LIKE ‘%Fire Fişi%’  and T.STOKKODU = TOPLAMLAR.[Stok Kodu] and T.DEPO = TOPLAMLAR.[Depo Kodu] ),0) [Fire Fişi Maliyeti],
SUM(TOPLAMLAR.[Depo Sevk Giriş Fişi Miktarı]) [Depo Sevk Giriş Fişi Miktarı],
SUM(TOPLAMLAR.[Depo Sevk Giriş Fişi Tutar]) [Depo Sevk Giriş Fişi Tutar],
SUM(TOPLAMLAR.[Depo Sevk Çıkış Fişi Miktarı]) [Depo Sevk Çıkış Fişi Miktarı],
SUM(TOPLAMLAR.[Depo Sevk Çıkış Fişi Tutarı]) [Depo Sevk Çıkış Fişi Tutarı],
SUM(TOPLAMLAR.[Satış Miktarı]) [Satış Miktarı],
SUM(TOPLAMLAR.[Satış Tutarı]) [Satış Tutarı],
ISNULL((SELECT  SUM(CIKISMALIYET) FROM #CIKIS_HASILAT T  WHERE CIKISISLEM LIKE ‘%Satış%’  and T.STOKKODU = TOPLAMLAR.[Stok Kodu] and T.DEPO = TOPLAMLAR.[Depo Kodu]  and NORMALIADE=0),0) [Satış Maliyeti],
SUM(TOPLAMLAR.[İade Satınalma Miktarı]) [İade Satınalma Miktarı],
SUM(TOPLAMLAR.[İade Satınalma Tutarı]) [İade Satınalma Tutarı] ,
SUM(TOPLAMLAR.[İade Satınalma Maliyeti]) [İade Satınalma Maliyeti],
SUM(TOPLAMLAR.[Satış Miktarı]- TOPLAMLAR.[İade Satınalma Miktarı]) as [Net Satış Miktarı],
SUM(TOPLAMLAR.[Satış Tutarı]-  TOPLAMLAR.[İade Satınalma Maliyeti]) as [Net Satış Tutarı],
SUM(TOPLAMLAR.[Çıkan Miktar]) [Çıkan Miktar],
SUM(TOPLAMLAR.[Çıkan Tutar]) [Çıkan Tutar],
ISNULL((SELECT  SUM(CIKISMALIYET) FROM #CIKIS_HASILAT T  WHERE   T.STOKKODU = TOPLAMLAR.[Stok Kodu] and  T.DEPO = TOPLAMLAR.[Depo Kodu]  ),0) [Çıkış Maliyeti],
SUM(TOPLAMLAR.[Envanter Miktar]) [Envanter Miktar],
        (
          SELECT  CASE WHEN @KDVDAHIL = ‘Hariç’ and @RAPORLA = ‘Hayır’ then ISNULL(KDVHARICTLMALIYET,0)
                WHEN @KDVDAHIL = ‘Hariç’ and @RAPORLA = ‘Evet’  then ISNULL(KDVHARICRDMALIYET,0)
WHEN @KDVDAHIL = ‘Dahil’ and @RAPORLA = ‘Hayır’ then ISNULL(KDVDAHILTLMALIYET,0)
WHEN @KDVDAHIL = ‘Dahil’ and @RAPORLA = ‘Evet’  then ISNULL(KDVDAHILRDMALIYET,0)
               END BIRIMMALIYET
      FROM #KALANENVANTER AS KALANENVANTER WHERE    KALANENVANTER.STOKKODU =TOPLAMLAR.[Stok Kodu] AND KALANENVANTER.DEPO = TOPLAMLAR.[Depo Kodu])  AS [Envanter Brim Maliyet]
from [dbo].[BF_ENVANTER] (@ILKTARIH,@SONTARIH,@KDVDAHIL,@RAPORLA) as TOPLAMLAR
WHERE 2=2
GROUP BY [Stok Kodu],[Depo Kodu],[Depo Adı]
 ) AS TMP
GROUP BY  [Stok Kodu],
   case when  @GRUPLAMA = ‘Hayır’ then [Depo Kodu] else ‘Tüm Depo’ end,
   case when  @GRUPLAMA = ‘Hayır’ then [Depo Adı] else ‘Tüm Depo’ end
) AS TOPLAMLAR ON TOPLAMLAR.[Stok Kodu] = STOK.KODU
 WHERE    8=8  AND  5=5
) as t
WHERE  (
       ((@STOKMIKTAR=’Hepsi’) or (@STOKMIKTAR=’Pozitif’ and ISNULL(t.[Envanter Miktar],0)>0 ) or ((@STOKMIKTAR=’Negatif’ and ISNULL(T.[Envanter Miktar],0)<0 )) or ((@STOKMIKTAR=’Mıktarsız’ and ISNULL(T.[Envanter Miktar],0)=0)))
       and
   ((@BIRIMALIYET=’Hepsi’)or (@BIRIMALIYET=’Maliyetli’ and ISNULL(T.[Envanter Maliyeti],0)>0) or (@BIRIMALIYET=’Maliyetsiz’ and ISNULL(T.[Envanter Maliyeti],0)=0))
   and
   ((@KAYITDURUMU=’Aktif’ and T.[Aktif / Pasif]=’Aktif’) OR (@KAYITDURUMU = ‘Pasif’ and T.[Aktif / Pasif]=’Pasif’) or (@KAYITDURUMU = ‘Hepsi’ AND T.[Aktif / Pasif] IN (‘Pasif’,’Aktif’)))
)
          AND T.[Stok Kodu] IN (SELECT KODU FROM STOK_HAR WHERE TARIH<=@SONTARIH)
AND
      ((@KONTROL = ‘Hayır’ and 100=100)   or (@KONTROL = ‘Evet’  and  (cast(((([Devir Tutarı]+[Giren Tutar])-[Çıkış Maliyeti])-[Envanter Maliyeti]) as decimal(38,2))>2)))
group by [Depo Kodu],
         [Depo Adı],
         [Ana Grup Kodu],
  [Ana Grup Adı]
ORDER BY  [Ana Grup Kodu],
  [Ana Grup Adı]
DELETE FILTER_STOK WHERE NEWID_= @DEGER
Ekli dosyalar
#
Dosya Türü
Dosya Boyutu
Download
1 .txt 5,03 KB Mükerrer Kayıt Kontrol

Bu yardımcı oldu mu?

Evet  Hayır
İlgili Makaleler
  • İlaç ve Tıbbi Cihaz e-Fatura Senaryosu
  • Bilnex Perakende Satış PAX A910SF Android Yeni Nesil Ökc Bağlantı Ayarları
  • İngenico Pax A910SF Yazarkasa Kurulumu
  • Yazar Kasa Açık Hesap Satış İşlemi
  • Pavopay Uygulaması Entegrasyonu ( Pavo N86 – Pavo UN20 – Pavo N96 – Pavo N6 – Pavo CT20)
  • Terminal (Client) Kurulum İçin Yapılması Gereken Ayarlar

Cevabınızı bulamadınız mı? İletişim

Leave A Comment

Bilgi Bankası Kategorileri
  • Bilnex V3 61
    • Stok ve Depo Yönetimi 16
    • Satınalma ve Talep 2
    • Satış ve Pazarlama 5
    • Üretim ve Planlama 1
    • Finans Yönetimi 4
    • Perakende Yönetimi 24
    • E-Belge 22
    • Proje Yönetimi 1
    • Sistem Yönetimi 4
    • Dokuman Yönetimi 1
    • Raporlar 5
  • Mobilnex 11
  • Sektörel Çözümler 4
    • Fiyat Gör 3
    • Bilnex Dry 1
    • Ürün Takip Sistemi (ÜTS 1
    • Oto Servis 1
    • Bitki Koruma Ürünleri (BKTS 1
  • SQL Çözümler 9
  • E-Bilnex 1
  • Restoran Yönetimi 2
  • Entegrasyon Çözümleri 1
    • Bilnex E-Ticaret Replikasyon 1
  • Bilnex E-Ticaret B2B 1
Son Makaleler
  • Cihaz Seri Numarası Takibi
  • Proje Takibi
  • Müşteri Kredi Kartları Takibi
  • BlueBird Pidion MT360E Yeni Nesil Ökc Entegrasyonu
  • Ingenico IDE 280 Ökc Entegrasyonu (Eski)

  Terminal (Client) Kurulum İçin Yapılması Gereken Ayarlar

Pavopay Uygulaması Entegrasyonu ( Pavo N86 – Pavo UN20 – Pavo N96 – Pavo N6 – Pavo CT20)  

  • Anasayfa
  • Dökümanlar
  • Bilnex V3
  • Sıkça Sorulan Sorular
  • Eğitim Videoları
  • Bilnex Forum
  • Bilnex Yardım
  • Google Drive
  • Kurumsal Site
  • © 2023 bilnex.com.tr. Tüm Hakları Saklıdır.

Popüler Aramalar:E-Fatura, Mobilnex, E-Ticaret