Satış Faturaları Eksik Geliyor

Gönderen Konu: Satış Faturaları Eksik Geliyor  (Okunma sayısı 588 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Çevrimdışı muratbkk

  • Yeni Kullanıcı
  • *
  • Karma: 1
Satış Faturaları Eksik Geliyor
« : 04.06.2015, 13:26 »
İyi Günler , herkese kolay gelsin.
Detaylı satış raporu çıkarmaya uğraşıyorum. Ürünlerin satış faturalarında satıldığı tarihteki malzeme satış fiyatları listesindeki birim fiyat değerini almaya çalışıyorum ancak, sorgum

FROM LG_100_12_INVOICE INV

     INNER JOIN LG_100_CLCARD CL ON INV.CLIENTREF=CL.LOGICALREF
     INNER JOIN LG_100_12_STLINE STL ON STL.INVOICEREF=INV.LOGICALREF
     LEFT JOIN LG_100_ITEMS ITM ON STL.STOCKREF=ITM.LOGICALREF
     LEFT OUTER JOIN LG_100_MARK AS M ON ITM.MARKREF = M.LOGICALREF

  --LEFT OUTER JOIN LG_100_PRCLIST PRCLIST ON ITM.LOGICALREF=PRCLIST.CARDREF

bu şekilde olduğunda tam logo daki değerler gelirken , PRCLIST tablosunu da dahil ettiğimde gelen verilerde eksikler meydana geliyor.
Bunun herhangi bir nedeni ve ya çözümü var mıdır acaba?
Yardımlarınız için şimdiden teşekkür ederim.

Çevrimdışı MehmetYavuz

  • Logo Sistem Administrator
  • Logo Uzmanı
  • *****
  • Karma: 3
Ynt: Satış Faturaları Eksik Geliyor
« Yanıtla #1 : 04.06.2015, 14:15 »
where kısmına PRCLIST ile ilgili ne yazıyorsunuz?

Çevrimdışı muratbkk

  • Yeni Kullanıcı
  • *
  • Karma: 1
Ynt: Satış Faturaları Eksik Geliyor
« Yanıtla #2 : 04.06.2015, 14:54 »
öncelikle ilginiz için teşekkür ederim.

WHERE
INV.TRCODE=8 AND
STL.PRICE >0 AND
--CL.SPECODE = 'BRB' AND
--(INV.DATE_ BETWEEN PRCLIST.BEGDATE AND PRCLIST.ENDDATE ) AND
--PRCLIST.PRICE is NOT null AND
--PRCLIST.PTYPE=2 AND
INV.DATE_ BETWEEN '05-09-2015' AND '05-09-2015' AND
INV.GRPCODE=2 AND INV.CANCELLED=0
ORDER BY INV.FICHENO DESC

şu an bu halde sorgu.

Çevrimdışı MehmetYavuz

  • Logo Sistem Administrator
  • Logo Uzmanı
  • *****
  • Karma: 3
Ynt: Satış Faturaları Eksik Geliyor
« Yanıtla #3 : 04.06.2015, 15:28 »
Ok.

PRCLIST tablonuzdan NULL değerler geliyor. haliyle PRCLIST ile ilgili olan filtrenizi WHERE de değil JOIN sırasında girilmesi gerekiyor.

şöyleki:

LEFT JOIN LG_100_PRCLIST PRCLIST (NOLOCK) ON ITM.LOGICALREF=PRCLIST.CARDREF
   AND INV.DATE_ BETWEEN PRCLIST.BEGDATE AND PRCLIST.ENDDATE
   AND PRCLIST.PTYPE=2
   AND PRCLIST.PRICE IS NOT NULL

-

Çevrimdışı muratbkk

  • Yeni Kullanıcı
  • *
  • Karma: 1
Ynt: Satış Faturaları Eksik Geliyor
« Yanıtla #4 : 04.06.2015, 15:50 »
Mehmet Bey çok teşekkür ederim, çok makbule geçti.
Ancak anlamadığım şey where kısmına yazmakla joın kısmıda yazmak arasında nasıl bir fark olduğu, sonuçta ikisi de yapılırken aynı koşullara göre arama yapılırken nasıl farklı sonuçlar getiriyor?

Çevrimdışı jobscane

  • Yeni Kullanıcı
  • *
  • Karma: 0
Ynt: Satış Faturaları Eksik Geliyor
« Yanıtla #5 : 28.01.2016, 10:24 »
Eksik Faturalar Daha sonra sorunlara neden olabilir, çünkü dikkatli tutulmalıdır.