Как добавить номера я для каждой группы в отчете RDLC? - PullRequest
5 голосов
/ 19 марта 2012

Как я могу добавить номера строк, например:

ГРУППА 1

RowNumber ID Имя Возраст

1            231     test     43
2            324     test2    45
3            354     test3    34

ГРУППА 2

RowNumber ID Имя Возраст

1          657     test4    43
2          534     test5    45
3          678     test6    34

Я хочу сделать номера строк, как в этом примере. Для каждой группы мои номера строк будут сбрасываться и начинаться с 1 до количества строк в группах. Мои группы (GROUP 1, GROUP 2, ....) поступают из db динамически! Сколько у меня групп, не понятно! здесь - я нашел некоторые решения, но я думаю, что эти решения доступны для того количества групп, когда мы знаем!

Ответы [ 2 ]

14 голосов
/ 19 марта 2012

RDLC имеют функцию RowNumber("ScopeName").Это вернет номер строки записи в заданной области.

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

[(Group1)
 ≡(Details1)

Установите для столбца номера строки выражение

=RowNumber("Group1")
2 голосов
/ 25 октября 2015

Щелкните правой кнопкой мыши по свойству Report, затем перейдите к code , затем вставьте код ниже

   Dim private count as integer = 0
   Dim private iniRow as integer = 0
   Dim private iniGrp as Object = ""
   Public function MatrixRow(Byval rowNum as integer,Byval rowGrp as Object) as integer

   if iniGrp = "" then
      iniGrp = rowGrp 
   end if

  if rowGrp <> iniGrp then
      iniRow = 0 
      count = 0 
      iniGrp = rowGrp 
  end if

  if iniRow = 0 then
      iniRow = rowNum
  end if

  if rowNum = iniRow then
     count = 0
  end if

   count = count + 1
   Return count
  End function

, затем используйте эту функцию как

   =Code.MatrixRow(RowNumber(Nothing),(YourgroupfiledNameFromDataest))
...