2012-02-15 2 views
5

Я не знаю, возможно ли это или нет, но подумал, что я спрошу. Много раз отчеты нуждаются в группировании данных, чтобы привязать к нижней части отчета некоторую сводную информацию, такую ​​как счета-фактуры. Вы не хотите, чтобы итоговые значения смещались UPwards на основе только двух строк детализации против другого с 20. Я пробовал работать с использованием Tablix, привязанного к источнику данных для вывода, но не мог получить его совершенно правильно ... Это либо сдвинуть вверх, либо разбить силу и появиться наверху следующей страницы.Нижний колонтитул отчета RDLC со значением «Текущая запись»

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

Мой второй подход состоял в том, чтобы просто использовать простой нижний колонтитул страницы. Однако общая страница «Отчет» не является технически «БОЙНЫМ» для любого источника данных. Так что, если я ставлю текстовое поле в сноске и хочу, чтобы показать что-то, я не могу выбрать «самый последний ряд из источника данных, связанных с Tablix», он всегда требует агрегата, таких как

=First(Fields!SomeField.Value, "SomeDataSource") 
=Sum(... 
=Last(... 
etc... 

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

Любые предложения были бы замечательными. Благодарю.

ответ

2

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

  • Создание всех строк в отчете единообразной высоты.
  • Вычисления сколько строк были необходимы заполнить страницу (минус высоту моей оплаты скольжения.
  • Получения количества позиций в заявлении.
  • Расчет оставшегося количество строк необходимо нажать платежную квитанцию в нижней части страницы.
  • Добавление вложенного отчета с вычисленным числом пустых строк прокладки из необходимого пространства между позициями и слип оплаты.

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

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

+0

Спасибо за идею и звучит как отличное решение. Я сделал подобное на другом языке разработки, но никогда не думал применять это здесь. Во время публикации я был на ранней стадии и не знал таких методов в C#/отчетности. Я буду отмечать как ответ, поскольку я ЗНАЮ, что это будет работать из моего прошлого опыта. – DRapp

0

В сноске вы можете обратиться, чтобы сообщить пункт из текста отчета, например:

=ReportItems!myFooterValueTextBox.Value 

Загвоздка в том, что вы можете обратиться только к одному пункту отчета, в футере, так что вам может понадобиться, чтобы добавить невидимый сноска строки в таблице и объединить все ваши итоговые в одну ячейку (myFooterValueTextBox) в этой строке:

=First(Fields!SomeField.Value, "SomeDataSource") + "|" + 
Sum(...) + "|" + .... + 
Last(...) 

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

=Split(ReportItems!myFooterValueTextBox.Value,"|")(0) 

 Смежные вопросы

  • Нет связанных вопросов^_^