Formation & Consulting en Business Intelligence

Robert Bruckner's Advanced Reporting Services Blog

Report Builder 3.0, November CTP (jeu, 12 nov 2009)
Report Builder 3.0 A small stand-alone MSI for Report Builder 3.0, November CTP, is now available for download here.  For a list of feature additions in November CTP, please refer to my previous blog post.
>> plus d'infos

SQL Server 2008 R2 November CTP – What’s New In Reporting Services? (mar, 10 nov 2009)
SQL Server 2008 R2 The November CTP download is available for MSDN and TechNet subscribers. The public download is available here.  The feature pack download is now also available and includes Report Builder 3.0 as well as the RS add-ins for SharePoint 2007 and SharePoint 2010. The Data Platform Insider blog provides an overview of what's new in CTP release for SQL Server 2008 R2.  If you are reading my blog, you are probably interested in knowing what’s specifically new compared to the previous August CTP in Reporting Services 2008 R2 November CTP: Report Part Gallery The ability for report items / data regions to be published to the report server and made available to other report authors to re-use.  Report authors can publish and share these report components from either BIDS or Report Builder 3.0.  Information workers can use Report Builder to mash these report components together into their own unique views by simple drag & drop.  This includes notifications when a report part was updated on the report server in the meantime.    Shared Data Sets Datasets can now be shared, stored, processed and cached externally from the report.  Cache refresh plans let you cache reports or shared dataset query results on first use or from a schedule.   Enhanced SharePoint Integration for SharePoint 2007 and SharePoint 2010 This includes support for multiple SharePoint Zones, the SharePoint Universal Logging service, and Report Parts.  We added a new SharePoint List data extension with query designer support.  Furthermore, support for right-to-left text with Arabic and Hebrew was added in the SharePoint user interface.    New Data Visualization Report Items DVEnhancementsData Bars - each bar is scaled based on the maximum value of the immediate group (a default which can be adjusted). Sparklines are data-intense, word-sized graphics.  These visualizations make it possible for report consumers to quickly see things like trends over time at a glance. Indicators are small icons that are often used to depict the status or trend for a given value.  Setting up indicators based on a number of pre-configured sets is now very easy. Furthermore, this CTP includes improvements to the Map wizard.   Enhanced Business Intelligence Development Studio Support for 2008 and 2008 R2 versions of reports and report projects.   Aggregates of Aggregates This enables report authors to nest RDL aggregate expressions inside other RDL aggregate expressions with unlimited nesting levels.  For example, the expression =Avg(Sum(Sales, "Month"), "Year") would compute the average total monthly sales.     Other RDL Expression Language enhancements Expect more details on many of these topics in separate blog postings: - Writing expressions that take into account the current rendering format (=Globals!RenderFormat.Name) - Naming pages, including naming of Excel worksheets for Excel export - 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.  - Read/Write report variables with automatic serialization/persistence; these are quite useful to avoid managing your own custom code variables. - Rotating Text 270 Degrees, which is frequently needed for narrow column layouts.  - Dynamic page breaks, as well as resetting page number of page breaks   New 2010 SOAP Endpoint While the existing 2005/2006 SOAP endpoints are still supported, the 2010 endpoint unifies support of both native & SharePoint integrated servers and adds functionality for new areas such as shared datasets, cache refresh plans, and report parts.   Improved Browser and Standards Mode Support   During the next weeks I plan to cover a lot more details regarding the areas listed above. Enjoy! I look forward to hearing your feedback on Reporting Services 2008 R2 November CTP in the dedicated MSDN discussion forum.
>> plus d'infos

