Tool/library to generate a report from multiple SQL query output? - database

I'm looking to generate a report where the data is from multiple SQL queries. Some queries will have several columns/rows as output and I would like some control over what goes where.
Data is in a mySQL database. Formatted text or CSV would be fine as output. Would like to be able to automate this report.
Does anyone have recommendations on tools/libraries to do so?

You can do this with pretty much any reporting system. Windward Reports or Crystal Reports for paid. Jasper or Pentaho for free. (SSRS is out because you're on MySQL.) You can find a pretty good list at Reporting Software. The giant question you face is ease of use vs price.
If you're willing to pay for a commercial system, please take a look at Windward (disclaimer, I'm the CTO there). With Windward you design the report is Excel (best for your use), Word, or PowerPoint. So design & layout are a breeze. And yes, you can get output to XLSX, CSV, or pretty much anything else.

Related

Connect my organisation's SQL database to Power BI Report?

I am trying to connect my Power BI Report to my organization's SQL database. I just want to know that if it will assist me in providing business reports to the business on time. Currently we are doing extraction from database via FTP and putting it into Excel and cleaning the data and then formatting it to the user's needs. You can imagine the how tiresome this can will be.
I just want to know that if it will assist me in providing business reports to the business on time ?
Answer is yes.
To get better outcome you need to do research on their logics, requirements, how visualization present, KPI etc..... Once you finalize those things you can start working on implementations.
Note: Try to identify visualizations that display stakeholder's requirements. Because powerbi dashboard only for the upper management level, They need to get business decisions only for looking at graphs.
They can export data via excel sheet, powerpoint slide or pdf for their need, so you need to format those excel sheets also with the implementations.

How to access the data base behind IBM Cognos Report Studio

