SQL web Reporting from multiple databases - sql-server

Firstly let me start by letting you know that I am new to SQL reports. What I have is 2 independent customers, each have the same database structure, just on different SQL database machines.
What I want to do is create a reporting suite and have the customers use this so that they can run the reports from there own databases.
How is it best to do this
Thanks you in advance
Alpesh

You can serve reports via SSRS from a central server.
For each user you can use different data sources behind like two different report folders containing same rdl's but data source object mapping to own data

Related

HTML reports from SQL Server stored procedures

I need to know the shortest path to create HTML reports directly from SQL Server stored procedures. I would prefer not to involve too many technologies and layers between the two.
I have looked into web applications and SSRS (SQL Server Reporting Services), but wanted to know if there are other quicker alternatives out there that I am not aware of. The Idea is to quickly get an html table report from the database.
Two more features that will be great to have are:
To be able to schedule the reports to run (say, weekly).
And to email the URL of the report to the email addresses listed in a column of the report.
Any ideas on how can this be achieved?
Thanks.

Storing Database Locally in File/Folder

I'm in the middle of doing a personal project and would like to create a system of three components.
A simple form application that would allow the user to input data into a database.
A database of multiple tables.
An excel spreadsheet that queries the database.
At this point in the project, there is a desire for the database to be stored on the PC of the person working on the project and for all three components of the project to have the ability to be zipped up in a folder and emailed around. I know how to code well enough to query databases from applications and excel, but how can I go about creating a database that can be stored in a specific folder so it can be emailed around?
Thanks!
Look into sql compact edition
http://en.wikipedia.org/wiki/SQL_Server_Compact
http://xldennis.wordpress.com/2010/08/30/using-sql-server-compact-edition-database-with-excel/
MS Access might also be an option here.

How to build database reports using multiple remote databases

Does anyone have experience building database reports - doesn't matter which database - i just want design ideas - for a system that is made up of many separate, but identical databases?
I cannot "combine" all databases into one. They must be separate.
But the structure is identical across all databases...
I need to build a web interface that will allow a user to get a "global" report that will query all databases and build one combined report.
Do you have any comments on how the model would look like? or anything you think i need to beware of?
Thanks.
I don't have first hand experience with cross database reports, my experience comes from a product the company i work for sells which can create reports from multiple databases, from your description i believe you require something of the "combine" tables kind, in this case i recommend you to detect the tables used in the query, and unify them in a single temporary intermediary database, for example Access, SQL Server CE or SQLite and then run the query against this temporary database or table.
If your databases are Microsoft SQL Server, then using SQL Server Reporting Services seems like a good solution. The software for the report generation / display is bundled along with the database software.
It gives you a web interface, where you can configure 'data sources' from any number of remote databases, and combine data from these sources into reports. It is user friendly and you can do all the report design / configuration through the web interface without having to write any code.
some references :
Building report using SQL Server stored procedure
http://blog.hoegaerden.be/2009/11/10/reporting-on-data-from-stored-procedures-part-1/

Moving and merging reporting server instances

I have a machine where we have SSRS and SQL Server running, Currently we use SSRS and configured it to use localhost SQL Server hosted ReportServer and ReportServertempdb.
Now we need decomission this machine and move the reports to a brand new machine. Now the brand new machine does not have SQL Server, but we have another SQL Server which has 2 pre-existing databases: ReportServer and ReportServertempdb which are already being used by another SSRS instance. Now we are planning to use them for our to-be-moved SSRS instance as well.
Is it possible for multiple SSRS instance to use same ReportServer and ReportServertempdb? If yes how do you merge these? There are certain conflicting values. For example in the ReportServer DB in the table "ConfigurationInfo", SystemReportTimeout is 1800 for my current instance, but on my proposed instance value is -1. How to tackle this during a merge? I have many conflicting records in both ReportServer databases.
You can create several databases on your machine, each DB + TempDB for one instance. But it is not possible to share DB + TempDB for two different instances.
Even if this would work in theory, you will get a lot of problems with sync. caches tables, security tokens, etc.
Edit: So imho backup your databases and restore on a different name. Then you SSRS configration manager to connect to a existing database.
If you use security tokens for those DB's, make sure your have the .snk file.
Though you can share RS databases across multiple instances, you cannot merge two different ones to the same one. Unfortunately we cannot even rename RS databases as they are considered system databases. Your best bet would be to see if you can host your databases on another SQL instance on the same server or redeploy your reports on the new server.
For additional information you can refer to the following links:
Scaleout deployment: http://msdn.microsoft.com/en-us/library/ms157293(v=SQL.90).aspx
Managing RS DBs:http://msdn.microsoft.com/en-us/library/ms156421%28v=SQL.90%29.aspx
http://msdn.microsoft.com/en-us/library/ms159093.aspx

SSRS 2008 - caching data used by multiple reports

I am using SQL Server Reporting Services 2008. I have one dataset which is shared among several reports--each report groups or formats data differently. Is it possible to configure things so that the data is pulled from SQL Server when one of these reports is built and then cached within SSRS for a configurable period of time? Assume that I can select against database tables but can not create objects.
Here's another option, which although complex, might fit your requirements.
Have all of the reports use an XML data source. Then create that XML datasource as an ASP.Net web page or web service. Configure and use SQL Cache Dependency to control when the database would be queried again.
Now, any time any one of the reports asks for the data it will be cached in your "middle tier".
Unfortunately no.
Your main option would be to investigate "Report Snapshots" to explicitly cache the report (and indirectly the data)
Otherwise:
You could change the reports to have a lot of conditional formatting etc so you only have one report. Some caching will happen automatically per user session, but not much
Use the ReportViewer control in local processing mode, using ASP.NET to cache data
You can now in SSRS 2008 R2:
http://msdn.microsoft.com/en-us/library/ms170438.aspx - Shared DataSets
http://msdn.microsoft.com/en-us/library/ms155927.aspx - Report Caching in Reporting Services
Go SQL!

Resources