Showing posts with label SSRS. Show all posts
Showing posts with label SSRS. Show all posts

Tuesday, June 10, 2014

PowerPoint Export for SSRS Reports

Recently I put together a review of options available to export SSRS reports to PowerPoint. For those that have used SSRS for a while you know that it supports many different export formats including PDF, Excel, CSV, XML, TIFF, HTML and more recently Word and Atom data feeds. From those formats you can handle most capabilities that users are looking for, but a major hole still exists for use in PowerPoint. Since PowerPoint is part of the Microsoft Office suite you would think that Microsoft would want to cover all of the bases, especially after they added Word as an export format with SSRS 2008R2. But even as of SSRS 2014 there is still no native support to export to PowerPoint in SSRS. The below evaluation was meant to be as exhaustive as possible, but I'm sure there are some other ways that it can be done with automation or other means that I missed as it gets to the point where it just more and more steps to get it done.

After I created this documentation I did find that it is possible to use the Atom data feed to create a Power View report using that feed and then take advantage of the native PowerPoint export that is built into Power View. There is some documentation on this on TechNet, but this option requires SharePoint 2010 Enterprise with SSRS in integrated mode and Excel 2013 to put it all together. There are also some capabilities in Word/PowerPoint to embed Objects that reference the SSRS reports, but this is very similar to the LiveWeb option and I had a bunch of issues getting it work on my test system, so I chose not to mention it in the options below.

If you have found any other ways to get SSRS reports exported to PowerPoint, please post in the comments below and share it! There is a Microsoft Connect ticket that was created back in 2007 to add PowerPoint as a native export that is still active, if you want to see if we can get it added make sure to vote it up!

Summary


Aspose.Slides
LiveWeb
Custom Renderer
SSRS Word
SSRS Excel
SSRS TIFF
Easy to Install/Configure
3
3
1
4
4
4
Ease of Upgrading with SSRS
3
4
1
4
4
4
Report Changes Necessary
3
3
4*
4
4
4
Pages on Separate Slides
4
0
4*
1
0
2
Cost+
0
4
0
2
2
2
Average
2
3
2
3
3
3
Total
13
14
10
15
14
16

* Assuming renderer includes all capabilities
+ Lower rating when there is a cost ($ and/or man hours) separate from existing SSRS license


3rd Party SSRS Rendering Extensions
There are 2 possibilities that I found for this option, Aspose.Slides and LiveWeb. Aspose.Slides is a full SSRS rendering extension that works with all current versions of SSRS and adds multiple formats of PowerPoint export to ReportViewer (as shown in screenshot below):


Aspose.Slides supports all types of reports (tables, matrix, charts, graphs, etc.) that can be built in SSRS and will work with Report Builder. Some formatting of the reports will need to be taken into consideration to paginate properly in the PowerPoint exports, not that different than what has to be thought about for PDF export (make sure to setup landscape, margins, etc.). The install is very easy and for most installs does everything automatically even with multiple instances on the same computer. There is a cost associated with this as it is provided by Aspose, it is hard to tell which pricing structure will work best as is depends on the number of developers and servers they would plan to roll it out on. This page on Aspose’s site shows the pricing at a high level. This is the only option that will provide full PowerPoint export capabilities out of the box without extra steps.

LiveWeb is a freeware add-on for PowerPoint that allows you to embed a browser window in any PowerPoint slide. With this add-on a PowerPoint slide can be setup to point to a specific report on the SSRS server using the URL access built-in to SSRS to render the report inside of the slide. Because this is a browser embedded in the slide there will be no pagination as SSRS when accessed via a browser will assume that you do not want to see pagination and will make the whole report available by scrolling up and down in the browser window. This does also provide the capability to interact with the report within even the PowerPoint when it is in slide show mode, but if this is just being used to show static slides and each page is expected to be on a separate slide, this option will not work for that scenario. The install is very easy and works with all versions of PowerPoint from 2007 and forward. No changes will be required for the SSRS reports to work with this add-on.

Build Custom SSRS Rendering Extension

SSRS was built with the ability to extend/enhance all parts of the product by writing custom .NET code to do whatever the user would like if it is not something provided out of the box. While these extensions to SSRS can be very easy to write for some parts of the product, it can be extremely difficult for others. I have written a custom security extension for SSRS in the past and it only took a day or two to fully code and test. When I researched this for writing a custom rendering extension (Microsoft considers anything that shows the SSRS report in another form a renderer, even if it is only for export) the MSDN article specifically states that it is difficult and “requires you to implement hundreds of classes, interfaces, methods, and properties.” The other major issue with writing a custom rendering extension is there is no guarantee that the extension you write for SSRS 2012 will work with SSRS 2014 or any other future version as Microsoft is always changing the API for SSRS and those changes may break what previously worked fine. I saw this first hand with the security extension that I wrote originally for SSRS 2005, that had to be re-written for SSRS 2008R2. With custom rendering extensions the code has to know how to handle anything someone will put into an SSRS report, so that is what makes it that much more difficult to write. Because these extensions are written in a .NET language (C# or VB.NET) it will require a full license for Visual Studio as the BIDS (Business Intelligence Development Studio) and SSDT (SQL Server Developer Tools) do not include the capabilities to create C# or VB.NET projects. With Visual Studio 2013 it is possible to use the Express version that is free for this kind of development.

Use included export formats (PDF, Word, Excel, CSV, XML, TIFF, HTML)

It is possible to use the export formats that come with SSRS and still allow them to be shown in PowerPoint. Most of these options will require multiple steps to complete and may require manual intervention to complete successfully, but they will not cost anything extra in dollars to implement. The easiest to setup is using the Word export that is new with SSRS 2008R2, with this export you can easily copy/paste the Word version into a PowerPoint deck or even use the embedding of Word documents directly into PowerPoint (Word exports may have issues with pagination depending on the report and how it is formatted). With both the Word and Excel exports it would be possible for SSRS to be setup to automatically export the required reports to a file share on the network on a pre-defined schedule and then have the links to those files already setup in the PowerPoint decks and only require someone to open those decks and refresh them to get the latest version of the data from the reports. The other export formats supported by SSRS are not very helpful for embedding in PowerPoint. While it would seem that the TIFF (image) format would work, as it is just an image and it does generate an image per page, the issue I found in testing is that PowerPoint does not understand how to handle multiple pages in a TIFF image when importing it into a slide, so only the first page is imported. It would be possible to use another application to separate this single TIFF file by page, but that would be an extra step/process (freeware Image Magick can do this split via command line).

Monday, June 10, 2013

Visual Intelligence - Book Review


Time for something a bit different on my blog, a book review! I haven't done any book reviews on here before because I'm not much of a book reader and especially not technical books. Usually I just skip around and reference the chapters that I need, but for this book I actually read it cover to cover. And on top of all that I'm reviewing a book that I actually know all of the authors, so no pressure.


The book that I'm reviewing is "Visual Intelligence: Microsoft Tools and Techniques for Visualizing Data" by Mark Stacey (blog | Twitter), Joe Salvatore (blog) and Adam Jorgensen (blog | Twitter) published by Wiley on April 2013. The first thing that you will notice about this book is that it is published in color, and no I'm not just talking about the cover, but the pages in the book actually have color printing throughout. While most of you may think that this isn't a big deal, for technical books it is very rare that you can get a publisher to take this risk since it does add to the cost of the printing the book. In the case of this book though, it is required that it be printed in color because of the different visualizations being shown throughout along with helping to highlight points throughout about good and bad use of color in visualizations. There are many diagrams, screenshots and pictures throughout the book, which help to summarize the various tools that are being referenced. This is probably the strongest point about this book is that it does a great job outlining exactly what each Microsoft visualization tool does and does not do. The technologies covered are all Microsoft in this book, so you will not find any comparisons in detail on the Microsoft tools over a competitor, which I think helps to narrow the focus of this book and prevents it from becoming overly complex in explaining what each tool can or cannot do. The Microsoft technologies covered span from Microsoft Excel, SQL Server Reporting Services, PerformancePoint to the newest PowerPivot and Power View and few others in-between.

This book is great for anyone that is evaluating various Microsoft visualization tools and having a hard time deciding which ones to use in their applications. It is also great review for those that have used most or all of these technologies over the years to make sure you understand them and help to explain the newer ones that you may not know so much about. I have used all of the tools mentioned in this book in various applications over the years, so for me this book provided a great resource for clearing up why certain tools only do things in a very specific way. In the end I think that I will use this book in the future as a reference tool when I go into a client that is not sure what visualizations they want to use to help make the discussions go quicker and be able to provide quick samples of each.

I also want to mention that there are exercises that you can do in just about every section of this book. I did not actually go through these exercises at this time, but I do hope to have the time to go back and do that in the near future. To do all of these exercises you will need quite a bit of software since Microsoft has all of these tools spread across the SQL Server, SharePoint and Office families of products. There are instructions provided or links mentioned in the book for how to get all of this software setup along with where to get the sample data used. There is also a website setup by Wiley for this book that contains more information related to the book.

Overall, I found this book to be a very easy read and provided a great overview of lots of different tools in the Microsoft product list that can be used for visualizing data. The book also throws in some of the history of visualizations too, which I found really fascinating, especially the pictures of some very early ones. If you are thinking about using Microsoft tools for data visualization and unsure which tools to use, this book would be perfect for you since it will give you the details for each tool and what its strengths and weaknesses are. Even if you are a developer that works with these technologies, I'm sure just like me you still can get confused on which tools do which visualizations better than others, so it works as a great quick reference for that as well. And if you are looking for just that type of comparison, Appendix A has all of the features for each tool summarized in tables that makes it very easy to find the right tool for the job.

If you are interested in getting this book, below is the link to Amazon.com to pick it up and it is also available in Kindle format, but I would recommend only reading that on a color device (Kindle Fire, iPad, Surface or any other color capable tablet/e-book reader).