Матрица SSRS 2005 не показывает данные - PullRequest
0 голосов
/ 01 марта 2012

Мой запрос возвращает следующие результаты (с данными примера soem):

STUID   FirstName  LastName DeptID  CourseRequested
1       xxxx       yyyy     2353    Algebra
1       xxxx       yyyy     2353    Trignometry
1       xxxx       yyyy     2356    Biology
1       xxxx       yyyy     2356    Chesmistry

Это woule, как это для всех студентов. Таким образом, студент может запросить несколько курсов в одном отделе.

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

                     2353           2356
1 xxxx yyyyy         algebra        Biology
1 xxxx yyyy          Trignometry    Chemistry

Итак, я использовал матрицу с группой строк в StuID, Fname и LName. Группа столбцов по DepartmentID и CourseName в деталях.

Но результирующий набор показывает мне только первый ряд с «Алгеброй и биологией». Это не повторение второго набора курсов. Мне не нужно повторять StuID, Fname и Lname для второго ряда.

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

Пожалуйста, помогите мне.

1 Ответ

0 голосов
/ 02 марта 2012

Ваш существующий вывод сгруппирован по StuID, Fname, LName и DepartmentID.

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

Чтобы отформатировать кросс-таблицу по вашему желанию, вам нужно добавить еще одно условие группировки строк, чтобы разделить различные значения CourseRequested на отдельные строки. Я предлагаю делать это по номеру строки или рангу в вашем SQL-запросе - при условии, что вы используете SQLServer для своего источника данных, добавьте следующий столбец в ваш оператор select:

dense_rank() over (partition by StuID, Fname, LName, DepartmentID 
                   order by CourseRequested) as RN

- затем добавьте RN к условиям группировки строк в кросс-таблице, и выходные данные должны быть отформатированы в соответствии с требованиями.

...