"Возможно ли это?" - Да, все, что вы упомянули, возможно.
Вам нужно проверить учебник или что-то в этом роде. Вы можете начать с просмотра FAQ на ... http://www.gotreportviewer.com/
но я уверен, что есть сотни учебных пособий. Одним из подходов может быть:
- создайте хранимую процедуру (ы) для получения ваших данных из БД.
- создать набор данных.
- создайте tableAdapter для каждого созданного вами sproc (tableAdapters будет использовать созданные вами sprocs).
- создать сам отчет.
- создать страницу с элементом управления reportViewer.
- во время page_load вам нужно иметь экземпляры tableAdapters и вызывать их функции GetData ().
- Затем вам нужно будет добавить источники данных в элемент управления reportViewer и вызвать ReportViewer.Refresh ().
Это не полный список шагов, но, надеюсь, он направит вас в правильном направлении. Удачи!