Uzak Sunucu Üzerinde Çalışan Prosedür’den Kayıt Sayısı Almak | MsSql

Merhaba,
Linked server üzerinde bulunan bir stored prosedürü çalıştırıp kaç tane kaydı güncellediğini bilmem gerekiyordu.
Birden fazla güncelleme işlemi yapılıyordu ilgili prosedürde.
Uzak sunucuda yazdığım stored prosedürde her güncelleme işleminden sonra aşağıdaki şekilde değişkeni güncelledim.

CREATE PROCEDURE [dbo].[PRC_U_KAPATBAKIYE_UZAK] 
							@FirmaKodu VARCHAR(2),
							@CustOrderNumXml nvarchar(max),
							@GuncellenenKayitSayisi int output
SET NOCOUNT OFF;

update.......
......
select @GuncellenenKayitSayisi = @@ROWCOUNT;

update.......
......
set @GuncellenenKayitSayisi = @GuncellenenKayitSayisi + @@ROWCOUNT;

Uzak sunucudaki SP’yi çağırdığım ana prosedürüm de bu şekilde:

CREATE PROCEDURE [dbo].[PRC_U_KAPATBAKIYE] 
							@FirmaKodu VARCHAR(2),
							@CustOrderNumXml nvarchar(max),
							@GuncellenenKayitSayisi int output
AS 
SET NOCOUNT OFF;

declare @Parms nvarchar(max) = '';
declare @SqlCmd AS nvarchar(max) = '';
declare @guncellenenKayitSayisi int = 0;
			set @Parms = '@FirmaKodu VARCHAR(2), @CustOrderNumXml nvarchar(max), @GuncellenenKayitSayisi int output';
			set @SqlCmd = 'EXEC [000.000.000.000].[Katalog].[dbo].[PRC_U_KAPATBAKIYE_UZAK] 
															@FirmaKodu = @FirmaKodu, 
															@CustOrderNumXml = @CustOrderNumXml,
															@GuncellenenKayitSayisi = @GuncellenenKayitSayisi OUTPUT';
			EXEC sp_executesql @SqlCmd
							 , @Parms
							 , @FirmaKodu
							 , @strXml
							 , @guncellenenKayitSayisi OUTPUT;

Selamlar.

Leave a Reply

Your email address will not be published. Required fields are marked *