<?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 : RDL</title><link>http://blogs.msdn.com/robertbruckner/archive/tags/RDL/default.aspx</link><description>Tags: RDL</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>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>Subreport Usage</title><link>http://blogs.msdn.com/robertbruckner/archive/2009/03/03/subreport-usage.aspx</link><pubDate>Tue, 03 Mar 2009 17:40:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9456794</guid><dc:creator>Robert M. Bruckner</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/robertbruckner/comments/9456794.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robertbruckner/commentrss.aspx?PostID=9456794</wfw:commentRss><description>&lt;P&gt;In a &lt;A class="" href="http://blogs.msdn.com/robertbruckner/archive/2009/01/08/what-kind-of-reports-are-published.aspx" mce_href="http://blogs.msdn.com/robertbruckner/archive/2009/01/08/what-kind-of-reports-are-published.aspx"&gt;previous post&lt;/A&gt; I showed how to quickly find reports that use custom report items (CRIs).&amp;nbsp; The same idea can be applied to subreports as well.&amp;nbsp; As an administrator of a report server, you may access the catalog database directly. Keep in mind that any queries you execute directly against the report server’s catalog database may affect the performance of the overall system. Make sure that you never take any locks on objects in that database, as this is not supported and interferes with the function of the report server.&lt;/P&gt;
&lt;P&gt;The query below runs against the current version of the report server catalog database, and may not necessarily work for future RS versions.&amp;nbsp; It uses &lt;A href="http://msdn.microsoft.com/en-us/library/ms345122(SQL.90).aspx" target=_blank&gt;XQuery&lt;/A&gt; and checks for all three different RDL namespaces since the catalog database stores a copy of the original report in exactly the format it was originally uploaded, so that (maybe several years) later, you can still retrieve exactly the report you published as a 2003/10 or 2005/01 report, even if it is internally on-the-fly upgraded to the latest schema version of the report server it is running on.&lt;/P&gt;
&lt;P&gt;Use the following query to get a list of reports that reference subreports, including the path of those subreports:&lt;/P&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;
&lt;P&gt;&lt;FONT face="courier new,courier"&gt;&lt;FONT face="courier new,courier"&gt;USE&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="courier new,courier" color=#000000&gt; ReportServer&lt;/FONT&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;&lt;FONT color=#008000 size=2&gt;
&lt;P&gt;&lt;FONT face="courier new,courier"&gt;/* declare and populate temp table */&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;DECLARE&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; @tab &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;TABLE &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;(&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Path&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;NVARCHAR&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;(&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff00ff size=2&gt;&lt;FONT color=#ff00ff size=2&gt;MAX&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;),&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; xmlColumn &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;XML&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;)&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;INSERT&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;FONT color=#000000 size=2&gt; @tab &lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;SELECT&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;top&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; 1500 &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Path&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff00ff size=2&gt;&lt;FONT color=#ff00ff size=2&gt;CONVERT&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;(&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;XML&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff00ff size=2&gt;&lt;FONT color=#ff00ff size=2&gt;CONVERT&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;(&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;VARBINARY&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;(&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff00ff size=2&gt;&lt;FONT color=#ff00ff size=2&gt;MAX&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;),&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; Content&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;))&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;FROM&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Catalog&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;WHERE&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Type&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;=&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt;2&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;;&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;&lt;FONT color=#008000 size=2&gt;
&lt;P&gt;&lt;FONT face="courier new,courier"&gt;/* find subreports in RS 2000-based main reports */&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;WITH&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; XMLNAMESPACES&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt; &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;(&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;'http://schemas.microsoft.com/sqlserver/reporting/2003/10/reportdefinition'&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;as&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; rdl&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;)&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;SELECT&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Path&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;as&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; ReportPath&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;FONT color=#000000 size=2&gt; &lt;BR&gt;n&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;.&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt;x&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;.&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt;value&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;(&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;'(//rdl:ReportName)[1]'&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;'nvarchar(256)'&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;)&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;as&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;FONT color=#000000 size=2&gt; ReferencedReport&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;FROM&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;FONT color=#000000 size=2&gt; @tab&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;CROSS&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;APPLY&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; xmlColumn&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;.&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt;nodes&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;(&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;'//rdl:Subreport'&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;)&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; n&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;(&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt;x&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;);&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;&lt;FONT color=#008000 size=2&gt;
&lt;P&gt;&lt;FONT face="courier new,courier"&gt;/* find subreports in RS 2005-based main reports */&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;WITH&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; XMLNAMESPACES&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt; &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;(&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;'http://schemas.microsoft.com/sqlserver/reporting/2005/01/reportdefinition'&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;as&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; rdl&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;)&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;SELECT&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Path&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;as&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; ReportPath&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;FONT color=#000000 size=2&gt; &lt;BR&gt;n&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;.&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt;x&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;.&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt;value&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;(&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;'(//rdl:ReportName)[1]'&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;'nvarchar(256)'&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;)&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;as&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;FONT color=#000000 size=2&gt; ReferencedReport&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;FROM&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;FONT color=#000000 size=2&gt; @tab&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;CROSS&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;APPLY&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; xmlColumn&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;.&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt;nodes&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;(&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;'//rdl:Subreport'&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;)&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; n&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;(&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt;x&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;);&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;&lt;FONT color=#008000 size=2&gt;
&lt;P&gt;&lt;FONT face="courier new,courier"&gt;/* find subreports in RS 2008-based main reports */&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;WITH&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; XMLNAMESPACES&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt; &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;(&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;'http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition'&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;as&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; rdl&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;)&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;SELECT&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;Path&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;as&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; ReportPath&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;FONT color=#000000 size=2&gt; &lt;BR&gt;n&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;.&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt;x&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;.&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt;value&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;(&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;'(//rdl:ReportName)[1]'&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;,&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;'nvarchar(256)'&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;)&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;as&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;FONT color=#000000 size=2&gt; ReferencedReport&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;FROM&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="courier new,courier"&gt;&lt;FONT color=#000000 size=2&gt; @tab&lt;BR&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;CROSS&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; &lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;APPLY&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; xmlColumn&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;.&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt;nodes&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;(&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;&lt;FONT color=#ff0000 size=2&gt;'//rdl:Subreport'&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;)&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt; n&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;(&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt;x&lt;/FONT&gt;&lt;FONT color=#808080 size=2&gt;&lt;FONT color=#808080 size=2&gt;);&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT face="courier new,courier" color=#000000&gt; &lt;/FONT&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9456794" 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/RS+2005/default.aspx">RS 2005</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Management/default.aspx">Management</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>Better Report Viewing in Visual Studio 2010</title><link>http://blogs.msdn.com/robertbruckner/archive/2009/01/19/better-report-viewing-in-visual-studio-2010.aspx</link><pubDate>Tue, 20 Jan 2009 09:20:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9257732</guid><dc:creator>Robert M. Bruckner</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/robertbruckner/comments/9257732.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robertbruckner/commentrss.aspx?PostID=9257732</wfw:commentRss><description>&lt;P mce_keep="true"&gt;&lt;IMG style="WIDTH: 81px; HEIGHT: 54px" height=54 hspace=6 src="http://blogs.msdn.com/photos/robertbruckner/images/9341787/original.aspx" width=81 align=left vspace=1 border=0 mce_src="http://blogs.msdn.com/photos/robertbruckner/images/9341787/original.aspx"&gt;We plan&amp;nbsp;to release significantly updated and improved versions of both the Winforms and ASP.NET Report Viewer controls in &lt;A class="" href="http://www.microsoft.com/visualstudio/2010/overview.mspx" target=_blank mce_href="http://www.microsoft.com/visualstudio/2010/overview.mspx"&gt;Visual Studio 2010&lt;/A&gt;.&amp;nbsp; This is going to include the long awaited local mode support for the &lt;A class="" href="http://blogs.msdn.com/robertbruckner/archive/2008/08/11/on-demand-report-processing-in-rs-2008.aspx" mce_href="http://blogs.msdn.com/robertbruckner/archive/2008/08/11/on-demand-report-processing-in-rs-2008.aspx"&gt;new report processing engine&lt;/A&gt;, originally&amp;nbsp;released with SQL Server Reporting Services 2008.&amp;nbsp; Most importantly, this&amp;nbsp;provides &lt;A class="" href="http://blogs.msdn.com/robertbruckner/archive/2008/11/26/rdl-2008-specification.aspx" mce_href="http://blogs.msdn.com/robertbruckner/archive/2008/11/26/rdl-2008-specification.aspx"&gt;RDL 2008&lt;/A&gt; features (e.g. tablix, enhanced charts, gauge, rich text) in local mode without&amp;nbsp;connection to a report server.&amp;nbsp; Furthermore, a number of other new features are coming as well in the Report Viewer controls.&amp;nbsp; Related to this, my esteemed&amp;nbsp;colleague &lt;A class="" href="http://blogs.msdn.com/brianhartman/" target=_blank mce_href="http://blogs.msdn.com/brianhartman/"&gt;Brian Hartman&lt;/A&gt; started blogging recently.&amp;nbsp; His blog is definitely worth keeping an eye on regarding common questions on current and future versions of the Report Viewer.&lt;/P&gt;
&lt;P mce_keep="true"&gt;FAQ: What is the current level of RDL support in &lt;A class="" href="http://msdn.microsoft.com/en-us/library/ms251671.aspx" target=_blank mce_href="http://msdn.microsoft.com/en-us/library/ms251671.aspx"&gt;Visual Studio 2008 Report Viewer&lt;/A&gt; controls?&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;If you are using&amp;nbsp;&lt;STRONG&gt;local mode&lt;/STRONG&gt;, you probably already noticed that attempting&amp;nbsp;to load&amp;nbsp;RDL 2008 based reports results in the following error:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P mce_keep="true"&gt;&lt;EM&gt;The report definition is not valid. &lt;BR&gt;Details: The report definition has an invalid target namespace 'http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition' which cannot be upgraded.&lt;/EM&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P mce_keep="true"&gt;You cannot use RDL 2008 features in VS 2005 or VS 2008 report viewer controls in local mode, because&amp;nbsp;the controls are using the same report processing engine that was shipped with SQL Server 2005 (supporting only the RDL 2005 namespace and feature set).&amp;nbsp; As a side-note, VS 2008 shipped&amp;nbsp;almost 6&amp;nbsp;months before SQL Server 2008 became available.&lt;/P&gt;
&lt;P mce_keep="true"&gt;If you want to use&amp;nbsp;RDL 2008 features with the report viewer controls available&amp;nbsp;&lt;EM&gt;today&lt;/EM&gt;,&amp;nbsp;&lt;STRONG&gt;server mode&lt;/STRONG&gt; is your only viable option, because report processing is performed remotely on a Reporting Services 2008 server.&amp;nbsp; Please check Brian's blog posting&amp;nbsp;about &lt;A class="" href="http://blogs.msdn.com/brianhartman/archive/2008/12/05/sql-server-2008-and-the-reportviewer-controls.aspx" target=_blank mce_href="http://blogs.msdn.com/brianhartman/archive/2008/12/05/sql-server-2008-and-the-reportviewer-controls.aspx"&gt;RS 2008 and the Report Viewer controls&lt;/A&gt;&amp;nbsp;for more details.&amp;nbsp; A general overview&amp;nbsp;of the differences in functionality between Report Viewer and RS 2008 is available in the &lt;A class="" href="http://msdn.microsoft.com/en-us/library/ms345248.aspx" target=_blank mce_href="http://msdn.microsoft.com/en-us/library/ms345248.aspx"&gt;documentation&lt;/A&gt; as well.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9257732" 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/ReportViewer/default.aspx">ReportViewer</category></item><item><title>What Kind of Reports are Published / Which Use Custom Report Items?</title><link>http://blogs.msdn.com/robertbruckner/archive/2009/01/08/what-kind-of-reports-are-published.aspx</link><pubDate>Fri, 09 Jan 2009 10:15:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9277023</guid><dc:creator>Robert M. Bruckner</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/robertbruckner/comments/9277023.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robertbruckner/commentrss.aspx?PostID=9277023</wfw:commentRss><description>&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;As an administrator of a report server, you may occasionally ask yourself the question of what kind of reports are published in terms of their particular feature usage.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;For example:&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Symbol; mso-bidi-font-family: Symbol; mso-bidi-font-size: 11.0pt; mso-fareast-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;STRONG&gt;·&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;STRONG&gt;Usage of Custom Report Items (CRIs)&lt;BR&gt;&lt;/STRONG&gt;You plan to upgrade from RS 2005 to RS 2008 and there are CRI controls installed on your current RS 2005 server (look for a &amp;lt;ReportItems&amp;gt; section in rsReportServer.config)?&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;You may want to know whether they are actually referenced in any currently published reports on the server, because you may have read this related blog &lt;A class="" href="http://blogs.msdn.com/robertbruckner/archive/2008/12/31/customreportitem.aspx" mce_href="http://blogs.msdn.com/robertbruckner/archive/2008/12/31/customreportitem.aspx"&gt;posting&lt;/A&gt; and are wondering if you need to install the 2005-based CRI controls on your RS 2008 server?&lt;BR&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;o:p&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Symbol; mso-bidi-font-family: Symbol; mso-bidi-font-size: 11.0pt; mso-fareast-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;·&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;STRONG&gt;Usage of subreports&lt;BR&gt;&lt;/STRONG&gt;Which reports use subreports?&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Not only is this interesting for dependency tracking, but it might also be relevant for optimizing performance.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;/o:p&gt;&lt;/SPAN&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Symbol; mso-bidi-font-family: Symbol; mso-bidi-font-size: 11.0pt; mso-fareast-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;STRONG&gt;·&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;STRONG&gt;Usage of custom assemblies&lt;BR&gt;&lt;/STRONG&gt;What kind of (custom) assemblies are referenced by published reports?&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;This might be interesting information for auditing, or for trouble-shooting the &lt;A class="" href="http://msdn.microsoft.com/en-us/library/ms155108.aspx" mce_href="http://msdn.microsoft.com/en-us/library/ms155108.aspx"&gt;security policy configuration&lt;/A&gt;&amp;nbsp;of&amp;nbsp;a report server.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoListParagraph style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso-list: l0 level1 lfo1"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;o:p&gt;&amp;nbsp;&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: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;STRONG&gt;&lt;FONT size=3&gt;Offline Solutions&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/STRONG&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: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;o:p&gt;&amp;nbsp;&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: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;Well, as always there are multiple ways to accomplish this.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&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: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;/SPAN&gt;One option is to download all the reports from the server in an automated way and then analyze the RDL contents.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;This can be accomplished similar to the &lt;A class="" href="http://www.codeplex.com/MSFTRSProdSamples/Wiki/View.aspx?title=SS2008!RSExplorer%20Sample%20Application&amp;amp;referringTitle=Home" target=_blank mce_href="http://www.codeplex.com/MSFTRSProdSamples/Wiki/View.aspx?title=SS2008!RSExplorer%20Sample%20Application&amp;amp;referringTitle=Home"&gt;RS Explorer&lt;/A&gt; sample application, via the Reporting Services &lt;A class="" href="http://technet.microsoft.com/en-us/library/ms152787.aspx" target=_blank mce_href="http://technet.microsoft.com/en-us/library/ms152787.aspx"&gt;SOAP API&lt;/A&gt;, and using &lt;A class="" href="http://technet.microsoft.com/en-us/library/reportservice2005.reportingservice2005.listchildren.aspx" target=_blank mce_href="http://technet.microsoft.com/en-us/library/reportservice2005.reportingservice2005.listchildren.aspx"&gt;ListChildren&lt;/A&gt;&amp;nbsp;and &lt;A class="" href="http://technet.microsoft.com/en-us/library/reportservice2005.reportingservice2005.getreportdefinition.aspx" target=_blank mce_href="http://technet.microsoft.com/en-us/library/reportservice2005.reportingservice2005.getreportdefinition.aspx"&gt;GetReportDefinition&lt;/A&gt;.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Alternatively, you could utilize &lt;A class="" href="http://www.sqldbatips.com/showarticle.asp?ID=62" target=_blank mce_href="http://www.sqldbatips.com/showarticle.asp?ID=62"&gt;RS Scripter&lt;/A&gt;, a great tool written by Jasper Smith, to script/download all reports.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;For the subsequent offline analysis in the file system&amp;nbsp;use full text search tools (e.g. findstr).&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;FONT size=3&gt;&lt;STRONG&gt;Basic SQL Query Solutions&lt;o:p&gt;&lt;/o:p&gt;&lt;/STRONG&gt;&lt;/FONT&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: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;o:p&gt;&amp;nbsp;&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: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;As an administrator of a report server, you may access the catalog database directly.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Keep in mind that any queries you execute directly against the report server’s catalog database may affect the performance of the overall system.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Make sure that you never take any locks on objects in that database, as this is not supported and interferes with the function of the report server.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;That said, if you are familiar with the &lt;A class="" href="http://blogs.msdn.com/robertbruckner/archive/2008/11/26/rdl-2008-specification.aspx" mce_href="http://blogs.msdn.com/robertbruckner/archive/2008/11/26/rdl-2008-specification.aspx"&gt;RDL XSD structure&lt;/A&gt;, you can write a simple query like the following to find all reports that reference subreports:&lt;BR&gt;&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: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;USE&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; ReportServer&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;SELECT&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;SPAN style="COLOR: blue"&gt;Path&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;,&lt;/SPAN&gt; Name&lt;SPAN style="COLOR: gray"&gt;,&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Description&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;,&lt;/SPAN&gt; &lt;SPAN style="COLOR: gray"&gt;*&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;FROM&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;SPAN style="COLOR: blue"&gt;Catalog&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;WHERE&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;SPAN style="COLOR: blue"&gt;Type&lt;/SPAN&gt; &lt;SPAN style="COLOR: gray"&gt;=&lt;/SPAN&gt; 2 &lt;SPAN style="COLOR: gray"&gt;AND&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: fuchsia; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;CONVERT&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: gray; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;(&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;VARCHAR&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: gray; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;(&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: fuchsia; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;MAX&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: gray; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;),&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: fuchsia; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;CONVERT&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: gray; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;(&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;VARBINARY&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: gray; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;(&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: fuchsia; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;MAX&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: gray; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;),&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;Content&lt;SPAN style="COLOR: gray"&gt;))&lt;/SPAN&gt; &lt;SPAN style="COLOR: gray"&gt;LIKE&lt;/SPAN&gt; &lt;SPAN style="COLOR: red"&gt;'%&amp;lt;Subreport%'&lt;/SPAN&gt;&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: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;o:p&gt;&amp;nbsp;&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: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&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: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&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: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;FONT size=3&gt;&lt;STRONG&gt;SQL &lt;A class="" target=_blank&gt;XQuery&amp;nbsp;&lt;/A&gt;Solutions&lt;o:p&gt;&lt;/o:p&gt;&lt;/STRONG&gt;&lt;/FONT&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: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;Let's now focus on a slightly more complex scenario: you want to determine which types of CRIs are used by which reports on your server.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&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: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;/SPAN&gt;Note that the RDLs stored in the report server are exactly the RDL files that were originally uploaded.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Since the CRI feature was introduced with the RDL 2005/01 namespace, we only need to query that particular namespace to find reports that reference 2005 CRIs.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;If however you are looking for subreports or other elements, you may have to query several namespaces: RDL 2003/10, RDL 2005/01, and RDL 2008/01.&amp;nbsp; Btw, my esteemed colleague &lt;A class="" href="http://blogs.msdn.com/jgalla" target=_blank mce_href="http://blogs.msdn.com/jgalla"&gt;John&amp;nbsp;Gallardo&lt;/A&gt; used to work a lot with &lt;A class="" href="http://msdn.microsoft.com/en-us/library/ms345122(SQL.90).aspx" target=_blank mce_href="http://msdn.microsoft.com/en-us/library/ms345122(SQL.90).aspx"&gt;XQuery&lt;/A&gt; before joining the Reporting Services team and helped crafting the initial query, which I further refined to this:&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;BR&gt;&lt;/SPAN&gt;&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: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;USE&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; ReportServer&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;/* declare and populate temp table */&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;DECLARE&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; @tab &lt;SPAN style="COLOR: blue"&gt;TABLE &lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;(&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;Path&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;NVARCHAR&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;(&lt;/SPAN&gt;&lt;SPAN style="COLOR: fuchsia"&gt;MAX&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;),&lt;/SPAN&gt; xmlColumn &lt;SPAN style="COLOR: blue"&gt;XML&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;INSERT&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; @tab &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;SELECT&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;SPAN style="COLOR: blue"&gt;Path&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;,&lt;/SPAN&gt; &lt;SPAN style="COLOR: fuchsia"&gt;CONVERT&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;(&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;XML&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;,&lt;/SPAN&gt; &lt;SPAN style="COLOR: fuchsia"&gt;CONVERT&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;(&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;VARBINARY&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;(&lt;/SPAN&gt;&lt;SPAN style="COLOR: fuchsia"&gt;MAX&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;),&lt;/SPAN&gt; Content&lt;SPAN style="COLOR: gray"&gt;))&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;FROM&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Catalog&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;WHERE&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;Type&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;=&lt;/SPAN&gt;2&lt;SPAN style="COLOR: gray"&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: gray; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;/* for all CustomReportItem elements, display the report path,&amp;nbsp;CRI type and name */&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;WITH&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; XMLNAMESPACES&lt;SPAN style="COLOR: blue"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;(&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;'http://schemas.microsoft.com/sqlserver/reporting/2005/01/reportdefinition'&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;as&lt;/SPAN&gt; rdl&lt;SPAN style="COLOR: gray"&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;SELECT&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;SPAN style="COLOR: blue"&gt;Path&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;as&lt;/SPAN&gt; ReportPath&lt;SPAN style="COLOR: gray"&gt;,&lt;/SPAN&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;n&lt;SPAN style="COLOR: gray"&gt;.&lt;/SPAN&gt;x&lt;SPAN style="COLOR: gray"&gt;.&lt;/SPAN&gt;value&lt;SPAN style="COLOR: gray"&gt;(&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;'@Name'&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;,&lt;/SPAN&gt; &lt;SPAN style="COLOR: red"&gt;'nvarchar(256)'&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;)&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;as&lt;/SPAN&gt; CRIName&lt;SPAN style="COLOR: gray"&gt;,&lt;/SPAN&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;n&lt;SPAN style="COLOR: gray"&gt;.&lt;/SPAN&gt;x&lt;SPAN style="COLOR: gray"&gt;.&lt;/SPAN&gt;value&lt;SPAN style="COLOR: gray"&gt;(&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;'(//rdl:Type)[1]'&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;,&lt;/SPAN&gt; &lt;SPAN style="COLOR: red"&gt;'nvarchar(256)'&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;)&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;as&lt;/SPAN&gt; CRIType&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;FROM&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; @tab&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-layout-grid-align: none"&gt;&lt;SPAN style="FONT-SIZE: 10pt; COLOR: gray; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;CROSS&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt; &lt;SPAN style="COLOR: gray"&gt;APPLY&lt;/SPAN&gt; xmlColumn&lt;SPAN style="COLOR: gray"&gt;.&lt;/SPAN&gt;nodes&lt;SPAN style="COLOR: gray"&gt;(&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;'//rdl:CustomReportItem'&lt;/SPAN&gt;&lt;SPAN style="COLOR: gray"&gt;)&lt;/SPAN&gt; n&lt;SPAN style="COLOR: gray"&gt;(&lt;/SPAN&gt;x&lt;SPAN style="COLOR: gray"&gt;)&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'; mso-bidi-font-family: 'Times New Roman'; mso-bidi-font-size: 11.0pt; mso-bidi-theme-font: minor-bidi"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9277023" 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/RS+2005/default.aspx">RS 2005</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/CustomReportItem/default.aspx">CustomReportItem</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><item><title>Charts with Dynamic Height or Width based on Categories/Data</title><link>http://blogs.msdn.com/robertbruckner/archive/2008/10/27/charts-with-dynamic-size-based-on-categories-or-data.aspx</link><pubDate>Tue, 28 Oct 2008 06:45:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9019627</guid><dc:creator>Robert M. Bruckner</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/robertbruckner/comments/9019627.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robertbruckner/commentrss.aspx?PostID=9019627</wfw:commentRss><description>&lt;P mce_keep="true"&gt;You may have been in this situation before - you designed a chart based on a particular dataset&amp;nbsp;and everything looks great.&amp;nbsp; However, later the data volume increases, or new categories dynamically show up in your data source, and there is not enough&amp;nbsp;horizontal/vertical space in the chart to show all the data&amp;nbsp;or categories.&amp;nbsp; Unless, of course,&amp;nbsp;you applied an approach to dynamically increase the height/width of the chart.&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;
&lt;CENTER&gt;&lt;IMG title="Chart in report expands dynamically with number of categories" alt="Chart in report expands dynamically with number of categories" src="http://blogs.msdn.com/photos/robertbruckner/images/9019626/original.aspx" mce_src="http://blogs.msdn.com/photos/robertbruckner/images/9019626/original.aspx"&gt;&lt;/CENTER&gt;
&lt;P mce_keep="true"&gt;There are two new Chart RDL properties&amp;nbsp;in the report designer / report builder property grid to simplify this task in Reporting Services 2008:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;
&lt;DIV mce_keep="true"&gt;&lt;STRONG&gt;DynamicHeight&lt;/STRONG&gt;: the height the chart should grow/shrink at runtime&lt;/DIV&gt;&lt;/LI&gt;
&lt;LI&gt;
&lt;DIV mce_keep="true"&gt;&lt;STRONG&gt;DynamicWidth&lt;/STRONG&gt;: the width the chart should grow/shrink at runtime&lt;/DIV&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P mce_keep="true"&gt;If&amp;nbsp;the properties are not specified, then the design time sizes will be applied.&amp;nbsp; Both properties can be set to&amp;nbsp;any RDL expression that evaluates to a size string at runtime&amp;nbsp;(e.g.&amp;nbsp;="3 in").&amp;nbsp; Btw, note the space in the size string between the numeric part and the size unit.&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P mce_keep="true"&gt;The &lt;A class="" href="http://blogs.msdn.com/robertbruckner/attachment/9019627.ashx" mce_href="http://blogs.msdn.com/robertbruckner/attachment/9019627.ashx"&gt;attachment&lt;/A&gt; of this posting contains a small report that demonstrates&amp;nbsp;this technique.&amp;nbsp; The report is based on the&amp;nbsp;Northwind sample database (&lt;A class="" href="http://www.microsoft.com/downloads/details.aspx?FamilyID=06616212-0356-46A0-8DA2-EEBC53A68034" target=_blank mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=06616212-0356-46A0-8DA2-EEBC53A68034"&gt;&lt;FONT color=#dd4a21&gt;database download link&lt;/FONT&gt;&lt;/A&gt;).&amp;nbsp;&amp;nbsp;The chart in the report&amp;nbsp;dynamically increases its width based on&amp;nbsp;the number of countries shown in the chart (determined by a report parameter value).&amp;nbsp; To accomplish this, the DynamicWidth property of the chart is set to the following expression:&lt;BR&gt;&lt;BR&gt;&lt;FONT face="courier new,courier" color=#000000&gt;&amp;nbsp;&amp;nbsp; =(1 + Parameters!TopNCountries.Value / 2) &amp;amp; " in"&lt;/FONT&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;In this example, if you choose to show only the top 5 countries, the chart will have a width of 1+5/2 = 3.5 inches.&amp;nbsp; If you select the top 10 countries, the chart has a width of 1+10/2 = 6 inches and therefore more horizontal room to draw additional categories.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9019627" width="1" height="1"&gt;</description><enclosure url="http://blogs.msdn.com/robertbruckner/attachment/9019627.ashx" length="13370" 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><item><title>Fields in Page Header</title><link>http://blogs.msdn.com/robertbruckner/archive/2008/10/26/fields-in-page-header.aspx</link><pubDate>Mon, 27 Oct 2008 06:45:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9017376</guid><dc:creator>Robert M. Bruckner</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/robertbruckner/comments/9017376.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robertbruckner/commentrss.aspx?PostID=9017376</wfw:commentRss><description>&lt;P&gt;One of the small new features in Reporting Services 2008 that has not been widely publicized, is the ability to directly reference dataset fields and dataset aggregations from expressions in the page header and page footer.&amp;nbsp; You can accomplish this by simply dragging a dataset field directly into the page header/footer area of the report, or by manually writing expressions.&lt;/P&gt;
&lt;P&gt;The &lt;A class="" href="http://blogs.msdn.com/robertbruckner/attachment/9017376.ashx" mce_href="http://blogs.msdn.com/robertbruckner/attachment/9017376.ashx"&gt;attachment&lt;/A&gt; at the bottom of this posting contains a small report that demonstrates several techniques combined to render a customer directory of the fictional Northwind Traders company, based on the&amp;nbsp;Northwind sample database (&lt;A class="" href="http://www.microsoft.com/downloads/details.aspx?FamilyID=06616212-0356-46A0-8DA2-EEBC53A68034" target=_blank mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=06616212-0356-46A0-8DA2-EEBC53A68034"&gt;&lt;FONT color=#dd4a21&gt;database download link&lt;/FONT&gt;&lt;/A&gt;).&amp;nbsp; A partial screenshot of the first page of the report is shown below:&lt;/P&gt;
&lt;P mce_keep="true"&gt;
&lt;CENTER&gt;&lt;IMG title="Partial screenshot of first page of report" style="WIDTH: 547px; HEIGHT: 299px" height=299 alt="Partial screenshot of first page of report" src="http://blogs.msdn.com/photos/robertbruckner/images/9019608/original.aspx" width=547 mce_src="http://blogs.msdn.com/photos/robertbruckner/images/9019608/original.aspx"&gt;&lt;/CENTER&gt;
&lt;P&gt;Please note the following areas of the customer directory report:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Field&amp;nbsp;reference / dataset aggregate calculation&amp;nbsp;in page header&lt;BR&gt;&lt;/STRONG&gt;The page header contains information about the number of countries that Northwind Traders has customers.&amp;nbsp; This information is calculated at runtime directly from the customer dataset by using a placeholder in the page header textbox with the following expression:&lt;BR&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp;&amp;nbsp; &lt;FONT color=#0066ff&gt;=CountDistinct(Fields!Country.Value, "Customers")&lt;/FONT&gt;&lt;BR&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Reportitem references in the page header&amp;nbsp;to show the first and last country covered on the current page&lt;BR&gt;&lt;/STRONG&gt;For multi-page reports, such as the customer directory listing you may want to include text from the body of the report in the header.&amp;nbsp; In our particular example, we want to show the first and the last&amp;nbsp;country covered on a particular page of the customer directory.&amp;nbsp; To do this, you would include an expression using the First function in a text box in the page header.&amp;nbsp; To display the first occurrence of the Country value on the page, the expression would resemble the following:&lt;BR&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp;&amp;nbsp; =First(&lt;FONT color=#0066ff&gt;ReportItems&lt;/FONT&gt;!Country.Value)&lt;BR&gt;&lt;/FONT&gt;Likewise, use an expression with the Last function to provide the last value of the Country text box on the page:&lt;BR&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp;&amp;nbsp; =Last(&lt;FONT color=#0066ff&gt;ReportItems&lt;/FONT&gt;!Country.Value)&lt;BR&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Repeating table header and (country) group header on every page&lt;BR&gt;&lt;/STRONG&gt;This is accomplished by applying steps discussed in a previous &lt;A class="" href="http://blogs.msdn.com/robertbruckner/archive/2008/10/13/Repeat-Header-And-Visible-Fixed-Header-Table.aspx" mce_href="http://blogs.msdn.com/robertbruckner/archive/2008/10/13/Repeat-Header-And-Visible-Fixed-Header-Table.aspx"&gt;posting&lt;/A&gt;.&lt;BR&gt;&amp;nbsp;&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Fixed table header&lt;/STRONG&gt; &lt;BR&gt;The table header&amp;nbsp;is always visible on top of every page when browsing the report interactively.&amp;nbsp; This is accomplished by applying steps discussed in a previous &lt;A class="" href="http://blogs.msdn.com/robertbruckner/archive/2008/10/13/Repeat-Header-And-Visible-Fixed-Header-Table.aspx" mce_href="http://blogs.msdn.com/robertbruckner/archive/2008/10/13/Repeat-Header-And-Visible-Fixed-Header-Table.aspx"&gt;posting&lt;/A&gt;.&amp;nbsp; &lt;/LI&gt;&lt;/UL&gt;
&lt;P mce_keep="true"&gt;In addition, the report shows a few of the abilities of the enhanced (Rich)Textbox in Reporting Services 2008, that enables using multiple fonts, styles, colors, paragraphs, etc. within the same textbox.&amp;nbsp; It also uses a "stepped" layout for the table country/city groups, that can be easily accomplished through the new table wizard in Report Builder 2.0, or created with a few manual steps as well.&lt;/P&gt;
&lt;P mce_keep="true"&gt;As a side-note, for using fields in page header or footer in Reporting Services 2005, please read this older &lt;A class="" href="http://blogs.msdn.com/bwelcker/archive/2007/06/19/marquee-moon-field-references-in-page-headers-and-footers.aspx" target=_blank mce_href="http://blogs.msdn.com/bwelcker/archive/2007/06/19/marquee-moon-field-references-in-page-headers-and-footers.aspx"&gt;posting&lt;/A&gt;&amp;nbsp;on Brian Welcker's blog.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9017376" width="1" height="1"&gt;</description><enclosure url="http://blogs.msdn.com/robertbruckner/attachment/9017376.ashx" length="37465" 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/Report+Design/default.aspx">Report Design</category></item><item><title>What DataSet Query Text Is Executed?</title><link>http://blogs.msdn.com/robertbruckner/archive/2008/10/25/what-dataset-query-text-is-executed.aspx</link><pubDate>Sat, 25 Oct 2008 22:15:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9016217</guid><dc:creator>Robert M. Bruckner</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/robertbruckner/comments/9016217.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robertbruckner/commentrss.aspx?PostID=9016217</wfw:commentRss><description>&lt;P&gt;In a previous posting, I discussed &lt;A class="" href="http://blogs.msdn.com/robertbruckner/archive/2008/08/07/dataset-execution-order.aspx" mce_href="http://blogs.msdn.com/robertbruckner/archive/2008/08/07/dataset-execution-order.aspx"&gt;dataset execution order&lt;/A&gt; in Reporting Services.&amp;nbsp; In this posting,&amp;nbsp;I will provide a few tips for situations where&amp;nbsp;you or your report users are wondering what is the actual query executed by Reporting Services.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;While you can accurately answer this question using a profiler connected to the data source machines or in some cases by opening the dataset properties dialog, there are other options directly available from within reports.&amp;nbsp; You will&amp;nbsp;probably encounter the following main situations:&amp;nbsp;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;STRONG&gt;Parameterized or regular datasets&lt;BR&gt;&lt;/STRONG&gt;In order to see the underlying&amp;nbsp;query command text&amp;nbsp;in the report,&amp;nbsp;add a textbox with the following RDL expression, utilizing the &lt;A class="" href="http://msdn.microsoft.com/en-us/library/cc281085.aspx" target=_blank mce_href="http://msdn.microsoft.com/en-us/library/cc281085.aspx"&gt;built-in DataSets collection&lt;/A&gt; and the CommandText property.&amp;nbsp; This can be particularly useful when you use an expression-based query command text, as the CommandText&amp;nbsp;property&amp;nbsp;will contain the evaluated expression result.&amp;nbsp;&lt;BR&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp;&amp;nbsp; =DataSets!DataSetName.&lt;FONT color=#0066ff&gt;CommandText&lt;/FONT&gt;&lt;BR&gt;&lt;/FONT&gt;&lt;BR&gt;If you use report parameters bound to&amp;nbsp;query parameters in your dataset, you can display those values by accessing the &lt;A class="" href="http://msdn.microsoft.com/en-us/library/aa337293.aspx" target=_blank mce_href="http://msdn.microsoft.com/en-us/library/aa337293.aspx"&gt;built-in Parameters collection&lt;/A&gt;.&amp;nbsp; For example, assuming P1 is a multi-valued report parameter, we utilize the &lt;A class="" href="http://msdn.microsoft.com/en-us/library/b65z3h4h.aspx" target=_blank mce_href="http://msdn.microsoft.com/en-us/library/b65z3h4h.aspx"&gt;Join&lt;/A&gt; function to show the current parameter values as comma-separated list:&lt;BR&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp;&amp;nbsp; ="P1's values: " &amp;amp; &lt;FONT color=#0066ff&gt;Join&lt;/FONT&gt;(Parameters!P1.Value, ", ")&lt;BR&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;&lt;STRONG&gt;Report Model based datasets&amp;nbsp;&lt;BR&gt;&lt;/STRONG&gt;Using Report Builder 2.0 with a shared data source on your report server that points to an existing&amp;nbsp;report model is a very powerful combination.&amp;nbsp; It enables&amp;nbsp;users to create quite complex queries easily that would be rather difficult to write as actual SQL or MDX queries.&amp;nbsp; Similar to above, you can use the RewrittenCommandText property to get&amp;nbsp;the model-based query with parameter values rewritten as literals: &lt;BR&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp;&amp;nbsp; =DataSets!DataSetName.&lt;FONT color=#0066ff&gt;RewrittenCommandText&lt;/FONT&gt;&lt;/FONT&gt;&lt;BR&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;You can make this more sophisticated by only dynamically showing the query text in the report, e.g. based on a parameter or by toggling the visibility using another textbox:&lt;/P&gt;
&lt;P&gt;&lt;IMG src="http://blogs.msdn.com/photos/robertbruckner/images/9016340/original.aspx" mce_src="http://blogs.msdn.com/photos/robertbruckner/images/9016340/original.aspx"&gt;&lt;/P&gt;
&lt;P&gt;More information about all &lt;A class="" href="http://msdn.microsoft.com/en-us/library/ms157274.aspx" target=_blank mce_href="http://msdn.microsoft.com/en-us/library/ms157274.aspx"&gt;built-in global collections&lt;/A&gt;&amp;nbsp;accessible from RDL expressions is available in SQL Server Books On Line.&amp;nbsp; Note that some of the server related properties don't have values in local preview, only when connected to a server in Report Builder 1.0 / 2.0&amp;nbsp;or running directly on a server.&lt;/P&gt;
&lt;P mce_keep="true"&gt;The CommandText property value always represents the original command text as defined in the RDL dataset.&amp;nbsp; The RewrittenCommandText property value is populated at runtime from data extensions that support the &lt;A class="" href="http://msdn.microsoft.com/en-us/library/microsoft.reportingservices.dataprocessing.idbcommandrewriter.aspx" target=_blank mce_href="http://msdn.microsoft.com/en-us/library/microsoft.reportingservices.dataprocessing.idbcommandrewriter.aspx"&gt;IDbCommandRewriter&lt;/A&gt; interface.&amp;nbsp; This interface allows Reporting Services to read the CommandText back from the data extension after it has merged the original command text and parameter values.&amp;nbsp; If a data extension doesn't support this interface, RewrittenCommandText will be null/Nothing.&amp;nbsp; Currently the built-in report model data source supports this interface, although it could also be implemented by any&amp;nbsp;custom data extension.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9016217" 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/RS+2005/default.aspx">RS 2005</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Data+Connectivity/default.aspx">Data Connectivity</category></item><item><title>Using Analysis Services Parent-Child Hierarchies in Reports</title><link>http://blogs.msdn.com/robertbruckner/archive/2008/10/14/using-analysis-services-parent-child-hierarchies-in-reports.aspx</link><pubDate>Wed, 15 Oct 2008 08:45:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8999771</guid><dc:creator>Robert M. Bruckner</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/robertbruckner/comments/8999771.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robertbruckner/commentrss.aspx?PostID=8999771</wfw:commentRss><description>&lt;P&gt;One of the questions that I answer&amp;nbsp;somewhat frequently, is about recursive groupings in Reporting Services&amp;nbsp;and how to utilize parent-child hierarchies from an Analysis Services cube.&lt;/P&gt;
&lt;P&gt;The &lt;A class="" href="http://blogs.msdn.com/robertbruckner/attachment/8999771.ashx" mce_href="http://blogs.msdn.com/robertbruckner/attachment/8999771.ashx"&gt;attachment&lt;/A&gt; of this posting contains a small report example I put together based on the Analysis Services 2005 &lt;A class="" href="http://www.codeplex.com/MSFTDBProdSamples" target=_blank mce_href="http://www.codeplex.com/MSFTDBProdSamples"&gt;Adventure Works DW&lt;/A&gt; sample&amp;nbsp;cube, and demonstrates a recursive hierarchy using the employee dimension.&amp;nbsp; It works both in Reporting Services 2005 and 2008.&amp;nbsp; Partial screenshot of the attached sample report output:&lt;BR&gt;
&lt;CENTER&gt;&lt;IMG src="http://blogs.msdn.com/photos/robertbruckner/images/9016407/original.aspx" mce_src="http://blogs.msdn.com/photos/robertbruckner/images/9016407/original.aspx"&gt;&lt;/CENTER&gt;
&lt;P&gt;Particular areas to&amp;nbsp;note / steps:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;The table group is defined as a recursive grouping based on the UniqueName and ParentUniqueName property values from the Analysis Services parent-child hierarchy.&amp;nbsp; Consequently, there is only&amp;nbsp;one group defined at design time, that automatically expands recursively at runtime based on the parent-child hierarchy in the cube.&lt;BR&gt;Group expression:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT face="courier new,courier"&gt;=Fields!Employees.&lt;FONT color=#0066ff&gt;&lt;STRONG&gt;UniqueName&lt;BR&gt;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/FONT&gt;Parent group&amp;nbsp;expression:&amp;nbsp;&amp;nbsp; &lt;FONT face="courier new,courier"&gt;=Fields!Employees.&lt;FONT color=#0066ff&gt;&lt;STRONG&gt;ParentUniqueName&lt;/STRONG&gt;&lt;/FONT&gt;&lt;BR&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/LI&gt;
&lt;LI&gt;Group visibility is toggled by the textbox within the group, to enable automatic drilldown along the parent-child hierarchy.&lt;BR&gt;&amp;nbsp;&lt;/LI&gt;
&lt;LI&gt;In the example, manager names in the employee hierarchy (i.e. they have at least one employee reporting to them) are shown in bold font.&amp;nbsp; This is accomplished with a count aggregate function that takes into account the full recursive hierarchy of all children by explicitly specifying the Recursive keyword as third argument.&amp;nbsp;&amp;nbsp;The textbox FontStyle property is set to the following RDL expression:&lt;BR&gt;&lt;FONT face="courier new,courier"&gt;=iif(Count(Fields!Employees.Value, "table1_Details_Group", &lt;STRONG&gt;&lt;FONT color=#0066ff&gt;Recursive&lt;/FONT&gt;&lt;/STRONG&gt;) &amp;gt; 1, "Bold", "Normal")&lt;/FONT&gt;&lt;BR&gt;&amp;nbsp;&lt;/LI&gt;
&lt;LI&gt;The textbox showing the employee name uses dynamic left padding (in RS 2008 paragraph indents can be used as well) based on the current recursive hierarchy level using the &lt;A class="" href="http://msdn.microsoft.com/en-us/library/ms155841(SQL.100).aspx" target=_blank mce_href="http://msdn.microsoft.com/en-us/library/ms155841(SQL.100).aspx"&gt;Level()&lt;/A&gt; function.&lt;BR&gt;For example:&amp;nbsp; &lt;FONT face="courier new,courier"&gt;=20 * &lt;STRONG&gt;&lt;FONT color=#0066ff&gt;Level()&lt;/FONT&gt;&lt;/STRONG&gt; &amp;amp; "pt"&lt;/FONT&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P mce_keep="true"&gt;Recursive hierarchies can also be very useful&amp;nbsp;for relational data sources, not just parent-child hierarchies in cubes.&amp;nbsp; I hope the explanations in this posting&amp;nbsp;and the attached sample report resolve some of the mystery around parent-child / recursive hierarchies, and using regular&amp;nbsp;vs. recursive aggregate functions.&amp;nbsp; Enjoy!&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8999771" width="1" height="1"&gt;</description><enclosure url="http://blogs.msdn.com/robertbruckner/attachment/8999771.ashx" length="9430" 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/RS+2005/default.aspx">RS 2005</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Data+Connectivity/default.aspx">Data Connectivity</category><category domain="http://blogs.msdn.com/robertbruckner/archive/tags/Report+Design/default.aspx">Report Design</category></item></channel></rss>