Добавить пустую страницу - это SSRS 2012 в конце группы, если номер страницы нечетный

Мой отчет состоит из групп сотрудников. Раздел каждого сотрудника может иметь 3-5 страниц. Я хочу добавить пустую страницу после группы, если номер страницы нечетный. Причина заключается в том, что при печати 2 страниц на одном листе, а в группе по 3 страницы, первая страница следующей группы печатается на том же листе.

Я добавил пустой TablixRow в конце TablixBody и добавил в него группу с набором PageBreak. Следующим шагом является контроль его видимости на основе номера страницы.

<TablixMember>
                      <Group Name="EmptyGroup">
                        <PageBreak>
                          <BreakLocation>Start</BreakLocation>
                        </PageBreak>
                      </Group>
                      <Visibility>
                        <Hidden>=IIf(Globals.PageNumber Mod 2) = 0, True, False)</Hidden>
                      </Visibility>
                    </TablixMember>

Однако у меня нет доступа к глобальным переменным в теле отчета (только в нижнем колонтитуле). Есть ли обходной путь?

2 ответа

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

Идти к Report Properties меню / Code Закладка и поставить эту функцию:

Function PgNm() As String    
    Return Me.Report.Globals!PageNumber    
End Function

Затем вызовите функцию, чтобы получить номер страницы:

=Code.PgNm()

Дайте мне знать, если это поможет вам.

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

Вы можете посчитать строки каждой группы, используя CountRows
https://msdn.microsoft.com/en-us/library/dd255215.aspx

Это не самый чистый метод, но это возможно.

Другие вопросы по тегам