<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Robert Bruckner's Advanced Reporting Services Blog : Report Design</title><link>http://blogs.msdn.com/robertbruckner/archive/tags/Report+Design/default.aspx</link><description>Tags: Report Design</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>SQL Server 2008 R2 November CTP – What’s New In Reporting Services?</title><link>http://blogs.msdn.com/robertbruckner/archive/2009/11/09/sql-server-2008-r2-november-ctp-what-s-new-in-reporting-services.aspx</link><pubDate>Tue, 10 Nov 2009 07:30:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9920013</guid><dc:creator>Robert M. Bruckner</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/robertbruckner/comments/9920013.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robertbruckner/commentrss.aspx?PostID=9920013</wfw:commentRss><description>&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008R2AugustCTPWhatsNewInReport_144E2/SQLServer2008_R2_2.png" mce_href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008R2AugustCTPWhatsNewInReport_144E2/SQLServer2008_R2_2.png"&gt;&lt;IMG style="DISPLAY: block; FLOAT: none; MARGIN-LEFT: auto; MARGIN-RIGHT: auto" title="SQL Server 2008 R2" border=0 alt="SQL Server 2008 R2" src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008R2AugustCTPWhatsNewInReport_144E2/SQLServer2008_R2_thumb.png" width=350 height=64 mce_src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008R2AugustCTPWhatsNewInReport_144E2/SQLServer2008_R2_thumb.png"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;The &lt;STRONG&gt;November CTP&lt;/STRONG&gt; download is available for &lt;A href="http://msdn.microsoft.com/subscriptions/securedownloads/default.aspx" mce_href="http://msdn.microsoft.com/subscriptions/securedownloads/default.aspx"&gt;MSDN&lt;/A&gt; and &lt;A href="http://technet.microsoft.com/subscriptions/securedownloads/default.aspx" mce_href="http://technet.microsoft.com/subscriptions/securedownloads/default.aspx"&gt;TechNet&lt;/A&gt; subscribers. The public download is available &lt;A href="http://www.microsoft.com/downloads/details.aspx?familyid=FE0C6A31-5AD6-4EEA-A865-73BBE2608BD1" target=_blank mce_href="http://www.microsoft.com/downloads/details.aspx?familyid=FE0C6A31-5AD6-4EEA-A865-73BBE2608BD1"&gt;here&lt;/A&gt;.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;The &lt;A href="http://www.microsoft.com/downloads/details.aspx?familyid=020EE0D5-BCE4-4A45-9D64-B0C49C8831E5" target=_blank mce_href="http://www.microsoft.com/downloads/details.aspx?familyid=020EE0D5-BCE4-4A45-9D64-B0C49C8831E5"&gt;feature pack download&lt;/A&gt; is now also available and includes Report Builder 3.0 as well as the RS add-ins for SharePoint 2007 and SharePoint 2010.&lt;/P&gt;
&lt;P&gt;The Data Platform Insider blog provides an &lt;A href="http://blogs.technet.com/dataplatforminsider/archive/2009/11/09/announcing-the-sql-server-2008-r2-november-ctp.aspx" mce_href="http://blogs.technet.com/dataplatforminsider/archive/2009/11/09/announcing-the-sql-server-2008-r2-november-ctp.aspx"&gt;overview&lt;/A&gt; of what's new in CTP release for SQL Server 2008 R2.&amp;nbsp; If you are reading my blog, you are probably interested in knowing what’s specifically new compared to the previous &lt;A href="http://blogs.msdn.com/robertbruckner/archive/2009/08/10/sql-server-2008-r2-august-ctp-what-s-new-in-reporting-services.aspx" mce_href="http://blogs.msdn.com/robertbruckner/archive/2009/08/10/sql-server-2008-r2-august-ctp-what-s-new-in-reporting-services.aspx"&gt;August CTP&lt;/A&gt; in Reporting Services 2008 R2 &lt;STRONG&gt;November CTP&lt;/STRONG&gt;:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Report Part Gallery &lt;BR&gt;&lt;/STRONG&gt;The ability for report items / data regions to be published to the report server and made available to other report authors to re-use.&amp;nbsp; Report authors can publish and share these report components from either BIDS or Report Builder 3.0.&amp;nbsp; Information workers can use Report Builder to mash these report components together into their own unique views by simple drag &amp;amp; drop.&amp;nbsp; This includes notifications when a report part was updated on the report server in the meantime.&amp;nbsp; &lt;BR&gt;&amp;nbsp; &lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Shared Data Sets&lt;/STRONG&gt; &lt;BR&gt;Datasets can now be shared, stored, processed and cached externally from the report.&amp;nbsp; Cache refresh plans let you cache reports or shared dataset query results on first use or from a schedule. &lt;BR&gt;&amp;nbsp; &lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Enhanced SharePoint Integration for SharePoint 2007 and SharePoint 2010 &lt;BR&gt;&lt;/STRONG&gt;This includes support for multiple SharePoint Zones, the SharePoint Universal Logging service, and Report Parts.&amp;nbsp; We added a new SharePoint List data extension with query designer support.&amp;nbsp; Furthermore, support for right-to-left text with Arabic and Hebrew was added in the SharePoint user interface.&amp;nbsp; &lt;BR&gt;&amp;nbsp;&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;New Data Visualization Report Items &lt;BR&gt;&lt;/STRONG&gt;&lt;A href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008R2NovemberCTPWhatsNewInRepo_14B76/DVEnhancements_2.png" mce_href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008R2NovemberCTPWhatsNewInRepo_14B76/DVEnhancements_2.png"&gt;&lt;STRONG&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: 0px; BORDER-LEFT-WIDTH: 0px; MARGIN-RIGHT: 0px" title=DVEnhancements border=0 alt=DVEnhancements align=right src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008R2NovemberCTPWhatsNewInRepo_14B76/DVEnhancements_thumb.png" width=163 height=73 mce_src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008R2NovemberCTPWhatsNewInRepo_14B76/DVEnhancements_thumb.png"&gt;&lt;/STRONG&gt;&lt;/A&gt;&lt;STRONG&gt;Data Bars &lt;/STRONG&gt;- each bar is scaled based on the maximum value of the immediate group (a default which can be adjusted). &lt;BR&gt;&lt;STRONG&gt;Sparklines&lt;/STRONG&gt; are data-intense, word-sized graphics.&amp;nbsp; These visualizations make it possible for report consumers to quickly see things like trends over time at a glance. &lt;BR&gt;&lt;B&gt;Indicators&lt;/B&gt; are small icons that are often used to depict the status or trend for a given value.&amp;nbsp; Setting up indicators based on a number of pre-configured sets is now very easy. &lt;BR&gt;Furthermore, this CTP includes improvements to the Map wizard. &lt;BR&gt;&amp;nbsp; &lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Enhanced Business Intelligence Development Studio &lt;BR&gt;&lt;/STRONG&gt;Support for 2008 and 2008 R2 versions of reports and report projects. &lt;BR&gt;&amp;nbsp; &lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Aggregates of Aggregates &lt;BR&gt;&lt;/STRONG&gt;This enables report authors to nest RDL aggregate expressions inside other RDL aggregate expressions with unlimited nesting levels.&amp;nbsp; For example, the expression =Avg(Sum(Sales, "Month"), "Year") would compute the average total monthly sales.&amp;nbsp;&amp;nbsp; &lt;BR&gt;&amp;nbsp; &lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Other RDL Expression Language enhancements &lt;BR&gt;&lt;/STRONG&gt;Expect more details on many of these topics in separate blog postings: &lt;BR&gt;- Writing expressions that take into account the current rendering format (=Globals!RenderFormat.Name) &lt;BR&gt;- Naming pages, including naming of Excel worksheets for Excel export &lt;BR&gt;- Group.DomainScope is quite useful for synchronizing data visually across different charts / sparklines and in tablix even if data is only available at disparate granularities.&amp;nbsp; &lt;BR&gt;- Read/Write report variables with automatic serialization/persistence; these are quite useful to avoid managing your own custom code variables. &lt;BR&gt;- Rotating Text 270 Degrees, which is frequently needed for narrow column layouts.&amp;nbsp; &lt;BR&gt;- Dynamic page breaks, as well as resetting page number of page breaks &lt;BR&gt;&amp;nbsp; &lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;New 2010 SOAP Endpoint&lt;/STRONG&gt; &lt;BR&gt;While the existing 2005/2006 SOAP endpoints are still supported, the 2010 endpoint unifies support of both native &amp;amp; SharePoint integrated servers and adds functionality for new areas such as shared datasets, cache refresh plans, and report parts. &lt;BR&gt;&amp;nbsp; &lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Improved Browser and Standards Mode Support &lt;BR&gt;&lt;/STRONG&gt;&amp;nbsp; &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;During the next weeks I plan to cover a lot more details regarding the areas listed above.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Enjoy!&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;I look forward to hearing your feedback on Reporting Services 2008 R2 November CTP in the dedicated &lt;A href="http://social.msdn.microsoft.com/Forums/en-US/sqlkjreportingservices/threads" mce_href="http://social.msdn.microsoft.com/Forums/en-US/sqlkjreportingservices/threads"&gt;MSDN discussion forum&lt;/A&gt;. &lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9920013" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RDL/default.aspx">RDL</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Data+Visualization/default.aspx">Data Visualization</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Rendering/default.aspx">Rendering</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Report+Design/default.aspx">Report Design</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RS+2008+R2/default.aspx">RS 2008 R2</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/SharePoint/default.aspx">SharePoint</category></item><item><title>RS Maps with Spatial Data and Bing Maps</title><link>http://blogs.msdn.com/robertbruckner/archive/2009/08/11/rs-maps-with-spatial-data-and-bing-maps.aspx</link><pubDate>Wed, 12 Aug 2009 09:25:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9865620</guid><dc:creator>Robert M. Bruckner</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/robertbruckner/comments/9865620.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robertbruckner/commentrss.aspx?PostID=9865620</wfw:commentRss><description>&lt;P&gt;SQL Server 2008 R2 August CTP includes &lt;A href="http://blogs.msdn.com/robertbruckner/archive/2009/08/10/sql-server-2008-r2-august-ctp-what-s-new-in-reporting-services.aspx" mce_href="http://blogs.msdn.com/robertbruckner/archive/2009/08/10/sql-server-2008-r2-august-ctp-what-s-new-in-reporting-services.aspx"&gt;map visualization functionality in Reporting Services&lt;/A&gt;, as briefly described yesterday.&amp;nbsp; In this posting, I’m going to provide an introduction of how to use spatial data and Bing Maps with Reporting Services Maps.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;The &lt;A href="http://blogs.msdn.com/robertbruckner/attachment/9865620.ashx" target=_blank mce_href="http://blogs.msdn.com/robertbruckner/attachment/9865620.ashx"&gt;attachment&lt;/A&gt; of this posting includes the final report so you can try it out yourself in &lt;A class="" href="http://blogs.msdn.com/robertbruckner/archive/2009/08/14/report-builder-3-0.aspx" mce_href="http://blogs.msdn.com/robertbruckner/archive/2009/08/14/report-builder-3-0.aspx"&gt;Report Builder 3.0&lt;/A&gt;.&amp;nbsp; The data source for the report is the Person.Address table in the AdventureWorks2008 sample database (&lt;A href="http://msftdbprodsamples.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=18407" target=_blank mce_href="http://msftdbprodsamples.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=18407"&gt;download&lt;/A&gt;) which includes a geospatial column.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;The report scenario is about showing the addresses of all your customers in the Los Angeles area.&amp;nbsp; Accomplishing this requires just a few steps in Report Builder 3.0, and you don’t even need to write a single RDL expression!&amp;nbsp; Btw, I will cover some of the new interesting spatial functions added to the RDL expression language in another posting.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Let’s start with the screenshot of the final map visualization of this report:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapDesign_2.png" mce_href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapDesign_2.png"&gt;&lt;IMG title="Reporting Services Map with geospatial data from database and Bing Maps as background" style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; DISPLAY: block; FLOAT: none; MARGIN: 0px auto; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=338 alt="Reporting Services Map with geospatial data from database and Bing Maps as background" src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapDesign_thumb.png" width=483 border=0 mce_src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapDesign_thumb.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Steps:&lt;/STRONG&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Start Report Builder 3.0, and create a data source connection to the AdventureWorks2008 sample database (&lt;A href="http://msftdbprodsamples.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=18407" target=_blank mce_href="http://msftdbprodsamples.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=18407"&gt;download&lt;/A&gt;). &lt;BR&gt;&amp;nbsp;&lt;/LI&gt;
&lt;LI&gt;Define a new dataset which includes geospatial data.&amp;nbsp; For example: &lt;BR&gt;&lt;EM&gt;SELECT [AddressID], [AddressLine1], [AddressLine2], [City], &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [StateProvinceID], [PostalCode], [SpatialLocation] &lt;BR&gt;FROM [AdventureWorks2008].[Person].[Address] &lt;BR&gt;WHERE [City] = 'Los Angeles' &lt;BR&gt;&lt;/EM&gt;&lt;A href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapQuery_2.png" mce_href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapQuery_2.png"&gt;&lt;IMG title="Dataset query with geospatial column" style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; DISPLAY: inline; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=191 alt="Dataset query with geospatial column" src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapQuery_thumb.png" width=244 border=0 mce_src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapQuery_thumb.png"&gt;&lt;/A&gt; &lt;BR&gt;&amp;nbsp;&lt;/LI&gt;
&lt;LI&gt;From the Report Builder 3.0 toolbar, insert a new map, using the map wizard.&amp;nbsp; On the first page of the wizard, select to use a SQL Server spatial query. &lt;BR&gt;&lt;A href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapWizard1_2.png" mce_href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapWizard1_2.png"&gt;&lt;IMG title="Map Wizard Step 1" style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; DISPLAY: inline; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=229 alt="Map Wizard Step 1" src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapWizard1_thumb.png" width=244 border=0 mce_src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapWizard1_thumb.png"&gt;&lt;/A&gt; &lt;BR&gt;&amp;nbsp;&lt;/LI&gt;
&lt;LI&gt;On the second page of the wizard, select the dataset defined in step 2 (“Customers”). &lt;BR&gt;&amp;nbsp;&lt;/LI&gt;
&lt;LI&gt;When going to the third page of the wizard, you will notice that it automatically detected that the “SpatialLocation” column contains geospatial data and the wizard displays a cloud of points.&amp;nbsp; Simply select “Add a Bing Maps background for this map view” and you will get to see a backdrop for the cloud of points of the Los Angeles area – this is because the map wizard analyzes the rows contained in the dataset and their geospatial location. &lt;BR&gt;&lt;A href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapWizard3_2.png" mce_href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapWizard3_2.png"&gt;&lt;IMG title="Map Wizard Step 3" style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; DISPLAY: inline; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=172 alt="Map Wizard Step 3" src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapWizard3_thumb.png" width=244 border=0 mce_src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapWizard3_thumb.png"&gt;&lt;/A&gt; &lt;BR&gt;&amp;nbsp;&lt;/LI&gt;
&lt;LI&gt;Since our specific dataset doesn’t contain further information about the customers, we select a basic marker map as visualization.&amp;nbsp; If we had further data in our dataset, such as total sales amount, we could do a bubble map taking into account revenue. &lt;BR&gt;&lt;A href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapWizard4_2.png" mce_href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapWizard4_2.png"&gt;&lt;IMG title="Map Wizard Step 4" style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; DISPLAY: inline; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=229 alt="Map Wizard Step 4" src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapWizard4_thumb.png" width=244 border=0 mce_src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapWizard4_thumb.png"&gt;&lt;/A&gt; &lt;BR&gt;&amp;nbsp;&lt;/LI&gt;
&lt;LI&gt;In the final step of the map wizard we can chose to the marker type and display labels with each point.&amp;nbsp; Note that all these settings can also be made / changed later through the map property dialogs, as well as the property grid in Report Builder.&amp;nbsp; The map wizard is usually the quickest way to get started though. &lt;BR&gt;&amp;nbsp;&lt;/LI&gt;
&lt;LI&gt;We should now have a map on the design surface.&amp;nbsp; You can further tweak settings of each map layer and map properties as desired. &lt;BR&gt;&lt;A href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapDesign_4.png" mce_href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapDesign_4.png"&gt;&lt;IMG title="Report Builder Map Design Surface" style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; DISPLAY: inline; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=162 alt="Report Builder Map Design Surface" src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapDesign_thumb_1.png" width=244 border=0 mce_src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/RSMapswithSpatialDataandBingMaps_144DF/MapDesign_thumb_1.png"&gt;&lt;/A&gt; &lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;Of course, you can do a lot more with Map and the geospatial data integration in the RDL expression language – I’ll cover this in upcoming postings.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9865620" width="1" height="1"&gt;</description><enclosure url="http://blogs.msdn.com/robertbruckner/attachment/9865620.ashx" length="12432" type="application/rdl" /><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RDL/default.aspx">RDL</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Data+Visualization/default.aspx">Data Visualization</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Report+Design/default.aspx">Report Design</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RS+2008+R2/default.aspx">RS 2008 R2</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Spatial/default.aspx">Spatial</category></item><item><title>SQL Server 2008 R2 August CTP – What’s New In Reporting Services?</title><link>http://blogs.msdn.com/robertbruckner/archive/2009/08/10/sql-server-2008-r2-august-ctp-what-s-new-in-reporting-services.aspx</link><pubDate>Tue, 11 Aug 2009 09:59:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9863904</guid><dc:creator>Robert M. Bruckner</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/robertbruckner/comments/9863904.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robertbruckner/commentrss.aspx?PostID=9863904</wfw:commentRss><description>&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008R2AugustCTPWhatsNewInReport_144E2/SQLServer2008_R2_2.png" mce_href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008R2AugustCTPWhatsNewInReport_144E2/SQLServer2008_R2_2.png"&gt;&lt;IMG title="SQL Server 2008 R2" style="BORDER-TOP-WIDTH: 0px; DISPLAY: block; BORDER-LEFT-WIDTH: 0px; FLOAT: none; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; MARGIN-RIGHT: auto; BORDER-RIGHT-WIDTH: 0px" height=64 alt="SQL Server 2008 R2" src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008R2AugustCTPWhatsNewInReport_144E2/SQLServer2008_R2_thumb.png" width=350 border=0 mce_src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008R2AugustCTPWhatsNewInReport_144E2/SQLServer2008_R2_thumb.png"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;The August CTP download is available for &lt;A href="http://msdn.microsoft.com/subscriptions/securedownloads/default.aspx" mce_href="http://msdn.microsoft.com/subscriptions/securedownloads/default.aspx"&gt;MSDN&lt;/A&gt; and &lt;A href="http://technet.microsoft.com/subscriptions/securedownloads/default.aspx" mce_href="http://technet.microsoft.com/subscriptions/securedownloads/default.aspx"&gt;TechNet&lt;/A&gt; subscribers. The public download is now also active &lt;A class="" href="http://technet.microsoft.com/en-us/evalcenter/ee315247.aspx" target=_blank mce_href="http://technet.microsoft.com/en-us/evalcenter/ee315247.aspx"&gt;here&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;The Data Platform Insider blog provides an &lt;A href="http://blogs.technet.com/dataplatforminsider/archive/2009/08/10/download-sql-server-2008-r2-august-ctp-today.aspx" target=_blank mce_href="http://blogs.technet.com/dataplatforminsider/archive/2009/08/10/download-sql-server-2008-r2-august-ctp-today.aspx"&gt;overview&lt;/A&gt; of what's new in this first public CTP release for SQL Server 2008 R2.&amp;nbsp; If you are reading my blog, you are probably interested in knowing what’s new in Reporting Services 2008 R2, and already in August CTP:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Map and spatial data visualization &lt;STRONG&gt;&lt;A href="http://blogs.msdn.com/robertbruckner/archive/2009/08/11/rs-maps-with-spatial-data-and-bing-maps.aspx" mce_href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008R2AugustCTPWhatsNewInReport_144E2/RB_Map_2.png"&gt;&lt;IMG title="Report Builder Map" style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; DISPLAY: inline; MARGIN: 5px 10px 0px 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=76 alt="Report Builder Map" src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008R2AugustCTPWhatsNewInReport_144E2/RB_Map_3.png" width=44 align=left border=0 mce_src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008R2AugustCTPWhatsNewInReport_144E2/RB_Map_thumb.png"&gt;&lt;/A&gt;&lt;/STRONG&gt;&lt;/STRONG&gt; &lt;BR&gt;We provided sneak previews of this functionality at past conferences, including a popular &lt;A href="http://blogs.msdn.com/robertbruckner/archive/2009/05/14/sql-server-2008-r2-tech-ed-2009.aspx" mce_href="http://blogs.msdn.com/robertbruckner/archive/2009/05/14/sql-server-2008-r2-tech-ed-2009.aspx"&gt;“BI Power Hour” demo&lt;/A&gt;.&amp;nbsp; Maps can be very &lt;A href="http://www.microsoft.com/global/sqlserver/2008/en/us/PublishingImages/Map_Sales.bmp" target=_blank mce_href="http://www.microsoft.com/global/sqlserver/2008/en/us/PublishingImages/Map_Sales.bmp"&gt;powerful visualizations&lt;/A&gt;.&amp;nbsp; They can consume and visualize geospatial and geometry data directly (as shown by Ed Katibah &lt;A href="http://blogs.msdn.com/edkatibah/archive/2009/05/18/cartographic-adjustment-of-spatial-data-for-sql-server-reporting-services-part-5.aspx" mce_href="http://blogs.msdn.com/edkatibah/archive/2009/05/18/cartographic-adjustment-of-spatial-data-for-sql-server-reporting-services-part-5.aspx"&gt;here&lt;/A&gt;), “regular” data, and combine multiple datasets using map layers.&amp;nbsp; Maps can integrate ESRI shape files, as well as directly integrate with &lt;A href="http://www.bing.com/maps/" mce_href="http://www.bing.com/maps/"&gt;Bing Maps&lt;/A&gt;.&amp;nbsp; More details in upcoming postings. &lt;BR&gt;&amp;nbsp; &lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Report Builder 3.0 &lt;BR&gt;&lt;/STRONG&gt;The most notable new Report Builder feature area already available in the August CTP is the so-called "server mode":&amp;nbsp; &lt;BR&gt;- An edit session concept enables support for embedded data source credentials, relative references, and subreport references when connected to a report server. &lt;BR&gt;- Dataset results are cached when connected to a report server, which speeds up making layout changes and previewing the new report. &lt;BR&gt;&amp;nbsp; &lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;ATOM data feeds &lt;BR&gt;&lt;/STRONG&gt;&lt;A href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008R2AugustCTPWhatsNewInReport_144E2/AtomDataFeed_2.png" mce_href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008R2AugustCTPWhatsNewInReport_144E2/AtomDataFeed_2.png"&gt;&lt;IMG title="AtomDataFeed Export Button" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN: 4px 10px 4px 8px; BORDER-RIGHT-WIDTH: 0px" height=31 alt="AtomDataFeed Export Button" src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008R2AugustCTPWhatsNewInReport_144E2/AtomDataFeed_thumb.png" width=31 align=left border=0 mce_src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008R2AugustCTPWhatsNewInReport_144E2/AtomDataFeed_thumb.png"&gt;&lt;/A&gt; Reports are now also available in the ATOM standard compliant format that can be consumed by &lt;A href="http://www.microsoft.com/sqlserver/2008/en/us/R2-SSBI.aspx" target=_blank mce_href="http://www.microsoft.com/sqlserver/2008/en/us/R2-SSBI.aspx"&gt;Gemini&lt;/A&gt; and other tools.&lt;BR&gt;&lt;EM&gt;Update:&lt;/EM&gt; Teo Lachev takes an initial look at&amp;nbsp;data feeds &lt;A class="" href="http://prologika.com/CS/blogs/blog/archive/2009/08/13/reports-as-data-feeds.aspx" target=_blank mce_href="http://prologika.com/CS/blogs/blog/archive/2009/08/13/reports-as-data-feeds.aspx"&gt;here&lt;/A&gt;.&amp;nbsp;&lt;BR&gt;&amp;nbsp; &lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;AJAX Report Viewer &lt;BR&gt;&lt;/STRONG&gt;The August CTP provides a preview of some of the functionality that will be available in the stand-alone report viewer control with the &lt;A href="http://blogs.msdn.com/robertbruckner/archive/2009/01/19/better-report-viewing-in-visual-studio-2010.aspx" mce_href="http://blogs.msdn.com/robertbruckner/archive/2009/01/19/better-report-viewing-in-visual-studio-2010.aspx"&gt;upcoming Visual Studio 2010 Beta 2 release&lt;/A&gt;.&amp;nbsp; You will notice a more fluid navigation experience in August CTP. &lt;BR&gt;&amp;nbsp; &lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Report Manager &lt;BR&gt;&lt;/STRONG&gt;Report Manager received visual and functional improvements with SharePoint-like interaction and menus.&amp;nbsp; &lt;BR&gt;&lt;EM&gt;Update:&lt;/EM&gt; Teo Lachev provides his take on report manager with screenshots &lt;A href="http://prologika.com/CS/blogs/blog/archive/2009/08/11/the-dazzling-r2-report-manager.aspx" target=_blank&gt;here&lt;/A&gt;. &lt;BR&gt;&amp;nbsp; &lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;RDL Expression Language enhancements &lt;BR&gt;&lt;/STRONG&gt;We added direct geospatial data &amp;amp; function support, as well as three types of Lookup functions (Lookup, LookupSet, MultiLookup).&amp;nbsp; More about this in upcoming postings.&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;On top of that, there are several more new Reporting Services and RDL features available in August CTP, including a few in combination with Gemini and SharePoint in a limited CTP program only.&amp;nbsp; During the next weeks and months I plan to cover more details on the major areas listed above, and perhaps some of the other additions like report sections.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Enjoy!&lt;/STRONG&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;I look forward to hearing your feedback on Reporting Services 2008 R2 August CTP in the dedicated &lt;A href="http://social.msdn.microsoft.com/Forums/en-US/sqlkjreportingservices/threads" target=_blank mce_href="http://social.msdn.microsoft.com/Forums/en-US/sqlkjreportingservices/threads"&gt;new MSDN discussion forum&lt;/A&gt;. &lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9863904" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RDL/default.aspx">RDL</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Data+Visualization/default.aspx">Data Visualization</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Rendering/default.aspx">Rendering</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/ReportViewer/default.aspx">ReportViewer</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Report+Design/default.aspx">Report Design</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RS+2008+R2/default.aspx">RS 2008 R2</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Spatial/default.aspx">Spatial</category></item><item><title>Tablix – Multiple Subtotals Are Easy (aka Goodbye InScope)!</title><link>http://blogs.msdn.com/robertbruckner/archive/2009/08/10/tablix-multiple-subtotals-are-easy-aka-goodbye-inscope.aspx</link><pubDate>Tue, 11 Aug 2009 08:45:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9439361</guid><dc:creator>Robert M. Bruckner</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/robertbruckner/comments/9439361.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robertbruckner/commentrss.aspx?PostID=9439361</wfw:commentRss><description>&lt;P&gt;&lt;STRONG&gt;&lt;FONT size=3&gt;Reporting Services 2005 with Matrix&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;In a matrix in Reporting Services 2005, accomplishing multiple or different subtotal calculations at the same grouping level was difficult, but possible.&amp;nbsp; If you wanted to accomplish custom subtotal calculations in RS 2005, you may have heard about using the &lt;A href="http://msdn.microsoft.com/en-us/library/ms156490(SQL.90).aspx" target=_blank mce_href="http://msdn.microsoft.com/en-us/library/ms156490(SQL.90).aspx"&gt;InScope function&lt;/A&gt; to dynamically determine the scope of a matrix cell at runtime.&amp;nbsp; Let’s take a closer look at the following example with red numbers highlighting four different zones of the matrix to better understand the usecase:&lt;/P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/TablixMultipleSubtotalsAreEasyakaGoodbye_13B70/MatrixInScope_2.png" mce_href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/TablixMultipleSubtotalsAreEasyakaGoodbye_13B70/MatrixInScope_2.png"&gt;&lt;IMG title=MatrixInScope style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; DISPLAY: block; FLOAT: none; MARGIN-LEFT: auto; BORDER-LEFT: 0px; MARGIN-RIGHT: auto; BORDER-BOTTOM: 0px" height=114 alt=MatrixInScope src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/TablixMultipleSubtotalsAreEasyakaGoodbye_13B70/MatrixInScope_thumb.png" width=329 border=0 mce_src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/TablixMultipleSubtotalsAreEasyakaGoodbye_13B70/MatrixInScope_thumb.png"&gt;&lt;/A&gt; 
&lt;P&gt;&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;1&lt;/FONT&gt;&lt;/STRONG&gt;: Product category sales by each year.&amp;nbsp; The matrix cell is within the scope of both, the ProdCat group as well as OrderYear group. &lt;BR&gt;&lt;FONT color=#ff0000&gt;&lt;STRONG&gt;2&lt;/STRONG&gt;&lt;/FONT&gt;: Product category sales aggregated across all years.&amp;nbsp; The subtotal cell is within the scope of the ProdCat group, but outside the scope of the OrderYear group because it aggregates all years. &lt;BR&gt;&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;3&lt;/FONT&gt;&lt;/STRONG&gt;: All product sales per each year.&amp;nbsp; The subtotal cell is outside the scope of the ProdCat group (aggregating all products), but within the scope of the OrderYear group. &lt;BR&gt;&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;4&lt;/FONT&gt;&lt;/STRONG&gt;: Overall grand total.&amp;nbsp; The subtotal cell is outside both grouping scopes.&lt;/P&gt;
&lt;P&gt;By default, the calculation defined in the matrix cell (1) in RS 2005 is performed the same way (but with different grouping scopes) in the subtotal cells (2, 3, 4). &lt;/P&gt;
&lt;P&gt;There are however situation where for example, you want to calculate a running total of all product sales for each year (i.e. subtotal cell 3), and you want the average product category sales per year (i.e. subtotal cell 2).&amp;nbsp; Or perhaps you only want drillthrough links to be active on individual matrix cells, but not on the subtotals.&lt;/P&gt;
&lt;P&gt;To accomplish this in RS 2005, you would have to define the expression in the matrix cell using the following general pattern:&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;FONT face="Courier New" size=2&gt;=iif(InScope("RowGroup"),&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; iif(InScope("ColumnGroup"), &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "In Matrix Cell (&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;1&lt;/FONT&gt;&lt;/STRONG&gt;)", &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "In Subtotal of RowGroup (&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;2&lt;/FONT&gt;&lt;/STRONG&gt;)"),&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; iif(InScope("ColumnGroup"),&amp;nbsp; &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "In Subtotal of ColumnGroup (&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;3&lt;/FONT&gt;&lt;/STRONG&gt;)", &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "In Subtotal of entire Matrix (&lt;FONT color=#ff0000&gt;4&lt;/FONT&gt;)"))&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;Replace &lt;I&gt;"In Matrix Cell (&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;1&lt;/FONT&gt;&lt;/STRONG&gt;)"&lt;/I&gt;, &lt;I&gt;"In Subtotal of RowGroup (&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;2&lt;/FONT&gt;&lt;/STRONG&gt;)"&lt;/I&gt;, &lt;I&gt;"In Subtotal of ColumnGroup (&lt;STRONG&gt;&lt;FONT color=#ff0000&gt;3&lt;/FONT&gt;&lt;/STRONG&gt;)"&lt;/I&gt; and/or&lt;I&gt;"In Subtotal of entire Matrix (&lt;FONT color=#ff0000&gt;4&lt;/FONT&gt;)"&lt;/I&gt; with the expressions or fields that you want.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT size=3&gt;Reporting Services 2008 with Tablix&lt;/FONT&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;With tablix in Reporting Services 2008, this scenario is significantly easier to accomplish.&amp;nbsp; First, you get explicit cell definitions for each of those aggregation areas which removes the need for complex expressions and the usage of the InScope function:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/TablixMultipleSubtotalsAreEasyakaGoodbye_13B70/TablixSubtotals_2.png" mce_href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/TablixMultipleSubtotalsAreEasyakaGoodbye_13B70/TablixSubtotals_2.png"&gt;&lt;IMG title=TablixSubtotals style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; DISPLAY: block; FLOAT: none; MARGIN-LEFT: auto; BORDER-LEFT: 0px; MARGIN-RIGHT: auto; BORDER-BOTTOM: 0px" height=134 alt=TablixSubtotals src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/TablixMultipleSubtotalsAreEasyakaGoodbye_13B70/TablixSubtotals_thumb.png" width=351 border=0 mce_src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/TablixMultipleSubtotalsAreEasyakaGoodbye_13B70/TablixSubtotals_thumb.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;In addition, you can define as many subtotals at every tablix grouping level as you like.&amp;nbsp; For example, besides Sum(Sales), you could calculate a percentage of total revenue, or even year-over-year growth as shown in the following design surface screenshot.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/TablixMultipleSubtotalsAreEasyakaGoodbye_13B70/TablixSideBySide_2.png" mce_href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/TablixMultipleSubtotalsAreEasyakaGoodbye_13B70/TablixSideBySide_2.png"&gt;&lt;IMG title=TablixSideBySide style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; DISPLAY: block; FLOAT: none; MARGIN-LEFT: auto; BORDER-LEFT: 0px; MARGIN-RIGHT: auto; BORDER-BOTTOM: 0px" height=148 alt=TablixSideBySide src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/TablixMultipleSubtotalsAreEasyakaGoodbye_13B70/TablixSideBySide_thumb.png" width=625 border=0 mce_src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/TablixMultipleSubtotalsAreEasyakaGoodbye_13B70/TablixSideBySide_thumb.png"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;The example above shows three different column subtotal calculations side-by-side under each OrderYear group instance: &lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Year Total&lt;/LI&gt;
&lt;LI&gt;Year-over-Year growth percentage*&lt;/LI&gt;
&lt;LI&gt;a KPI image that shows the growth trend (up/down/flat)*&amp;nbsp; &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Subtotals can use different styles as well as layout height or width.&amp;nbsp; The example above also shows further aggregations such as the monthly trend shown as a nested sparkline chart*.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;* Stay tuned - the underlying report, including RDL source, will be explained in an upcoming posting.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9439361" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RS+2008/default.aspx">RS 2008</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RS+2005/default.aspx">RS 2005</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Tablix/default.aspx">Tablix</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Report+Design/default.aspx">Report Design</category></item><item><title>Multi-Player Gaming in RS (aka BI Power Hour 2008)</title><link>http://blogs.msdn.com/robertbruckner/archive/2009/05/20/multi-player-gaming-in-rs-aka-bi-power-hour-2008.aspx</link><pubDate>Thu, 21 May 2009 04:25:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9631562</guid><dc:creator>Robert M. Bruckner</dc:creator><slash:comments>4</slash:comments><comments>http://blogs.msdn.com/robertbruckner/comments/9631562.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robertbruckner/commentrss.aspx?PostID=9631562</wfw:commentRss><description>&lt;P&gt;At the traditional annual “BI Power Hour” sessions, several teams that contribute to the Microsoft Business Intelligence platform show off their technology in a fun way.&amp;nbsp; It is about demonstrating, in perhaps unusual ways, of how business intelligence and various tools of the BI stack can be useful.&lt;/P&gt;
&lt;P&gt;In past years, Reporting Services made a number of successful contributions to these events, such as &lt;A href="http://blogs.msdn.com/bwelcker/archive/2005/07/03/435066.aspx" target=_blank mce_href="http://blogs.msdn.com/bwelcker/archive/2005/07/03/435066.aspx"&gt;Hangman&lt;/A&gt;, &lt;A href="http://blogs.msdn.com/bwelcker/archive/2005/06/12/428416.aspx" target=_blank mce_href="http://blogs.msdn.com/bwelcker/archive/2005/06/12/428416.aspx"&gt;report manager as report&lt;/A&gt;, etch-a-sketch, mastermind, an executive dashboard (aka tic-tac-toe), and others.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Throughout last year, we showed several variations of a multi-player game that we shall call “&lt;STRONG&gt;Sea Battle&lt;/STRONG&gt;”.&amp;nbsp; The goal of the game is to sink all of your opponent ships (for example, a &lt;STRONG&gt;Battleship&lt;/STRONG&gt;), before the opponent has a chance to find and sink your ships.&amp;nbsp; The faster you click, the better your chances of winning :) &lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/MultiPlayerGaminginRSakaBIPowerHour2008_12DDD/SB_Winning_2.png" mce_href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/MultiPlayerGaminginRSakaBIPowerHour2008_12DDD/SB_Winning_2.png"&gt;&lt;IMG title="Game status gauge" style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; DISPLAY: block; FLOAT: none; MARGIN-LEFT: auto; BORDER-LEFT: 0px; MARGIN-RIGHT: auto; BORDER-BOTTOM: 0px" height=87 alt="Game status gauge" src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/MultiPlayerGaminginRSakaBIPowerHour2008_12DDD/SB_Winning_thumb.png" width=294 border=0 mce_src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/MultiPlayerGaminginRSakaBIPowerHour2008_12DDD/SB_Winning_thumb.png"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;The overall theme of the report was about interesting new data visualization features in Reporting Services 2008.&amp;nbsp; It uses charts with &lt;A href="http://blogs.msdn.com/robertbruckner/archive/2008/10/13/expression-based-dynamic-drillthrough.aspx" mce_href="http://blogs.msdn.com/robertbruckner/archive/2008/10/13/expression-based-dynamic-drillthrough.aspx"&gt;dynamic drill through actions&lt;/A&gt;, as well as data point tooltips. &lt;A href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/MultiPlayerGaminginRSakaBIPowerHour2008_12DDD/SB_ChartGrid_2.png" mce_href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/MultiPlayerGaminginRSakaBIPowerHour2008_12DDD/SB_ChartGrid_2.png"&gt;&lt;IMG title="Grid drawn as scatter chart" style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; DISPLAY: block; FLOAT: none; MARGIN-LEFT: auto; BORDER-LEFT: 0px; MARGIN-RIGHT: auto; BORDER-BOTTOM: 0px" height=489 alt="Grid drawn as scatter chart" src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/MultiPlayerGaminginRSakaBIPowerHour2008_12DDD/SB_ChartGrid_thumb.png" width=492 border=0 mce_src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/MultiPlayerGaminginRSakaBIPowerHour2008_12DDD/SB_ChartGrid_thumb.png"&gt;&lt;/A&gt;Furthermore, a small matrix acts essentially as a data-driven grid control next to the chart to show your own ship positions and the opponent’s hits and misses.&amp;nbsp; The overall health status of the opponent's ships is shown using a gauge control with a custom pointer with an image to simulate a rising water level, as a ship sustains more and more hits.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/MultiPlayerGaminginRSakaBIPowerHour2008_12DDD/SB_ShipStatus_2.png" mce_href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/MultiPlayerGaminginRSakaBIPowerHour2008_12DDD/SB_ShipStatus_2.png"&gt;&lt;IMG title="Gauges for ship status" style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; DISPLAY: block; FLOAT: none; MARGIN-LEFT: auto; BORDER-LEFT: 0px; MARGIN-RIGHT: auto; BORDER-BOTTOM: 0px" height=85 alt="Gauges for ship status" src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/MultiPlayerGaminginRSakaBIPowerHour2008_12DDD/SB_ShipStatus_thumb.png" width=486 border=0 mce_src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/MultiPlayerGaminginRSakaBIPowerHour2008_12DDD/SB_ShipStatus_thumb.png"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Successfully sinking a ship is rewarded with a nice animated explosion.&amp;nbsp; The really fun part is the multi-player aspect – we use a basic way of matching up two report users so they can play against each other by simply interacting with their report on a report server.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;While Reporting Services was clearly not designed as a gaming platform, this demonstration of the product's flexibility brought out the competitive spirit in the SQL Server BI team.&amp;nbsp; When I made an initial version available for limited beta-testing on an internal report server, the news spread quickly and we immediately had more than 50 people playing, and frantically clicking on the chart’s drill through links trying to win against their human opponents.&amp;nbsp; This created quite a bit of load on the report server that is also used by hundreds of other users, and provided a nice stress test scenario :)&lt;/P&gt;
&lt;P&gt;Enough said.&amp;nbsp; I know you want to participate in the fun and play yourself!&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Instructions to setup the demo on your own RS 2008 report server:&lt;/STRONG&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Unzip the &lt;A class="" href="http://blogs.msdn.com/robertbruckner/attachment/9631562.ashx" mce_href="http://blogs.msdn.com/robertbruckner/attachment/9631562.ashx"&gt;attachment&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;Restore the database backup (SeaBattle.bak) on a SQL Server database server&lt;/LI&gt;
&lt;LI&gt;Create a new Business Intelligence Development Studio 2008 report project, add the shared data source (SeaBattle.rds), and the two reports of the zip file to the project&lt;/LI&gt;
&lt;LI&gt;Publish the project to a RS 2008 report server&lt;/LI&gt;
&lt;LI&gt;Use stored credentials on the shared data source. &lt;BR&gt;I strongly recommend&amp;nbsp;using stored credentials.&amp;nbsp;&amp;nbsp;That way, only the stored user needs access to the SeaBattle database and you won’t run into any potential integrated security double-hop issues.&lt;/LI&gt;
&lt;LI&gt;In report manager, hide the “SeaBattle” report, so that users just see the “SeaBattle – Start new game” report.&amp;nbsp; Don’t run the SeaBattle report directly; always use the start new game report.&lt;/LI&gt;
&lt;LI&gt;I recommend playing the game using the &lt;A href="http://machinename/reportserver" mce_href="http://MachineName/reportserver"&gt;http://MachineName/&lt;EM&gt;reportserver&lt;/EM&gt;&lt;/A&gt; URL, not through report manager, if you want faster response time and better chances of winning :) &lt;BR&gt;Better yet, you could quickly build a small Winforms application, using the Visual Studio 2008 ReportViewer control in remote mode and connect to the report server.&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;Hope you are going to enjoy this Power Hour demo!&lt;/P&gt;
&lt;P&gt;Q&amp;amp;A and disclaimers:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Multi-player matching is really basic&amp;nbsp; &lt;BR&gt;The first user that starts the report establishes a new game, the second user that enters is automatically linked with the first user.&amp;nbsp; Since there is no concept of game session implemented, you can end up with abandoned sessions if one of the players stops playing, or starts a new game. &lt;/LI&gt;
&lt;LI&gt;Reporting Services was not designed as a gaming platform &lt;BR&gt;This results in some limitations in the game design.&amp;nbsp; Furthermore, the demo evolved over time with little bits added here and there – if I were to rebuild the backend database and the report from scratch, it would have a somewhat cleaner design.&lt;/LI&gt;
&lt;LI&gt;Could this be built using&amp;nbsp;a local mode report viewer control? &lt;BR&gt;Yes, but it is probably an exercise for more advanced developers.&amp;nbsp; Basically, you would build a local mode report viewer application with its own data retrieval, and just access the SeaBattle database on a common SQL Server. &lt;/LI&gt;&lt;/UL&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9631562" width="1" height="1"&gt;</description><enclosure url="http://blogs.msdn.com/robertbruckner/attachment/9631562.ashx" length="236684" type="application/x-zip-compressed" /><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RDL/default.aspx">RDL</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RS+2008/default.aspx">RS 2008</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Data+Visualization/default.aspx">Data Visualization</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Conferences/default.aspx">Conferences</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Report+Design/default.aspx">Report Design</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/BI+Power+Hour/default.aspx">BI Power Hour</category></item><item><title>SQL Server 2008 SP1 and Report Builder Update</title><link>http://blogs.msdn.com/robertbruckner/archive/2009/04/07/sql-server-2008-sp1-and-report-builder-update.aspx</link><pubDate>Wed, 08 Apr 2009 08:30:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9537454</guid><dc:creator>Robert M. Bruckner</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/robertbruckner/comments/9537454.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robertbruckner/commentrss.aspx?PostID=9537454</wfw:commentRss><description>&lt;P&gt;&lt;STRONG&gt;&lt;A href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008SP1andReportBuilderUpdate_13C17/SQLServer2008_2.gif" mce_href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008SP1andReportBuilderUpdate_13C17/SQLServer2008_2.gif"&gt;&lt;IMG title=SQLServer2008 style="BORDER-TOP-WIDTH: 0px; DISPLAY: block; BORDER-LEFT-WIDTH: 0px; FLOAT: none; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; MARGIN-RIGHT: auto; BORDER-RIGHT-WIDTH: 0px" height=95 alt=SQLServer2008 src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008SP1andReportBuilderUpdate_13C17/SQLServer2008_thumb.gif" width=383 border=0 mce_src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008SP1andReportBuilderUpdate_13C17/SQLServer2008_thumb.gif"&gt;&lt;/A&gt; &lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Service Pack 1&lt;/STRONG&gt; for SQL Server 2008 is now available for &lt;A href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=66ab3dbb-bf3e-4f46-9559-ccc6a4f9dc19" target=_blank mce_href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=66ab3dbb-bf3e-4f46-9559-ccc6a4f9dc19"&gt;download&lt;/A&gt;.&amp;nbsp; The service pack is primarily a roll-up of &lt;A href="http://blogs.msdn.com/robertbruckner/pages/reporting-services-2008-resources.aspx" mce_href="http://blogs.msdn.com/robertbruckner/pages/reporting-services-2008-resources.aspx"&gt;Cumulative Updates 1, 2, and 3&lt;/A&gt; and minor fixes made in response to requests reported through the SQL Server community.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;While there are no new features in this service pack, a notable addition from a Reporting Services point of view is the ability to &lt;A class="" href="http://blogs.msdn.com/sqlrsteamblog/archive/2009/04/17/some-help-with-report-builder-2-0-clickonce.aspx" mce_href="http://blogs.msdn.com/sqlrsteamblog/archive/2009/04/17/some-help-with-report-builder-2-0-clickonce.aspx"&gt;configure Click Once deployment&lt;/A&gt; to either launch Report Builder 1.0 or the updated Report Builder 2.0, directly from Report Manager (native mode) or SharePoint.&amp;nbsp; If you run Reporting Services in SharePoint integrated mode, make sure to also install the &lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyID=58edd0e4-255b-4361-bd1e-e530d5aab78f" target=_blank mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=58edd0e4-255b-4361-bd1e-e530d5aab78f"&gt;updated RS add-in for SharePoint&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008SP1andReportBuilderUpdate_13C17/ReportBuilder20_2.png" mce_href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008SP1andReportBuilderUpdate_13C17/ReportBuilder20_2.png"&gt;&lt;IMG title=ReportBuilder20 style="BORDER-TOP-WIDTH: 0px; DISPLAY: block; BORDER-LEFT-WIDTH: 0px; FLOAT: none; BORDER-BOTTOM-WIDTH: 0px; MARGIN-LEFT: auto; MARGIN-RIGHT: auto; BORDER-RIGHT-WIDTH: 0px" height=110 alt=ReportBuilder20 src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008SP1andReportBuilderUpdate_13C17/ReportBuilder20_thumb.png" width=260 border=0 mce_src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/SQLServer2008SP1andReportBuilderUpdate_13C17/ReportBuilder20_thumb.png"&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Furthermore, the &lt;STRONG&gt;April 2009 Feature Pack&lt;/STRONG&gt; is now available and includes an updated version of Report Builder 2.0.&amp;nbsp; You can get it either as &lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyID=dbddc9b6-6e19-4d4b-9309-13f62901b0d5" target=_blank mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=dbddc9b6-6e19-4d4b-9309-13f62901b0d5"&gt;Report Builder 2.0 stand-alone download&lt;/A&gt;, or as click once deployment from a Report Server with &lt;A href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=66ab3dbb-bf3e-4f46-9559-ccc6a4f9dc19" target=_blank mce_href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=66ab3dbb-bf3e-4f46-9559-ccc6a4f9dc19"&gt;SQL Server 2008 SP1&lt;/A&gt; applied.&lt;/P&gt;
&lt;P&gt;Summary of download links:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyID=66ab3dbb-bf3e-4f46-9559-ccc6a4f9dc19" target=_blank mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=66ab3dbb-bf3e-4f46-9559-ccc6a4f9dc19"&gt;SQL Server 2008 Service Pack 1&lt;/A&gt; &lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyID=58edd0e4-255b-4361-bd1e-e530d5aab78f" target=_blank mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=58edd0e4-255b-4361-bd1e-e530d5aab78f"&gt;Reporting Services Add-in for Microsoft SharePoint Technologies&lt;/A&gt; &lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyID=dbddc9b6-6e19-4d4b-9309-13f62901b0d5" target=_blank mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=dbddc9b6-6e19-4d4b-9309-13f62901b0d5"&gt;Report Builder 2.0 (April 2009)&lt;/A&gt; &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Other download resources:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyID=01af61e6-2f63-4291-bcad-fd500f6027ff" target=_blank mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=01af61e6-2f63-4291-bcad-fd500f6027ff"&gt;SQL Server 2008 Express Edition Service Pack 1&lt;/A&gt;&amp;nbsp; &lt;/LI&gt;
&lt;LI&gt;Full &lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyID=b33d2c78-1059-4ce2-b80d-2343c099bcb4" target=_blank mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=b33d2c78-1059-4ce2-b80d-2343c099bcb4"&gt;SQL Server 2008 Feature Pack (April 2009)&lt;/A&gt; &lt;/LI&gt;
&lt;LI&gt;&lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyID=802d0632-5de7-4efd-ae43-ebe3fc078886" target=_blank mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=802d0632-5de7-4efd-ae43-ebe3fc078886"&gt;SQL Server 2008 Upgrade Advisor&lt;/A&gt; &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Enjoy!&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9537454" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RS+2008/default.aspx">RS 2008</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Upgrade/default.aspx">Upgrade</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Report+Design/default.aspx">Report Design</category></item><item><title>Tablix – Stepped Layout</title><link>http://blogs.msdn.com/robertbruckner/archive/2009/03/15/tablix-stepped-layout.aspx</link><pubDate>Sun, 15 Mar 2009 22:35:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9439312</guid><dc:creator>Robert M. Bruckner</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/robertbruckner/comments/9439312.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robertbruckner/commentrss.aspx?PostID=9439312</wfw:commentRss><description>&lt;p mce_keep="true"&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p mce_keep="true"&gt;Tablix enables the separation of data groupings and layout header areas.&amp;#160; A stepped layout can help with horizontal spacing, because nested groups can then share the same horizontal space, which was previously not possible in a matrix layout.&amp;#160; This provides very powerful layout capabilities, and is one among several &lt;a href="http://blogs.msdn.com/robertbruckner/archive/2009/03/05/tablix-the-matrix-revolution.aspx"&gt;new features introduced with Tablix&lt;/a&gt;.&lt;/p&gt;  &lt;p mce_keep="true"&gt;A webcast about &lt;a href="http://mediadl.microsoft.com/mediaDL/WWW/S/sqlserver/2008/Report%20Builder/Report_Authoring_in_ReportingServices2008.wmv" target="_blank"&gt;Report Authoring in Reporting Services 2008&lt;/a&gt; by my esteemed colleague Carolyn Chau shows how to design a table or matrix with a stepped group layout by simply selecting an option in the table and matrix wizard.&amp;#160; &lt;/p&gt;  &lt;p mce_keep="true"&gt;You can accomplish the same effect by manually &lt;a href="http://msdn.microsoft.com/en-us/library/cc281376.aspx" target="_blank"&gt;converting from a regular blocked to a stepped layout&lt;/a&gt;.&amp;#160; For the example shown below:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;     &lt;div mce_keep="true"&gt;right click the Component textbox – insert row – inside group above&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div mce_keep="true"&gt;copy the Component textbox description into the newly created header space&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div mce_keep="true"&gt;right click the Component textbox and select delete columns (delete columns only, not the associated group)&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div mce_keep="true"&gt;select the SubComponent textbox and set the left-padding to 20pt&lt;/div&gt;   &lt;/li&gt; &lt;/ol&gt;  &lt;p mce_keep="true"&gt;&lt;a href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/TablixSteppedLayout_131A0/Tablix_Blocked_Layout_2.png"&gt;&lt;img title="Tablix with blocked layout" style="border-right: 0px; border-top: 0px; display: block; float: none; margin-left: auto; border-left: 0px; margin-right: auto; border-bottom: 0px" height="150" alt="Tablix with blocked layout" src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/TablixSteppedLayout_131A0/Tablix_Blocked_Layout_thumb.png" width="429" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center" mce_keep="true"&gt;&amp;#160; &lt;font size="6"&gt;▼&lt;/font&gt;&lt;/p&gt;  &lt;p mce_keep="true"&gt;&lt;a href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/TablixSteppedLayout_131A0/Tablix_Stepped_Layout_2.png"&gt;&lt;img title="Tablix with stepped layout" style="border-right: 0px; border-top: 0px; display: block; float: none; margin-left: auto; border-left: 0px; margin-right: auto; border-bottom: 0px" height="173" alt="Tablix with stepped layout" src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/TablixSteppedLayout_131A0/Tablix_Stepped_Layout_thumb.png" width="337" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9439312" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RS+2008/default.aspx">RS 2008</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Tablix/default.aspx">Tablix</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Report+Design/default.aspx">Report Design</category></item><item><title>Dynamic Drilldown in Reports and Charts</title><link>http://blogs.msdn.com/robertbruckner/archive/2009/03/15/dynamic-drilldown-in-reports-and-charts.aspx</link><pubDate>Sun, 15 Mar 2009 21:15:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9464430</guid><dc:creator>Robert M. Bruckner</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/robertbruckner/comments/9464430.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robertbruckner/commentrss.aspx?PostID=9464430</wfw:commentRss><description>&lt;P&gt;Just a quick post to reference two interesting reads about designing dynamic drilldown in reports:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Sean Boon blogged about &lt;A class="" href="http://blogs.msdn.com/seanboon/archive/2009/02/09/enabling-drilldown-on-ssrs-reporting-services-2008-charts.aspx" target=_blank mce_href="http://blogs.msdn.com/seanboon/archive/2009/02/09/enabling-drilldown-on-ssrs-reporting-services-2008-charts.aspx"&gt;an approach to implement drilldown on charts&lt;/A&gt; with Reporting Services when Analysis Services is used as the data source.&amp;nbsp; &lt;/LI&gt;
&lt;LI&gt;Chris Webb then created a great blog posting on how to implement &lt;A href="http://cwebbbi.spaces.live.com/Blog/cns!7B84B0F2C239489A!4194.entry" target=_blank mce_href="http://cwebbbi.spaces.live.com/Blog/cns!7B84B0F2C239489A!4194.entry"&gt;drilldown for Analysis Services based reports&lt;/A&gt; in general. &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Enjoy!&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9464430" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RS+2008/default.aspx">RS 2008</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Data+Visualization/default.aspx">Data Visualization</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Report+Design/default.aspx">Report Design</category></item><item><title>Tablix – The Matrix Revolution</title><link>http://blogs.msdn.com/robertbruckner/archive/2009/03/05/tablix-the-matrix-revolution.aspx</link><pubDate>Fri, 06 Mar 2009 10:10:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8848507</guid><dc:creator>Robert M. Bruckner</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/robertbruckner/comments/8848507.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robertbruckner/commentrss.aspx?PostID=8848507</wfw:commentRss><description>&lt;P&gt;Tablix is the new underlying flexible data region and grouping structure introduced in Reporting Services 2008.&amp;nbsp; Among other features, it enables asymmetric layouts, as demonstrated in the thumbnail screenshot below.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/TablixTheMatrixRevolution_14569/Tablix.png"&gt;&lt;IMG title="Tablix Example - click to see larger version" style="BORDER-TOP-WIDTH: 0px; DISPLAY: block; BORDER-LEFT-WIDTH: 0px; FLOAT: none; BORDER-BOTTOM-WIDTH: 0px; MARGIN: 0px auto; BORDER-RIGHT-WIDTH: 0px" height=374 alt="Tablix Example - click to see larger version" src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/TablixTheMatrixRevolution_14569/Tablix_thumb.png" width=471 border=0&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;If you use a list, table, matrix, chart, gauge, or custom report item in RS 2008, you are really using a tablix beneath the covers.&amp;nbsp; Ever since the first public revealing of tablix at TechEd conference in June 2007, and making it available shortly after in CTP 4 of SQL Server 2008, a lot has been said about tablix (e.g. see &lt;A href="http://prologika.com/CS/blogs/blog/archive/2007/08/12/tablix-the-crown-jewel.aspx" target=_blank&gt;Teo Lachev’s: Tablix – The Crown Jewel posting&lt;/A&gt;). &lt;/P&gt;
&lt;P&gt;As the developer who implemented tablix in the new &lt;A href="http://blogs.msdn.com/robertbruckner/archive/2008/08/11/on-demand-report-processing-in-rs-2008.aspx"&gt;on-demand report processing engine&lt;/A&gt; of Reporting Services 2008, I wanted to share my perspective on how report authors can get even more out of tablix.&amp;nbsp; This is the first posting in a series of postings, focused on exploring several of the tablix capabilities.&amp;nbsp; In one of the upcoming postings I will explain key building blocks of the report shown above.&lt;/P&gt;
&lt;P&gt;So what’s the meaning of the word “tablix”?&lt;/P&gt;
&lt;P align=center&gt;&lt;FONT size=3&gt;&lt;STRONG&gt;Tablix&lt;/STRONG&gt; = &lt;STRONG&gt;Tabl&lt;/STRONG&gt;e + Matr&lt;STRONG&gt;ix&lt;/STRONG&gt; &lt;/FONT&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;A tablix combines all the features of a table and a matrix.&amp;nbsp; In addition, it adds new capabilities such as:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;
&lt;DIV mce_keep="true"&gt;an unlimited number of (un)correlated side-by-side adjacent&amp;nbsp;groups on rows and columns&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV mce_keep="true"&gt;more layout flexibility, such as &lt;A class="" href="http://blogs.msdn.com/robertbruckner/archive/2009/03/15/tablix-stepped-layout.aspx" mce_href="http://blogs.msdn.com/robertbruckner/archive/2009/03/15/tablix-stepped-layout.aspx"&gt;stepped group layouts&lt;/A&gt; in addition to nested blocked layouts&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV mce_keep="true"&gt;&lt;A class="" href="http://blogs.msdn.com/robertbruckner/archive/2009/08/10/tablix-multiple-subtotals-are-easy-aka-goodbye-inscope.aspx" mce_href="http://blogs.msdn.com/robertbruckner/archive/2009/08/10/tablix-multiple-subtotals-are-easy-aka-goodbye-inscope.aspx"&gt;subtotals have explicit cell definitions&lt;/A&gt; - no need to use InScope to determine the current scope dynamically &lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV mce_keep="true"&gt;the matrix corner is now a grid corresponding to the row/column group structure&lt;/DIV&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P mce_keep="true"&gt;With that, you no longer have to determine upfront if you need a table or matrix (sometimes also called crosstab) layout.&amp;nbsp; You can change the tablix layout &lt;A class="" href="http://msdn.microsoft.com/en-us/library/cc627466.aspx" target=_blank mce_href="http://msdn.microsoft.com/en-us/library/cc627466.aspx"&gt;on-the-fly&lt;/A&gt; as you refine the report design or adjust for new requirements later.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8848507" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RS+2008/default.aspx">RS 2008</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Tablix/default.aspx">Tablix</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Report+Design/default.aspx">Report Design</category></item><item><title>Report Surfer</title><link>http://blogs.msdn.com/robertbruckner/archive/2009/02/22/report-surfer.aspx</link><pubDate>Mon, 23 Feb 2009 10:50:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9441073</guid><dc:creator>Robert M. Bruckner</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/robertbruckner/comments/9441073.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robertbruckner/commentrss.aspx?PostID=9441073</wfw:commentRss><description>&lt;P&gt;&lt;A href="http://www.reportsurfer.com/" target=_blank mce_href="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/ReportSurfer_14A7B/reportsurfer_logo2_2.jpg"&gt;&lt;IMG title=ReportSurfer style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN: 0px 10px 0px 0px; WIDTH: 223px; HEIGHT: 156px; BORDER-RIGHT-WIDTH: 0px" height=156 alt=ReportSurfer src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/ReportSurfer_14A7B/reportsurfer_logo2_3.jpg" width=223 align=left border=0 mce_src="http://blogs.msdn.com/blogfiles/robertbruckner/WindowsLiveWriter/ReportSurfer_14A7B/reportsurfer_logo2_thumb.jpg"&gt;&lt;/A&gt; I wanted to give some props to MVP &lt;A href="http://angrykoala.goodbarry.com/_webapp_689/Grant_Paisley" target=_blank&gt;Grant Paisley&lt;/A&gt; who has setup a site called &lt;A href="http://www.reportsurfer.com/" target=_blank&gt;Report Surfer&lt;/A&gt;, where you can directly view, share, and download sample Reporting Services reports.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;I met Grant a few months back when he visited Redmond.&amp;nbsp; He was very interested in reports I had built for the &lt;A href="http://msdn2.microsoft.com/en-us/library/aa964128.aspx" target=_blank&gt;RS 2005 chart whitepaper&lt;/A&gt;, as well as example reports from my recent blog postings.&amp;nbsp; They are now also available in the &lt;A href="http://www.reportsurfer.com/ReportLibrary.htm" target=_blank&gt;report library&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;The Report Surfer site runs RS 2008 and thereby supports old and new reports.&amp;nbsp; One very nice aspect is that the current library of reports also includes our previously released “report packs”, which you can view directly on the site without the need to install anything.&amp;nbsp; A free registration is required to use the site for uploading, sharing, and downloading reports. &lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9441073" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RDL/default.aspx">RDL</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RS+2008/default.aspx">RS 2008</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Report+Design/default.aspx">Report Design</category></item><item><title>The Ultimate Guide to Color Scales / Conditional Formatting</title><link>http://blogs.msdn.com/robertbruckner/archive/2009/02/19/ultimate-guide-to-color-scales-and-conditional-formatting.aspx</link><pubDate>Fri, 20 Feb 2009 09:35:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9435503</guid><dc:creator>Robert M. Bruckner</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/robertbruckner/comments/9435503.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robertbruckner/commentrss.aspx?PostID=9435503</wfw:commentRss><description>&lt;P&gt;I recently provided a&amp;nbsp;tip to&amp;nbsp;my Australian colleague &lt;A class="" href="http://blogs.msdn.com/davidlean" target=_blank mce_href="http://blogs.msdn.com/davidlean"&gt;David Lean&lt;/A&gt;&amp;nbsp;to successfully solve&amp;nbsp;a small report design challenge with tables and charts that use conditional formatting.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;The specific goal was to dynamically calculate and assign a color shade so that the minimum value present in the data is shown red, the average value yellow, and the maximum value green, with automatically calculated red-yellow-green shades for numeric values in between.&lt;/P&gt;
&lt;P&gt;As it turns out, Dave integrated and expanded this&amp;nbsp;into a great&amp;nbsp;four part blog post series on using conditional formatting and color scales in Reporting Services (applicable to both, RS 2005 and RS 2008):&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;A class="" href="http://blogs.msdn.com/davidlean/archive/2009/02/17/sql-reporting-how-to-conditional-color-1-4-the-basics-report-expressions-custom-code.aspx" target=_blank mce_href="http://blogs.msdn.com/davidlean/archive/2009/02/17/sql-reporting-how-to-conditional-color-1-4-the-basics-report-expressions-custom-code.aspx"&gt;Part 1: Conditional Color: The Basics. Report Expressions &amp;amp; Custom Code&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A class="" href="http://blogs.msdn.com/davidlean/archive/2009/02/17/sql-reporting-how-to-conditional-color-2-4-functions-for-tables-charts.aspx" target=_blank mce_href="http://blogs.msdn.com/davidlean/archive/2009/02/17/sql-reporting-how-to-conditional-color-2-4-functions-for-tables-charts.aspx"&gt;Part 2: Creating Color Ranges and Shades in Tables and Charts&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A class="" href="http://blogs.msdn.com/davidlean/archive/2009/02/17/sql-reporting-how-to-conditional-color-3-4-tint-shade-functions.aspx" target=_blank mce_href="http://blogs.msdn.com/davidlean/archive/2009/02/17/sql-reporting-how-to-conditional-color-3-4-tint-shade-functions.aspx"&gt;Part 3: Continuous Color Functions&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;A class="" href="http://blogs.msdn.com/davidlean/archive/2009/01/30/sql-reporting-how-to-color-coding-based-on-data-values-for-tables-charts-1-n.aspx" target=_blank mce_href="http://blogs.msdn.com/davidlean/archive/2009/01/30/sql-reporting-how-to-color-coding-based-on-data-values-for-tables-charts-1-n.aspx"&gt;Part 4: Effectively Using Color for Charts and Multi-Dimensional Analysis&lt;/A&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Enjoy!&lt;/P&gt;
&lt;P&gt;&lt;IMG style="WIDTH: 409px; HEIGHT: 599px" height=599 src="http://blogs.msdn.com/blogfiles/davidlean/WindowsLiveWriter/SQLReporting.ReportExpressionsCustomCode_BCFE/image13_thumb_2.png" width=409 mce_src="http://blogs.msdn.com/blogfiles/davidlean/WindowsLiveWriter/SQLReporting.ReportExpressionsCustomCode_BCFE/image13_thumb_2.png"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9435503" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RS+2008/default.aspx">RS 2008</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RS+2005/default.aspx">RS 2005</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Data+Visualization/default.aspx">Data Visualization</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Report+Design/default.aspx">Report Design</category></item><item><title>Report Performance Optimization Tips (Subreports, Drilldown)</title><link>http://blogs.msdn.com/robertbruckner/archive/2009/01/08/report-performance-optimization-tips-subreports-drilldown.aspx</link><pubDate>Fri, 09 Jan 2009 10:25:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9286620</guid><dc:creator>Robert M. Bruckner</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/robertbruckner/comments/9286620.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robertbruckner/commentrss.aspx?PostID=9286620</wfw:commentRss><description>&lt;P&gt;In a previous posting, I explained the new &lt;A class="" href="http://blogs.msdn.com/robertbruckner/archive/2009/01/05/executionlog2-view.aspx" mce_href="http://blogs.msdn.com/robertbruckner/archive/2009/01/05/executionlog2-view.aspx"&gt;ExecutionLog2&lt;/A&gt; view in Reporting Services 2008: how to utilize it to measure report execution performance, identify report candidates for optimizations, and verify the impact of the latter.&amp;nbsp; I also included two tips at the bottom of that posting, that I want to call out&amp;nbsp;explicitly as a separate posting.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Subreports&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;One of the aspects I usually investigate when optimizing reports&amp;nbsp;is the usage of subreports.&amp;nbsp; Subreports provide a convenient way to reuse report designs, but&amp;nbsp;it may make sense to refactor the report design to lift the subreports&amp;nbsp;contents into the main report.&amp;nbsp; Not only does this frequently result in improved performance, it can also provide better control over rendering behavior.&lt;/P&gt;
&lt;P&gt;Btw, this related blog &lt;A class="" href="http://blogs.msdn.com/robertbruckner/archive/2009/03/03/subreport-usage.aspx" mce_href="http://blogs.msdn.com/robertbruckner/archive/2009/03/03/subreport-usage.aspx"&gt;posting&lt;/A&gt; explains how one can quickly&amp;nbsp;find out which published reports reference subreports.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Splitting large drilldown reports into parameterized drillthrough reports&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;When reports use large datasets, I have sometimes seen the usage of drilldown group hierarchies (toggles) to provide an initial overview to the report consumer, and enable dynamic drilldown to interesting areas.&amp;nbsp;&lt;BR&gt;&lt;BR&gt;What may work really well for those kind of reports is to change the original report to only include data till e.g. the third level of drilldown (and thereby reduce the amount of data retrieved and processed by the initial report, and improve response time).&amp;nbsp; &lt;BR&gt;&lt;BR&gt;Then at the innermost drilldown level of the main report, create drillthrough actions with parameters based on the current group values to another report.&amp;nbsp; The drillthrough target report&amp;nbsp;provides further details and drilldown capabilities, but only has to retrieve a small subset of the original data.&amp;nbsp; &lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9286620" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Performance/default.aspx">Performance</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RS+2008/default.aspx">RS 2008</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RS+2005/default.aspx">RS 2005</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Report+Design/default.aspx">Report Design</category></item><item><title>Custom Report Item</title><link>http://blogs.msdn.com/robertbruckner/archive/2008/12/31/customreportitem.aspx</link><pubDate>Wed, 31 Dec 2008 21:55:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9258730</guid><dc:creator>Robert M. Bruckner</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/robertbruckner/comments/9258730.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robertbruckner/commentrss.aspx?PostID=9258730</wfw:commentRss><description>&lt;P&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;FONT size=3&gt;
&lt;CENTER&gt;&lt;IMG title="Custom Report Item Runtime Control Architecture" style="WIDTH: 430px; HEIGHT: 243px" height=243 alt="Custom Report Item Runtime Control Architecture" src="http://blogs.msdn.com/photos/robertbruckner/images/9258985/original.aspx" width=430 mce_src="http://blogs.msdn.com/photos/robertbruckner/images/9258985/original.aspx"&gt;&lt;/CENTER&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;
&lt;P&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;FONT size=3&gt;Custom Report Item in Reporting Services 2005&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;This&amp;nbsp;server extensibility feature introduced in Reporting Services 2005 (RS 2005) provides the ability to develop custom report items for embedding in reports.&amp;nbsp; Examples of resources available that provide insights into how one can build custom report item solutions include: &lt;A class="" href="http://msdn.microsoft.com/en-us/library/ms345231.aspx" target=_blank mce_href="http://msdn.microsoft.com/en-us/library/ms345231.aspx"&gt;documentation&lt;/A&gt; overview,&amp;nbsp;&lt;A href="http://www.codeplex.com/MSFTRSProdSamples/Wiki/View.aspx?title=SS2005%21Custom%20Report%20Item%20Sample&amp;amp;referringTitle=Home" target=_blank&gt;sample&lt;/A&gt;, and a great MSDN magazine &lt;A href="http://msdn.microsoft.com/en-us/magazine/cc188686.aspx" target=_blank mce_href="http://msdn.microsoft.com/en-us/magazine/cc188686.aspx"&gt;article&lt;/A&gt; by Teo Lachev.&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;Over time, several independent partners utilized this extensibility mechanism and developed nice 2005-based Custom Report Item (CRI) controls, such as &lt;A href="http://www.dundas.com/Technologies/RS/index.aspx" target=_blank mce_href="http://www.dundas.com/Technologies/RS/index.aspx"&gt;Dundas Visualization Products&lt;/A&gt; for Reporting Services, various barcode controls, and even some that take RTF and draw it as image into reports.&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;FONT size=3&gt;Custom Report Item in Reporting Services 2008&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;RS 2008 introduces a new RenderingObjectModel and an &lt;A href="http://blogs.msdn.com/robertbruckner/archive/2008/08/11/on-demand-report-processing-in-rs-2008.aspx"&gt;on-demand paradigm&lt;/A&gt; for processing and rendering reports.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Consequently, also the CRI runtime control interfaces and how the control interacts with the new on-demand RenderingObjectModel have changed.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;An &lt;A href="http://www.codeplex.com/MSFTRSProdSamples/Release/ProjectReleases.aspx?ReleaseId=18649"&gt;updated CRI-Polygon sample&lt;/A&gt; is available for RS 2008.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;FONT size=3&gt;Using 2005-based Custom Report Items in Reporting Services 2008&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;I have seen two common questions regarding the support of&amp;nbsp;2005 CRIs in RS 2008:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;Q: What if you bought or developed a 2005-based CRI &lt;/SPAN&gt;&lt;/EM&gt;&lt;STRONG&gt;&lt;I&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;runtime&lt;/SPAN&gt;&lt;/I&gt;&lt;/STRONG&gt;&lt;EM&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt; control - can you run those old reports after upgrading your report server to RS 2008?&lt;BR&gt;&lt;/SPAN&gt;&lt;/EM&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp;&lt;BR&gt;A: Yes, running 2005-based CRI runtime controls on a RS 2008 server is supported.&amp;nbsp; Your old 2005-based reports will run on RS 2008 without modifications - however make sure to verify that the Web.config of your 2008 report server contains an assembly binding redirect for the Microsoft.ReportingServices.Interfaces.dll as specified&amp;nbsp;in &lt;A class="" href="http://support.microsoft.com/kb/955795" target=_blank mce_href="http://support.microsoft.com/kb/955795"&gt;KB 955795&lt;/A&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;Q: What about 2005-based&amp;nbsp;CRI &lt;/SPAN&gt;&lt;/EM&gt;&lt;STRONG&gt;&lt;I&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;design&lt;/SPAN&gt;&lt;/I&gt;&lt;/STRONG&gt;&lt;EM&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt; time controls?&lt;BR&gt;&lt;/SPAN&gt;&lt;/EM&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&amp;nbsp;&lt;BR&gt;A:&amp;nbsp;2005-based CRI design time controls work with Business Intelligence Development Studio 2005 (BIDS 2005) only.&amp;nbsp; You can continue to design reports with BIDS 2005 and deploy directly to your RS 2008 server with the 2005-based CRI runtime control installed.&amp;nbsp; &lt;BR&gt;For BIDS 2008 however,&amp;nbsp;the CRI integration interfaces have changed, and you will need 2008-based CRI design controls to develop reports utilizing the full 2008 feature set (e.g. tablix) and 2008-based CRIs.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;Additional information about upgrading a report with custom report items is provided in the &lt;A class="" href="http://msdn.microsoft.com/en-us/library/ms143674.aspx" target=_blank mce_href="http://msdn.microsoft.com/en-us/library/ms143674.aspx"&gt;documentation&lt;/A&gt;.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;FONT size=3&gt;Special Case: Deploying 2005 Reports utilizing Dundas CRI controls to a RS 2008 Server&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;In short, your existing reports will run on RS 2008 without modifications.&amp;nbsp;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;You may no longer need your 2005 CRI controls on the RS 2008 server in particular cases, as explained below.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;With the &lt;A href="http://www.microsoft.com/presspass/press/2007/jun07/06-04TechED07PR.mspx"&gt;acquisition of the data visualization products&lt;/A&gt; of Dundas Inc., reports utilizing 2005-based CRI controls from Dundas generally will be automatically upgraded on-the-fly into native 2008 charts and gauges in RS 2008.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;In that case, your old reports will run as native 2008 reports when deployed to a RS 2008 server.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;If your 2005-based reports with Dundas CRIs utilize certain features, such as annotations or custom code, the reports won't be automatically converted into native RS 2008 charts/gauges, but instead remain 2005 reports that are executed in a transparent backwards-compatibility mode&lt;SUP&gt;1&lt;/SUP&gt; of the processing engine in the RS 2008 server.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;In that case, or if you use the&amp;nbsp;Dundas Maps or Dundas Calendar products, the reports will automatically run on the RS 2008 server, but you still need your 2005-based Dundas CRI runtime controls installed on the server.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;Alternatively, Dundas is releasing several new 2008-based CRI design and runtime controls.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;You could upgrade your existing 2005 reports in BIDS (with the 2008 Dundas controls installed) to 2008 reports, utilize all the new 2008 features such as tablix, and then deploy them as 2008 RDLs to a RS 2008 server.&amp;nbsp; Please contact &lt;A class="" href="http://www.dundas.com/Products/Chart/RS/Features/NewFeatures.aspx" target=_blank mce_href="http://www.dundas.com/Products/Chart/RS/Features/NewFeatures.aspx"&gt;Dundas&lt;/A&gt; directly, if you are interested in that option.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SUP&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;1&amp;nbsp;&lt;/SPAN&gt;&lt;/SUP&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;The related posting&amp;nbsp;about the enhanced &lt;A class="" href="http://blogs.msdn.com/robertbruckner/archive/2009/01/05/executionlog2-view.aspx" mce_href="http://blogs.msdn.com/robertbruckner/archive/2009/01/05/executionlog2-view.aspx"&gt;ExecutionLog2&lt;/A&gt; in RS 2008 explains, among other topics, how an administrator can utilize the AdditionalInfo.ProcessingEngine value to&amp;nbsp;determine whether an old report automatically upgraded to 2008, or if the report contains a 2005-based CRI and therefore is running in the transparent backwards-compatibility mode of the processing engine.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;o:p&gt;Happy New Year!&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9258730" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RDL/default.aspx">RDL</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RS+2008/default.aspx">RS 2008</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Data+Visualization/default.aspx">Data Visualization</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/CustomReportItem/default.aspx">CustomReportItem</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Upgrade/default.aspx">Upgrade</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Dundas/default.aspx">Dundas</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Report+Design/default.aspx">Report Design</category></item><item><title>RDL 2008 Specification</title><link>http://blogs.msdn.com/robertbruckner/archive/2008/11/26/rdl-2008-specification.aspx</link><pubDate>Wed, 26 Nov 2008 17:15:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9144418</guid><dc:creator>Robert M. Bruckner</dc:creator><slash:comments>4</slash:comments><comments>http://blogs.msdn.com/robertbruckner/comments/9144418.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robertbruckner/commentrss.aspx?PostID=9144418</wfw:commentRss><description>&lt;P&gt;Our documentation team made the latest RDL specification available on the Reporting Services site: &lt;A href="http://www.microsoft.com/sqlserver/2008/en/us/reporting.aspx"&gt;http://www.microsoft.com/sqlserver/2008/en/us/reporting.aspx&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;The 2008 RDL specification is available as &lt;A class="" href="http://download.microsoft.com/download/6/5/7/6575f1c8-4607-48d2-941d-c69622e11c32/RDL_spec_08.xps" target=_blank mce_href="http://download.microsoft.com/download/6/5/7/6575f1c8-4607-48d2-941d-c69622e11c32/RDL_spec_08.xps"&gt;XPS&lt;/A&gt; and as &lt;A class="" href="http://download.microsoft.com/download/6/5/7/6575f1c8-4607-48d2-941d-c69622e11c32/RDL_spec_08.pdf" target=_blank mce_href="http://download.microsoft.com/download/6/5/7/6575f1c8-4607-48d2-941d-c69622e11c32/RDL_spec_08.pdf"&gt;PDF&lt;/A&gt; document.&amp;nbsp; Older versions of the RDL specifications are still available: &lt;A class="" href="http://download.microsoft.com/download/c/2/0/c2091a26-d7bf-4464-8535-dbc31fb45d3c/rdlNov05.pdf" target=_blank mce_href="http://download.microsoft.com/download/c/2/0/c2091a26-d7bf-4464-8535-dbc31fb45d3c/rdlNov05.pdf"&gt;2005/01&lt;/A&gt; and &lt;A class="" href="http://download.microsoft.com/download/4/7/d/47d7d117-9f91-49ad-98d5-46aa6f3251a8/RDLDec03.pdf" target=_blank mce_href="http://download.microsoft.com/download/4/7/d/47d7d117-9f91-49ad-98d5-46aa6f3251a8/RDLDec03.pdf"&gt;2003/10&lt;/A&gt;.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9144418" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RDL/default.aspx">RDL</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RS+2008/default.aspx">RS 2008</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Report+Design/default.aspx">Report Design</category></item><item><title>Trendlines (Calculated Series) in Reporting Services Charts</title><link>http://blogs.msdn.com/robertbruckner/archive/2008/11/09/trendlines-calculated-series-in-reporting-services-charts.aspx</link><pubDate>Mon, 10 Nov 2008 07:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9056754</guid><dc:creator>Robert M. Bruckner</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/robertbruckner/comments/9056754.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robertbruckner/commentrss.aspx?PostID=9056754</wfw:commentRss><description>&lt;P&gt;One of the new chart features in Reporting Services 2008 is the ability to add chart series calculated from another&amp;nbsp;series.&amp;nbsp; This is accomplished by right-clicking an existing series (data point value) and selecting "Add Calculated Series ..." from the popup menu.&lt;BR&gt;
&lt;CENTER&gt;&lt;IMG title="Right click on data field to add a calculated series" alt="Right click on data field to add a calculated series" src="http://blogs.msdn.com/photos/robertbruckner/images/9056748/original.aspx" mce_src="http://blogs.msdn.com/photos/robertbruckner/images/9056748/original.aspx"&gt;&lt;/CENTER&gt;&amp;nbsp; 
&lt;P&gt;You can choose from a variety of pre-defined and parameterized formulas for&amp;nbsp;the derived chart series.&amp;nbsp; This includes Bollinger bands, several types of&amp;nbsp;moving average calculations, detrended price osciallator, mean, median, relative strength index, MACD, TRIX, and more.&amp;nbsp; The &lt;A class="" href="http://blogs.msdn.com/robertbruckner/attachment/9056754.ashx" mce_href="http://blogs.msdn.com/robertbruckner/attachment/9056754.ashx"&gt;attachment&lt;/A&gt; of this posting contains a small report (data are included in the report) that shows a simple moving average price trend line.&amp;nbsp; The rendered chart is shown below.&lt;/P&gt;
&lt;P mce_keep="true"&gt;
&lt;CENTER&gt;&lt;IMG title="Reporting Services chart with calculated trendline" style="WIDTH: 456px; HEIGHT: 288px" height=288 alt="Reporting Services chart with calculated trendline" src="http://blogs.msdn.com/photos/robertbruckner/images/9056750/original.aspx" width=456 mce_src="http://blogs.msdn.com/photos/robertbruckner/images/9056750/original.aspx"&gt;&lt;/CENTER&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9056754" width="1" height="1"&gt;</description><enclosure url="http://blogs.msdn.com/robertbruckner/attachment/9056754.ashx" length="32049" type="application/rdl" /><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RDL/default.aspx">RDL</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/RS+2008/default.aspx">RS 2008</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Data+Visualization/default.aspx">Data Visualization</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Report+Design/default.aspx">Report Design</category></item></channel></rss>