Reporting services deployment for external users? - reporting-services

In most organizations, are external users (outside the organization) granted access to SSRS reports by going directly to Report Manager with limited permissions to view their reports only, for example, or do organizations more often create a separate dashboard website which pulls in the reports from SSRS?
I'm asking because currently I see a situation where there is a separate .NET site which pulls reports from SSRS, and I'm curious if this is a possibly unnecessary extra layer (the separate website), or do companies often create a separate dashboard site due to limitations(?) of SSRS Report Manager, or for security reasons? For example, could the Reporting Services Report Manager interface be customized to look like an organization's website reporting interface (with their logo, colors, etc), and not the standard out of the box Report Manager?

Do companies often create a separate dashboard site due to limitations(?) of SSRS Report Manager, or for security reasons?
Yes and no; it's going to depend a lot on the needs of the company. If Report Manager isn't doing what you need, then a custom solution is really the only option...
For example, could the Reporting Services Report Manager interface be customized to look like an organization's website reporting interface (with their logo, colors, etc), and not the standard out of the box Report Manager?
To a very limited degree, yes. You can modify the CSS sheets being used by SSRS, and inject some Javascript to apply some style hacks, but what you'll be able to accomplish is still quite limited. See here for getting started: http://msdn.microsoft.com/en-us/library/ms345247.aspx

Related

Dynamic Report creation

I hope someone here can help.
I have a requirement from my client who is an ISV. They want to develop a solution whereby they want to offer their customer an ability to create any reports from the customer specific database.
What I mean is, we publish the dataset on a portal the customer can then drag and drop the tables they needed, create the joins to create the required report.
Is it possible to do this in PowerBi or SQL Server Reporting service?
Many Thanks
Service Content Pack
It is possible in Power BI by developing an online service content pack. This allows online services to give their customers insight into their own data via the PowerBI.com cloud service. The ISV pre-builds the data model (and some initial charts); the end user doesn't have to worry about joins at all. They can drag & drop the fields that the ISV makes available.
There are some base requirements (it has to be a SaaS application that has an API accessible via the public internet).
More information: https://powerbi.microsoft.com/en-us/documentation/powerbi-developer-content-pack-overview/
Embedding
If the ISV is building their own portal, they can embed SSRS reports on their own website (and use parameters that pass the customer ID from the website directly to each report). This looks like a good place to start: https://learn.microsoft.com/en-us/sql/reporting-services/application-integration/integrating-reporting-services-into-applications. One downside to this solution is that SSRS doesn't allow the end-user to change the reports themselves (no dragging or dropping fields).
You can also embed Power BI reports onto an externally facing website. More information here: https://powerbi.microsoft.com/en-us/power-bi-embedded/
There may be other solutions, such as tools that allow external access directly into SSAS, but I've limited the scope of my response to the two tools you've asked about (SSRS and Power BI).

Where can I find utilities for SSRS Report Portal 2016

I am looking for utilities/code that has been developed to make the SSRS Report Portal 2016 user friendly/simpler for users that have zero technical background — interested in anyone who has developed an ordinary-language interface that can be configured for domain specific (schools, in this case) purposes.
The users need to be able to access the Portal, select a Template from a Library, and configure it to meet their own own needs — without having to understand any of the technical issues, or write any code. Eg. the Templates will contain auto-populated dropdown menus that allow the user to select the source and type of information that can be placed into a specific section of the report they are building.
Anyone who uses excel and pivot tables, with a little training, could easily make simple reports with report builder. The interface will let you drag and drop data if you have a tabular or multidimensional model. It works very similar to excel. Mobile report publisher is even easier if the data provided to them is well designed for that intention.

Single Front-end for multiple SSRS/SQL instances

