Положите нулевые результаты группы столбцов SSRS в последний - PullRequest
0 голосов
/ 05 февраля 2020

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

---------------------------------
|A_Service_Hours| Service_Minute|
|   5           |   52          |
|   5           |   54          |
|   5           |   56          |
|   6           |   20          |
|   6           |   22          |
|   6           |   27          |
|   6           |   29          |
|   6           |   46          |
|   6           |   51          |
|   6           |   58          |
|-------------------------------|

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

---------------------------------------------------
|   5           |52 | 54 | 56 |    |    |    |    |
|   6           |20 | 22 | 27 | 29 | 46 | 51 | 58 |
|--------------------------------------------------

Ответы [ 2 ]

0 голосов
/ 05 февраля 2020

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

Сделайте запрос к вашему набору данных примерно таким:

SELECT 
    A_Service_Hours, Service_Minute
    , ROW_NUMBER() OVER(PARTITION BY A_Service_Hours ORDER BY Service_Minute) AS RowN
FROM myTable

Это даст вам следующие результаты

----------------------------------------
|A_Service_Hours| Service_Minute|  RowN|
|   5           |   52          |     1|
|   5           |   54          |     2|
|   5           |   56          |     3|
|   6           |   20          |     1|
|   6           |   22          |     2|
|   6           |   27          |     3|
|   6           |   29          |     4|
|   6           |   46          |     5|
|   6           |   51          |     6|
|   6           |   58          |     7|
|--------------------------------------|

Теперь вы можете добавить матричный элемент управления в свой отчет, использовать A_Service_Hours в качестве RowGroup и RowN в качестве ColumnGroup.

Это даст вам именно то, что вы хотите.

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

0 голосов
/ 05 февраля 2020

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

enter image description here

...