2012-04-12 4 views
1

У меня есть службы отчетов SQL Server 2005. Мне нужно создать отчет с количеством столбцов, которые определены во время выполнения.Создать отчет с динамическими столбцами

У меня есть таблица БД с контентом, как следующее:

Person   Date    Val 
---------------------------------------------- 
Person1   2012-01-03  3 
Person2   2012-02-11  5 
Person1   2012-02-17  7 
Person2   2012-01-19  2 
Person2   2012-01-15  4 

Я должен создать отчет, как это:

Person   Jan 2012   Feb 2012 
---------------------------------------------- 
Person1   3    7 
Person2   6    5 

Другими словами, для каждого человека, я должен сделать сумму всех его полей значений за данный месяц, и поместите сумму в столбец, соответствующий месяцу. В приведенном выше примере у меня есть 6 для Person2 в течение месяца Январь 2012 года - это сумма значений 2 (в 2012-01-19) и 4 (в 2012-01-15).

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

Как это реализовать с помощью SSRS?

+2

Я бы посоветовал вам узнать об особенностях этого сайта: другие пользователи с большей вероятностью помогут при отформатировании сообщения и принимают ответы: http://meta.stackexchange.com/q/5235/157556. Я буду думать о том, что вы имели в виду выше, и попытаться соответствующим образом отформатировать сообщение. –

ответ

2

В SQL 2008 и более поздних версиях подход к этой проблеме немного изменился, поэтому убедитесь, что вы смотрите на справочные материалы за 2005 год, если это то, что вы используете.

this page, найдите раздел «Матрица». Матрицы в SSRS предназначены для решения именно той задачи, которую вы описываете с минимальными усилиями. В 2008 году Matrices and Tables представляют собой оба варианта «Tablix:», который может содержать как строки, так и столбцы.

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