Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Отчетные системы [игнор отключен] [закрыт для гостей] / Reporting Services: Получить код возврата процедуры в переменную / 5 сообщений из 5, страница 1 из 1
13.01.2012, 12:55
    #37612812
ъ
ъ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Reporting Services: Получить код возврата процедуры в переменную
Приветствую, уважаемый all !

есть ХП на МС СКЛ 2005, по которой строится отчет в RS
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
create  procedure [dbo].[MyProc] 
	par1	int,
	par2	int
as
begin
	declare @flag int
	--
	select @flag=flag from MyTab1 where f1=par1 and f2=par2
	--
	select f3, f4 from MyTab2 where f1=par1 and f2=par2
	--
	return @flag
end


можно ли (и как? )) ), получить возвращаемое процедурой значение (return @flag), например, в переменную отчета,
и использовать в условном форматировании ?

спасибо !
...
Рейтинг: 0 / 0
13.01.2012, 17:45
    #37613655
user89
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Reporting Services: Получить код возврата процедуры в переменную
ъ,

1. Попробовать ХП переписать в функцию
2. Возвращение данных с помощью параметров OUTPUT
...
Рейтинг: 0 / 0
13.01.2012, 20:25
    #37613936
ъ
ъ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Reporting Services: Получить код возврата процедуры в переменную
user89ъ,

1. Попробовать ХП переписать в функцию
2. Возвращение данных с помощью параметров OUTPUT

>> 1. Попробовать ХП переписать в функцию

а что это даёт ?
я "с таким же успехом" могу вернуть эту константу и из процедуры в селекте
Код: sql
1.
2.
3.
	select @flag=flag from MyTab1 where f1=@par1 and f2=@par2
	--
	select @flag, f3, f4 from MyTab2 where f1=@par1 and f2=@par2


только вот, что с этим "счастьем" делать дальше ?
не нужен мне "столбик" констант, - нужно одно значение, что бы по нему отформатировать одно поле (точнее - заголовок поля) в заголовке отчета

>> Возвращение данных с помощью параметров OUTPUT

нуу, тогда вопрос будет звучать НЕ как "получить возвращаемое процедурой значение в RS", а как "получить OUTPUT-параметр процедуры в RS" :(

по крайней мере, "в лоб", так сделать - у меня не получилось
1
добавил OUTPUT-параметр, в ХП - ему задаётся значение, в MSSMS - всё выполняется, значение параметра - выводится (при вызове, разумеется как exec SP @p1, @p2, @flag OUTPUT)
2
в отчете RS - добавил новый параметр, а вот где задать, что он OUTPUT ?
в свойствах параметра, ничего похожего не видно ....

сделал текстбокс в заголовке отчета, с источником - этот параметр
ХП - выполняется, отчет выводит, НО в текстбоксе - пусто ...
...
Рейтинг: 0 / 0
13.01.2012, 21:40
    #37614038
Ложка соли
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Reporting Services: Получить код возврата процедуры в переменную
ъ,

Создайте новый Датасет, в котором вызывается ваша процедура/функция/просто запрос. Лишь бы возвращался этот нужный вам параметр.

Потом создаете новый параметр отчета, и задаете ему значение из Датасета.

Если пользователь не должен манипулировать эти параметром, поставьте галочку Hidden.

Для использования значения параметра пишите Parameters@YourParamName.Value
...
Рейтинг: 0 / 0
16.01.2012, 20:53
    #37617095
ъ
ъ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Reporting Services: Получить код возврата процедуры в переменную
Ложка солиъ,

Создайте новый Датасет, в котором вызывается ваша процедура/функция/просто запрос. Лишь бы возвращался этот нужный вам параметр.

Потом создаете новый параметр отчета, и задаете ему значение из Датасета.

Если пользователь не должен манипулировать эти параметром, поставьте галочку Hidden.

Для использования значения параметра пишите Parameters@YourParamName.Value
Спасибо !
так и сделал

..."осадочек", правда какой-то остался :)
пришлось доп.ХП создавать под этот Датасет, с такими же входными параметрами, и возвращающёй "всего-то" - select @flag

...вообщем жаль, конечно, что через код возврата/OUTPUT-параметр - нельзя..."покрасивше" было бы :)
...
Рейтинг: 0 / 0
Форумы / Отчетные системы [игнор отключен] [закрыт для гостей] / Reporting Services: Получить код возврата процедуры в переменную / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]