See You at PASS 2009 Summit (mer, 04 nov 2009)
PASS 2009The PASS Community Summit 2009 is a don't-miss event for Microsoft SQL Server professionals. Whether you are a database administrator or a business intelligence professional, I believe you will benefit from the most up-to-date and comprehensive SQL Server knowledge available. In addition to SQL Server MVPs and numerous SQL Server gurus, there will be many people of the SQL Server product group in attendance.  I would encourage you to stop by at the product booth and the Ask The Experts areas.  This is a great opportunity to provide your feedback and discuss your questions face-to-face with members of the product development team, including myself and several of my colleagues from the Reporting Services team. I will also present during two sessions at PASS this week: On Wednesday I will represent the Reporting Services team with demos during the traditional “BI Power Hour” session.   On Thursday I will present during Paul Turley’s sessions on “Super Reports: Patterns & Recipes”.  My contents will focus on several of the new SQL Server 2008 R2 features available in the upcoming November CTP and show how they will solve several of your important reporting scenario requirements. Hope to see you at PASS!
>> plus d'infos

Report Viewer in Visual Studio 2010 (lun, 26 oct 2009)
vs2010_logoVisual Studio 2010 Beta 2 is now available for public download!  This beta provides many new features, including an updated  ReportViewer control.  Beta 2 contains several important updates for the ReportViewer, such as using ASP.Net AJAX internally, supporting RDL 2008 features (tablix, rich text, gauge, etc.) in local mode, Word export, and better cross browser support. Please try it out and provide feedback!
>> plus d'infos

Reports As Data Feeds for Gemini (mer, 26 aoû 2009)
AtomDataFeed Donald Farmer explains in this one minute video how report data feeds (“the orange button”) are simply great data sources for further analysis in Gemini.  You get the benefits of both, Reporting Services as platform with all its reporting and management features (e.g. role-based security, cache refresh) and Gemini as powerful analysis tool. Enjoy!
>> plus d'infos

SharePoint Integrated Mode (ven, 21 aoû 2009)
Chris Alton’s whitepaper on Reporting Services SharePoint Integration Troubleshooting is now available on MSDN.  It provides a great set of configuration tips, diagnosis, and troubleshooting instructions. The following two older Reporting Services 2005 SharePoint Integrated Mode related whitepapers are still available: Reporting Services 2005 SP2 SharePoint Integration Overview Reporting Services 2005 SharePoint Integration Troubleshooting Enjoy!
>> plus d'infos

Report Builder 3.0, August CTP (ven, 14 aoû 2009)
Report Builder 3.0 A small stand-alone MSI for Report Builder 3.0, August CTP, is now available for download here: http://go.microsoft.com/fwlink/?LinkID=160384 Download packages for SQL Server 2008 R2 August CTP are available here: http://www.microsoft.com/downloads/details.aspx?FamilyID=e19689bd-38dd-46c4-8645-f58ca4d61d1f Enjoy!
>> plus d'infos

RS Maps with ESRI Shapefile (jeu, 13 aoû 2009)
In a previous post, I demonstrated how to use a SQL Server spatial query as source for geospatial visualizations.  ESRI Shapefile is another type of spatial data supported in Reporting Services Maps in SQL Server 2008 R2 August CTP. There are a number of free ESRI shapefile data sources available for download on the web, which you can use to create your own maps of.  Popular shapefile sources include: US Census Bureau web site: TIGER/Line project  Global Administrative Areas spatial database at: http://biogeo.berkeley.edu/gadm/ Digital Chart of the World Data Server at: http://www.maproom.psu.edu/dcw/ As pointed out by my colleague Yi in this related MSDN forum thread, please note that in August CTP the Map wizard does not yet automatically detect the coordinate system used in an ESRI shapefile.  So if the wizard doesn’t show any shape data, finish the wizard, and then on the design surface select the map, open the viewport property dialog from the context menu, and try changing the coordinate system to ‘Planar’.
>> plus d'infos

