2013-03-15 3 views
0

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

Day  Hour Title 
----------------------- 
Monday 2  Title1 
Monday 4  Title2 
Friday 5  Title3 
     . 
     . 
     . 
     . 

Мне нужно, чтобы заполнить таблицу, зависит от значений в наборе данных, то есть. первая строка набора данных будет иметь место, где первый столбец (понедельник) пересекается со второй строкой (2.).

Как я могу выполнить эту задачу.

Я использую SSRS 2008.

enter image description here

ответ

0

Проблема решена

Во-первых, на базе данных, я создаю два общего табличного выражения или КТР, в течение нескольких дней и часов соответственно. Затем я делаю CROSS JOIN между ними и таким образом формирую одно отношение. Затем я делаю левое соединение с остальными необходимыми таблицами, чтобы получить значения (если они существуют, конечно) для каждой комбинации из CROSS JOIN.

В отчетах я создаю матрицу, относящуюся к набору данных, которая связана с ранее созданной хранимой процедурой. Для группы столбцов я выбираю дни, для группы строк я выбираю часы, на пересечении I устанавливаю определенные значения.

Действительно простая, но отличная работа выполняется с крестом, соединенным двумя CTE.

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