Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
SSRS and SP
|
|||
|---|---|---|---|
|
#18+
Недавно начал разбираться с SQL Reporting Services, вещь красивая, но некоторые вещи сразу ввели в ступор... Верно ли я понимаю, что для отчета SSRS , если он базируется на хранимой процедуре - можно использовать только один (первый) RecordSet? ссылка Reporting Services supports stored procedures that return only one set of data. If a stored procedure returns multiple result sets, only the first one is used. В текущей архитектуре у меня часто бывает два и более вывода данных из SP , например заголовочная часть и сами данные. Получается, если в качестве средства отчетов я выберу SSRS, то мне надо переписывать все отчёты? Как вы с этим живёте , может быть это в последних версиях исправлено или вы юзаете 1-н отчет -> 1-хранимка или вовсе отказались от хранимок и пользуетесь select - ами (ORM средства например генерят автоматические запросы)? Вообщем на моём первом свидании с SSRS случился конфуз, как быть? :-( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 13:05 |
|
||
|
SSRS and SP
|
|||
|---|---|---|---|
|
#18+
medoedНедавно начал разбираться с SQL Reporting Services, вещь красивая, но некоторые вещи сразу ввели в ступор... Верно ли я понимаю, что для отчета SSRS , если он базируется на хранимой процедуре - можно использовать только один (первый) RecordSet? ссылка Reporting Services supports stored procedures that return only one set of data. If a stored procedure returns multiple result sets, only the first one is used. В текущей архитектуре у меня часто бывает два и более вывода данных из SP , например заголовочная часть и сами данные. Получается, если в качестве средства отчетов я выберу SSRS, то мне надо переписывать все отчёты? Как вы с этим живёте , может быть это в последних версиях исправлено или вы юзаете 1-н отчет -> 1-хранимка или вовсе отказались от хранимок и пользуетесь select - ами (ORM средства например генерят автоматические запросы)? Вообщем на моём первом свидании с SSRS случился конфуз, как быть? :-(Да, все так. Давно не использовал новые версии, но в 2014-м все еще так было. Приходилось изворачиваться, вводя в процедуру доп. параметр, отвечающий за то, какой рекордсет считать и возвращать, и вызывать процедуру несколько раз с разными значениями параметра. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 13:23 |
|
||
|
SSRS and SP
|
|||
|---|---|---|---|
|
#18+
MinamotomedoedНедавно начал разбираться с SQL Reporting Services, вещь красивая, но некоторые вещи сразу ввели в ступор... Верно ли я понимаю, что для отчета SSRS , если он базируется на хранимой процедуре - можно использовать только один (первый) RecordSet? ссылка Reporting Services supports stored procedures that return only one set of data. If a stored procedure returns multiple result sets, only the first one is used. В текущей архитектуре у меня часто бывает два и более вывода данных из SP , например заголовочная часть и сами данные. Получается, если в качестве средства отчетов я выберу SSRS, то мне надо переписывать все отчёты? Как вы с этим живёте , может быть это в последних версиях исправлено или вы юзаете 1-н отчет -> 1-хранимка или вовсе отказались от хранимок и пользуетесь select - ами (ORM средства например генерят автоматические запросы)? Вообщем на моём первом свидании с SSRS случился конфуз, как быть? :-(Да, все так. Давно не использовал новые версии, но в 2014-м все еще так было. Приходилось изворачиваться, вводя в процедуру доп. параметр, отвечающий за то, какой рекордсет считать и возвращать, и вызывать процедуру несколько раз с разными значениями параметра. Как бы это помягче сказать - хммм, это же отвратительно?! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 13:25 |
|
||
|
SSRS and SP
|
|||
|---|---|---|---|
|
#18+
medoedКак бы это помягче сказать - хммм, это же отвратительно?! Отвратительно возвращать из SP более одного набора, динамический набор столбцов и ещё несколько кэйсов . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 13:46 |
|
||
|
SSRS and SP
|
|||
|---|---|---|---|
|
#18+
Ken@tmedoedКак бы это помягче сказать - хммм, это же отвратительно?! Отвратительно возвращать из SP более одного набора, динамический набор столбцов и ещё несколько кэйсов . Насчёт динамики возможно. Но насчёт нескольких рекордсетов не соглашусь (Header и Data)... Зачем мне для этого делать несколько XP? Есть одна процедура которая возвращает наименование клиента например (в заголовке) , а внизу в данных остатки для него. Ну да ладно, это всё лирика... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 14:47 |
|
||
|
SSRS and SP
|
|||
|---|---|---|---|
|
#18+
medoed, да это печаль... зачастую если все N вызова используют общую тяжелую часть, то либо используется трюк с кешированием и сингл транзакшн ... либо все мержится в один датасет с колоночкой sectionId и последующим растаскиванием данных ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 15:02 |
|
||
|
SSRS and SP
|
|||
|---|---|---|---|
|
#18+
buser, Я на будущее, думаю может данные в XML складывать в процедуре, он же поддерживает иерархию данных. А, потом уже на стороне SSRS парсить XML, но это предположение, практика может показать это извратом! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 15:11 |
|
||
|
SSRS and SP
|
|||
|---|---|---|---|
|
#18+
medoed, Добавть два параметра @show_header и @show_details и делать два ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 15:11 |
|
||
|
SSRS and SP
|
|||
|---|---|---|---|
|
#18+
Гавриленко Сергей Алексеевичmedoed, Добавть два параметра @show_header и @show_details и делать два Да, конечно , это было бы логичным, особенно , если систему только начинаешь проектировать, но... Получается, я свою базу и все текущие XP в ней должен подстроить под ограничения SSRS , добавляя в каждую процедуру служебные параметры. Подумаешь, перекомпилить 200 процедур для отчетов,а если ResulSet -ов несколько, то вообще песня! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 15:16 |
|
||
|
SSRS and SP
|
|||
|---|---|---|---|
|
#18+
medoedГавриленко Сергей Алексеевичmedoed, Добавть два параметра @show_header и @show_details и делать два Да, конечно , это было бы логичным, особенно , если систему только начинаешь проектировать, но... Получается, я свою базу и все текущие XP в ней должен подстроить под ограничения SSRS , добавляя в каждую процедуру служебные параметры. Подумаешь, перекомпилить 200 процедур для отчетов,а если ResulSet -ов несколько, то вообще песня! Вам в любом случае делать отчеты RS, в рамках этой работы и разделением заниматься. Как вариант - в процедуре заполнять некоторые кэширующие таблицы, с некоторым идентификатором, в процедуре в первом датасете возвращать идентификатор. Дальше написать небольшие процедуры, которые по идентификатору будут из кэширующих таблиц просто читать данные. Тут может быть два подхода, как эти данные потом очищать - либо в рамках определенного мэйнтенанс-плана, либо добавить отдельную процедуру, которая будет только подчищать таблицы, и в рамках выполнения отчета эту процедуру в конце вызывать. В любом случае какого то единого подхода я не знаю. С XML не советовал бы связываться, не помню ничего хорошего о его использовании в RS, может и ошибаюсь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 15:39 |
|
||
|
SSRS and SP
|
|||
|---|---|---|---|
|
#18+
MinamotoВам в любом случае делать отчеты RS, в рамках этой работы и разделением заниматься. Как вариант - в процедуре заполнять некоторые кэширующие таблицы, с некоторым идентификатором, в процедуре в первом датасете возвращать идентификатор. Дальше написать небольшие процедуры, которые по идентификатору будут из кэширующих таблиц просто читать данные. Тут может быть два подхода, как эти данные потом очищать - либо в рамках определенного мэйнтенанс-плана, либо добавить отдельную процедуру, которая будет только подчищать таблицы, и в рамках выполнения отчета эту процедуру в конце вызывать. В любом случае какого то единого подхода я не знаю. С XML не советовал бы связываться, не помню ничего хорошего о его использовании в RS, может и ошибаюсь. Вас понял, благодарю за опытные советы! Без опыта с SSRS я бы набил шишек... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 15:58 |
|
||
|
SSRS and SP
|
|||
|---|---|---|---|
|
#18+
medoed, в некоторых случаях можно использовать общий ненормализованный датасет, в котором будут дублироваться данные шапки в каждой строке деталей, например. Но последствия этого решения очевидны - увеличение объема данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 16:19 |
|
||
|
SSRS and SP
|
|||
|---|---|---|---|
|
#18+
Кстати, это еще одна причина не использовать процедуры для получения наборов данных в концепции приложения в целом. Данные должны возвращать только запросы с использованием таблиц, функций и представлений. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 16:22 |
|
||
|
SSRS and SP
|
|||
|---|---|---|---|
|
#18+
Владислав Колосовmedoed, в некоторых случаях можно использовать общий ненормализованный датасет, в котором будут дублироваться данные шапки в каждой строке деталей, например. Но последствия этого решения очевидны - увеличение объема данных. Да и возможно этот способ быстрее по реализации, нежели XML, только выводиться будет медленнее и нагрузка на сеть вырастет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.08.2019, 16:23 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=39849880&tid=1687398]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
134ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
| others: | 221ms |
| total: | 447ms |

| 0 / 0 |
