Shrink SSRS HTML5 rendered document size for gmail

I have a C# app that generates SSRS Reports which are either attached to an email or added to the body of the message if the rendering format is HTML. Emails are looking great and then someone opens it in the gmail web client and sees a nasty [message clipped] message, turn outs gmail clips the contents of an email body if it is bigger than 105kb.

After reviewing some documentation,, I noticed that the rendering engine will render both a full HTML and fragmented HTML document. Wouldn’t you know it the fragmented version is much smaller, all styling is inline and not so bloated with javascript.

I render my reports using the ReportExecutionService class which contains a method called Render; Render accepts a DeviceInfo parameter that when set to null gives you the full HTML document, however if you set the value of DeviceInfo to   @"<DeviceInfo><StreamRoot>/</StreamRoot><HTMLFragment>True</HTMLFragment></DeviceInfo>" you get a fragmented small html file that renders in gmail perfectly.

The code snippet below provides a simple inline if statement to set the value

string deviceInfo = format == "HTML5" ? @"<DeviceInfo><StreamRoot>/</StreamRoot><HTMLFragment>True</HTMLFragment></DeviceInfo>" : null; 


Power BI On Demand Webinar

Once again it has been ages between posts and this one is a shameless plug for the company I work for, Dimensional Strategies.  We have created a great On Demand webinar for Power BI,  here’s the link and a synopsis of the webcast

Power BI Webcast

Power BI for Office 365 brings Self-service analytics for all your data to the business

Log on to DSI’s on-demand preview and learn how your organization can unleash Interactive Power View dashboards to:


Discover and Combine – Gary in Finance can find, connect to, explore, and compile data easily from various sources

Model and Analyze – Mary your Analyst can Bring the power of in-memory analytics and flexible modeling into Excel with Power Pivot.

Share and Collaborate – Sharon and Marc can use collaborative Power BI sites quickly to share live reports and custom data sets with the rest of the team.

Get Answers and Insights – Graham in Marketing can Ask questions and get back instant answers with the new Q&A feature.

Visualize – See your data in new ways with bold interactive visualizations in Excel using Power View and Power Map.

Access Anywhere – Stephane from Sales can stay connected from anywhere, on any device, with mobile access to his key live and interactive reports.

SSRS SharePoint 2013 Create Service Application error: Could not find SOFTWARE\Microsoft\Microsoft SQL Server\110 registry key Error

This post falls under the category, things to remember when installing the Reporting Services SharePoint add-in for SQL 2012

In order to get SSRS for SharePoint to work the RS Add-in must be installed on all app servers in the Farm, if you are averse to waiting for huge .iso files to copy from server to server, the pain of the SQL Installation and decide to download the SQL Server® 2012 SP1 Reporting Services Add-in for Microsoft® SharePoint don’t. This installer does not create the required registry setting on the app servers where you have not installed the full SSRS for SharePoint Integrated Instance. Use the SQL Server installation .iso select the RS Add-in for SharePoint from the feature selection and things start to work, more up front work, much less back end pain.

The user is not a farm administrator. Please address the validation failures and try again – PowerPivot Configuration Tool

I was installing PowerPivot for SharePoint on a new app server in a multi server farm and came across the following error, “The user is not a farm administrator. Please address the validation failures and try again.”, problem is the PowerPivot install account was the Farm Admin, the SharePoint install was done with the Farm Admin account, the Farm Admin had all access required. So after scouring the internet and trying everything that I could find

  • Install PowerPivot addin on all servers in the farm
  • Remove Farm Admin from admin group, re add Farm Admin to admin group
  • reinstall all components using SharePoint install account

I remembered that when I ran the SharePoint Configuration wizard to add the new app server to the existing Farm, I referenced the Farm to join with an IP rather than a Computer name, this led to the ultimate solution:

  • Uninstall everything (SharePoint and PowerPivot for SharePoint)
  • Install SharePoint
  • Run configuration wizard, be sure to reference the Farm by Name not IP
  • Install PowerPivot for SharePoint
  • Run the PowerPivot for SharePoint 2013 Config tool

Issue resolved, loud Arg, Sigh of relief

MDX with SSAS 2012 Cookbook

I have recently had the opportunity review the Book, MDX with SSAS 2012 Cookbook, the Latest in a series of MDX Cookbooks written by Tomislav Piasevoli and Sherry Li

Small Book Cover

 Buy it Here

I am a fan of the cookbook approach when it comes to learning MDX. Analysis Cubes are built to answer common business questions, the recipes in this cookbook deliver methods and techniques to help business Intelligence professionals answers these questions and deliver the goods.  MDX with SSAS 2012 Cookbook does not assume that the reader has a working knowledge of MDX providing basic recipes in the first chapter to build a foundational knowledge of the language. Each subsequent chapter of the book builds upon this foundation adding new tools and techniques to the readers MDX arsenal;

including common requirements like

  • Time intelligence
  • Percentage Calculations
  • Moving Averages
  • Ranking
  • TopN/BottomN Reporting
  • Conditional Formatting of Data

For what it is worth, I would recommend this book to anyone that works with multi dimensional databases regardless of their experience with MDX, I know I am happy to have a copy!

Remove Left Navigation Bar – SharePoint 2013

Little trick to hide only the Left Quick Launch bar in SharePoint 2013.

  • Place a content editor Web Part to your page
  • paste the following code into the HTML Editor

.ms-core-sideNavBox-removeLeftMargin{ DISPLAY: none }
#contentBox { margin-left: 20px }

watch it vanish.

If you want to hide both top and bottom quick launch bars see the post below