Проблема № 1 (см. Рисунки): когда горизонтальный табликс расширяется во время выполнения, элементы управления, расположенные после таблиса, перемещаются на следующую страницу.
Проблема № 2 (см. Фото): как заставить вертикальные линии расширяться во время выполнения? (конечные точки этих линий отмечены тегами расширяющегося прямоугольника. Прямоугольник расширяется, а линии - нет)

Pics :

  • Время проектирования

Design time

  • Время выполнения

Runtime

Что я делал до сих пор:

  1. KeepTogether = false для всех прямоугольников и всех текстовых полей и всех таблиц (в основном все элементы управления на RDLC)
  2. Размер страницы отчета: 8,27 дюйма, 11,69 дюйма (стандартный размер A4).
  3. Снова воссоздал весь отчет
  4. Поля уменьшены до 0,5 дюйма со всех сторон
  5. Когда я делаю начальную точку (Свойства - Расположение - Слева) этих элементов управления такой же, как элемент управления виновником (см. Рис. Времени разработки), они больше не смещаются. Но это не то место, где я хочу, чтобы они были

Я использую: VS 2015, .Net 4.5.2, SQL Server 2008 R2 Express, SSDT 2015, 64-разрядную версию Windows 10 Pro. Отображение отчетов с помощью ReportViewer

2
Prasad Kamath 15 Фев 2018 в 09:22
2
Пожалуйста, добавьте всю необходимую информацию в свой вопрос, а не ссылки на внешние носители.
 – 
iamdave
15 Фев 2018 в 12:42
Вы пробовали снизить маржу?
 – 
StevenWhite
15 Фев 2018 в 19:19
Что, если вы обернете весь макет прямоугольником?
 – 
Harry
16 Фев 2018 в 01:59
Привет @ Гарри. Замечательная идея, но не сработало. Хотя оцените это. Любое другое предложение?
 – 
Prasad Kamath
16 Фев 2018 в 10:07
Привет, @StevenWhite. Пробовал после того, как вы предложили. Поля уменьшены до 0,5 дюйма с 1 дюйма на всем протяжении. Тем не менее, проблема остается. Любое другое предложение?
 – 
Prasad Kamath
16 Фев 2018 в 10:07

1 ответ

Лучший ответ

Ваша проблема здесь в том, что у вас есть несколько элементов, которые используют одно и то же «пространство отчетов» и поэтому могут взаимодействовать друг с другом. По умолчанию SSRS проталкивает любые элементы вокруг других, которые могут расти, например таблиц.

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

Чтобы этого не происходило, вам нужно сообщить SSRS, что вы не хотите, чтобы эти элементы были затронуты таблицей, поместив их в другое «пространство отчета». В дизайнере это означает, что вам нужно поместить текстовые поля в прямоугольник, который начинается перед концом таблицы.

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


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

1
iamdave 19 Фев 2018 в 12:31
Да, сработало, спасибо! @Harry - Я попробовал предложение iamdave, и оно сработало, поэтому не пробовал ваш метод, но большое спасибо за ваш ответ. Спасибо всем за ваши ответы. дело закрыто.
 – 
Prasad Kamath
19 Фев 2018 в 18:34
Не стоит беспокоиться. Если это был правильный ответ на ваш вопрос для других, у кого возникла такая же проблема, отметьте его как таковой.
 – 
iamdave
19 Фев 2018 в 18:35