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

Откуда: Киев
Сообщений: 77
Ксть такая ХП

ALTER    PROCEDURE exp_CopyOfferBoxWithLocation
		(@id as int, @RfrrId int, @user as nvarchar(10), @newId int OUTPUT)AS
--	SET NOCOUNT ON

	declare @newOfferBoxLocation int
	declare @Pos_id int

	select 'newId'
	execute @newId = exp_CopyOfferBox @id , @user

	select 'PosId'
	select  @Pos_id = id  from rfrr where Id = @newId

	select 'newOfferBoxLocation'
	Execute  @newOfferBoxLocation = exp_RelocateOfferboxLocation @newId, @pos_id, 1
GO

после вызова
	execute @newId = exp_CopyOfferBox @id , @user
у newId правельное значение. Но после выполнения ХП - значение у newId - 0.
Что-то не так я делаю?
12 апр 05, 11:27    [1460052]     Ответить | Цитировать Сообщить модератору
 Re: Проблемма с возвращение значения в Output параметрах  [new]
vooo
Member

Откуда:
Сообщений: 1316
в данном случае нужно посмотреть значение параметра, возвращаемого RETURN'ом из exp_CopyOfferBox
12 апр 05, 11:34    [1460096]     Ответить | Цитировать Сообщить модератору
 Re: Проблемма с возвращение значения в Output параметрах  [new]
iSestrin
Member

Откуда: Новосибирск
Сообщений: 3811
нее, при вызове надо сказать, что out
12 апр 05, 11:35    [1460102]     Ответить | Цитировать Сообщить модератору
 Re: Проблемма с возвращение значения в Output параметрах  [new]
Glory
Member

Откуда:
Сообщений: 104760
BOL - EXECUTE - Example B
12 апр 05, 11:37    [1460124]     Ответить | Цитировать Сообщить модератору
 Re: Проблемма с возвращение значения в Output параметрах  [new]
vooo
Member

Откуда:
Сообщений: 1316
в данном случае нужно посмотреть значение параметра, возвращаемого RETURN'ом из exp_CopyOfferBox


извеняюсь - не так понял вопрос
см iSestrin
12 апр 05, 11:38    [1460127]     Ответить | Цитировать Сообщить модератору
 Re: Проблемма с возвращение значения в Output параметрах  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
автор
Но после выполнения ХП - значение у newId - 0.
Что-то не так я делаю?


А где Вы его проверяете? если параметр выходной, то в вызове хп OUTPUT тоже надо дописывать.
12 апр 05, 11:38    [1460130]     Ответить | Цитировать Сообщить модератору
 Re: Проблемма с возвращение значения в Output параметрах  [new]
Allvin
Member

Откуда: Киев
Сообщений: 77
вызываю так
DECLARE @RC int
DECLARE @id int
DECLARE @RfrrId int
DECLARE @user nvarchar(10)
DECLARE @res int
select @res = 1
SELECT @id = 1558
SELECT @RfrrId = 206
SELECT @user = N'we'
EXEC @RC = [expedia_psfnet].[dbo].[exp_CopyOfferBoxWithLocation] @id, @RfrrId, @user, @res  output
select @res
12 апр 05, 12:06    [1460284]     Ответить | Цитировать Сообщить модератору
 Re: Проблемма с возвращение значения в Output параметрах  [new]
Allvin
Member

Откуда: Киев
Сообщений: 77
а как надо получать знвчение из ХП которая возвращает набор данных
т.е. в конце хп написанно что то вроде
select @new_id
declare @tt  int
select @tt = new_id  from my_stored_procedure (3,2)

так ?
12 апр 05, 12:30    [1460402]     Ответить | Цитировать Сообщить модератору
 Re: Проблемма с возвращение значения в Output параметрах  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37101
execute  exp_CopyOfferBox @id , @user, @newId out
12 апр 05, 12:32    [1460413]     Ответить | Цитировать Сообщить модератору
 Re: Проблемма с возвращение значения в Output параметрах  [new]
Allvin
Member

Откуда: Киев
Сообщений: 77
ХП я менять не могу.
а в её описании не один параметр не описан как Output ....
12 апр 05, 12:34    [1460431]     Ответить | Цитировать Сообщить модератору
 Re: Проблемма с возвращение значения в Output параметрах  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74925
Allvin
а как надо получать знвчение из ХП которая возвращает набор данных
т.е. в конце хп написанно что то вроде
select @new_id
declare @tt  int
select @tt = new_id  from my_stored_procedure (3,2)

так ?


Нет, не так.

CREATE TABLE @Temp(tt int)
INSERT INTO
exec my_stored_procedure 3, 2

Отсюда вопрос - на кой 1 значение из хп возвращать в виде набора?!
12 апр 05, 12:51    [1460544]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить