When a user tries to subscribe to a report created via ReportBuilder they receive the following error: "Subscriptions cannot be created because the credentials used to run the report are not stored, or if a linked report, the link is no longer valid."
As far as I can tell the credentials ARE being stored, but report server seems to be ignoring them. We are able to subscribe to non-ReportBuilder reports using the same data source just fine.
We have been trying to track down the problem for several weeks now and haven't gotten anywhere. Any help would be greatly appreciated.
The report uses a shared data source on its model. This is the only model defined on the server:
The model uses the following data source defined on the server (this is the same data source that other reports use, and it's the only data source stored on the server.):
The Data Source is set to store the credentials on the report server (you can see the results of testing the connection at the bottom of the screenshot):
You cannot subscribe to a Report Builder report that uses a model as a data source if the model contains model item security settings. Could this be the cause of your issue?
Related
I have an ssrs server that is not allowing me to create subscriptions for some reports. There are 20+ reports in a folder which all use the same data source: /Data Sources/MyDataSource. The credentials are stored in the data source. I can add subscriptions to most of the reports, but there are a few which throw the following error:
An Error Has Occurred:
Subscription can't be created or edited because
the credentials used to run the report are not stored, or if a linked
report, the link is no longer valid.
I have tried deleting the report and re-uploading them, deploying the whole bit from the project and adding another data source with the same stored credentials. However, I still get the same warning triangle on the subscription button. There are a batch of new reports I have added, some have this issue and others do not. Restarting the SSRS service did not help.
Any other ideas for troubleshooting this?
Bonkers! Looks like the issue was a case sensitivity one. In the project, all of the reports referred to a shared data source. However, sometimes the reference to the shared data source was spelled "mySharedDataSource" instead of "MySharedDataSource"
I found a hint of this in the logs, which complained about the first version of the spelling which did not exist on the report server. Fixing that and deploying the report corrected the issue and now I can create subscriptions.
Might be a 2017 thing, I have these reports both on a 2016 and 2019 instance and they have not complained.
I've created a custom Reporting Services report from within Visual Studio that is intended to use automatic prefiltering as described here.
So, I've created my query as follows:
select fullname, createdbyname, createdon
from FilteredContact as CRMAF_FilteredContact
order by createdon desc
However, once I add a new Report in CRM based on the report's .rdl file (as described under "Deploying the Report" here) it adds the report fine, but two things happen:
1) The shared data source for this report is initally invalid, both CRM and SSRS refuse to render it with the error:
"The report server cannot process the report or shared dataset. The shared data source 'MyOrg_MSCRM' for the report server or SharePoint site is not valid. Browse to the server or site and select a shared data source. (rsInvalidDataSourceReference)"
I have to manually set the DataSource from within SSRS to /MyOrg_MSCRM/CustomReports/MSCRM_DataSource to get it to work.
2) The report doesn't appear under "Run on Selected records" but under "Run on All Records", and doesn't perform any prefiltering.
Also, when I download the .rdl from SSRS it hasn't modified it, neither adding an extra parameter or changing the SQL query. as I would have expected based on this information.
What could I be doing wrong?
I'm using MS CRM 2016 update 1 (v8.1.0.359) on premise, with SQL Server 2014 Reporting Services and the SRS Data Connector installed on the same machine.
Apparently, you can use a shared data source reference, but you have to name it MSCRM_DataSource, just as the Data Source that MSCRM uses for its reports.
If you upload a Report in MSCRM like this, MSCRM recognizes this and automatically updates the data source to the valid /MyOrg_MSCRM/CustomReports/MSCRM_DataSource datasource, and also adds the prefiltering modifications.
You've created a Shared Data Source that you are using for multiple reports. When uploading reports through CRM this is not supported. Each report must have its own connection details embedded in the report.
I think the reason for this is, as you are trying to do, the report gets modified to add hidden CRM parameters and to alter the queries so that pre-filtering can take place.
To fix this, you have to modify each report and enter the Connection Details directly into the report rather than using a Shared Connection. Its a little annoying but should give you the results you are expecting to see
My error is below:
The report server cannot process the report or shared dataset.
The shared data source 'XXX' for the report server or SharePoint site is not valid.
Browse to the server or site and select a shared data source. (rsInvalidDataSourceReference)
Right. I've checked all 3 data sources and they connect fine. I've deleted the report and data sources and deployed them again but still the error. I've used Notepad++ to check for the reference XXX in any of the files and still nothing.
These options are both checked.
Always run this report with the most recent data
Do not cache temporary copies of this report
Under Snapshot Options > Allow report history to be created manually I get a warning of Credentials used to run this report are not stored. Could this be a reason?
My data sources are setup like:
I have read other similar posts but no luck.
Thanks
A restart of report server resolved this particular issue for some annoyingly odd reason
Go to your Datasets and check the Data Source being used if it's pointing to the correct data source
I've created a shared dataset in both BIDS and Report Builder. The data source is set up to use a windows service account. I've also tried it with a sql user that is verified to work.
In both BIDS and Report Builder, data is returned. When I go to the report portal and try to preview the data, or try to add it is a dataset to a mobile report, it throws an error:
I've given permissions at the root folder level to NT Authority\Authenticated Users and to my department's AD group, with all rights granted.
I'm not really sure what else to do, or where to even check to see what the error actually is. Any help is appreciated.
So I figured it out - it actually had nothing to do with permissions. A fiddler trace showed a 422 and 500 errors.
422: the Dataset could not be processed. The 500 said
500: There was a problem getting data from the Report Server Web Service: System.Web.Services.Protocols.SoapException: The JSON SharedDataSet Table renderer cannot parse the supplied report...
This lead me to check the actual query coming back, which had a Geography data type coming back for one of the fields. When I removed this from the query, everything worked fine.
I made a SSRS report using the embedded data source and its working fine.
Now I want to create a subscription for my report but getting an error: "subscription cannot be created because the credentials used to run the report are not stored" However I stored connection string in the data source.
I don't know where I am missing, any kind of help would be highly appreciated.