Forum
Merhaba
Perakende satış modülünde bakiyesi olan müşteri kartlarına (yaklaşık 15000 adet) yeni müşteri sınıfı oluşturup, yeni bir veri tabanına taşımak istiyoruz.Burada sadece borcu devam eden müşteriler olacak.Bunun için bir sql varmıdır acaba ?
Birede sql içerisinde perakende müşteri bakiyelerini hangi tabloya yazıyor.
Bilgisi olan arkadaşların yardımını rica ediyorum
Murat Kılıçaslan
Merhaba,
-Nebim Winner da Perakende Satış Modülünde;
Ayarlar > Perakende Müşteriler Paremetre Değiştir > Özel sınıflandırmadan
Sınıf tipimizin sırasına bakalım ve aşağıdaki sorguda "sSinifKodu1" deki "1" yerine bu rakamı girelim.
Bu sınıf tipinin "Bakiyesi varmı?" olduğunu sınıf kodu olarakda "Var" açtığımızı kabul edersek,
Bu veritabanındaki bakiyesi olan tüm müşterilerin 1.Sınıf Tipini, Var olarak set eden sorgumuz
aşağıdaki gibidir.
Update tbMusteriSinifi Set sSinifKodu1='Var' -- "1" yerine sınıf tipinin sırasını giriniz, "Var" yerine sınıf kodunuzu giriniz.
from tbMusteriSinifi,(SELECT nMusteriID, MusteriKodu, MusteriAciklama, Magaza + ' ' + MagazaAdi AS Mağaza, SUM(TaksitTutari) - SUM(ToplamOdeme)
AS Bakiye
FROM (SELECT dbo.tbMusteri.nMusteriID, dbo.tbMusteri.lKodu AS MusteriKodu, dbo.tbMusteri.sAdi + ' ' + dbo.tbMusteri.sSoyadi AS MusteriAciklama,
dbo.tbMusteri.sMagaza AS Magaza, dbo.tbDepo.sAciklama AS MagazaAdi, dbo.tbTaksit.lTutari AS TaksitTutari,
ISNULL(SUM(dbo.tbOdeme.lOdemeTutar), 0) AS ToplamOdeme, dbo.tbTaksit.nTaksitID
FROM dbo.tbAlisVeris INNER JOIN
dbo.tbMusteri ON dbo.tbAlisVeris.nMusteriID = dbo.tbMusteri.nMusteriID INNER JOIN
dbo.tbTaksit LEFT OUTER JOIN
dbo.tbOdeme ON dbo.tbOdeme.nTaksitID = dbo.tbTaksit.nTaksitID AND dbo.tbOdeme.nOdemeKodu <> 1 ON
dbo.tbAlisVeris.nAlisverisID = dbo.tbTaksit.nAlisverisID INNER JOIN
dbo.tbDepo ON dbo.tbMusteri.sMagaza = dbo.tbDepo.sDepo
WHERE (dbo.tbMusteri.lKodu BETWEEN 0 AND 999999999)
GROUP BY dbo.tbTaksit.nTaksitID, dbo.tbTaksit.lTutari, dbo.tbDepo.sAciklama, dbo.tbMusteri.lKodu, dbo.tbMusteri.sAdi, dbo.tbMusteri.sSoyadi,
dbo.tbMusteri.nMusteriID, dbo.tbMusteri.sMagaza) AS kalantaksit
GROUP BY nMusteriID, MusteriKodu, MusteriAciklama, Magaza, MagazaAdi
HAVING (SUM(TaksitTutari) - SUM(ToplamOdeme) <> 0)
) as Bakiyeliler
where tbMusteriSinifi.nMusteriID=Bakiyeliler.nMusteriID