Подотчеты стараются держать вместе, оставляя пустые места / страницы - PullRequest
8 голосов
/ 11 марта 2009

Службы отчетности 2005

Мой макет выглядит так:

  • У меня есть основной отчет, который содержит таблицу
  • Эта таблица содержит 3 группы: GrpLevel1, GrpLevel2, GrpLevel3
  • Подотчеты добавляются в одну из 3 групп и выполняются с передачей этого группового ключа в подотчет

Таким образом, отдельный подотчет будет выполняться на GrpLevel1, и для каждого содержащегося в нем уровня 2 будут выполняться подотчеты в GrpLevel2.

Проблемы, с которыми я сталкиваюсь, заключаются в том, что подотчеты хотят перейти на следующую страницу, оставляя пробел в отчете.

Если подотчет содержит таблицу с кучей данных, и он не может поместиться на 3/4 страницы (на первой странице отчета заголовок отчета вверху на 1/4), он переместится целиком на на следующей странице остается только заголовок, а не печать того, что он может на первой странице.

На столе у ​​меня отключено «Держаться вместе».

Я в растерянности и собираюсь поджечь мой куб. Понимание этого очень приветствуется.

ОБНОВЛЕНИЕ **************** Это исправлено в SSRS 2008 R2 **************** *******
Исправлено в (SQL Server) службах отчетов 2008 R2. Теперь вы можете включить KeepTogether в подотчетах. Нумерация страниц выглядит намного лучше.

Ответы [ 6 ]

6 голосов
/ 04 мая 2009

Похоже, что нет решения этой проблемы. Microsoft подтверждает ошибку, но в SSRS2008 она все еще не исправлена.

Из статьи базы знаний (http://support.microsoft.com/kb/938943)

)

Такое поведение происходит потому, что Подотчетный контроль имеет неявный Свойство KeepTogether. По дизайну Свойство KeepTogether пытается сохранить содержание подотчета на одной странице. Из-за этого поведения отчет двигатель создает пустое пространство на главной сообщить, если подотчет не подходит на той же странице, что и основной отчет. Затем механизм отчетов создает подотчет на новой странице.

Обход, который они перечисляют, по сути, «не используйте подотчеты»

4 голосов
/ 16 мая 2012

Я не уверен насчет более ранней версии SSRS, но я столкнулся с такой же проблемой в SSRS 2008.

Решение состоит в том, чтобы изменить свойство Subreport в Code.

  1. Перейдите в обозреватель решений, щелкните правой кнопкой мыши свой отчет и выберите «Просмотреть код».

  2. Поиск вашего подотчета.

  3. Внутри тега подотчета вы найдете "<KeepTogether>", для которого будет установлено значение "true", измените его на "false"

Это свойство недоступно для дизайнера и должно быть изменено из фактического XML-кода отчета.

1 голос
/ 27 сентября 2010

щелкните правой кнопкой мыши подотчет и выберите формат подотчета, затем снимите флажок держать объект вместе

0 голосов
/ 01 марта 2014

Для SSRS 2008 Если ваши подотчеты принадлежат какой-либо группе, вы должны перейти к свойствам группы и переключить свойство keep Together для этой группы (групп) на false. Это сработало для меня.

0 голосов
/ 26 июля 2013

Мне потребовалась неделя, чтобы решить это! Но я нашел решение и рад поделиться им с вами.

У меня была точно такая же проблема. В моем основном отчете есть таблица, в которой есть 3 группы и 2 разных подотчета в каждой группе. И у этих подотчетов были матрицы. Я полагаю, что независимо от матриц подотчеты, размещенные внутри групповых / подробных полос в таблице, приводили к печати большого количества ненужных пустых страниц до, между и после секций. Это была боль в шее, и я думал об удалении подотчетов, но тогда это противоречит всей цели отчета.

Итак, наконец, что это исправило, вместо того, чтобы поместить подотчет в ПОДРОБНЫЕ группы групп в таблице, поместите их в Нижний колонтитул групп. Теперь я знаю, что это может изменить / повлиять на формат отчета и может не соответствовать целям вашего отчета. Но это исправило проблему для меня. Еще один способ обойти проблему с пустой страницей - оставить подотчеты, где бы они ни находились (детальные или групповые полосы), и переместить ДРУГИЕ детальные полосы в одну полосу нижнего колонтитула. По сути, следует помнить о том, чтобы уменьшить количество групп деталей / групп внутри таблицы. Ограничьте группировки и имейте минимальное количество вложенных отчетов в таблице, если вы можете управлять этим.

Надеюсь, это поможет кому-то там.

0 голосов
/ 04 декабря 2009

Еще один способ обойти это - поместить подотчет в заголовок отчета. Конечно, это очень зависит от содержания отчета и исключает любую полезность последующих разделов, но это действительно решило мою проблему с наличием огромного количества пустого пространства на первой странице.

...