Проблема не совсем в том, что вы думаете:
Да, вы можете динамически изменять заголовки столбцов и значения текстовых полей. Но это тебе не поможет.
Поля (столбцы), возвращаемые источником данных, не могут быть динамическими для набора данных SQL.
Вам необходимо установить фиксированный набор полей, которые будет возвращать ваш запрос, а затем вы можете поворачивать их или динамически выбирать из набора столбцов при отображении отчета. Например, если я хотел, чтобы отчет отображался:
June July Aug Sept Oct Nov Dec
Department A 20 25 33 36 48 29 35
Department B 22 24 30 23 40 20 33
Тогда я бы разработал свой запрос для возврата:
Department Month Quantity
Department A June 20
Department A July 25
Department A Aug 33
Department A Sept 36
Department A Oct 48
Department A Nov 29
Department A Dec 35
Department B June 22
...
Предоставленные вами результаты запроса будет трудно использовать с SSRS: можете ли вы изменить запрос или создать другой, чтобы он возвращал фиксированные столбцы, аналогично тому, что я указал выше? По крайней мере, вам нужно изменить имена полей (заголовки столбцов), чтобы они не менялись от месяца к месяцу: month1 month2 month3 ...