We have 3 plants all interconnected with high speed WAN. Each plant has it's own SQL server (for it's own applications), but people from all three plants need to run reports on each server. If we host reports locally at each site and point to remote DB's, performance is terrible. IF we logon to SSRS remotely, performance is acceptable as only the screen rendering is across the WAN link, but then employees have to go to three URL's
The most heavily used SSRS server (plant A) has a front-end that is part of 3rd party's product. It has good user access control and lets us control access at the report level. From what I understand, the native SSRS web UI can only control access at the folder level, so we'd end up with huge set of folders to get correct level of access control granularity.
I did think about building my own BI front end. This would present available reports to a user based on a UserID/EmployeeID tuple in a custom table. When the user clicks a report it would simply navigate to the relevant URL (at any site - e.g. http://PlantB.com/reports/report1) (had to put on the .com to satisfy editor.
This did get me thinking: does anyone know of a commercial product that gives a single front end to a farm of SSRS servers. It's nothing to do with load balancing, just a single UI to control access to, and provide a single launchpad for users. So when UserA logs in, they see reports that they are allowed to run. If they are at Plant A and running a report located at plant B, it would simple point to http://PlantB.com/reports/report1
I googled it a bit, but didn't turn up anything
Regards
Mark
I think SharePoint would do the job. You could link to Report Manager reports or folders, add Web Parts to show reports in a SharePoint page, or fully integrate a new SSRS instance with SharePoint.

(SSRS) SQL Reports Web Service vs Report Viewer vs SQL Report Front End

We are planning to use SQL Reports in our company and we are currently evaluating the ways to expose the reports to end users. Should we use a reporting web service and then render the reports through a .NET Application? Should we use a report viewer or should we expose the SQL GUI to the users? What are the pros and cons of these over each other? Could anyone please help? I couldn't find any information anywhere for this.
The simplest is to use the Report Manager website that is enabled by default with an SSRS installation it's very quick and easy to get running and the security/ snapshot(cache) / subscription (email etc) options are easy to configure on a per site /per folder /per report basis. It's drawbacks are:
It's ugly - although if you are good with CSS it is possible to mess
with it, but I wouldn't. Newer versions e.g. 2008R2 and 2012 are less ugly
It has an ugly URL - although you could use a DNS alias to get
around that
It doesn't let you control how parameter drop-downs and other
objects appear on the page, but that's minor
I usually use Sharepoint (MOSS not WSS) (if the company has that) with the report viewer web-part. It doesn't require any special Sharepoint SSRS integrated mode - you can read about that but it's that's not a path I recommend taking.
The reports then appear to be embedded within the company's existing intranet site which looks professional IMO. Powerview for sharepoint is also a good option (or performance point in older versions of Sharepoint)
I would definitely NOT go down the road of webservice, that would entail a huge amount of unecessary programming. If you have a lot of spare .NET developers around I still wouldn't do that.
Rather to use the report viewer object in Visual Studio to display a report in an .NET web application. Designing reports using the BIDS (2008R2 and earlier) or SSDT (2012) is much easier than programming, particularly if you've used other reporting tools such as crystal reports or even Access. Using that report viewer object is a much better option than rolling your own.
I've written my response in order of easiness and work required. Hope that is helpful.

After a report / document template tool to generate documents from SQL Server

I'm after a tool to generate decent-looking documents from templates, that needs to:
be invoked through code (not interactively)
run on Windows, ideally invoked from code within a web-server
process standalone* report files that contain their own internal data definitions, query options, etc (i.e. ideally so that we can push simple report files to the server, and it simply work - where report/document maintenance is not necessarily a developer activity)
access data from a database (SQL Server 2005) based on parameters (ids etc) that we pass in
export (again, through code) to pdf or similar
*= where standalone simply means that the report is fully self-describing; it is fully expected that additional reporting runtime components will be required to execute the report. Contrast to rdlc which uses the data-sets from the local VS project.
I looked at the rdl/rdlc options (Visual Studio 2008), but rdlc seems to be coupled to the assembly (not standalone), and rdl seems to lack the code-based export ability. The version of Crystal Reports included in VS2008 seems very similar to rdlc - presumably the full Crystal Reports offering has more functionality, but has a non-trivial price tag too...
I'd welcome any suggestions for an appropriate, professional looking tool that might be suitable and recommended...
I think SQL Reporting Services fully support all of your requirements.
I have build some sophisticated solutions myself with SSRS.
(Example)
Fully manageable through code (via SSRS WS) (Upload, execute and export Reports)
Used SQL Server as database
Queries are defined in RDL (or Stored Proc) and based on parameters
There are other solutions like Telerik Reporting or Data Dynamics ActiveReport, but they are not free.
Let me know if you need more informations
SSRS WS: With that I mean the Web Service Interface (Report Server Web Service
). There is also a URL Access method, but I don't think it's a solution for you
I dont think you can satisfy all requirements. Number 3 especially is the killer.
On one reading, I see it as adhoc reporting generating it's on SQL. On another, it is giving users "empowerment" to do roll their own within some limits you define?
You may have looked already... but have you thought about using the ReportBuilder functionality to set up the basics and leave users to do the rest? You'll need a report monkey at some point anyway to set soemthing up.
Edit, after comment:
Reporting Services it is then.
It comprises a web service that renders RDL files uploaded from VS.
Report Builder is a template for users to hack and bash their own within the limits and environment you set.
Architecture of RS 2008
Our Data Dynamics Reports product sound like it is for you. It is a fully programmable reporting component for .NET / Visual Studio. View the documentation on the API here. You can export the reports to any of our various formats, including PDF, HTML, and Excel and it also includes an end user designer control that you can embed into your own applications to let end users modify or create their own reports.
The reports are stored in RDL - the same XML dialect that Reporting Services uses - in fact you can take any existing RDL files and open them in Data Dynamics Reports. In addition to compatibility with RDL, we add many more features, such as "themes" to consistently style your report, master reports (think ASP.NET master pages for reports), and several other built in controls such as a calendar, barcode, and dashboard controls to name a few.
Now lets look at your requirements one-by-one and see how Data Dynamics Reports might solve them:
be invoked through code (not interactively) - Data Dynamics Reports includes comprehensive API.
run on Windows, ideally invoked from code within a web-server - You can use Data Dynamics Reports in client-based, or ASP.NET applications, it even support medium trust ASP.NET applications (webservices are fine).
process standalone* report files that contain their own internal data definitions, query options, etc (i.e. ideally so that we can push simple report files to the server, and it simply work - where report/document maintenance is not necessarily a developer activity) - Data Dynamics Reports uses standard RDL (not rdlc) which includes all information bout how to retrieve data from your datasource. We also include an end user designer control to allow you to emebed a design environment for these standalone files into your own applications.
access data from a database (SQL Server 2005) based on parameters (ids etc) that we pass in - Data Dynamics Reports includes comprehensive support for parameters (even get the "valid values" from a query.
export (again, through code) to pdf or similar - Data Dynamics Reports supports exporting to PDF, HTML, Excel, Word, images, and XML.
I hope it works out for you, and let me know if you have any additional questions.
Scott Willeke
Data Dynamics / GrapeCity inc.
I think, based on all the criteria, you likely need to look at Crystal Reports, since you want the reports to be standalone, although, you could also create a report designer out of XtraReports or ActiveReports Pro and have much of the same functionality.
As for running it on the fly and having it generate, distribute, and archive the reports that run, check out our product at www.versareports.com. It should work with any .NET report designer you want to use and provides the enterprise-class report server framework you likely need.