Forum

Satıcı Rumuzları i&...
 
Bildirimler
Hepsini Temizle

Satıcı Rumuzları için SQL talep

8 Yazılar
2 Üyeler
0 Reactions
693 Görüntüleme
(@sabriyilmaz)
Gönderiler: 69
Estimable Member
Konu başlatıcı
 

Merhaba,


 


Satıcı Kod'larındaki bir mağazaya ait tüm Satıcı Rumuz'ları, tek bir rumuzda birleşssin şeklinde bir Sql lazım. Destek menüsünden tek tek yapmak baya meşakkatli.


İyi çalışmalar


 

 
Gönderildi : 25/07/2009 04:01

(@orhanakdogan)
Gönderiler: 311
Reputable Member
 

Merhaba,


Aşağıdaki SQL istenen mağazadaki tüm satışları, istenen satıcı koduna taşır,
ve bu mağazaya ait istenen haricindeki satıcı kodlarını siler.


declare @hangimagaza  as varchar(10)
declare @hangisatici  as varchar(10)
set @hangimagaza  = ''                                                              -----------> Mağaza kodunu giriniz
set @hangisatici  = 'DG'                                                             -----------> Satıcı kodunu giriniz
update tbStokFisiDetayi set sSaticiRumuzu = @hangisatici
from tbSaticiMagaza
where ( sFisTipi = 'P' or sFisTipi = 'PD' or sFisTipi = 'PTX' or sFisTipi = 'KS' or sFisTipi = 'K' ) and
tbStokFisiDetayi.sSaticiRumuzu = tbSaticiMagaza.sSaticiRumuzu and tbSaticiMagaza.sMagaza= @hangimagaza
update tbAlisverisSiparis set sSaticiRumuzu = @hangisatici from tbAlisveris
where tbAlisveris.nAlisverisID = tbAlisverisSiparis.nAlisverisID  and sMagazaKodu= @hangimagaza
delete tbSaticiMagaza from tbsatici,tbSaticiMagaza
where tbSaticiMagaza.sMagaza= @hangimagaza
and tbsatici.sSaticiRumuzu <> @hangisatici and rtrim(tbsatici.sSaticiRumuzu)<>''
Delete tbsatici FROM tbSatici LEFT OUTER JOIN tbSaticiMagaza ON tbSatici.sSaticiRumuzu = tbSaticiMagaza.sMagaza
where sMagaza=null and rtrim(tbsatici.sSaticiRumuzu) <> ''

 
Gönderildi : 25/07/2009 12:22

(@sabriyilmaz)
Gönderiler: 69
Estimable Member
Konu başlatıcı
 

Teşekkür ederim Orhan Bey


 

 
Gönderildi : 26/07/2009 03:42

(@sabriyilmaz)
Gönderiler: 69
Estimable Member
Konu başlatıcı
 

Tekrar merhaba,


Orhan Bey, deneme db de uyguladım. Çok kullanışlı ancak bir sorun var, eski Satıcı Rumuz'ları a,b,c....v,y,z ile başlayan harflerle açılmıştı. Yeni açılan Satıcı Rumuzları rakamlı idi. Cümleyi çalıştırdığımda harf yada rakam ayrımı yapmadan bütün Satıcı Rumuz'larını istenilen koda aktarıyor. Şansımı zorlayarak şöyle diyeyim; "Sadece a,b,c...v,y,z ile başlayan Satıcı Rumuz'ları değişsin.


Not: Satıcı kodları çok fazla, bazılarına mağaza kodu girilmiş bazılarına girilmemiş. Mağaza ayrımı yapmayacağım.


Verdiğiniz cümlede uygulama mı aşağıda veriyorum.Mağaza bölümünü boş bıraktım.


 


declare @hangisatici as varchar(10)


set @hangimagaza = ''


set @hangisatici = '1111'


update tbStokFisiDetayi set sSaticiRumuzu = @hangisatici


 


Teşekkür ederim.

 
Gönderildi : 28/07/2009 03:38

(@orhanakdogan)
Gönderiler: 311
Reputable Member
 

Aşağıdaki sorgu ile sadece  kullanıcı adı harf ile başlayanlar dikkate alınacaktır.