RS Maps with Spatial Data and Bing Maps (mer, 12 aoû 2009)
SQL Server 2008 R2 August CTP includes map visualization functionality in Reporting Services, as briefly described yesterday.  In this posting, I’m going to provide an introduction of how to use spatial data and Bing Maps with Reporting Services Maps.  The attachment of this posting includes the final report so you can try it out yourself in Report Builder 3.0.  The data source for the report is the Person.Address table in the AdventureWorks2008 sample database (download) which includes a geospatial column.  The report scenario is about showing the addresses of all your customers in the Los Angeles area.  Accomplishing this requires just a few steps in Report Builder 3.0, and you don’t even need to write a single RDL expression!  Btw, I will cover some of the new interesting spatial functions added to the RDL expression language in another posting.  Let’s start with the screenshot of the final map visualization of this report: Reporting Services Map with geospatial data from database and Bing Maps as background Steps: Start Report Builder 3.0, and create a data source connection to the AdventureWorks2008 sample database (download).   Define a new dataset which includes geospatial data.  For example: SELECT [AddressID], [AddressLine1], [AddressLine2], [City],             [StateProvinceID], [PostalCode], [SpatialLocation] FROM [AdventureWorks2008].[Person].[Address] WHERE [City] = 'Los Angeles' Dataset query with geospatial column   From the Report Builder 3.0 toolbar, insert a new map, using the map wizard.  On the first page of the wizard, select to use a SQL Server spatial query. Map Wizard Step 1   On the second page of the wizard, select the dataset defined in step 2 (“Customers”).   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.  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. Map Wizard Step 3   Since our specific dataset doesn’t contain further information about the customers, we select a basic marker map as visualization.  If we had further data in our dataset, such as total sales amount, we could do a bubble map taking into account revenue. Map Wizard Step 4   In the final step of the map wizard we can chose to the marker type and display labels with each point.  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.  The map wizard is usually the quickest way to get started though.   We should now have a map on the design surface.  You can further tweak settings of each map layer and map properties as desired. Report Builder Map Design Surface 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.
>> plus d'infos

SQL Server 2008 R2 August CTP – What’s New In Reporting Services? (mar, 11 aoû 2009)
SQL Server 2008 R2 The August CTP download is available for MSDN and TechNet subscribers. The public download is now also active here. The Data Platform Insider blog provides an overview of what's new in this first public CTP release for SQL Server 2008 R2.  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: Map and spatial data visualization Report Builder Map We provided sneak previews of this functionality at past conferences, including a popular “BI Power Hour” demo.  Maps can be very powerful visualizations.  They can consume and visualize geospatial and geometry data directly (as shown by Ed Katibah here), “regular” data, and combine multiple datasets using map layers.  Maps can integrate ESRI shape files, as well as directly integrate with Bing Maps.  More details in upcoming postings.   Report Builder 3.0 The most notable new Report Builder feature area already available in the August CTP is the so-called "server mode":  - An edit session concept enables support for embedded data source credentials, relative references, and subreport references when connected to a report server. - Dataset results are cached when connected to a report server, which speeds up making layout changes and previewing the new report.   ATOM data feeds AtomDataFeed Export Button Reports are now also available in the ATOM standard compliant format that can be consumed by Gemini and other tools. Update: Teo Lachev takes an initial look at data feeds here.    AJAX Report Viewer The August CTP provides a preview of some of the functionality that will be available in the stand-alone report viewer control with the upcoming Visual Studio 2010 Beta 2 release.  You will notice a more fluid navigation experience in August CTP.   Report Manager Report Manager received visual and functional improvements with SharePoint-like interaction and menus.  Update: Teo Lachev provides his take on report manager with screenshots here.   RDL Expression Language enhancements We added direct geospatial data & function support, as well as three types of Lookup functions (Lookup, LookupSet, MultiLookup).  More about this in upcoming postings. 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.  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. Enjoy! I look forward to hearing your feedback on Reporting Services 2008 R2 August CTP in the dedicated new MSDN discussion forum.
>> plus d'infos