We are using the IBM Cognos Report Studio for Making the Reports.
And we have 1000s of reports developed and using.
Now i need to fetch all the SQL queries written in these 1000+ reports.
For that at present i am opening the report studio for each individual report and getting the query.
But it is very tedious job and taking months to get all the SQLs in these 1000+ reports.
So i am looking for a way to get all these queries from database behind Cognos studio.
Does these report parameters (including the SQL) store in a Database or only in Contentstore?
If it store in DB then is it possible to access the Report Studio in a Database tool like Oracle SQL Developer?
So that i can fetch all the SQLs in one shot from the database table.
Thanks for the help!
My experience migrating from one reporting product to another is like what you are asking. I think I had 7000 reports that I was aware of plus many reports sitting on workstation hard drives. At some point along the way we realized that the new product had different features than the old one, so report redesign was a good option in most cases. It took 18 months once we actually started working on the reports. That was to replace the 700 "standard" reports. Users were on their own (with support from IT and subject matter experts) for their custom work. I now have about 19,000 reports in Cognos.
Except where the report developer wrote SQL in a SQL object in the Queries area, Cognos reports do not contain SQL code. Cognos generates the SQL at runtime based on the report spec and user interaction (what parameters they set, what page the opened, etc.). Short of writing your own report spec parser, duplicating the work that Cognos does for you, there is no way I know of to generate the SQL.
One possibility: I haven't dug too deeply into the Cognos SDK. There may be a method there to generate the SQL for each report. Then you can do it automatically. Be aware that for thousands of reports you'll want to run this process during non-work hours. It could run for hours and may use a lot of resources.
Another possibility: Turn on native query logging (Cognos Administration | System | All dispatchers | | Set properties | Settings | Logging | Check the boxes for "Audit the native query..."). Then have a person, a product like those from Motio, or a Cognos SDK program you create yourself run every report. Then you can get the SQL from the Audit database. Of course, the problem here is answering prompts. It will probably take a person to run these.
To add two columns to a list, or two data elements to a report or page header or footer, or two filters (I don't know what you mean by "clause"), you'll want to use the Cognos SDK.
Choose relevant examples of different types of reports.
Examine the XML report spec for each of those reports.
Determine how to identify where the new element should appear in the XML.
Write a program (probably in C# or Java) to use the SDK to...
inspect every report in your environment.
determine which pattern the report fits.
add the data elements.
save the report.

Reports from SQL Server using Excel

I've developed an intranet system for our company which uses a SQL Server 2008 backend. This stores an awful lot of information and I'm frequently asked to build reports for various managers to help with the business. Quite often these reports are variations on a theme, whilst sometimes they're quite unique. At the moment I write SQL to perform the report and have them dump the required output via ASP.Net pages. What I'd really like to do is get away from that, and I was thinking along the lines of having the managers query the database using Excel so that they can decide what fields to filter on etc. To this end I wrote a couple of views and used Excel to connect to them. The problem is that without filtering you end up with a lot of data, so I was wondering about the best way to approach this. I've not had anything to do with data warehousing/Analysis Services but I wondered if that was a route to look at, or should I be looking at Reporting Services? I've got access to the full Microsoft stack so happy to use different solutions
I'm more then happy to spend some time doing some reading/research but I'm a bit unsure where to begin so any pointers would be gratefully received.
Thanks in advance

can sql server reporting services be used as a report writer?

we are trying to create reports programmatically in asp.net using microsoft reporting services. We are not sure if it is possible though. We have several queries for our reports. Instead of creating a separate .rdlc report for each of those queries, we are looking for a way so that we can feed the query / stored procedure to the reporting services engine and the reporting services engine will create a report and display it on the web. Is that possible?
Thanks
Not the way you are describing it.
Reporting services needs a report definition to generate the report (the .rdlc). It can't just guess. You can create the definition programmatically. After all, the .rdlc is just XML in the form of the report definition language schema.
You could loop through the result set, creating new report table columns for each column in the result set or something like that. I've never tried this, but I think it will be damn near impossible to get reliable formatting if the columns, sizes, etc are not known ahead of time. I don't know how many different queries you are talking about, but the effort to do something like this may not be worth it.
Are these queries radically different? Do they return the same basic type of data?

How to validate the clients database against my database schema?

Our clients use SQLServer/Oracle databases. Over the years, we've sent them many update scripts which they had to run manually. Most of the time, everything went smooth, but every now and then a script did not run completely to the end or had some errors in it (which weren't detected at the time of the upgrade). Also, sometimes even "smart users" added indexes/tables into those databases themselves, for whatever reason. Later on, those irregularities lead to problems.
Now I have been tasked to figure out a way to verify/validate our clients databases against our own database schema (tables, datatypes, indexes, views, ...). The output should be some kind of difference file indicating what is missing/what should not be in the database. I could do this in code (C++) from inside our application or I can create an external tool for just this one purpose.
Now before I start coding, I wanted to ask if there is already a tool out there that would produce the necessary results, or that at least could help me produce a decent xml file from our master-databases (Oracle and SQLServer)? Or is there a library which could help me write my own tool?
I've used this technique before and it doesn't require buying any tools.
Enterprise Manager has a "Create Script" feature. Perform this on your reference database and the comparison database. Select the appropriate options to generate scripts for the objects you care about. Next, just compare the two generated files with your favorite diff tool.
You can do a similar procedure with Oracle tools that let you export the DDL scripts.
There are three options using Red Gate's tools:
Have your client run the comparison.
You would need to convince your
clients to purchase a license of SQL
Compare and send them a schema
snapshot of your database.
Write an application of your own using Red
Gate's SQL Comparison SDK ($595 for
10 distributions) which can be run
at the client site.
Ask your client to send you a schema snapshot and
run the comparison yourself using your own
copy of SQL Compare. Red Gate
supplies a free schema snapshot tool
called SQL Snapper that will create
snapshots that can then be emailed to you
by your client. As this doesn't include any data, it may be something your client is willing to consider.
The SQL Snapper tool and SQL Comparison SDK sample code can be downloaded from our labs.red-gate.com website.
Oracle compatibility is now available in the form of an Early Access Build. If you're interested or would like to try out the tool visit the product page. You can use this for free until the full release of the tool.
David Atkinson, Product Manager, Red Gate Software.
We use Redgate SQL Compare for this and it's served us well over the years.
We also use Redgate SQL Data Compare for comparing the content of lookup tables.
The folks at redgate have a great tool called SQL Compare.
Can you create a schema dump like MySQL's SHOW CREATE TABLES?
If you're on Windoze, I have used Advanced Query Tool for years, and can attest that, for the money, it does more than anything else. In particular, it will generate a diff report between databases. It is ODBC/VB6, and can run against dozens of databases. Check it out. (No, I am not of QueryTool nor do I own any part of it, just a happy client.)

Resources