tags:

views:

566

answers:

4

What's a good alternative to Notification Services now that Microsoft has removed it from Sql Server 2008. I don't want to use the 2005 version or build my own from scratch. What third party tools fill this niche?

Some of the NS functionality is now available through RS. However, our system requires "on demand" triggering of sending notifications. For example, any time a row in a table is added or updated, a series of data-driven emails need to be sent out.

Data-driven subscriptions in Reporting Services is halfway there (msdn.microsoft.com/en-us/library/…) but we need to be able to trigger sending reports at will as opposed to a pre-set schedule.

A: 

The theory goes that Notifications Services was removed become it was made obsolete by the Reporting Services. And in truth the RS can fulfill quite a chunk of the NS role. Have you investigated how far can you ride the RS and replace your NS solution by it?

Remus Rusanu
It's close, but it isn't clear to me how I can tell RS to send out the notifcations (emails) on demand. The data-driven subscriptions is halfway there (http://msdn.microsoft.com/en-us/library/ms156413.aspx) but I need to be able to trigger at will.
matt eisenberg
This is about as close as one can get. We might just settle on daily "digests" going out. The other alternative is to "check" for reports every 5 or 10 minutes.
matt eisenberg
whoever down votes, please explain
Remus Rusanu
A: 

Why not use SSIS and set it up as a job in SQL Server Agent? Then, you can use sp_start_job to kick it off whenever you wanted, set up a trigger to handle it, or schedule it.

You can use SSIS variables, and do the xp_cmdshell stored proc using dtexec to set the variable. Or, you can use the trigger to load up a table, do a foreach in SSIS and truncate the table after each run.

Eric
I'm not clear on what sp_start_job would be pointed out. I don't see in SSRS 2008 where you can say "Send out this report now to it's subscribers". Everything seems to schedule driven which is not what we want. There may be days or weeks between notifications needing to go out.
matt eisenberg
A: 

You could use sp_send_dbmail within your SQL code to send email notifications according to your logic:

exec msdb.dbo.sp_send_dbmail
    @Profile_Name = 'Default',
    @Recipients     = N'[email protected]',
    @subject = N'This step, with ' + CAST(@NumRecordsGenerated AS varchar(10)) + ' records generated, has succeeded!'
Darth Continent
This really isn't helpful. They whole point is to leverage a framework so that we don't have to do things like this.
matt eisenberg
"...any time a row in a table is added or updated, a series of data-driven emails need to be sent out." Using this proc from within a trigger on the given table would accomplish this, but I don't understand what you mean by "leveraging a framework". Do you mean using Reporting Services or something else similar to what Notification Services had offered, rather than getting "dirty" and coding manually for each alert you want to create (as I'm suggesting)?
Darth Continent
precisely - I don't want to get "dirty".
matt eisenberg
A: 

You could roll your own notification service using the Notification Framework project from CodePlex

http://nab.codeplex.com/

David Patrick
No documentation, no instructions, not updated since July 2008.
matt eisenberg