Поведение SSRS List / Tablix, игнорирующее пробелы - PullRequest
0 голосов
/ 26 апреля 2018

У меня есть отчет SSRS, разработанный в VS 2013 Shell, в котором есть 2 таблицы.

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

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

В VS Preview внешний вид отчета в точности соответствует заданному. И в IE, и в Chrome отчет иногда игнорирует пробелы. Ниже приведены скриншоты того, как это выглядит на вкладке «Дизайн», вкладке «Просмотр» и в браузере:

DesignImg

На скриншоте выше показан список с двумя таблицами друг над другом. Первая таблица содержит заголовки. Второй начинается сразу после заголовка «Следующая четверть ...». После второй таблицы в списке немного больше, чем 0,25 ".

PreviewImg

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

ChromeImg В приведенном выше примере браузера пробел отсутствует перед заголовком «Проактивно», но он виден до заголовка «Предполагаемое посещение».

Это код, управляющий видимостью строк:

                          <TablixRowHierarchy>
                            <TablixMembers>
                              <TablixMember>
                                <Visibility>
                                  <Hidden>=IIF(Fields!SuperGroupNum.Value = 1, False, True)</Hidden>
                                </Visibility>
                              </TablixMember>
                              <TablixMember>
                                <Visibility>
                                  <Hidden>=IIF(Fields!SuperGroupNum.Value = 2, False, True)</Hidden>
                                </Visibility>
                              </TablixMember>
                              <TablixMember>
                                <Visibility>
                                  <Hidden>=IIF(Fields!SuperGroupNum.Value = 3, False, True)</Hidden>
                                </Visibility>
                              </TablixMember>
                              <TablixMember>
                                <Visibility>
                                  <Hidden>=IIF(Fields!SuperGroupNum.Value = 4, False, True)</Hidden>
                                </Visibility>
                              </TablixMember>
                              <TablixMember>
                                <Visibility>
                                  <Hidden>=IIF(Fields!SuperGroupNum.Value = 5, False, True)</Hidden>
                                </Visibility>
                              </TablixMember>
                              <TablixMember>
                                <Visibility>
                                  <Hidden>=IIF(Fields!SuperGroupNum.Value = 6, False, True)</Hidden>
                                </Visibility>
                              </TablixMember>
                              <TablixMember>
                                <Visibility>
                                  <Hidden>=IIF(Fields!SuperGroupNum.Value = 7, False, True)</Hidden>
                                </Visibility>
                              </TablixMember>
                              <TablixMember>
                                <Visibility>
                                  <Hidden>=IIF(Fields!SuperGroupNum.Value = 7, False, True)</Hidden>
                                </Visibility>
                              </TablixMember>
                              <TablixMember>
                                <Visibility>
                                  <Hidden>=IIF(Fields!SuperGroupNum.Value = 8, False, True)</Hidden>
                                </Visibility>
                              </TablixMember>
                            </TablixMembers>
                          </TablixRowHierarchy>

1 Ответ

0 голосов
/ 26 апреля 2018

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

Простой ответ - добавить пустой пробел в этот элемент, тоже не сработает, потому что некоторые браузеры также игнорируют пробелы без какого-либо другого содержимого. Таким образом, вы можете сделать один из них:

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

Лучшее решение: добавить выражение в пустую строку. Перейдите в свойства выражения, щелкнув его правой кнопкой мыши. На первой странице в разделе «Тип разметки» установите переключатель «HTML - интерпретировать теги HTML как стили». Нажмите кнопку «FX» рядом со значением, введите это:

="&nbsp;"

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

...