Did this work during my tenure at The Elite Group.
A custom reporting framework was created for our internal users. The requirement was that they needed access to specific pieces of data on an infrequent basis. Not enough that a full (client facing) report for the front end should be developed, yet more that it couldn’t be handled as an ad-hoc data request.
The framework was written using the MVC3 framework in C#. The meta data was stored in such a way that the site didn’t need to be updated after each report was released. A T-SQL script could be used to push the report, and when the reporting framework loaded, it would detect the new report and present it as an option for the user to run.