Reporting Services :: How To Setup SSRS For On Demand Access And Fast Cache
Sep 22, 2015
I have a dashboard page that I would like to load fast. But I would also like the user to be able to run the report On-Demand. The report has start date and end date parameters which default to the first and last day of last month. If I use a Cache plan that loads at 6AM the report runs with the default parameters set in the report, the user has to wait until it completes before they can change the parameters.
If I uncheck "use default" parameters in the report I lose the ability to set a cache refresh plan with the default parameters because the option is greyed out. So is there anyway outside of creating a second copy of the report to allow a user to open a report, change the parameters and run it, but also have a way to schedule some sort of Cached report for the default parameters so I can put that on a WebPart page that would load instantly?
In an existing ssrs 2012 report, I want to basically add the following logic to a new dataset that will be used by a new parameter called 'Inventory'.
SELECT DISTINCT Inv_number as value, Inv_name as label FROM s.dbo.fnUser( @endYear, 0, 0, 0) WHERE (@report is not null) order by label,value
In this ssrs report, there are 15 reports that can automatically be generated. I basically want this new parameter called 'Inventory' to only be active when the 4th report is selected to be generated. Thus in the query I listed above, how can I change the query to only be active when the 4th report is selected?
I tried to change the where clause to (@report(4) is not null), but that did not work.
I have report server setup on the same machine where the sql server 2005 db is setup, as well as iis running the website. i simply need to get report server running to allow internet access. I have report server setup so that it is running locally (localhost), however, as soon as I change the iis site settings to a domain name, report server stops working properly. This looks like a permissions issue, Ive tried different combinations of settings, but nothing works. Any insight on how I can get report server setup for internet access (forms authentication), would be much appreciated.
Previously I was using SSRS to create a local website(native mode) for our domain users to access. I wonder whether it is possible to share the website to outside users(just like youtube, everyone can access it). Is there a possible way to achieve that?
I just setup a developer as a site admin in SSRS, he has administration rights to the site and also rights on folders that contain reports. He can access the reports folders no problem, however when he tries to access the "Home" folder he get's the error shown below.Â
UAC is switched off an other people are able to access this ok.Â
We are running Reporting Services 2008 R2 on a Windows Server 2008 Standard 64-Bit server. I have a user that has full access to Reporting Services at all folder levels but IS NOT a local administrator on the 2008 server.
This user can create data source connections but when he tries to test the connection by clicking on the 'Test Connection' button, he gets the following error "The permissions granted to user <username> are insufficient for performing this operation.A user that has administrator priveleges on the server can test the connection fine.Â
I don't want to make this user an administrator on the server.Â
This is an extract from the log file:
ibrary!ReportServer_0-24!3478!08/16/2011-13:45:37:: Call to TestConnectForDataSourceDefinitionAction(). library!ReportServer_0-24!3478!08/16/2011-13:45:37:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.AccessDeniedException: , Microsoft.ReportingServices.Diagnostics.Utilities.AccessDeniedException: The permissions granted to user <username> are insufficient for performing this operation.;
I'm currently working with a 10 million plus row database with the dataresiding on a Unix box with Cache 5.0. The problems is that it can take fivedays to pull one table from Cache to SQL 2000 using the ODBC connectionprovided by Cache in a SQL 2000 DTS package. I think the real problem isconverting the data from the post relational format (Cache) to a relationalformat (SQL 2000)???Does anyone have any ideas / suggestions on how to speed this transfer ofdata? I'm very new to Cache and any help would be greatly appreciated.Thanks,-p
I have a report whose parameters are limited by the user who is logged in. Ex. if a user had full access they would see all 100 hospitals in our hospital parameter, if another user had limited access they might only see 5 - this will vary largely on who is logged in. The data source that drives these parameters are set as follows:
Credentials stored securely in the report server, username and password are entered and Impersonate the authenticated user after a connection has been made to the data source is checked.I now want to cache this report for X minutes. So I goto Properties/Execution and select 'Cache a temporary copy of the report. Expire copy of report after a number of minutes'.
Applying this gives me the error: Credentials used to run this report are not stored.
What is the difference between CleanExpiredCache and FlushReportFromCache Do we need to run both the SPs to clear all the SSRS reporting cache? Is it possible to clean all the Cache information and retain the logs? If yes how we can do so. Is it by deleting the REportServerTempDB.dbo.ExecutionCache table work in achieving this?
I installed and started playing around with Reporting Services and realized that you are required to run IIS on your SQLserver in order to use RS. Is this 100% true? Please tell me there is an alternative...this is huge roadblock due to company policy.
HI, this will prob be a stupid question but i have setup reporting services and am trying to use it, however, when creating a new project i only have Visual Studio Solution under other project Solutions and not any of the other types i.e. Visual Basic Solution etc. How do i get the other types? Do i need to install anything further?
We've got a requirement to build the real time report. user can browse report at any point of time and need to see the latest data(stock market) in the report.
I've few options down...
1. Directly point to OLTP database as source and write stored procedure to show result set.
2. Replicate the database and write the SP's to reports. To avoid pointing directly to OLTP db.
3. To build the datawarehouse with dim & facts to show it in reports. I prefer this as a standard method, but this would have some latency depending on trasaction load which will differ from the requirement.
I need to install Reporting Services on a machine. Wehe can I find it ? (I have SQLServer Entreprise and Dev). Is it included in SQLserver Ent or should I get another CD ?
I have posted this to the general SQL Server group but without any response. I have also searched all of the forums and have not found an answer. For some reason all of a sudden, my Reporting Services is failing with this message when trying to connect:
TITLE: Connect to Server ------------------------------
Client found response content type of 'text/html; charset=utf-8', but expected 'text/xml'. The request failed with the error message: -- <html> <head> <title> SQL Server Reporting Services </title><meta name="Generator" content="Microsoft SQL Server Reporting Services 9.00.1399.00" /> <meta name="HTTP Status" content="500" /> <meta name="ProductLocaleID" content="9" /> <meta name="CountryLocaleID" content="1033" /> <meta name="StackTrace" content /> <style> BODY {FONT-FAMILY:Verdana; FONT-WEIGHT:normal; FONT-SIZE: 8pt; COLOR:black} H1 {FONT-FAMILY:Verdana; FONT-WEIGHT:700; FONT-SIZE:15pt} LI {FONT-FAMILY:Verdana; FONT-WEIGHT:normal; FONT-SIZE:8pt; DISPLAY:inline} .ProductInfo {FONT-FAMILY:Verdana; FONT-WEIGHT:bold; FONT-SIZE: 8pt; COLOR:gray} A:link {FONT-SIZE: 8pt; FONT-FAMILY:Verdana; COLOR:#3366CC; TEXT-DECORATION:none} A:hover {FONT-SIZE: 8pt; FONT-FAMILY:Verdana; COLOR:#FF3300; TEXT-DECORATION:underline} A:visited {FONT-SIZE: 8pt; FONT-FAMILY:Verdana; COLOR:#3366CC; TEXT-DECORATION:none} A:visited:hover {FONT-SIZE: 8pt; FONT-FAMILY:Verdana; color:#FF3300; TEXT-DECORATION:underline}
</style> </head><body bgcolor="white"> <h1> Reporting Services Error<hr width="100%" size="1" color="silver" /> </h1><ul> <li>An internal error occurred on the report server. See the error log for more details. (rsInternalError) <a href="http://go.microsoft.com/fwlink/?LinkId=20476&EvtSrc=Microsoft.ReportingServices.Diagnostics.Utilities.ErrorStrings&EvtID=rsInternalError&ProdName=Microsoft%20SQL%20Server%20Reporting%20Services&ProdVer=9.00.1399.00" target="_blank">Get Online Help</a></li><ul> <li>Could not load type 'Microsoft.Web.Services.ScriptHandlerFactory'. (c:inetpubwwwrootweb.config line 45)</li><ul> <li>Could not load type 'Microsoft.Web.Services.ScriptHandlerFactory'.</li> </ul> </ul> </ul><hr width="100%" size="1" color="silver" /><span class="ProductInfo">SQL Server Reporting Services</span> </body> </html> --. (Microsoft.SqlServer.Management.UI.RSClient)
------------------------------ BUTTONS:
OK ------------------------------
I have now uninstalled SQL Reporting Services, reinstalled it, but I am still getting the same error. From what I can infer, there is a problem with the httpHandler in the web.config file. It cannot load Microsoft.Web.Services.ScriptHandlerFactory.
Does anybody know anything about this or what else I might need to check? This has been going on for two days now and short of totally uninstalling all of SQL, I don't know what to do.
We built our prod server [vm] with SQL Server 2008 R2 on Server 2008 R2. It works nicely. Then we made a copy of the VM and renamed it (so our test environment would be IDENTICAL to production). After that, SSRS was broken: I get "HTTP Error 503. The service is unavailable." I can't connect via http, or SSMS.
We have tried:
*Â Running SSRS config tool (several times)
* Running with/without the IIS Server Role
*Â Dropping & recreating the SSRS keys
*Â Recreating the ReportServer database, etc
*Â Checking all of the accounts, permissions, etc
*Â Running SQL Repair
*Â Going through the registry to fix any references to the machine's old name
*Â Uninstalling, reinstalling SSRS
* Completely uninstalling ALL of the parts of SQL Server 2008 R2, deleting all directories, removing references to SQL Server from the registry, rebooting, reinstalling everything.
None of this has worked. SSRS [R2] is still 503 on our test box.
the SSRS [NT] service seems to run, without error. The Event Viewer doesn't seem to be recording any errors. The SSRS logs say that the default URL is wrong, but we get the same error in Prod, and Prod works fine. The other SQL Logs say something about not being able to contact the service. However, as I said, the [NT] service seems to be working fine.
Here€™s my situation. At what must have been the last dialog of setup I clicked Finish, then got this message: SQL Server Setup was unable to install on your computer. SQL Setup has encountered a problem and will end.
The summary log indicates that only the setup of Reporting Services failed. Here€™s the section of the log:
-------------------------------------------------------------------------------- Machine : HERE Product : Microsoft SQL Server 2005 Reporting Services Product Version : 9.00.1399.06 Install : Failed Log File : C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGFilesSQLSetup0002_HERE_RS.log Last Action : InstallFinalize Error String : The setup has encountered an unexpected error while Setting reporting service and share point exclusion path. The error is: Fatal error during installation. Error Number : 29528 --------------------------------------------------------------------------------
All other products seemed to install ok, appear on my menu, and start ok. My server is serving up SQL data to the website and various applications.
I'm working on a project that requires integration of SQL Server Reporting Services with ASP.NET 3.0 Web Applications. I'm working on Visual Studio 2005, with SQL Server 2005 on an XP development workstation. SQL Server, Reporting Services, and IIS are all running on my local machine.
I'm trying to prototype two approaches, one using the Report Viewer control, and the second using the Reporting Services Web Service. I have the two examples setup in projects in Visual Studio. The sample reports and data sources work fine in Visual Studio. I can access the report using the Reporting Services URL like this: http://localhost/Reports/Pages/Report.aspx?ItemPath=%2fBTT_BDS_DEV%2fCustomers; Report works fine.
My problem is, that when I try and access the report using the Report Viewer inside an ASP.NET page or from the Web Serivce hooked up inside an ASP.NET Page I get a security errors. I have chosen Windows Security for the Datasource, and ASP.NET pages. In the case of the Web Service, I'm passing in my local domain user name as the credentials.
I'm prototyping this on my local workstation, but I need to design this to be used on our corporate Intranet using Windows Security.
My questions are:
1. How do I need to setup users on my local development workstation to get this to work. 2. How should I plan for user security for enterprise deployment, i.e. using Reporting Services inside a large ASP.NET Web Application? 3. Can anybody give me some links to some good developer type working examples of doing this. I've looked but have not found the answers to the "how do I setup users" part of the question specifcally related to ASP.NET apps?
Below is the code example of the Web Services example app I'm working with which came out of a book I have on Reporting Services. This example compiles and seems like it would work but doesn't. Also following are a few of the error messages I get when experimenting with the example apps:
Errors:
1. The permissions granted to user 'LocalMachineNameASPNET' are insufficient for performing this operation. (rsAccessDenied)
2. System.Web.Services.Protocols.SoapException was unhandled by user code Message="System.Web.Services.Protocols.SoapException: The permissions granted to user 'LocalMachineName\ASPNET' are insufficient for performing this operation. ---> Microsoft.ReportingServices.Diagnostics.Utilities.AccessDeniedException: The permissions granted to user 'WCRBUSCNC2830B\ASPNET' are insufficient for performing this operation. at Microsoft.ReportingServices.Library.RSService._GetReportParameterDefinitionFromCatalog(CatalogItemContext reportContext, String historyID, Boolean forRendering, Guid& reportID, Int32& executionOption, String& savedParametersXml, ReportSnapshot& compiledDefinition, ReportSnapshot& snapshotData, Guid& linkID, DateTime& historyOrSnapshotDate, Byte[]& secDesc) at Microsoft.ReportingServices.Library.GetDataForExecutionAction._GetDataForExecution(CatalogItemContext reportContext, ClientRequest session, String historyID, DataSourcePromptCollection& prompts, ExecutionSettingEnum& execSetting, DateTime& snapshotExecutionDate, ReportSnapshot& snapshotData, Int32& pageCount, Boolean& hasDocMap, PageSettings& reportPageSettings) at Microsoft.ReportingServices.Library.GetDataForExecutionAction.ExecuteStep(CatalogItemContext reportContext, ClientRequest session, DataSourcePromptCollection& prompts, ExecutionSettingEnum& execSetting, DateTime& executionDateTime, ReportSnapshot& snapshotData, Int32& pageCount, Boolean& hasDocMap, PageSettings& reportPageSettings) at Microsoft.ReportingServices.Library.CreateNewSessionAction.Save() at Microsoft.ReportingServices.WebServer.ReportExecution2005Impl.LoadReport(String Report, String HistoryID, ExecutionInfo& executionInfo) --- End of inner exception stack trace --- at Microsoft.ReportingServices.WebServer.ReportExecution2005Impl.LoadReport(String Report, String HistoryID, ExecutionInfo& executionInfo) at Microsoft.ReportingServices.WebServer.ReportExecutionService.LoadReport(String Report, String HistoryID, ExecutionInfo& executionInfo)" Source="System.Web.Services" Actor="http://localhost/ReportServer/ReportExecution2005.asmx" Lang="" Node="http://localhost/ReportServer/ReportExecution2005.asmx" Role="" StackTrace: at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall) at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters) at WebReportTester.localhost.ReportExecutionService.LoadReport(String Report, String HistoryID) in C:Documents and SettingsconbcxMy DocumentsVisual Studio 2005ProjectsBTT_BDS_DEVWebReportTesterWeb ReferenceslocalhostReference.cs:line 242 at WebReportTester._Default.btnExecuteReport_Click(Object sender, EventArgs e) in C:Documents and SettingsconbcxMy DocumentsVisual Studio 2005ProjectsBTT_BDS_DEVWebReportTesterDefault.aspx.cs:line 82 at System.Web.UI.WebControls.Button.OnClick(EventArgs e) at System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) at System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) at System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) at System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
//Create an instance of the Reporting Services Web Reference localhost.ReportExecutionService rsv = new localhost.ReportExecutionService();
//Create the credentials that will be used when accessing Reporting Services //This must be a logon that has rights to the Customers Report rsv.Credentials = System.Net.CredentialCache.DefaultCredentials; rsv.PreAuthenticate = true;
//The Reporting Services virtual path to the report. string reportPath = @"/ReportFolder/Customers";
//The rendering format for the report string reportFormat = "HTML4.0";
//The devInfo string tells the report viewer how to display with the report StringBuilder deviceInfoBuilder = new StringBuilder(); deviceInfoBuilder.Append(@"<DeviceInfo>"); deviceInfoBuilder.Append(@"<Toolbar>"); deviceInfoBuilder.Append(@"False"); deviceInfoBuilder.Append(@"</Toolbar>"); deviceInfoBuilder.Append(@"<Parameters>"); deviceInfoBuilder.Append(@"False"); deviceInfoBuilder.Append(@"</Parameters>"); deviceInfoBuilder.Append(@"<DocMap>"); deviceInfoBuilder.Append(@"True"); deviceInfoBuilder.Append(@"</DocMap>"); deviceInfoBuilder.Append(@"<Zoom>"); deviceInfoBuilder.Append(@"100"); deviceInfoBuilder.Append(@"</Zoom>"); deviceInfoBuilder.Append(@"</DeviceInfo>");
string deviceInfo = deviceInfoBuilder.ToString();
//Create an array of the values for the report parameters localhost.ParameterValue[] parameters = new localhost.ParameterValue[1]; localhost.ParameterValue parameterValue = new localhost.ParameterValue(); parameterValue.Name = "@WTRKCustomerCode"; parameterValue.Value = "B34186"; parameters[0] = parameterValue;
//Create variables for the remainder of the parameters string historyId = string.Empty; string credentials = string.Empty; string showHideToggle = string.Empty; string extension = string.Empty; string mimeType = string.Empty; string encoding = string.Empty; localhost.Warning[] warnings; localhost.ParameterValue[] reportHistoryParameters; string[] streamIds;
localhost.ExecutionInfo execInfo = new WebReportTester.localhost.ExecutionInfo(); localhost.ExecutionHeader execHeader = new WebReportTester.localhost.ExecutionHeader(); rsv.ExecutionHeaderValue = execHeader;
try { //Execute the Report report = rsv.Render(reportFormat, deviceInfo, out extension, out mimeType, out encoding, out warnings, out streamIds);
//Flush the pending response Response.Clear();
//Set the HTTP Headers for a PDF response. HttpContext.Current.Response.ClearHeaders(); HttpContext.Current.Response.ClearContent(); HttpContext.Current.Response.ContentType = "text/html";
//Filename is the default filename displayed //if the user does a save as. HttpContext.Current.Response.AppendHeader("Content-Disposition", "Customers.htm");
//Send the byte array containing the report as a binary response. HttpContext.Current.Response.BinaryWrite(report); HttpContext.Current.Response.End();
} catch (Exception ex) { if(ex.Message != "Thread was being aborted.") { HttpContext.Current.Response.ClearHeaders(); HttpContext.Current.Response.ClearContent(); HttpContext.Current.Response.ContentType = "text/html";
Our DBA has installed reporting services on a server and now in order to access the report manager, one has to be an Admin on that Server. I am guessing that there is a mistake in the configuration of Reporting Services. Usually it should allow anybody who was added to the roles in the properties section of the Report Manager, right? I have also added the users to the DB..
Also I am using Windows Authentication to access Report Catalog items (Reporting Services is installed on Server2) from a web Application(deployed on Server1) and displaying the report using report viewer. For some reason, server1 has to be in an Admin role on Server2 to access the report catalog/report. This is kinda strange for me as I don't want everybody to be an Admin on Server2. Can anybody please point in the right direction?
Is there any way to get more information for when IAuthorizationExtension::CheckAccess fails to grant access to a report item for the current user? Specifically, it would be useful to know:
1. URL of attempted report 2. IP address of user agent 3. Identity of current user 4. Date/Time of the failed attempt
Hey everyone...I'm completely new to SQL Server and I'm trying to learn the Reporting Services tool. I just installed SQL Server 2005 and selected to install all the options, atleast I'm 99.99% sure I did.
When I go to launch Report Services Configuration, I get "No report servers were found on the specified machine. Details: Invalid namespace". Do I need IIS for this to work?
Also, I do not think the AdventureWorks database was installed, I cannot seem to find it anywhere. I have tried to go back through and reinstall it, but it says that it is already installed.
Also, is there a certain order that you are supposed to install things? i.e. SQL Server before Visual Studios?
Thanks in advance.
*Edit* BTW, I'm using Windows XP, SQL Server Enterprise Edition, and VS.NET 2005.
Is it possible to have my pop up SSRS box size according to the size of the returned value? Issue is, i have a text box that returns a note field and depending on the number of notes, it can and will vary in size. I am currently using this code
Yesterday, literally I was banging my head to the wall, kept getting this error:
A Connection could not be established with the information provided. Hit OK to change your connection settings. Invalid object name 'sysdatabases'.
I uninstall and re-install back the reporting services couple times and I kept getting the same error. I have 2 instances of SQL Server on the same Server:
SQL Server 2000
SQL Server 2005 The 2 instances work side by side, I was wondering if this causing the error.
I have a requirement to convert reports from Crystal Reports to SQLServer Reports. Is there any tool to do this? or Do I need to redesignevery report in SQL Server Reports?Madhivanan
I am using VS 2010 and the SSRS that came with it. I am sure its SSRS 2008. Anyway, I added a report file to the project, added an ObjectDataSource and connected this to SQLServer 2008, and display the dataset on the report. The report is using ScriptManager, ReportViewer1, and Report1.rdlc file. I preview the dataset and I have multiple row returned. The problem is I only have one row displayed on the report. Maybe I did a quick and dirty report? What setting of properties did I missed?
We are trying to use reporting services to execute a url when the SSRS report is executed. For example when I execute a SSRS report I would like the report to automatically access [URL] (as an example). The reason we are doing this is we want to access another reporting application but record the number and times of access via the reporting services execution tables/views. Is this achievable by putting some code in the Report properties. Can you open - execute url and then close report via some code.
I have a Manager dashbord  report.In this report 1st page contains some tables and 2nd,3rd page contains line charts with tables.Actually what we need is in 1st page tables are pretty simple,we need to add kpi's and shown these tables in kpi. kpi in ssrs and how to add kpi in ssrs reports?
I have tried different techniques to design the report but no luck,
1) design staff 5 days schedule as a calendar between two dates and 2)each staff can have more than one schedule on the same day. 3)Only one staff per page. 4) week will start based on date  ex: for staff 2 calendar will start based on date.
Wednesday  Friday    Tuesday   Wednesday   Thursday 01/01/14   3/01/14   7/01/14   8/01/14      9/01/14
Sample data:
expected format:
Staff1 (page 1) Monday    Wednesday   Friday   Monday 13/10/14  15/10/14  17/10/14  20/10/14
Staff 2 (page 2) Wednesday  Friday    Tuesday   Wednesday   Thursday 01/01/14   3/01/14   7/01/14   8/01/14      9/01/14
(page 3) Saturday    Wednesday  Thursday   Friday     Wednesday 11/01/14   15/01/14   16/01/14   17/01/14    22/01/14 and so on....
I was trying to have multivalue options in a ssrs report, and I used this query Â
SELECT {[Measures].[Sales Amount],[Measures].[Tax Amount]} on columns,non empty([Product].[Color].[Color],[Product].[Product Name].[Product Name]) on rows
from ( select (STRTOSET(@color))  on columns  from [Analysis Services Tutorial])
But the report only showed the default value as an option(in this format [Product].[Color].&[Multi] whic is not presentable),and what I also noticed in the parameter option is that, the available values option is set to none , also when I try to use get from query , it does not give me the vales for the parameters,and when I right click the designer pane it does not have the show hidden dataset option.I have created the parameter with multivalue option. what can I do to get the multivalue option to work.