declare @hangimagaza  as varchar(10)
declare @hangisatici  as varchar(10)
set @hangimagaza  = ''                                                              -----------> Mağaza kodunu giriniz
set @hangisatici  = 'DG' 
                                                           -----------> Satıcı kodunu giriniz
Update tbStokFisiDetayi set sSaticiRumuzu = @hangisatici
from tbSaticiMagaza
where ( sFisTipi = 'P' or sFisTipi = 'PD' or sFisTipi = 'PTX' or sFisTipi = 'KS' or sFisTipi = 'K' ) and
tbStokFisiDetayi.sSaticiRumuzu = tbSaticiMagaza.sSaticiRumuzu and tbSaticiMagaza.sMagaza= @hangimagaza
and sSaticiRumuzu between 'a' and 'zzzzzzzzzzzzzz'


Update tbAlisverisSiparis set sSaticiRumuzu = @hangisatici from tbAlisveris
where tbAlisveris.nAlisverisID = tbAlisverisSiparis.nAlisverisID  and sMagazaKodu= @hangimagaza
and sSaticiRumuzu between 'a' and 'zzzzzzzzzzzzzz'


Delete tbSaticiMagaza from tbsatici,tbSaticiMagaza
where tbSaticiMagaza.sMagaza= @hangimagaza and sSaticiRumuzu between 'a' and 'zzzzzzzzzzzzzz'
and tbsatici.sSaticiRumuzu <> @hangisatici and rtrim(tbsatici.sSaticiRumuzu)<>''


Delete tbsatici FROM tbSatici LEFT OUTER JOIN tbSaticiMagaza ON tbSatici.sSaticiRumuzu = tbSaticiMagaza.sMagaza
where sMagaza=null and rtrim(tbsatici.sSaticiRumuzu) <> '' and sSaticiRumuzu between 'a' and 'zzzzzzzzzzzzzz'

 
Gönderildi : 29/07/2009 04:07

(@sabriyilmaz)
Gönderiler: 69
Estimable Member
Konu başlatıcı
 

Merhaba Orhan Bey,


Cümle çalışmadı. Bir resim gönderiyorum, sorunumu belki daha ayrıntılı ifade eder.



İyi çalışmalar

 
Gönderildi : 29/07/2009 23:20

(@orhanakdogan)
Gönderiler: 311
Reputable Member
 

Hatalıymış bir önceki, bunun çalışması lazım .


declare @hangimagaza  as varchar(10)
declare @hangisatici  as varchar(10)
set @hangimagaza  = ''      -----------> Mağaza kodunu giriniz                                                       
set @hangisatici  = '11'    -----------> Satıcı kodunu giriniz
                                                        
Update tbStokFisiDetayi set sSaticiRumuzu = @hangisatici
from tbSaticiMagaza
where ( sFisTipi = 'P' or sFisTipi = 'PD' or sFisTipi = 'PTX' or sFisTipi = 'KS' or sFisTipi = 'K' ) and
tbStokFisiDetayi.sSaticiRumuzu = tbSaticiMagaza.sSaticiRumuzu and tbSaticiMagaza.sMagaza= @hangimagaza
and tbStokFisiDetayi.sSaticiRumuzu between 'a' and 'zzzzzzzzzzzzzz'
Update tbAlisverisSiparis set sSaticiRumuzu = @hangisatici from tbAlisveris
where tbAlisveris.nAlisverisID = tbAlisverisSiparis.nAlisverisID  and sMagazaKodu= @hangimagaza
and sSaticiRumuzu between 'a' and 'zzzzzzzzzzzzzz'
Delete tbSaticiMagaza where sSaticiRumuzu between 'a' and 'zzzzzzzzzzzzzz'
Delete tbsatici where sSaticiRumuzu between 'a' and 'zzzzzzzzzzzzzz'

 
Gönderildi : 30/07/2009 00:12

(@sabriyilmaz)
Gönderiler: 69
Estimable Member
Konu başlatıcı
 

🙂 Ben istedim bir göz; siz verdiniz iki göz.Elinize sağlık. Cümle çok güzel çalışıyor, üstüne atıla düşen diğer satıcı kodlarınıda siliyor.


İyi çalışmalar

 
Gönderildi : 30/07/2009 02:52

Paylaş: