How Do I Find Out When A Data Driven Subscription Ends?
Oct 10, 2007
Hello everybody,
I have a problem concerning the execution status of a data driven subscription. The problem is that
I´m creating a datamart and rendering several thousands of pdf based reports after that. I´ve found out how
to start the subscription using stored procedures with DTS.
Now I want to take further actions after the report building is done. But how do I find that out?
I have create a data driven subscription that should email to to different people. It is sent to one but not the other. if I set up a normal subscription to the email it works. I can not see anywhere in the log the problem. Any Ideas on how to find out what is causing it.
Hi I created a new data-driven subscription which successfully created a guid job on the server under jobs. So, I run the job and I get no report emailed to me. On the report manager all it says is I have 1 error. I cant figure out what the error is and where do I go to see what the error is? I know it is in some log file under MSSQL, but I dont know which log file and what I should be looking for in that log file. Any help is appreciated.
I guess, in summary, how do I debug a data-driven subscription?
I created a data-driven subscription for my report with "Null Delivery Provider" set in report manager. I set the processing to "On a schedule created for this subscription" and scheduled the report to "run once" in the next 1 minute so I could test it. The subscription added successfully, but I don't see the "last run information" even after 5 minutes. Am I missing something?
SQL Server Reporting Services 2005. I have a data-driven subscription that executes weekly and had been executing just fine until this past execution. In the Subscriptions tab of the Report Manager web interface the Status says:
Error: Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.
Now, the stored procedure that returns data for the subscription has never taken more than about half a second to run (it does not return much data; only 55 records, and it is efficient and optimized). The timeout interval was 30 seconds, but I increased it to 300 seconds just in case...same result when I reschedule to subscription.
None of the procedures which return data for the actual report (there are six of them) takes more than 1 second to execute either, and I can generate the report from the RS web interface just fine; this only fails and gives a Timeout when I try to schedule the report on the data-driven subscription.
Is there any way to tell WHERE the timeout occurred, what step or process? I ran a Profiler trace of all activity on the ReportServer database after re-seheduling the subscription, and saw nothing that seemed unusual. I see the timeout error in the log file "ReportServerService__12_10_2007_00_06_03.log", but no useful details.
Has anyone else encountered this issue, or similar? Please let me know if there's anywhere else I might check.
I'm using SQL Server 2005 Developer Edition, which I understand supports Data-driven subscriptions (DDS).
When I try and click on on the DDS button for a report I get the following message:
"Data-driven subscriptions cannot be created because the credentials used to run the report are not stored, the report is using user-defined parameter values, or if a linked report, the link is no longer valid."
1. I have set the data source to use stored credentials.
I have a data-driven subscription that launches once a day and delivers emails to subscribers. The problem is that it delivers only about half the emails. It runs ok and then it produces error. I ran it once and it ran ok and completed without errors. 20 minutes later it produced errors. Log looks like this:
ReportingServicesService!library!c!11/16/2006-10:27:45:: i INFO: Call to RenderFirst( '/Subscribed notifications/Subscribed notifications' )
ReportingServicesService!library!11!11/16/2006-10:27:45:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.ServerConfigurationErrorException: The report server has encountered a configuration error. See the report server log files for more information., AuthzInitializeContextFromSid: Win32 error: 58;
Info: Microsoft.ReportingServices.Diagnostics.Utilities.ServerConfigurationErrorException: The report server has encountered a configuration error. See the report server log files for more information.
ReportingServicesService!library!c!11/16/2006-10:27:45:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.ServerConfigurationErrorException: The report server has encountered a configuration error. See the report server log files for more information., AuthzInitializeContextFromSid: Win32 error: 58;
Info: Microsoft.ReportingServices.Diagnostics.Utilities.ServerConfigurationErrorException: The report server has encountered a configuration error. See the report server log files for more information.
ReportingServicesService!library!11!11/16/2006-10:27:45:: i INFO: Initializing EnableExecutionLogging to 'True' as specified in Server system properties.
ReportingServicesService!library!c!11/16/2006-10:27:45:: i INFO: Initializing EnableExecutionLogging to 'True' as specified in Server system properties.
ReportingServicesService!emailextension!11!11/16/2006-10:27:45:: Error sending email. Microsoft.ReportingServices.Diagnostics.Utilities.RSException: The report server has encountered a configuration error. See the report server log files for more information. ---> Microsoft.ReportingServices.Diagnostics.Utilities.ServerConfigurationErrorException: The report server has encountered a configuration error. See the report server log files for more information.
at Microsoft.ReportingServices.Authorization.Native.GetAuthzContextForUser(IntPtr userSid)
at Microsoft.ReportingServices.Authorization.Native.IsAdmin(String userName)
at Microsoft.ReportingServices.Authorization.WindowsAuthorization.IsAdmin(String userName, IntPtr userToken)
at Microsoft.ReportingServices.Authorization.WindowsAuthorization.CheckAccess(String userName, IntPtr userToken, Byte[] secDesc, ReportOperation requiredOperation)
at Microsoft.ReportingServices.Library.ReportImpl.Render(String renderFormat, String deviceInfo)
at Microsoft.ReportingServices.EmailDeliveryProvider.EmailProvider.ConstructMessageBody(IMessage message, Notification notification, SubscriptionData data)
at Microsoft.ReportingServices.EmailDeliveryProvider.EmailProvider.CreateMessage(Notification notification)
at Microsoft.ReportingServices.EmailDeliveryProvider.EmailProvider.Deliver(Notification notification)
ReportingServicesService!emailextension!c!11/16/2006-10:27:45:: Error sending email. Microsoft.ReportingServices.Diagnostics.Utilities.RSException: The report server has encountered a configuration error. See the report server log files for more information. ---> Microsoft.ReportingServices.Diagnostics.Utilities.ServerConfigurationErrorException: The report server has encountered a configuration error. See the report server log files for more information.
at Microsoft.ReportingServices.Authorization.Native.GetAuthzContextForUser(IntPtr userSid)
at Microsoft.ReportingServices.Authorization.Native.IsAdmin(String userName)
at Microsoft.ReportingServices.Authorization.WindowsAuthorization.IsAdmin(String userName, IntPtr userToken)
at Microsoft.ReportingServices.Authorization.WindowsAuthorization.CheckAccess(String userName, IntPtr userToken, Byte[] secDesc, ReportOperation requiredOperation)
I have created a report and published it on the reporting server. My connection is working, and I have followed the steps in the BOL tutorial for "Defining a Data-Driven Subscription" i.e. Credentials stored securely on report server, using windows credentials when connecting to the data source. When I click on "Subscriptions", I only see "New Subscriptions". However, when I look at other reports (not even created by me), I see the option to create data driven subscriptions. Can somebody tell me what I need to do to see this?
I have set up a data driven subscription for a report, and against "Reply-To" I have selected "Specify a Static Value". I have then I have entered a valid email address.
When the report is received however, and the recipient clicks reply, the reply address is filled in as the Email Address from which the report was sent.
Is this a bug with the "Reply-To" functionality? Or do I have to do this a different way?
please help, when I access my report and click on the subscription tab, on the top page i only see the "new subscription" button. I also tried creating a data driven sub in sql manger but it was disbaled. please help how to correct this one.
I'm trying to run a data driven subscription on a report in the rs2005,
and using a data source to oracle,
I found out that when the subscription runs it opens a connection to oracle for each report and it means that i have more than fifteen open connections every time which causes a performance problems
I don't seem to be able to get a data-driven subscription to accept a stored procedure to return a list of reciepients and other subscription parameters. The message I get is:
The dataset cannot be generated. An error occurred while connecting to a data source, or the query is not valid for the data source. (rsCannotPrepareQuery) Get Online Help
For more information about this error navigate to the report server on the local server machine, or enable remote errors
A valid query must be specified.
Oddly, the stored procedure works fine in BIDS. The stored procedure is as follows:
ALTER PROCEDURE [etl].[spSubscription_OPs_Store_Scorecard]
The data source is OK -- I use it for many reports. And, the SQL would seem to be OK. It I insert the SQL directly into the subscription, it works fine. This is my first attempt to use a sp as an data source in this context. What am I missing?
I've set up a data-driven subscription on a report but it's not sending and the error log says it's because:
Default value or value provided for the report parameter 'CSRFaxID' is not a valid value.
For the particular dataset record causing the error I'm passing the value Null to the report parameter. The report parameter CSRFaxID is set up with "Allow Null" and with a default value of Null. I can run the report in my browser with CSRFaxID set to null, but the scheduled subscription is not able to produce the report with the same parameter value. Does anyone have any idea what the problem is and how I can fix it?
I have some problems when changing and running report subscription in the existing data-driven Email subscription using console app.
arg[0] is the ReportID and arg[1] is the permissionkey
I passed these parameters in command_line when I call the executable. (e.g RunSubscription.exe 1 2)
After I run my application, the query changed successfully, however, I didn't get the email from the subscription So I checked the subscription status, Error: Cannot create a connection to data source ''.
If I remove the get & set subscription property codes, then application runs fine but then I can't change the query on the fly. Please help!!! I will be very appreciate if someone can give me some helps or suggestion.
MyRS.GetDataDrivenSubscriptionProperties(subs.SubscriptionID, out ExtensionSetting, out DataRetrievalPlan, out Description, out ActiveState, out Status, out EventType, out MatchData, out Parameter);
I have several email data driven subscriptions setup. They have been working fine for the past couple of weeks. We have recently gone through some layoffs. Now the subscriptions are starting to fail.
I am assuming the smtp server is not allowing invalid email address to go. But if I have one invalid email address why would the entire job fail? How can SSRS see if each email address is valid at the time of processing?
Is there a setting to allow invalid email address to not fail the job? They only solution that I could think of is to create distribution email groups. This would be rendered on the smtp server and not in Reporting Service Service.
Does anyone have any good solutions they would like to share?
Log file:
at ReportingServicesCDOInterop.MessageClass.Send() at Microsoft.ReportingServices.EmailDeliveryProvider.EmailProvider.Deliver(Notification notification) ReportingServicesService!library!10!12/26/2007-10:43:15:: Data Driven Notification for activation id ac381bd5-7a04-4e8e-b5cf-510a3833c4f0 was saved. ReportingServicesService!library!10!12/26/2007-10:43:15:: Status: The e-mail address of one or more recipients is not valid. ReportingServicesService!notification!10!12/26/2007-10:43:15:: Notification 65af159a-b2c6-4667-905b-b2342898a28f completed. Success: False, Status: The e-mail address of one or more recipients is not valid., DeliveryExtension: Report Server Email, Report: Tech Lead Program - District Summary, Attempt 0 ReportingServicesService!dbpolling!10!12/26/2007-10:43:15:: i INFO: NotificationPolling finished processing item 65af159a-b2c6-4667-905b-b2342898a28f ReportingServicesService!library!4!12/26/2007-10:43:16:: i INFO: Call to RenderFirst( '/Marketing/TTL/Tech Lead/Tech Lead Program - YTD Technician Summary' ) ReportingServicesService!dbpolling!c!12/26/2007-10:43:18:: i INFO: NotificationPolling processing 1 more items. 2 Total items in internal queue. ReportingServicesService!dbpolling!11!12/26/2007-10:43:18:: i INFO: NotificationPolling processing item a6731001-092e-4a48-841e-bd22640956d7 ReportingServicesService!processing!12!12/26/2007-10:43:18:: e ERROR: Throwing Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: There is no data for the field at position 1., ; Info: Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: There is no data for the field at position 1. ReportingServicesService!library!11!12/26/2007-10:43:19:: i INFO: Call to RenderFirst( '/Marketing/TTL/Tech Lead/Tech Lead Program - Customer Detail Report' ) ReportingServicesService!library!11!12/26/2007-10:43:22:: i INFO: Initializing EnableExecutionLogging to 'True' as specified in Server system properties. ReportingServicesService!emailextension!11!12/26/2007-10:43:22:: Error sending mail, CDO error -2147220977, will not resend ReportingServicesService!emailextension!11!12/26/2007-10:43:22:: Error sending email. System.Runtime.InteropServices.COMException (0x8004020F): The server rejected one or more recipient addresses. The server response was: 550 5.7.1 Unable to relay for xxxxx@searshc.com
Is it possible to have a data-driven subscription over a report containing sub-reports? I have been trying but without sucess...
I was unable to create the data-driven over the report... only over a linked report to that same report, but even that way when i execute the subscription i get error...
If i create a the data-driven subs to every single sub-report it works fine! So why can't i create the data-driven over the report with those sub-reports? What can be causing the problem?
Using SS2005, I am trying to create a Data-Driven Subscription to query off a value. I have the value in my stored procedure like:
Procedure dbo.sp_ReportMaster @myid int=null
When I run the report in the Reporting Services, it prompts for myid, which is fine. I then deployed the report to the Reports Manager and tried to create a Data-Driven Subscription. Where it says specify a command, I put in exec sp_ReportMaster. I put in the pertinent information, then it says, "The 'ReportMaster' has no parameters," even though I have the parameter in my stored procedure and I put myid as a parameter in my report in Reporting Services.
I don't know why it shows parameters in Reporting Services when I run the report from there, but when I try to create the subscription, it shows that I don't have any parameters.
An issue with the 'Status' column of the 'Subscription' tab in the Report Manager. I created Data-driven Subscriptions for some of the reports, and I scheduled the reports using shared schedule. The scheduling is working fine and all the reports are getting generated daily. The issue is with the status of the report subscriptions under subscription tab, it shows as PENDING even after the report is generated. I restarted the ReportServer database, it didn't served my purpose. The status never changes .
When do the subscription status changes to PENDING? What needs to be done to change the PENDING status? Is this the bug with the Report Manager?
Within SQL Management Studio, when I try to add a data driven subscription to a report, the "New Data Driven Subscription.." option is disabled. I've checked all the listed prerequisites and feel that they are OK. The "New Subscription..." is enabled.
We are facing an issue related to SSRS 2012. We have Reporting Services 2012 configured on a couple of servers. On one server, we have created Datasources and Data-driven subscriptions for our reports and selected email as the report delivery option. But the subscriptions are not working. The LastRunTime column is NULL in the Subscriptions table in the ReportServer database and no email is being triggered. Also, no error message is displayed. The same reporting solution is working on another server that also uses Reporting Services 2012.
I've been asked to set up a data driven subscription for a number of reports which use multi value parameters. For example, show me all transactions against the following departments: IT, Building Services, Accounts.
As an interactive report it's simple, the user just selects the relevant departments, but as a data driven subscription I can't seem to find the correct format to pass the selections through.
I have a Data Driven Subscription which runs every day for the previous day. If for any reason the report subscription fails, i would like to get the last time it ran successfully. I know in the subscription table we have lastRunTime, but it will show the recent one which failed but i would like to know when it ran successfully last.Â
Example: Saturday 5:00 AM - Ran Successfully Sunday  5:00 AM - Ran Successfully Monday  5:00 AM - Ran successfully Tuesday  5:00 AM - Failed LastRunTime column will have Tuesday 5:00 AM.Â
Is there a way to get Monday 5:00 AM which is the last ran successfully ?? How can i get the history of a subscription?
Quick question: how do I determine programmatically if a data driven subscription is currently running?
More info: I€™m writing a web application which allows the user to kick off an existing data driven subscription (reporting services 2000), which runs from a table with parameters, paths, etc which the user has populated. The subscription can take several minutes to run, during which time I need to prevent other users from attempting to run the subscription or alter data on the table driving the subscription. All I€™ve found in the docs so far is 1. The ActiveState on the subscription. This seems to have more to do with weather or not it can run than if it is running. 2. The status of the subscription. This seems to only return €œdone: {0} of {1} with {2} errors€? Parsing this is likely to be too flaky to be acceptable.
I really need to move on this as soon as possible, any help is appreciated.
Using RS2005, how should multivalue parameters be stored in a database field so that a data driven subscription can properly read and use them? I have so far had no luck using syntax of:
1) parm1, parm2
2) parm1,parm2
Do single qutoes need to explicitly wrap the values? Can you please provide an example and a SQL INSERT statement using parm1 and parm2 to demonstrate what to store in the database field?
I'm using data-driven subscription to deliver reports to users via email.
However every few days or so, some of the reports will fail to get delivered to some of the subscribers. The rpts and subscribers affected are usually not the same.
The log showed the below messages....would really appreciate if anybody can shed light on this! TIA!
ReportingServicesService!library!16!02/21/2008-09:03:09:: i INFO: Call to RenderFirst( '/Daily Movement Reports/FDDlyTopRevoAgt' ) ReportingServicesService!cache!16!02/21/2008-09:03:09:: i INFO: From cache live: /Daily Movement Reports/FDDlyTopRevoAgt ReportingServicesService!library!16!02/21/2008-09:03:09:: i INFO: Initializing EnableExecutionLogging to 'True' as specified in Server system properties. ReportingServicesService!dbpolling!4!02/21/2008-09:03:09:: i INFO: NotificationPolling processing item 336709ba-97ce-4e6f-b9d3-09ae26e9f6fb ReportingServicesService!library!4!02/21/2008-09:03:09:: i INFO: Call to RenderFirst( '/Daily Movement Reports/FDDlyTopRevoAgt' ) ReportingServicesService!library!4!02/21/2008-09:03:09:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details., ; Info: Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException: An internal error occurred on the report server. See the error log for more details. ---> System.IO.IOException: The process cannot access the file 'C:Program FilesMicrosoft SQL ServerMSSQL.2Reporting ServicesRSTempFilesRSFile_bbc8b100-f99e-438f-88bc-bd796b88bc1c' because it is being used by another process. at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy) at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy) at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share) at Microsoft.ReportingServices.Library.PartitionFileStream..ctor(String path, PartitionManager manager, Boolean deleteOnClose) at Microsoft.ReportingServices.Library.PartitionManager.GetFileFromPartition(String path) at Microsoft.ReportingServices.Library.MemoryThenFileStream..ctor(String filename, Int32 threshold, PartitionManager partitionManager) at Microsoft.ReportingServices.Library.CachedData.GetNewStream() at Microsoft.ReportingServices.Library.CachedRenderingResult.GetRenderingResult() at Microsoft.ReportingServices.Library.RSService.RenderAsSnapshot(CatalogItemContext reportContext, Guid reportId, DateTime executionDate, DateTime expirationDate, ClientRequest session, ReportSnapshot snapshotData, String description, Boolean foundInCache, Warning[]& warnings, ParameterInfoCollection& effectiveParameters) at Microsoft.ReportingServices.Library.RSService.RenderAsLiveOrSnapshot(CatalogItemContext reportContext, ClientRequest session, Warning[]& warnings, ParameterInfoCollection& effectiveParameters) at Microsoft.ReportingServices.Library.RSService.RenderFirst(CatalogItemContext reportContext, ClientRequest session, Warning[]& warnings, ParameterInfoCollection& effectiveParameters, String[]& secondaryStreamNames)
I've developed a data driven subscription report. I have a paramete (named "Data") that is a result of my query to the current date. It is working fine.
Now I would like to make one change: In the step4 of the creation of the data-driven report we have the option to give a name to the filename.The name that I gave was TestFile. In this option i'm also able to select the parameter instead of giving the name to the filename. Can I make something like TestFile_ & @Data? Wich would result in TestFile_01-02-2007? Or the only way is to make, in the query of the paramenter another field with this result?
I have a data-driven subscription (DDS) stored procedure that gets called when a subscription fires and returns parameters to a report. One of the parameter values I want to return is NULL, which also happens to be the default value of the corresponding report parameter.
When I set the report parameter to use the default value (NULL) when setting up the subscription in Report Manager, the subscription works fine. When I try to pass the NULL value from the DDS proc to the report, the subscription fails.
I do not know what the error logs say. I've rarely looked at them and what I have seen seems a bit cryptic. I've narrowed down through trial-and-error that passing the NULL value is the issue.
Has anyone else experienced this issue and do you have a resolution?
I have a stored procedure that receives an input parameter of ReporID and then sends back the appropriate dataset to the data-driven subscription. In the stored procedure, there is some concatenated sql in producting the final select statement to send to the subscription, but it is generating the following error:
The dataset cannot be generated. An error occurred while connecting to a data source, or the query is not valid for the data source. (rsCannotPrepareQuery) Get Online Help
Insert Error: Column name or number of supplied values does not match table definition. Because there are some optional columns that need to conditionally appear based on the report, I can't avoid concatenation. My only other option is to have hundreds of individual tables to source all our reports, which I don't have time to manage.
Please let me know how I can allow the data-driven subscription setup process to discover the columns for my concatenated SQL so I can seutp my schedules based on the single stored procedure with all my logic nested in my table structure.
I have a report that has ten pages (essentially ten different reports). Each page has one, large main chart and then three smaller charts stacked on top of each other off to the right. The layout is in landscape. When I render the report in Reporting Services, the layout looks fine. If I export it to Adobe, it is also fine. However, when the report is emailed as a PDF attachment, the main chart on each page is completely missing. Has anybody experienced something simliar? I was having issues with the layout, and decreasing the height of each page fixed everything, but created this new problem. I am using Adobe 7.0. Thank you.
I am using SSRS 2005 for reporting. I am not able to see the "New Data-driven Subscription" button in Report Manager. But I am able to see "New Subscription".
I've created a data-driven subscription that works great and delivers an Excel file to a share. The SSRS report contains several reports/tables on one page and when displayed to Excel it creates separate tabs due to the page breaks, which is wanted.
Is it possible to provide a name to each of the tabs/worksheets that are created in the Excel file? By default, Excel will name them as Sheet1, Sheet2, Sheet3, etc.