If you need to create reports and graphs from a variety of data sources, Crystal Reports should be one of the first tools to consider. It does take some time to learn but after you do spend that time, creating reports, even complex ones, is possible in a relatively short time.
CR lets you enhance the reporting of many software packages which come with limited built-in reports (instead of paying them extra for custom reports).
CR has been around for a very long time, so there are many resources for learning available either books, online articles or online video training. Also, you will most likely find an answer to your question by using a search engine since CR is so well established and popular.
CR stores its data in the database, which makes it easy to share, deploy and backup.
You can create very professional looking reports without a need to write code.
Just about anyone can use it, no need to be a software engineer or understand SQL queries. However, if you are a developer, than you are virtually limitless in what you can create with Crystal reports using its API and 3rd party integration.
You can try it for free with their 30 days trial.
I think that if you'll spend enough time learning how to use CR, before trying to create your first report, you'll be able to appreciate the package capabilities and judge if it is the right tool for you.
Crystal reports has a steep learning curve and it might take a long time to learn how to create more complex reports, so prepare to spend some time training before trying to create a non-basic report.
Technically, I think the graphs can be improved as they feel a bit dated compared to other solutions.
The frontend is a bit limited in its design options (mainly noticeable since the backend is so powerful)
The vast amount of features added made reports creation a bit too complex compared to what it used to be in earlier versions.