Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Хранимая процедура отрабатывает, но не возвращает данные...  [new]
smuchka
Member

Откуда:
Сообщений: 33
1. Создал хранимую процедуру:

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE procGetBalance 
	@idPayment int = 0,
	@SummaRez money = 1 OUTPUT
AS
BEGIN
	SET NOCOUNT ON;
	DECLARE @SummaDebit money = 0.0;
	DECLARE @SummaKredit money = 0.0;

	SET @SummaDebit = (SELECT SUM(A.Ammount) 
	FROM dbo.Payments as A 
	WHERE A.idPayment = @idPayment);
	PRINT 'Было оплачено: '; PRINT @SummaDebit;
	
	SET @SummaKredit = (SELECT SUM(A.Ammount) 
	FROM dbo.Payments as A 
	WHERE A.idReversalPaySys = @idPayment);
	PRINT 'Возвращенно: '; PRINT @SummaKredit;

	SET @SummaRez = @SummaDebit - @SummaKredit;
	PRINT 'Текущий баланс'; PRINT @SummaRez;
END
GO


2. Вызываю хранимую процедуру:
DECLARE @SummaRez money = 0.0;
EXEC procGetBalance 21, @SummaRez;
PRINT 'Результат: '; PRINT @SummaRez;


3. Результат работы:

Было оплачено: 922337203685477.00
Возвращенно: 22337203797812.00
Текущий баланс 899999999887665.00

Результат: 0.00

Насколько я понимаю и планировал переменная Результат(@SummaRez) после вызова процедуры должна совпадать со значением Текущий баланс внутри процедуры. Т.е. я возвращал это значение.
Возможно делаю что-то не то???
Подскажите пожалуйста в чем проблема. Заранее спасибо...
20 мар 12, 22:19    [12284520]     Ответить | Цитировать Сообщить модератору
 Re: Хранимая процедура отрабатывает, но не возвращает данные...  [new]
daw
Member

Откуда: Муром -> Москва
Сообщений: 7381
output еще и при вызове говорить надо:

EXEC procGetBalance 21, @SummaRez output;
20 мар 12, 22:26    [12284545]     Ответить | Цитировать Сообщить модератору
 Re: Хранимая процедура отрабатывает, но не возвращает данные...  [new]
smuchka
Member

Откуда:
Сообщений: 33
daw, да. точно. Спасибо большое!
20 мар 12, 22:43    [12284642]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить