Подтвердить что ты не робот

Пустые страницы в RDLC-Report

У меня есть отчет rdlc, который содержит табликс, ничего другого. Tablix расширяется в горизонтальном направлении, чтобы показывать дни и в вертикальном направлении для отображения групп.

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

Если я разворачиваю размер содержимого до его фиксированного размера (примерно по PageWidth-PageBorders) и запустим отчет, каждая вторая страница будет пустой. Однако в tablix используется только одна страница. Каждая нечетная страница абсолютно пуста. Кажется, что tablix добавляет свое горизонтальное расширение к текущей определяемой ширине содержимого и вычисляет тогда переполнение.

Версия Reportviewer - 3 (Распространяется на 2010 год)

Есть ли у кого-то решение для этого странного поведения?

Обновление

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

Обновление 1

Если я установил свойство "ConsumeContainerWhitespace" отчета в значение true, эта тестовая версия будет работать. Но если я помещаю тогда другие элементы в "белую" область, эффект снова возникает.

4b9b3361

Ответ 1

Настройка свойства страницы ConsumeContainerWhitespace=true (в диалоговом окне свойств, F4) помогла. Однако было бы сложно построить отчет правильно. В начале он работал, только если я добавил весь дополнительный контент в верхний и нижний колонтитулы. Но это было неприемлемо. После многих попыток мне удалось сделать отчет по своему желанию. Однако я не совсем понимаю логику.

Я имею в виду, что я уже делал такие отчеты (растет в обоих направлениях, по горизонтали и вертикали вместе) без каких-либо проблем, и я не знаю, что здесь отличает этот отчет. Для этого отчета он окончательно воспроизводит, что ConsumeContainerWhitespace -property делает разницу. Но почему это никогда не случается со мной для подобных отчетов, которые я сделал, я не знаю. Кроме того, я не знаю, почему я сначала обходил вокруг, прежде чем макет-модем принял мой дизайн.

Ответ 2

Лучший способ решить эту проблему - например, для страницы формата А4, где Width=21 cm и Height=29.7 cm

Теперь Margin Left=1 cm и Right=1 cm, чтобы вы имели удобную ширину 19 см.

Когда вы понимаете этот базовый расчет, это означает, что ваша проблема решена. Вы можете настроить свойства размера страницы отчета, щелкнув правой кнопкой мыши по свойству отчета = > pageetup.

Ответ 3

Проверьте размер тела, попробуйте сделать его таким же широким и высоким, как ваш реальный размер бумаги, но уменьшите только поля.

Ответ 4

В дизайне страницы есть путаница. Разработчики подумали, что разрабатываемый отчет WYSIWYG, но на самом деле это НЕ! Microsoft reportviewer возьмет вашу разработанную страницу как контент! и добавьте поля, определенные на внешней стороне вашей страницы, и убедитесь, что ваша страница никогда не может вписаться на одну страницу!

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

Ответ 5

решение прост ConsumeContainerWhiteSpace=True (вы находите это в окне свойств для "отчета" ), вы задаете размер бумаги в главном меню/свойствах отчета/отчета, например, на "A4", а затем вы проверяете размер бумаги больше, чем body + header + footer + margins.

Ответ 6

У меня была такая же проблема, пока я не играл с телом отчета высота и width.:)

Ответ 7

Я недавно встречал эту проблему.

Основная причина может быть:
в вашем теле отчета есть пустой отчет о нижнем колонтитуле или где-то еще.
Решение:
1, щелкните тело отчета
2, перейдите в окно свойств, вы увидите свойство размера тела
3, проверьте размер тела, вы можете найти странное число, например, 9.6654in, 1.5625in.
 это означает, что у вас есть некоторый чистый верхний нижний колонтитул, измените размер высоты или ширины, пока вы не увидите пустое место.

Ответ 8

Выберите "Отчет" в селекторе объектов в верхней части окна. и сделайте ConsumeContainerWhiteSpace = true если же такая же проблема сохраняется, то размер отчета rdlc должен быть меньше вашего тела сообщения.!

Ответ 9

Вам нужно задать свойство ширины отчета для фактической ширины страницы печати. В моем случае 6 дюймов помогли.

Ответ 10

Нижний колонтитул может также вызвать проблему. Поэтому, если он у вас есть, лучше разместить его как можно ближе к основному контенту. В этом случае вам не нужно устанавливать свойство Body.Height.

Ответ 11

Вам нужно убедиться, что у вашего отчета RDLC есть:

  • ConsumeContainerWhiteSpace = true (открывается нажатием кнопки F4)
  • Размер тела отчета <= Размер страницы + размер поля. (открыть Ctrl + Alt + D)

Ответ 12

Я работал с отчетом RDLC, который печатал лишнюю пустую страницу. Я испробовал все обычные приемы и все, что мог придумать, пока не понял, что проблема вызвана дополнительным количеством видимых пробелов в правой части поля отчета. Один из объектов в отчете ("Прямоугольник") имел ширину в один или два пикселя, что не позволяло изменить размер видимого пространства отчета. После того как я удалил всю лишнюю ширину, отчет начал печататься с ожидаемым количеством страниц.

Visual Studio 2017 (15.7.5) + расширение конструктора отчетов Microsoft Rdlc (версия 14.2)

enter image description here

Ответ 13

Моя метка 4x2 дюйма печатала 3 дополнительных страницы для отчета на одну страницу.

Чтобы исправить это, я уменьшил атрибут Body.Size таким же или меньше, чем Report.PageSize минус суммированный соответствующий Report.Margins.

Ответ 14

Попробуйте это,

Просто убедитесь, что все данные необходимы в отчете, Затем выберите таблицу или матрицу и сделайте ее нажатой влево и, если необходимо, в верхнем левом углу, пока не будет выполнена ваша белая страница.

Но убедитесь, что клетки сжимаются правильно, будьте осторожны (надеюсь, вы получили это!)

Хорошо, Bye

Ответ 15

Или вы можете просто графически изменить размер вашего проекта отчета, до нижней части последнего отчета или метки отчета.

Или добавьте раздел нижнего колонтитула, чтобы создать некоторое пространство.

введите описание изображения здесь

Ответ 16

У меня была похожая проблема, я решил ее так

Например, для ширины должно быть выполнено следующее уравнение

PageSize >= LeftMargin +  BodySize + RightMargin 

где найти BodySize?

Нажмите F4 → CLick где-нибудь внутри отчета → вы найдете свойство тела (посмотрите на свойство size, возьмите значение ширины)

Где найти отчет PageSize?

щелкните где-нибудь за пределами отчета → вы найдете свойство отчета (посмотрите на PageSize (возьмите его значение ширины) и margins (Left, right,..), возьмите значения полей влево и вправо)

взять значения из этих свойств и проверить, соответствуют ли они

PageSize >= LeftMargin +  BodySize + RightMargin