Tablix – Multiple Subtotals Are Easy (aka Goodbye InScope)! (mar, 11 aoû 2009)
Reporting Services 2005 with Matrix In a matrix in Reporting Services 2005, accomplishing multiple or different subtotal calculations at the same grouping level was difficult, but possible.  If you wanted to accomplish custom subtotal calculations in RS 2005, you may have heard about using the InScope function to dynamically determine the scope of a matrix cell at runtime.  Let’s take a closer look at the following example with red numbers highlighting four different zones of the matrix to better understand the usecase: MatrixInScope 1: Product category sales by each year.  The matrix cell is within the scope of both, the ProdCat group as well as OrderYear group. 2: Product category sales aggregated across all years.  The subtotal cell is within the scope of the ProdCat group, but outside the scope of the OrderYear group because it aggregates all years. 3: All product sales per each year.  The subtotal cell is outside the scope of the ProdCat group (aggregating all products), but within the scope of the OrderYear group. 4: Overall grand total.  The subtotal cell is outside both grouping scopes. By default, the calculation defined in the matrix cell (1) in RS 2005 is performed the same way (but with different grouping scopes) in the subtotal cells (2, 3, 4). There are however situation where for example, you want to calculate a running total of all product sales for each year (i.e. subtotal cell 3), and you want the average product category sales per year (i.e. subtotal cell 2).  Or perhaps you only want drillthrough links to be active on individual matrix cells, but not on the subtotals. To accomplish this in RS 2005, you would have to define the expression in the matrix cell using the following general pattern:  =iif(InScope("RowGroup"),       iif(InScope("ColumnGroup"),          "In Matrix Cell (1)",          "In Subtotal of RowGroup (2)"),       iif(InScope("ColumnGroup"),           "In Subtotal of ColumnGroup (3)",          "In Subtotal of entire Matrix (4)")) Replace "In Matrix Cell (1)", "In Subtotal of RowGroup (2)", "In Subtotal of ColumnGroup (3)" and/or"In Subtotal of entire Matrix (4)" with the expressions or fields that you want.   Reporting Services 2008 with Tablix With tablix in Reporting Services 2008, this scenario is significantly easier to accomplish.  First, you get explicit cell definitions for each of those aggregation areas which removes the need for complex expressions and the usage of the InScope function: TablixSubtotals In addition, you can define as many subtotals at every tablix grouping level as you like.  For example, besides Sum(Sales), you could calculate a percentage of total revenue, or even year-over-year growth as shown in the following design surface screenshot. TablixSideBySide The example above shows three different column subtotal calculations side-by-side under each OrderYear group instance: Year Total Year-over-Year growth percentage* a KPI image that shows the growth trend (up/down/flat)*  Subtotals can use different styles as well as layout height or width.  The example above also shows further aggregations such as the monthly trend shown as a nested sparkline chart*.  * Stay tuned - the underlying report, including RDL source, will be explained in an upcoming posting.
>> plus d'infos

Multi-Player Gaming in RS (aka BI Power Hour 2008) (jeu, 21 mai 2009)
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.  It is about demonstrating, in perhaps unusual ways, of how business intelligence and various tools of the BI stack can be useful. In past years, Reporting Services made a number of successful contributions to these events, such as Hangman, report manager as report, etch-a-sketch, mastermind, an executive dashboard (aka tic-tac-toe), and others.  Throughout last year, we showed several variations of a multi-player game that we shall call “Sea Battle”.  The goal of the game is to sink all of your opponent ships (for example, a Battleship), before the opponent has a chance to find and sink your ships.  The faster you click, the better your chances of winning :) Game status gauge The overall theme of the report was about interesting new data visualization features in Reporting Services 2008.  It uses charts with dynamic drill through actions, as well as data point tooltips. Grid drawn as scatter chartFurthermore, 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.  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. Gauges for ship status Successfully sinking a ship is rewarded with a nice animated explosion.  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.  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.  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.  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 :) Enough said.  I know you want to participate in the fun and play yourself!  Instructions to setup the demo on your own RS 2008 report server: Unzip the attachment Restore the database backup (SeaBattle.bak) on a SQL Server database server 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 Publish the project to a RS 2008 report server Use stored credentials on the shared data source. I strongly recommend using stored credentials.  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. In report manager, hide the “SeaBattle” report, so that users just see the “SeaBattle – Start new game” report.  Don’t run the SeaBattle report directly; always use the start new game report. I recommend playing the game using the http://MachineName/reportserver URL, not through report manager, if you want faster response time and better chances of winning :) 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. Hope you are going to enjoy this Power Hour demo! Q&A and disclaimers: Multi-player matching is really basic  The first user that starts the report establishes a new game, the second user that enters is automatically linked with the first user.  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. Reporting Services was not designed as a gaming platform This results in some limitations in the game design.  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. Could this be built using a local mode report viewer control? Yes, but it is probably an exercise for more advanced developers.  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.
>> plus d'infos

