Bir Müşteriye Satış Yapılmayan ürünler Sorgusunda Müşteri Kodalarını görme ?

Gönderen Konu: Bir Müşteriye Satış Yapılmayan ürünler Sorgusunda Müşteri Kodalarını görme ?  (Okunma sayısı 736 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Çevrimdışı _zoro

  • Yeni Kullanıcı
  • *
  • Karma: 0
Merhablar

Aşağıdaki sorguda Müşteri kodu verdiğimde Örnek :dbo.LG_001_CLCARD.CODE = '10001' sorun yok ama ben kriter vermeden tüm müşterilerin kodları ile birliktesatın almadığı ürünleri görmek istiyorum.

Değerli Yardımlarınızı Bekliyorum.


SELECT     CODE, NAME
FROM         dbo.LG_001_ITEMS
WHERE     (CODE NOT IN
                          (SELECT     LG_001_ITEMS_1.CODE AS URUNKODU
                            FROM          dbo.LG_001_CLCARD INNER JOIN
                                                   dbo.LG_001_ITEMS AS LG_001_ITEMS_2 ON dbo.LG_001_CLCARD.LOGICALREF = LG_001_ITEMS_2.LOGICALREF LEFT OUTER JOIN
                                                   dbo.LG_001_01_STLINE ON dbo.LG_001_CLCARD.LOGICALREF = dbo.LG_001_01_STLINE.CLIENTREF LEFT OUTER JOIN
                                                   dbo.LG_001_ITEMS AS LG_001_ITEMS_1 ON dbo.LG_001_01_STLINE.STOCKREF = LG_001_ITEMS_1.LOGICALREF
                            WHERE      (LG_001_ITEMS_1.CARDTYPE = 1) AND (dbo.LG_001_01_STLINE.TRCODE IN (7, 8)) AND (dbo.LG_001_CLCARD.CODE = '10001')
                            GROUP BY LG_001_ITEMS_1.CODE)) AND (ACTIVE = 0)


Ürün Kodu - Ürün Adı - Müşteri Kodu Gibi

Çevrimdışı _zoro

  • Yeni Kullanıcı
  • *
  • Karma: 0
Bende bu şekilde yaptım.

_urun_2012_Urun_2012_2_ adında satışlar için bir view hazırladım.

SELECT     dbo.LG_001_ITEMS.CODE, dbo.LG_001_ITEMS.NAME, dbo.LG_001_CLCARD.CODE AS CARIKOD, dbo.LG_001_CLCARD.DEFINITION_ AS CARIADI,
                      dbo.LG_001_ITEMS.SPECODE
FROM         dbo.LG_001_ITEMS CROSS JOIN
                      dbo.LG_001_CLCARD
WHERE     (dbo.LG_001_ITEMS.LOGICALREF NOT IN
                          (SELECT     dbo._urun_2012_Urun_2012_2_.ITMLOGICALREF
                            FROM          dbo._urun_2012_Urun_2012_2_)) AND (dbo.LG_001_CLCARD.LOGICALREF NOT IN
                          (SELECT     dbo._urun_2012_Urun_2012_2_.CLCLOGICALREF
                            FROM          dbo._urun_2012_Urun_2012_2_)) AND (dbo.LG_001_CLCARD.CODE LIKE '120%')

Çevrimdışı _zoro

  • Yeni Kullanıcı
  • *
  • Karma: 0
Çözümü bu şekilde buldum.



SELECT     dbo.LG_001_ITEMS.CODE, dbo.LG_001_ITEMS.NAME, dbo.LG_001_CLCARD.CODE AS CARIKOD, dbo.LG_001_CLCARD.DEFINITION_ AS CARIADI,
                      dbo.LG_001_ITEMS.SPECODE
FROM         dbo.LG_001_ITEMS CROSS JOIN
                      dbo.LG_001_CLCARD
WHERE     (dbo.LG_001_ITEMS.LOGICALREF NOT IN
                          (SELECT     dbo._urun_2012_Urun_2012_2_.ITMLOGICALREF
                            FROM          dbo._urun_2012_Urun_2012_2_)) AND (dbo.LG_001_CLCARD.LOGICALREF IN
                          (SELECT     dbo._urun_2012_Urun_2012_2_.CLCLOGICALREF
                            FROM          dbo._urun_2012_Urun_2012_2_)) AND (dbo.LG_001_CLCARD.CODE LIKE '120%')