Forum

Bildirimler
Hepsini Temizle

müşteri kartları birleştirme

2 Yazılar
1 Üyeler
0 Reactions
453 Görüntüleme
(@VolkanCELIK)
Gönderiler: 152
Reputable Member
Konu başlatıcı
 

--- iki ayri musteri kodunun satislarini tek bir musteride toplar
set dateformat dmy
declare @lMusteri             fisno
declare @lSilinecekMusteri    fisno
declare @nMusteriID           integer
declare @nSilinecekMusteriID  integer
declare @bMusteri1Kontrol     integer
declare @bMusteri2Kontrol     integer



--**********D İ K K A T **************--
select @lMusteri          = 41862        -- Buraya Asıl Müşteri Kodunu Giriniz
select @lSilinecekMusteri = 84507       -- Buraya Silencek Müşteri Kodunu Giriniz
--
******************************************--


 



select @bMusteri1Kontrol = 0
select @bMusteri2Kontrol = 0
if exists (select nMusteriID from tbMusteri where lKodu = @lMusteri )
   begin     
       select @bMusteri1Kontrol = 1
   end
   else
   begin
       print str(@lMusteri) + ' Nolu Musteri Bulunamadi!!!'
   end


if exists (select nMusteriID from tbMusteri where lKodu = @lSilinecekMusteri )
   begin     
       select @bMusteri2Kontrol = 1
   end
   else
   begin
       print str(@lSilinecekMusteri) + ' Nolu Silinecek Musteri Bulunamadi!!!'
   end


if (@bMusteri1Kontrol = 1) AND (@bMusteri2Kontrol = 1) and (@lMusteri <> 0) and (@lSilinecekMusteri <> 0)
 begin
  select @nMusteriID = nMusteriID from tbMusteri where lkodu = @lMusteri            
  select @nSilinecekMusteriID = nMusteriID from tbMusteri where lkodu = @lSilinecekMusteri


  update tbAlisveris        set nMusteriID = @nMusteriID where nMusteriID = @nSilinecekMusteriID
  update tbStokFisiDetayi   set nMusteriID = @nMusteriID where nMusteriID = @nSilinecekMusteriID
  update tbAVIndirimKuponu  set nMusteriID = @nMusteriID where nMusteriID = @nSilinecekMusteriID
  update tbUrunServisDestek set nVerenMusteriID = @nMusteriID where nVerenMusteriID = @nSilinecekMusteriID
  update tbServisFormu      set nMusteriID = @nMusteriID where nMusteriID = @nSilinecekMusteriID
  --update tbAlisverisSiparis   set nMusteriID = @nMusteriID where nMusteriID = @nSilinecekMusteriID


  delete tbMusteriSinifi  where nMusteriID = @nSilinecekMusteriID
  delete tbMusteriNufusu  where nMusteriID = @nSilinecekMusteriID
  delete tbKefil1Nufusu   where nMusteriID = @nSilinecekMusteriID
  delete tbKefil2Nufusu   where nMusteriID = @nSilinecekMusteriID
  delete tbMusteriKefil1  where nMusteriID = @nSilinecekMusteriID
  delete tbMusteriKefil2  where nMusteriID = @nSilinecekMusteriID
  delete tbMusteriKredisi where nMusteriID = @nSilinecekMusteriID
  delete tbMusteriKarti   where nMusteriID = @nSilinecekMusteriID
  delete tbMusteriEkKart  where nMusteriID = @nSilinecekMusteriID
  delete tbMusteriOzelNot where nMusteriID = @nSilinecekMusteriID
  delete tbMusteriCocugu  where nMusteriID = @nSilinecekMusteriID
  delete tbMusteriPara    where nMusteriID = @nSilinecekMusteriID
 
  
                delete tbMusteri        where nMusteriID = @nSilinecekMusteriID


                delete tbMusteriPara    where nMusteriID = @nMusteriID


                insert tbMusteriPara
                       select MusteriID , sum(Tutar)
                           from (
                                  select tbAlisveris.nMusteriID as MusteriID,
                                         case tbAVHediyeCeki.sHediyeCekiTipi when 'ParaPU_KAZ' then case tbAlisveris.nGirisCikis when 3 then tbAVHediyeCeki.lTutar
                                                                                                                                 when 4 then tbAVHediyeCeki.lTutar * -1 end
                                                                             when 'ParaPU_HAR' then tbAVHediyeCeki.lTutar * -1 end as Tutar
                           from tbAlisveris , tbAVHediyeCeki
                           where tbAlisveris.nMusteriID = @nMusteriID and
                                 tbAlisveris.nAlisverisID = tbAVHediyeCeki.nAlisverisID and
                                 ( tbAVHediyeCeki.sHediyeCekiTipi = 'ParaPU_KAZ' or tbAVHediyeCeki.sHediyeCekiTipi = 'ParaPU_HAR' )
                           group by tbAlisveris.nMusteriID , tbAVHediyeCeki.sHediyeCekiTipi , tbAVHediyeCeki.lTutar , tbAlisveris.nGirisCikis
                           ) as TempPara
                           group by TempPara.MusteriID


 end
        else
 begin
        print 'İŞLEM GERÇEKLEŞTİRİLEMEDİ!!!  İŞLEMİN GERÇEKLEŞTİRİLMESİ İÇİN HER İKİ MÜŞTERİ KODUNUN DA VERİ TABANINDA BULUMASI GEREKIYOR'
 end


 


bu cümleciği kullandıktan sonra silmek istediğim hesapta müşteri sınıfı bulunamadı hatası alıyorum..

 
Gönderildi : 08/04/2010 20:29

(@VolkanCELIK)
Gönderiler: 152
Reputable Member
Konu başlatıcı
 

update tbalisveris  set lFaturaNo='1' where sFisTipi='PAD' and nMusteriID= ( select nMusteriID from tbmusteri where lKodu = @lSilinecekMusteri )

 
Gönderildi : 16/04/2010 16:15

Paylaş: