Unbale to preview the Report in Visual studio SSRS - reporting-services

I have created the custom data source Provider. I have edited the config file RSReportDesigner.config and RSPreviewPolicy.config. I am able to see my custom data source provider in data source list while creating the data source in SSRS (Visual Studio). While creating dataset, iam able to execute query and get data.
But, when i try to preview the report it display following error: An attempt has been made to use Data Extension 'CUSTOM_DATASOURCE' that is either not registered for this report server or is not supported in this edition of Reporting Services

See: https://support.microsoft.com/en-us/kb/2750044
and as the article instructs, be sure to also add the same xml snippet provided as the solution in the article, to the PreviewProcessingService.exe.config file that is located in %Program Files%\Microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies folder.
This file does not have existing entries like the devenv.exe.config, but you will see an <assemblyBinding> </assemblyBinding>section and you can insert the xml from the article between these tags.
You may have to relaunch SQL Data Tools for the changes to take affect.

Are you using Sql Server Express? Express doesn't support the full feature set of Reporting Services. There is a list of the unsupported features on MSDN, one of which is:
The Reporting Services API extensible platform for delivery, data processing, rendering, and security is not supported

Related

Adding SSRS report through CRM2016: Prefiltering doesn't work?

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

Insert report into ReportServer via TSQL

As far as i understand SSRS are just databases "ReportServer & ReportServerTempDB"
So Is it possible to insert a report into the ReportServer.Catalog using a insert query. (note that the Content image is shortened for demonstration purposes)
INSERT [dbo].[Catalog]
([ItemID], [Path], [Name], [ParentID], [Type], [Content], [Property], [CreatedByID], [CreationDate],
[ModifiedByID], [ModifiedDate], [Parameter], [PolicyID],PolicyRoot,ExecutionFlag)
VALUES
(N'7dd2ae9e-063d-421c-a596-1995f97caea5', N'/LsnReports/Monitoring/tst001', N'tst001',
N'db29a5c2-9738-4143-ad90-392aa6f26aa3', 2,
0xEFBBBF3C3F786D6C2076657273696F6E3D22312E302220656E636F64696E673D227574662D38223F3E0D0A3C5265706F727420786D6C6E733A72643D22687474703A2F2F736368656D61732E6D6963726F736F66742E636F6D2F53514C5365727665722F7265706F7274696E672F7265706F727464657369676E65722220786D6C6E733A636C3D22687474703A2F2F736368656D61732E6D6963726F736F66742E636F6D2F73716C7365727665722F7265706F7274696E672F323031302F30312F636F6D706F6E656E74646566696E6974696F6E2220786D6C6E733D22687474703A2F2F736368656D61732E6D6963726F736F66742E636F6D2F73716C7365727665722F7265706F7274696E672F323031302F30312F7265706F7274646566696E6974696F6E223E0D0A20203C4175746F526566726573683E303C2F4175746F526566726573683E0D0A20203C5265706F727453656374696F6E733E0D0A202020203C5265706F727453656374696F6E3E0D0A2020202020203C426F64793E0D0A20202020202020203C5265706F72744974656D733E0D0A202020202020202020203C54657874626F78204E616D653D225265706F72745469746C65223E0D0A2020202020202020202020203C43616E47726F773E747275653C2F43616E47726F773E0D0A2020202020202020202020203C4B656570546F6765746865723E747275653C2F4B656570546F6765746865723E0D0A2020202020202020202020203C506172616772617068733E0D0A20202020202020202020202020203C5061726167726170683E0D0A202020202020202020202020202020203C5465787452756E733E0D0A2020202020202020202020202020202020203C5465787452756E3E0D0A20202020202020202020202020202020202020203C56616C75653E5468697320697320612074657374207265706F72743C2F56616C75653E0D0A20202020202020202020202020202020202020203C5374796C653E0D0A202020202020202020202020202020202020202020203C466F6E7446616D696C793E56657264616E613C2F466F6E7446616D696C793E0D0A202020202020202020202020202020202020202020203C466F6E7453697A653E323070743C2F466F6E7453697A653E0D0A20202020202020202020202020202020202020203C2F5374796C653E0D0A2020202020202020202020202020202020203C2F5465787452756E3E0D0A202020202020202020202020202020203C2F5465787452756E733E0D0A202020202020202020202020202020203C5374796C65202F3E0D0A20202020202020202020202020203C2F5061726167726170683E0D0A2020202020202020202020203C2F506172616772617068733E0D0A2020202020202020202020203C72643A57617465726D61726B54657874626F783E5469746C653C2F72643A57617465726D61726B54657874626F783E0D0A2020202020202020202020203C72643A44656661756C744E616D653E5265706F72745469746C653C2F72643A44656661756C744E616D653E0D0A2020202020202020202020203C546F703E306D6D3C2F546F703E0D0A2020202020202020202020203C4865696768743E31302E31366D6D3C2F4865696768743E0D0A2020202020202020202020203C57696474683E3133392E376D6D3C2F57696474683E0D0A2020202020202020202020203C5374796C653E0D0A20202020202020202020202020203C426F726465723E0D0A202020202020202020202020202020203C5374796C653E4E6F6E653C2F5374796C653E0D0A20202020202020202020202020203C2F426F726465723E0D0A20202020202020202020202020203C50616464696E674C6566743E3270743C2F50616464696E674C6566743E0D0A20202020202020202020202020203C50616464696E6752696768743E3270743C2F50616464696E6752696768743E0D0A20202020202020202020202020203C50616464696E67546F703E3270743C2F50616464696E67546F703E0D0A20202020202020202020202020203C50616464696E67426F74746F6D3E3270743C2F50616464696E67426F74746F6D3E0D0A2020202020202020202020203C2F5374796C653E0D0A202020202020202020203C2F54657874626F783E0D0A20202020202020203C2F5265706F72744974656D733E0D0A20202020202020203C4865696768743E37302E36303537356D6D3C2F4865696768743E0D0A20202020202020203C5374796C653E0D0A202020202020202020203C426F726465723E0D0A2020202020202020202020203C5374796C653E4E6F6E653C2F5374796C653E0D0A202020202020202020203C2F426F726465723E0D0A20202020202020203C2F5374796C653E0D0A2020202020203C2F426F64793E0D0A2020202020203C57696474683E3135322E346D6D3C2F57696474683E0D0A2020202020203C506167653E0D0A20202020202020203C50616765466F6F7465723E0D0A202020202020202020203C4865696768743E31312E34336D6D3C2F4865696768743E0D0A202020202020202020203C5072696E744F6E4669727374506167653E747275653C2F5072696E744F6E4669727374506167653E0D0A202020202020202020203C5072696E744F6E4C617374506167653E747275653C2F5072696E744F6E4C617374506167653E0D0A202020202020202020203C5265706F72744974656D733E0D0A2020202020202020202020203C54657874626F78204E616D653D22457865637574696F6E54696D65223E0D0A20202020202020202020202020203C43616E47726F773E747275653C2F43616E47726F773E0D0A20202020202020202020202020203C4B656570546F6765746865723E747275653C2F4B656570546F6765746865723E0D0A20202020202020202020202020203C506172616772617068733E0D0A202020202020202020202020202020203C5061726167726170683E0D0A2020202020202020202020202020202020203C5465787452756E733E0D0A20202020202020202020202020202020202020203C5465787452756E3E0D0A202020202020202020202020202020202020202020203C56616C75653E3D476C6F62616C7321457865637574696F6E54696D653C2F56616C75653E0D0A202020202020202020202020202020202020202020203C5374796C65202F3E0D0A20202020202020202020202020202020202020203C2F5465787452756E3E0D0A2020202020202020202020202020202020203C2F5465787452756E733E0D0A2020202020202020202020202020202020203C5374796C653E0D0A20202020202020202020202020202020202020203C54657874416C69676E3E52696768743C2F54657874416C69676E3E0D0A2020202020202020202020202020202020203C2F5374796C653E0D0A202020202020202020202020202020203C2F5061726167726170683E0D0A20202020202020202020202020203C2F506172616772617068733E0D0A20202020202020202020202020203C72643A44656661756C744E616D653E457865637574696F6E54696D653C2F72643A44656661756C744E616D653E0D0A20202020202020202020202020203C546F703E352E30386D6D3C2F546F703E0D0A20202020202020202020202020203C4C6566743E3130312E366D6D3C2F4C6566743E0D0A20202020202020202020202020203C4865696768743E362E33356D6D3C2F4865696768743E0D0A20202020202020202020202020203C57696474683E35302E386D6D3C2F57696474683E0D0A20202020202020202020202020203C5374796C653E0D0A202020202020202020202020202020203C426F726465723E0D0A2020202020202020202020202020202020203C5374796C653E4E6F6E653C2F5374796C653E0D0A202020202020202020202020202020203C2F426F726465723E0D0A202020202020202020202020202020203C50616464696E674C6566743E3270743C2F50616464696E674C6566743E0D0A202020202020202020202020202020203C50616464696E6752696768743E3270743C2F50616464696E6752696768743E0D0A202020202020202020202020202020203C50616464696E67546F703E3270743C2F50616464696E67546F703E0D0A202020202020202020202020202020203C50616464696E67426F74746F6D3E3270743C2F50616464696E67426F74746F6D3E0D0A20202020202020202020202020203C2F5374796C653E0D0A2020202020202020202020203C2F54657874626F783E0D0A202020202020202020203C2F5265706F72744974656D733E0D0A202020202020202020203C5374796C653E0D0A2020202020202020202020203C426F726465723E0D0A20202020202020202020202020203C5374796C653E4E6F6E653C2F5374796C653E0D0A2020202020202020202020203C2F426F726465723E0D0A202020202020202020203C2F5374796C653E0D0A20202020202020203C2F50616765466F6F7465723E0D0A20202020202020203C506167654865696768743E32392E37636D3C2F506167654865696768743E0D0A20202020202020203C5061676557696474683E3231636D3C2F5061676557696474683E0D0A20202020202020203C4C6566744D617267696E3E32636D3C2F4C6566744D617267696E3E0D0A20202020202020203C52696768744D617267696E3E32636D3C2F52696768744D617267696E3E0D0A20202020202020203C546F704D617267696E3E32636D3C2F546F704D617267696E3E0D0A20202020202020203C426F74746F6D4D617267696E3E32636D3C2F426F74746F6D4D617267696E3E0D0A20202020202020203C436F6C756D6E53706163696E673E302E3133636D3C2F436F6C756D6E53706163696E673E0D0A20202020202020203C5374796C65202F3E0D0A2020202020203C2F506167653E0D0A202020203C2F5265706F727453656374696F6E3E0D0A20203C2F5265706F727453656374696F6E733E0D0A20203C72643A5265706F7274556E6974547970653E4D6D3C2F72643A5265706F7274556E6974547970653E0D0A20203C72643A5265706F727449443E37653537343362392D383630362D346137352D393834612D3736373834653437393565363C2F72643A5265706F727449443E0D0A3C2F5265706F72743E,
N'<Properties>
<Language>en-US</Language>
<HasUserProfileQueryDependencies>False</HasUserProfileQueryDependencies>
<HasUserProfileReportDependencies>False</HasUserProfileReportDependencies>
<PageHeight>297.000007629395</PageHeight>
<PageWidth>210</PageWidth>
<TopMargin>20</TopMargin>
<BottomMargin>20</BottomMargin>
<LeftMargin>20</LeftMargin>
<RightMargin>20</RightMargin>
</Properties>',
N'e3ce88b0-16a2-4111-abf9-96d6866f513a',
CAST(0x0000A55A0069B25C AS DateTime),
N'e3ce88b0-16a2-4111-abf9-96d6866f513a',
CAST(0x0000A55A0069B25C AS DateTime),
N'<Parameters>
<UserProfileState>0</UserProfileState>
</Parameters>',
N'be91f173-be6a-48b7-940a-0ed79476b6c1',0,1)
I did try a simple report without datasources and datasets, but i get the following error in Report Manager.
"An internal error occurred on the report server. See the error log for more details. (rsInternalError) Get Online Help For more information about this error navigate to the report server on the local server machine, or enable remote errors"
I need to create an update to SSRS for just over 50 individual sites... Is this at all possible?
If you need to deploy or change something on a group of servers you should script it using the rs.exe utility provided with Reporting Services. This utility allows you to administer a Report Server (including uploading content) using "rss" scripts written in Visual Basic that interact with the SSRS API.
Microsoft provide a very comprehensive example which is probably overkill for your needs but there are plenty of other rss examples available on the web.
I would not recommend trying to upload content (or any other SSRS change) by directly modifying the ReportServer database, you could easily end up with a report server in a non-functioning state.

Using external assembly's method's results as a dataset

Using SQL2008R2:
I am trying to create a dataset that is simply the result of an external assembly's return method(s), but everything I can find regarding using custom/external assemblies just has a textbox's value set to the external assembly's method's result via an expression.
I simply want Report Server to do the data processing in the external assembly and bind that result to a very simple report.
I found some references to something about MDX but they seem to be a few years outdated and needed to know if this is possible.
Assuming you already have a .dll - Place your dll in the report designer folder (where your RDL is) and the report server folder, somewhere around here:
Program Files\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies
Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportServer\bin
Now add a reference to your dll from your report.
With your report open go to Report, Report Properties, References, Add reference, browse to your dll and add it.
Now in a text box properties Value call a method of your dll. It should look something like this:
=MyDllName.ClassName.MyMethodOrSubOrWhatever
This is a great article that can walk you through this:
Assuming you already have a .dll - Place your dll in the report designer folder (where your RDL is) and the report server folder, somewhere around here:
Program Files\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies
Program Files\Microsoft SQL Server\MSSQL.3\Reporting Services\ReportServer\bin
Now add a reference to your dll from your report.
With your report open go to Report, Report Properties, References, Add reference, browse to your dll and add it.
Now in a text box properties Value call a method of your dll. It should look something like this:
=MyDllName.ClassName.MyMethodOrSubOrWhatever
This is a great article that can walk you through this: http://support.microsoft.com/kb/920769
P.S. Another option, if you don't want the web server doing the heavy lifting, is to use stored procedures. However, in our experience with very large database systems, it is much easier to scale up the web servers than it is to scale up the database servers so we do much of the heavy lifting on the web servers.
If you need a data set that is generated by custom .NET code, you can either set up a web service (here's a good tutorial), or you can set up a custom "data processing extension".
A data processing extension will allow you to choose a new data source in the SSRS report designer, and this data source will run custom .NET code. The full description is on MSDN, but here are the basic steps:
Create a new class library project
Implement all of the required extensions (and any desired optional ones)
Copy the DLL to the SSRS bin folder
Edit the SSRS config file to register your extension (by specifying the fully qualified name of your IDbConnection class)
You can find working examples from both CodePlex and Microsoft.

SSRS - different data depending on whether previewing report or using report viewer

I'm using SQL Server 2008 R2 Reporting Services. I'm seeing different data in a dropdown that's on the report, depending on whether I'm running the report in 'preview' mode from VS2008, or whether I'm running it from the report viewer at http://localhost/ReportServer_SQL2008. Any suggestions?
I'm using SSRS via SQL Server 2008 R2 Report Server
When I preview my report (originally created by another developer) in VS2008 I see correct data in one of the dropdowns for my report:
When I run the report via the report viewer on my machine at http://localhost/ReportServer_SQL2008, I see an incorrect GUID displaying in place of some recently added items in the dropdown
I've re-built the report in VS2008, and I've manually re-uploaded the .rdl file to my report server using the Report Manager at http://local-machine-name/Reports_SQL2008/, but I still see the incorrect data when using the IE report viewer.
I've looked at where the data is coming from that's used for populating the dropdown, using Query Analyser - when both viewing the report preview and viewing the report through the report viewer, the data is coming from the same database, using exactly the same stored procedure call
The 'raw' data being pulled from SQL gets some processing before it's used in the relevant data field in the report - it gets processed by using a custom .NET assembly, to pull back a 'friendly' string based on the report user's locale. This uses .resx files held in the VS2012 project for the custom assembly , that transpose the data. The entries in the .resx all seem to be correct.
I've manually deployed a debug version of the custom assembly that does this locale translation to C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\PublicAssemblies (my own default location for custom assemblies)
When I debug against this assembly in VS2012 by attaching VS2008 to the debug process and running the report preview in VS2008, the correct program name e.g. 'GRIT CARDIO' is returned
So the question is 'why is this not being returned when I run the report in the IE report viewer'?

Failing to regenerate report: ReportProcessingException on rendering extension

I can generate a report in SSRS 2008 but when I try to generate it again it will fail with exception below. It will however work again once after SSRS is restarted. What configuration option could be affecting this? (I have added all necessary extensions.)
processing!ReportServer_0-1!1ef4!01/28/2013-16:39:41::
ERROR: Throwing Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: You have attempted to use a rendering extension that is either not registered for this report server or it is not supported in this edition of Reporting Services., ;
INFO: Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: You have attempted to use a rendering extension that is either not registered for this report server or it is not supported in this edition of Reporting Services.
library!ReportServer_0-1!1ef4!01/28/2013-16:39:41::
WARN: Microsoft.ReportingServices.ReportProcessing.ReportProcessingException: You have attempted to use a rendering extension that is either not registered for this report server or it is not supported in this edition of Reporting Services.
at Microsoft.ReportingServices.ReportProcessing.ReportProcessing.CreateRenderer(String format, IRenderingExtension& newRenderer)
at Microsoft.ReportingServices.ReportProcessing.ReportProcessing.RenderSnapshot(RenderingContext rc, ProcessingContext pc, GetResource getResourceCallback)
at Microsoft.ReportingServices.Library.RenderFromSnapshot.DoRendering(ProcessingContext pc, RenderingContext rc)
at Microsoft.ReportingServices.Library.RenderFromSnapshot.CallProcessingAndRendering(ProcessingContext pc, RenderingContext rc, OnDemandProcessingResult& result)
at Microsoft.ReportingServices.Library.RenderStrategyBase.ExecuteStrategy(OnDemandProcessingResult& processingResult)
It seems SSRS is trying to load an assembly containing some report rendering functionality (maybe some charts you added)?
If this is the case, this article explains how to register a DLL with SSRS.
It turned out the problem was SQL Web Edition does not support html extensions. You need at least Standard. Why it worked once remains the question.
The problem in our case is that via API we were requesting a report and attempting to convert the report from HTML to a different rendering extension. And, unfortunately, the specific Reporting Services instance’s configuration file has not been configured\extended to support the requested rendering format.
In MS SQL Server 2008-R2, the configuration file is located in a directory structure resembling the following:
E:
\Program Files
\Microsoft SQL Server
\MSRS10_50.MSSQLSERVER_RS
\Reporting Services
\ReportServer
And, the actual file name is rsreportserver.config
In the configuration file, find the “Render” section:
< Configuration >
< Extensions >
< Render >
Within the Render section, find the corresponding “Extension” entry.
If the extension is not found, add it: