Presentation on theme: "1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012."— Presentation transcript:
1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012
2 Who is Unum? Unum’s BI Framework Why SQL Server Reporting Services? Why develop Slice? Value-Added Features of Slice Quick Slice Demonstration Agenda
3 Who is Unum?
4 Unum is a leading provider of financial protection benefits in the United States and the United Kingdom. We market our products primarily to employers but also directly to individuals. Unum’s employee benefits portfolio includes: Disability Life Accident Critical Illness We protect the livelihoods of millions of working people and their families in the event of illness or injury.
5 Who is Unum? Approximately 10,000 employees with significant operations in: Chattanooga, TN Portland, ME Columbia, SC Dorking, England Worcester, MA Glendale, CA Field Offices in 38 US cities Other Offices in 5 UK cities UK Ranked #260 in Fortune 500 US
6 Unum US: Group Short Term and Long Term Disability inforce premium and cases: Gen Re 2011 U.S. Group Disability Market Survey; Group Life: Inforce cases, Gen Re 2011 U.S. Group Life Market Survey, Unum US and Colonial Life: Voluntary Benefits: Eastbridge U.S. Worksite Sales Report, Colonial Life Sales and Unum Sales and Inforce Premium Results for 2011, April 2012 Unum UK: Swiss Re Group Watch 2011 Market ShareWho is Unum?
7 Highlights: Unum provides benefits for 37% of Fortune 500 companies Unum protects 25 million people and serves 171,000 employers worldwide Unum paid $5.4 billion in benefits in 2011 Unum handled more than 450,000 claims in 2011 – 365,000 for disability 150 Most Reputable Big Companies Fun Facts
8 Unum’s BI Framework A work in progress…
9 Data Mining Predefined Reporting Custom Web Application Custom Windows Application Dashboard Application Portal Applications Report Consumer Report Producer Power User Multidimensional Analytics Data Warehouse Ad hoc Reporting Unum’s BI Framework Dashboarding/Data Discovery
10 Server licensing only (SQL Server) $0 Report Consumer cost $0 Report Author cost (besides Visual Studio) TCO = Thousands, not Millions Why SQL Server Reporting Services? Server-based reports (encapsulated in single XML file) Centralized storage, management, security Data sources include SQL Server, DB2, Teradata, ODBC, OLE DB, XML files, and XML output from a Web Service Role-based security, with AD integration “Push” (scheduled) and “pull” (on demand) Scheduled delivery via or file share Output formats include HTML, PDF, Excel Static PDF/Excel/Word/PowerPoint files may be secured and published as “reports” Subscriptions, free-form reports, much more Server-based reports are accessible via URL, SharePoint Web parts, Web/Windows apps URL access supports parameterized query strings to return pre-filtered report content “Disconnected” and “local data” reporting via freely distributable ReportViewer control Web Service exposes all functionality Windows Service for scheduling and delivery Report Designer to author reports in Studio Reports viewable in provided Report Manager portal, in SharePoint, embedded in applications, in browser Build applications exploiting full functionality exposed via Web Service interface Extend core functionality with custom extensions for Security (authentication models), Rendering (output formats), Data Retrieval (data source types), Scheduling and Delivery (in addition to and file share) Open and Extensible Simple Architecture Manageable Cost Enterprise Reporting Embedded Reporting
12 Brings optimized SSRS support for SQL Server databases to Teradata Implements the latest Microsoft technologies customized by and for Unum Offers the familiar Microsoft Office ‘Ribbon’ interface Offers custom business-designed Filters that support saving of favorite values for convenience and productivity (‘specify once and done’) Supports multiple options for content delivery: predefined static reports, interactive ‘Dashboard-style’ reports, and raw data for in-app ad hoc analysis Provides flexible export options: Word, PDF, Excel, XML, TIFF, and other formats for sharing and external manipulation Implements a robust custom data-level security capability Custom reporting application providing real-time, on-demand access to data stored in the Data Warehouse on the Teradata platform: Slice What is Slice?
13 What are the technologies used in Slice? Slice Agency Technology PlatformMicrosoft.NET 3.5 LanguageC# Client ArchitectureSmart client Server ArchitectureXML Web Services (WCF) UI ControlsInfragistics Report RenderingSQL Server Reporting Services (SSRS) 2008 Ad hoc Data AnalysisInfragistics UltraGrid (wrapped in custom interface) Application SecurityActive Directory + Windows Authentication Report SecurityActive Directory + SSRS folder security Data SecurityActive Directory + Custom (Table-based) Teradata ConnectivityTeradata.NET Data Provider Exception HandlingEnterprise Components 3.5 Data Persistence (caching, user preferences)SQL Server 2008
14 Why Slice? Why not just SQL Server Reporting Services? Slice Out-of-the-box SSRS provides data processing capabilities optimized and maximized for SQL Server and Oracle data sources SSRS connectivity options for Teradata limited to the Teradata ODBC and OLE DB drivers, both of which support only a limited subset of SSRS’ data processing capabilities: No support for named parameters No support for multi-value parameters Doesn’t support automation of routine developer tasks in the Visual Studio IDE, such as automatic creation of report parameters and automatic refresh of Dataset fields (based on the underlying report SQL) Native SSRS has substantial shortcomings and gaps with Teradata * * With SSRS 2008, Microsoft released support for Teradata’s.NET Data Provider, which eliminates some of these limitations
15 Why Slice? Why not just SQL Server Reporting Services? Slice Native parameter input controls are basic and limited in functionality Just a handful of rudimentary controls (list, textbox, date picker) Input cannot be masked, formatted, or custom validated Data-driven dropdown lists are very slow No data-level security capability Out-of-the-box portal is rudimentary Only a single folder hierarchy supported Flexibility for applying report security constrained Functionality very limited No access to raw report data to support ad hoc data analysis Each SSRS report redundantly retrieves its data from the source, even if its dataset is identical to ten previously rendered reports * Native SSRS has some limitations for Enterprise-class reporting * With SSRS 2008, Microsoft eliminated this limitation with its new “Shared Dataset” capability
16 “Value Added” Features of Slice Unum developed an SSRS Custom Data Processing Extension (CDE) to extend SSRS’ superior support for SQL Server Data Sources to Teradata Source: Diagram from Microsoft MSDN reference documentation (http://msdn.microsoft.com/en-us/library/ms aspx) Serves as a bridge between a Data Source and a Data Set Implements a common interface Allows an installation to override, replace, or extend SSRS’ native interaction with a Data Source Installed on the SSRS server and functions as an integral component of the overall SSRS architecture Slice
17 Slice Custom Data Processing Extension (CDE) optimized for Teradata Implements the.NET Data Provider for Teradata for its speed and optimization for Teradata (over ODBC/OLEDB drivers) Implements named parameters in Filter/Report SQL select Claim_Payment where Date_Of_Disability ; Implements multi-value parameters select Claim_Payment where State in Automates manual developer steps in the Visual Studio IDE Filters data during retrieval from the source to apply data security Detects current operating environment (Dev, Test, QA, Production) and automatically adjusts data source references to implement ‘environment independence’ (in other words, ‘no touch’ migration of reports up through each operating environment) Supports multi-step SQL and Teradata transactions “Value Added” Features of Slice
18 Slice Intuitive portal interface modeled after Office 2007 “Value Added” Features of Slice SSRS Report Manager Portal
19 Slice Intuitive portal interface modeled after Office 2007 “Value Added” Features of Slice Slice Portal
20 Slice Can execute and manage multiple open reports simultaneously “Value Added” Features of Slice
21 Slice Can ‘tile’ reports for side-by-side comparison “Value Added” Features of Slice
22 Slice Custom, flexible, business-designed Filters for parameter input “Value Added” Features of Slice SSRS Parameter Bar Two streamed columns with no OOTB control over presentation Not intuitive what values are expected or acceptable No visually graphical elements, besides the ‘Calendar’ control Limited input editing and validation Poor performance of ‘cascaded’ parameters
23 Slice Custom, flexible, business-designed Filters for parameter input “Value Added” Features of Slice Slice Filters End user controls placement and presentation or…
24 Slice Custom, flexible, business-designed Filters for parameter input “Value Added” Features of Slice Lists Unlimited design flexibility Intuitive, graphically rich controls Multiple controls Options Specialized
25 Slice Custom, flexible, business-designed Filters for parameter input “Value Added” Features of Slice User may save values for any Filter, for the Current report or All reports Improved productivity “Once and Done”
26 Slice Custom, flexible, business-designed Filters for parameter input “Value Added” Features of Slice Instructional “Help” also available for each Filter
27 Slice Moderately sophisticated ad hoc data analysis capability “Value Added” Features of Slice
28 Slice From the Technical perspective… Optimized performance for Unum’s Teradata Data Warehouse platform Unlimited flexibility in design and functionality of input ‘Filters’ (C# DLLs) Filters are dynamically configurable via XML for rapid development SQL executed once to retrieve and cache data for many renderings via multiple report layouts – and to expose data for ad hoc analysis Summary of “Value Added” Features of Slice Modern, flexible, intuitive, and customizable interface Ability to ‘remember’ Filter values, per report or globally (a substantial timesaver – save repetitive values for 1-click execution of reports) Moderately sophisticated ad hoc data analysis capability One-click impersonation of alternate data identities for QA and testing Reports may be published and organized in multiple hierarchies From the User’s perspective…
29 Quick Slice Demonstration
31 Thank You! for your sticking it out to the end