Как избавиться от пустых страниц в PDF, экспортированных из SSRS - PullRequest
177 голосов
/ 12 декабря 2008

У меня есть отчет SSRS. Когда я пытался экспортировать в PDF, он занимал 4 страницы из-за своей ширины, где на 2-й и 4-й страницах отображалось одно из моих полей из таблицы. Поэтому я попытался установить размер макета в свойствах отчета как ширина = 18 дюймов и высота = 8,5 дюймов.

Это дало мне всю таблицу на одной странице PDF. Но я получаю пустую 2-ю и 4-ю страницу. Я неправильно поступаю или как избавиться от этих пустых страниц?

Ответы [ 13 ]

318 голосов
/ 18 декабря 2008

В BIDS или SSDT-BI выполните следующие действия:

  1. Щелкните Отчет> Свойства отчета> вкладка «Макет» (вкладка «Параметры страницы» в SSDT-BI)
  2. Запишите значения для Ширина страницы , Левое поле , Правое поле
  3. Закройте и вернитесь к поверхности дизайна
  4. В окне свойств выберите Тело
  5. Нажмите символ +, чтобы развернуть узел Размер
  6. Запишите значение для Ширина

Для правильного отображения в PDF Ширина тела + Левое поле + Правое поле должно быть меньше или равно ширине страницы. Когда вы видите, что пустые страницы отображаются, это происходит почти всегда, потому что ширина тела и поля больше ширины страницы.

Помните: (Ширина тела + Левое поле + Правое поле) <= (Ширина страницы) </strong>

105 голосов
/ 18 июля 2013

Другая попытка - установить для свойства отчета с именем ConsumeContainerWhitespace значение True (по умолчанию false). Вот как это было решено для меня.

28 голосов
/ 05 декабря 2012

После нескольких часов борьбы с этой проблемой, я наткнулся на решение, которое работало для меня:

В SSDT (2012) у меня изначально были установлены параметры страницы / страницы в сантиметрах. Когда я изменил это на дюймы, как ни странно, я смог экспортировать свой отчет в PDF, не оставив при этом ни одной другой страницы пустым.

enter image description here

20 голосов
/ 26 января 2015

Лучше сделать это в области проектирования ( Visual Studio 2012 показывается, но может быть сделано в других версиях ), прежде чем вычислять математические вычисления при редактировании документа SSRS.

Ниже приведены цифры в красных кружках, которые соответствуют следующим шагам:

  1. В области конструктора иногда редактор создает page, который больше, чем фактические элементы управления; следовательно область призрака печатается.
  2. Изменить размер элементов управления. Визуально посмотрите на ширину / высоту и посмотрите, не можете ли вы вывести на странице на поверхности конструктора , чтобы увеличить его до размера, фактически необходимого для элементов управления, и больше.
  3. Затем попробуйте создать PDF-файл и посмотреть, исправит ли это.
  4. Если # 3 не решает проблему, то существуют элементы управления, требующие слишком большого фактического размера страницы и , превышающего по длине / ширине. Поэтому нужно будет уменьшить размер элементов управления, чтобы они соответствовали размеру страницы.

Steps to manually remediate


Также в некоторых случаях можно просто изменить свойство страницы отчета, установив ConsumeContainerWhitespace на true для автоматического использования пробелов.

18 голосов
/ 12 декабря 2008

Если страницы пустые из SSRS, вам нужно настроить макет отчета. Это будет намного эффективнее, чем выполнение вывода через и после обработки для устранения побочных эффектов проблемы макета.

SSRS очень привередливы, когда речь идет о расширении границ. Случайно расширить / удлинить отчет легко, просто изменив текстовое поле или другой элемент управления в отчете. Тщательно проверьте свойство ширины и высоты поверхности отчета и сожмите их как можно больше. Остерегайтесь больших колонтитулов.

17 голосов
/ 16 июня 2015

Проблема для меня заключалась в том, что SSRS преднамеренно обращается с вашим пустым пространством так, как будто вы намереваетесь его соблюдать:

enter image description here

Помимо пробелов, убедитесь, что нет правого поля.

5 голосов
/ 17 июня 2016

Я работаю с SSRS более 10 лет, и ответы выше - это ответы на вопросы. НО. Если ничего не работает, и вы полностью напичканы .... удаляйте элементы из отчета, пока проблема не исчезнет. Как только вы определили, какая строка или элемент отчета вызывает проблему, поместите его в прямоугольный контейнер. Вот и все. Помог нам много много раз! Дополнительные страницы в основном вызваны тем, что элементы отчета перетекают через правое поле. Когда ничего не помогает, размещение вещей внутри прямоугольника или пустого прямоугольника справа от элемента может остановить это. Удачи там!

5 голосов
/ 11 апреля 2012

В дополнение к полям, самой распространенной проблеме, я также видел две дополнительные возможности:

  1. Использование + для объединения текста. Вы должны использовать & вместо.
  2. Текст переполняет ширину указанного текстового поля. Так что, если ваше текстовое поле содержит только 30 символов, и вы пытаетесь вписать туда 300 символов, у вас могут появиться дополнительные страницы.
4 голосов
/ 18 декабря 2014

На вкладке свойств отчета (myReport.rdlc) измените атрибут «Сохранить вместе» на False. Я боролся с этой проблемой некоторое время, и это, кажется, решило мою проблему. enter image description here

4 голосов
/ 17 июля 2013

Вы пытались проверить, есть ли пробелы справа от вашего отчета? Если это так, вы можете перетащить его обратно в конец отчета, а затем перетащить фон отчета обратно в то же место.

...