SQL Server 2008 R2, Tech Ed 2009 (jeu, 14 mai 2009)
I have been pretty busy lately – working on SQL Server 2008 R2, which is the official name for the next release, formerly known as SQL Server 'Kilimanjaro'.   Earlier today at the Tech Ed 2009 Conference, Thierry D’hers demonstrated one of the many projects I have been working on recently – it is our cool new Reporting Services Power Hour demo, unveiled at the 5th Annual Business Intelligence Power Hour at Tech Ed.  It was a lot of fun putting it together!  You can read a brief summary and first impressions of the demo on Teo’s blog.  Stop by at the Reporting Services booth at Tech Ed if you want to see more about it.  Sales Strategy 2009 Demo Updates:  A video of this new Reporting Services Power Hour demo is now available.  I also made up on my promise to provide details and a download for our highly popular Power Hour demo from last year.
>> plus d'infos

SQL Server 2008 SP1 and Report Builder Update (mer, 08 avr 2009)
SQLServer2008 Service Pack 1 for SQL Server 2008 is now available for download.  The service pack is primarily a roll-up of Cumulative Updates 1, 2, and 3 and minor fixes made in response to requests reported through the SQL Server community.  While there are no new features in this service pack, a notable addition from a Reporting Services point of view is the ability to configure Click Once deployment to either launch Report Builder 1.0 or the updated Report Builder 2.0, directly from Report Manager (native mode) or SharePoint.  If you run Reporting Services in SharePoint integrated mode, make sure to also install the updated RS add-in for SharePoint. ReportBuilder20 Furthermore, the April 2009 Feature Pack is now available and includes an updated version of Report Builder 2.0.  You can get it either as Report Builder 2.0 stand-alone download, or as click once deployment from a Report Server with SQL Server 2008 SP1 applied. Summary of download links: SQL Server 2008 Service Pack 1 Reporting Services Add-in for Microsoft SharePoint Technologies Report Builder 2.0 (April 2009) Other download resources: SQL Server 2008 Express Edition Service Pack 1  Full SQL Server 2008 Feature Pack (April 2009) SQL Server 2008 Upgrade Advisor Enjoy!
>> plus d'infos

Tablix – Stepped Layout (dim, 15 mar 2009)
Tablix enables the separation of data groupings and layout header areas.  A stepped layout can help with horizontal spacing, because nested groups can then share the same horizontal space, which was previously not possible in a matrix layout.  This provides very powerful layout capabilities, and is one among several new features introduced with Tablix. A webcast about Report Authoring in Reporting Services 2008 by my esteemed colleague Carolyn Chau shows how to design a table or matrix with a stepped group layout by simply selecting an option in the table and matrix wizard.  You can accomplish the same effect by manually converting from a regular blocked to a stepped layout.  For the example shown below: right click the Component textbox – insert row – inside group above copy the Component textbox description into the newly created header space right click the Component textbox and select delete columns (delete columns only, not the associated group) select the SubComponent textbox and set the left-padding to 20pt Tablix with blocked layout   ▼ Tablix with stepped layout
>> plus d'infos