powered by simpleCommunicator - 2.0.35     © 2025 Programmizd 02
Форумы / Отчетные системы [игнор отключен] [закрыт для гостей] / Группировка по параметрам
9 сообщений из 9, страница 1 из 1
Группировка по параметрам
    #39598088
myrzilka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.
Есть отчет, в нем есть параметр, который может принимать несколько значений. Как сделать разбивку по страницам по каждому выбранному параметру?
Знаю как сделать по полю.. И этот параметр можно записать в поле и уже по этому полю группировать. Но это работает, если только выбрать одно значение. Когда выбранных значений больше одного - ошибка.
Помогите, пожалуйста.
...
Рейтинг: 0 / 0
Группировка по параметрам
    #39598306
andrst65
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Создаем НЕСКОЛЬКО одинаковых таблиц (матриц) в шаблоне отчета.

Каждая такая таблица (матрица) связана обычно с некоей ХП, в одном из парметров которой и должен быть указано значение 1 - 2 -3 и т.д. Такой параметр и надо передавать в датасет, связанный с каждой таблицей (матрицей), например. у меня реализовано так:

exec [dbo].[pMonLastnewNac] 1, @dt -- датасет 1 на листе1
exec [dbo].[pMonLastnewNac] 2, @dt -- датасет2 на листе 2
exec [dbo].[pMonLastnewNac] 3, @dt -- датасет 3 на листе 3

Здесь 1-2-3 номер листа на котором должны в конце концов пропечататься ваши данные. У меня это номер филиала.

В свойствах табликса каждой таблицы (матрицы), кроме последней, активировать флажок "Вставить разрыв страницы после" (см вложение)

Далее в свойствах табликса найти строку "namePage" (как-то так) и ввести желаемое имя каждого листа.

Вроде все если я правильно вообще понял суть проблемы и речь идет об репортинге
...
Рейтинг: 0 / 0
Группировка по параметрам
    #39598311
tashkafox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
andrst65,
Для вашего случая реализацию с List не рассматривали? (чтобы не делать копии таблиц)
Только тогда датасет должен возвращать данные для всех выбранных филиалов.
...
Рейтинг: 0 / 0
Группировка по параметрам
    #39598318
myrzilka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
tashkafox , а можно ли создавать таблицу под каждый параметр? у меня таблица выглядит правильно, если выбрать только один параметр. Но мне надо получить три разных листа с правильными таблицами. если я укажу в датасет сразу три параметра, то данные будут не совсем верные. Поэтому и хочу строить таблицу для каждого параметра отдельно.
...
Рейтинг: 0 / 0
Группировка по параметрам
    #39598320
andrst65
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
tashkafox,
я готов обсудить, но боюсь человек-автор запутается окончательно...

Мне так как-то быстрее и удобнее реализовать. На скорость, т.е. фактическое 4-х кратное исполнение процедуры - наплевал...
...
Рейтинг: 0 / 0
Группировка по параметрам
    #39598328
tashkafox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
myrzilka,
Я вашу задачу не очень поняла.
Может быть вы неправильно передаете мульти-параметр в датасет?
https://www.mssqltips.com/sqlservertip/2866/sql-server-reporting-services-using-multivalue-parameters/
...
Рейтинг: 0 / 0
Группировка по параметрам
    #39598436
myrzilka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
tashkafox,
параметры правильно передаю (как я думаю :)).
Постараюсь пояснить, что я хочу. Есть порядковые номера и есть офисы, у которых есть номера, но не все.

надо вывести по каждому офису - а и b такие таблицы на каждом отдельном листе. Как это можно сделать?
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Номер	Офис
1	a
2	a
3	null
4	null
5	a
6	a
7	null
8	a
9	a
10	a


Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Номер	Офис
1	b
2	b
3	b
4	b
5	null
6	b
7	null
8	b
9	b
10	b
...
Рейтинг: 0 / 0
Группировка по параметрам
    #39598485
tashkafox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
myrzilka,
Параметром офисы фильтруете?
Тогда создаете датасет со следующей структурой (самое сложное видимо)
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
ОфисГруппа Номер	Офис
a	1	a
a	2	a
a	3	null
a	4	null
a	5	a
a	6	a
a	7	null
a	8	a
a	9	a
a	10	a
b	1	b
b	2	b
b	3	b
b	4	b
b	5	null
b	6	b
b	7	null
b	8	b
b	9	b
b	10	b


Добавляете на страницу отчета элемент List, настраиваете ему группировку по ОфисГруппа.
Внутрь List'a вставляете таблицу, которая будет брать данные из того же датасета. Внутри можно также добавить текстбоксы, графики и еще таблицы, главное чтобы они были связаны всё с тем же датасетом.
Настраиваете разрывы страниц (PageBreak) после каждой группы List'a и указываете имена вкладок (PageName, напр. = ОфисГруппа.Value)
Для каждого уникального ОфисГруппа будет нарисовано содержимое листа с соответствующими данными столько раз, сколько есть уникальных ОфисГруппа.
Чтобы осмыслить работу List'a потренируйтесь на каком-нибудь простом запросе в датасет.
...
Рейтинг: 0 / 0
Группировка по параметрам
    #39598708
myrzilka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
tashkafox , я так и хочу. Только не знаю как такой датасет сделать(((
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Отчетные системы [игнор отключен] [закрыт для гостей] / Группировка по параметрам
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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