powered by simpleCommunicator - 2.0.35     © 2025 Programmizd 02
Форумы / Отчетные системы [игнор отключен] [закрыт для гостей] / SSRS хранимые процедуры
9 сообщений из 9, страница 1 из 1
SSRS хранимые процедуры
    #39565851
MarcusRid
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!
Может быть кто сталкивался с такой задачей. Есть уже готовая хранимая процедура (на прямой запрос в БД доступа нет, админы базы предоставили такой вариант), где с начала хранимка по условному параметру получает результат из БД и записывает ее в буфер DBMS_OUTPUT, далее забираем от туда данные селектом.

Пример:
1. EXECUTE DBO.FIXMAIN('procedure_name',' ID ');

2. select
ID as "ID Записи",
RESULT1,
RESULT2,
RESULT3
from dbo.select_result
where ID = ' ID '

По сути мне нужно, что бы при запуске отчета с начала отрабатывала данная хранимка и уже потом DataSet получал значения параметров селектом, которые бы я выводил в отчете.

Это возможно реализовать и как? Проблема собственно заключается в запуске хранимки.
...
Рейтинг: 0 / 0
SSRS хранимые процедуры
    #39565927
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MarcusRid, как-как, ровно так, как вы написали. Объедините вызов этой процедуры с селектом. Или вопрос в этом Dataset Execution Order ?
...
Рейтинг: 0 / 0
SSRS хранимые процедуры
    #39565939
TJ001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MarcusRid,

Вы пытаетесь запустить хранимку из конструктора запросов? Не смотря на то, что конструктор ругается, хранимка все равно отрабатывает

выполняем в SSMS
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
drop procedure if exists Proc1
go
CREATE PROCEDURE Proc1
	-- Add the parameters for the stored procedure here
	@Param1 int
AS
BEGIN
	-- SET NOCOUNT ON added to prevent extra result sets from
	-- interfering with SELECT statements.
	SET NOCOUNT ON;

    -- Insert statements for procedure here
    drop table if exists ##t1
	SELECT @Param1 Param1 into ##t1
END
GO



пишем запрос в датасете
Код: sql
1.
2.
3.
4.
5.
exec proc1 1

select * from ##t1

drop table if exists ##t1



и все прекрасно отрабатывает

По описанию не до конца понятно что Вас не устраивает
еще может быть просто нет прав на хранимку у того пользователя, из под которого выполняется отчет...
...
Рейтинг: 0 / 0
SSRS хранимые процедуры
    #39566463
MarcusRid
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо за помощь, все получилось! Действительно хранимка отрабатывает не смотря на то, что SSRS ругается при сохранении отчета. Проблему с запуском решил проще, хранимку запихнул в DataSet2, а запрос в таблицу в другой DataSet с самым последним порядковым номером в отчете, в итоге все успевает отработать, отчёт формируется корректно.
...
Рейтинг: 0 / 0
SSRS хранимые процедуры
    #39566711
TJ001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MarcusRid,
А Вы уверены, что хранимка запускается первой и успевает отработать к тому моменту, как соседний датасет начнет запрашивать результат ее работы?

Как я понимаю, в Вашем случае важна последовательность

Может получиться так, что сначала отработает SELECT и достанет устаревшие данные, а лишь после EXEC вставит новые, но этого уже никто не увидит...
...
Рейтинг: 0 / 0
SSRS хранимые процедуры
    #39566716
TJ001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
SSRS хранимые процедуры
    #39567139
LSV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
офф: У меня с ХП была небольшая засада. Если не указать в первой строке SET NOCOUNT ON, то приложение отказывается с ней работать. (QlikView есличо). Не сразу догадался, в чем затык.
...
Рейтинг: 0 / 0
SSRS хранимые процедуры
    #39567584
qwertEHOK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
почему бы вместо хранимки не использовать функцию?

я у себя так делаю
Код: sql
1.
select * from test_function(@param)
...
Рейтинг: 0 / 0
SSRS хранимые процедуры
    #39568267
LSV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
qwertEHOKпочему бы вместо хранимки не использовать функцию?

я у себя так делаю
Код: sql
1.
select * from test_function(@param)

Для простых случаев - норм. А если нужно поработать с времянками, то фонарь.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Отчетные системы [игнор отключен] [закрыт для гостей] / SSRS хранимые процедуры
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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