Rendering a Batch of Reports

  • I have a business need to allow the user to render a batch of "End of Day" reports with one event click.  All of these reports currently exist as separate reports in Reporting Services.  I can schedule all of these to run together but I'm wondering how I can handle ad-hoc requests to run them?

    Thanks,

    Matt

  • There are some security implications to my idea, but it's probably the only way to accomplish it:

    Assuming this "one click" will happen on a webpage somewhere and not directly out of reporting services. . .

    -Build a stored procedure that will kick off the jobs you want started (using sp_start_job - SQL books online can help you w/syntax).

    -Call this stored proc when the user clicks the button.

    The security implications: I'm guessing you would have to set the webusers account to have rights to start jobs on your SQL server - in general not a good idea - refer to next point. . .

    Be aware the user(s) could potentially keep clicking this button - if the job is already running you'll probably get an error. But if these are heavy-processor or heavy-memory reports, it could impact your other processes. You could add some kind of code that checks the status of the jobs and disables the button if they are currently running, or if they've been started in the last 30 min.

    Just an idea. Don't get mad at me if it doesn't work. :>

  • Create a new report that contains all of the other reports as subreports. Then create a subscription to deliver that new report (or a link to it) daily.

     

Viewing 3 posts - 1 through 2 (of 2 total)

You must be logged in to reply to this topic. Login to reply