Табликса: повторение заголовков строк на каждой странице не работает - построитель отчетов 3.0


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

6 142

6 ответов:

это зависит от структуры табликса, которую вы используете. Например, в таблице нет групп столбцов, поэтому службы Reporting Services не распознают, какие текстовые поля являются заголовками столбцов, и установка свойству RepeatColumnHeaders значения True не работает.

вместо этого, вам нужно:

  1. откройте расширенный режим на панели группировки. (Щелкните стрелку справа от групп столбцов и выберите дополнительно Режим.)
    • Screenshot
  2. в области группы строк (не Группы столбцов) щелкните статическую группу, которая выделяет соответствующее текстовое поле в табликсе. Щелкните по каждой статической группе, пока она не выделит самый левый заголовок столбца. Как правило, это первая статическая группа в списке.
  3. в окне "Свойства" выберите RepeatOnNewPage свойство True.
    • Screenshot
  4. убедитесь, что KeepWithGroup свойство имеет значение After.

The KeepWithGroup свойство указывает, к какой группе должен быть привязан статический элемент. Если установлено значение After затем статический элемент прилипает к группе после него или под ним, действуя как заголовок группы. Если установлено значение Before, затем статический элемент прилипает к группе до или над ней, действуя как нижний колонтитул группы. Если установлено значение None, службы Reporting Services решают, куда поместить статический элемент.

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

этой видео показывает, как установить его точно так, как описано в ответе.

Я 2.0 и нашел выше, чтобы помочь; однако выбор статического не выделил ячейку по какой-то причине. Я сделал следующие шаги:

  1. В разделе группы столбцов выберите расширенный и статика появится
  2. нажмите на статический, который отображается в группах строк
  3. установите KeepWithGroup в After и RepeatOnNewPage в true

теперь заголовки столбцов должны повторяться на каждой странице.

как я исправил эту проблему, я вручную изменил код позади (из меню View/code). В разделе ниже должно быть как можно больше пар <TablixMember> </TablixMember> количество строк табликса. В моем случае у меня было больше пар <TablixMember> </TablixMember>чем количество строк табликса. Кроме того, если вы перейдете в "расширенный режим" (справа от "групп столбцов"), количество статических строк за "группами строк" должно быть равно количеству строк в табликсе. Способ сделать его равным-это изменить код.

<TablixRowHierarchy>
      <TablixMembers>
        <TablixMember>
          <KeepWithGroup>After</KeepWithGroup>
          <RepeatOnNewPage>true</RepeatOnNewPage>
        </TablixMember>
        <TablixMember>
          <Group Name="Detail" />
        </TablixMember>
      </TablixMembers>
    </TablixRowHierarchy>

открыть Advanced Mode на панели группировки. (Щелкните стрелку справа от групп столбцов и выберите расширенный режим.)

в области группы строк (не Группы столбцов) щелкните статическую группу, которая выделяет соответствующее текстовое поле в табликсе.

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

в сетке свойства:

  • set KeepWithGroup к After
  • set RepeatOnNewPage до True для повторения заголовков
  • set FixedData до True для сохранения заголовков видимыми

другой способ сделать это, если у вас все еще есть эта проблема, это сделать следующее :

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

спасибо, Суфиан.

Что сработало для меня, так это создать новый отчет с нуля.

Это сделано и новый отчет работает, я буду сравнивать 2 .файлы rdl в Visual Studio. Они находятся в формате XML, и я надеюсь, что быстрый WindDiff или что-то покажет, В чем была проблема.

начальный взгляд показывает, что есть 700 строк кода или немного больше разницы между обоими файлами, причем больший из 2 является неисправным файлом. Беглый взгляд на теги TablixHeader не показал что-нибудь очевидное.

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

надеюсь, что это помогает. Если у вас есть сложный отчет, это не быстрое решение, но оно работает.

возможно сравнение известных хороших XML-файлы для неисправных на вашем конце сделают хороший пост на форуме. Я попробую это со своей стороны.