1 extending sql server reporting services for a custom reporting solution chattanooga business...

31
1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

Upload: osborne-butler

Post on 16-Dec-2015

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

1

Extending SQL Server Reporting Services for a Custom Reporting Solution

Chattanooga Business Intelligence User Group

David Skelton | November 15, 2012

Page 2: 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

Page 3: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

3

Who is Unum?

Page 4: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

4

Who is Unum?

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.

Page 5: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

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

US1986

1993

1999

1997

1999

2007

Page 6: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

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?

Page 7: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

7

Who is Unum?

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 ReputableBig Companies

Fun Facts

Page 8: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

8

Unum’s BI Framework

A work in progress…

Page 9: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

9

Data Mining

Predefined Reporting

Custom WebApplication

Custom WindowsApplication

DashboardApplication

PortalApplications

ReportConsumer

ReportProducer

PowerUser

Multidimensional Analytics

Data Warehouse

Ad hoc Reporting

Unum’s BI Framework

Dashboarding/Data Discovery

Page 10: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

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 email 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 email and file share)

Open and Extensible

Simple Architecture

Manageable Cost Enterprise Reporting

Embedded Reporting

Page 11: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

11

Slice

Page 12: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

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?

Page 13: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

13

What are the technologies used in Slice?

Slice

Agency Technology

Platform Microsoft .NET 3.5

Language C#

Client Architecture Smart client

Server Architecture XML Web Services (WCF)

UI Controls Infragistics

Report Rendering SQL Server Reporting Services (SSRS) 2008

Ad hoc Data Analysis Infragistics UltraGrid (wrapped in custom interface)

Application Security Active Directory + Windows Authentication

Report Security Active Directory + SSRS folder security

Data Security Active Directory + Custom (Table-based)

Teradata Connectivity Teradata .NET Data Provider

Exception Handling Enterprise Components 3.5

Data Persistence (caching, user preferences)

SQL Server 2008

Page 14: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

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

Page 15: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

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

Page 16: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

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/ms152816.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

Page 17: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

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 SQLselect Claim_Payment where Date_Of_Disability =

@MY_DATE;

Implements multi-value parametersselect Claim_Payment where State in

(@MY_LIST_OF_STATES;

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

Page 18: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

18

Slice

Intuitive portal interface modeled after Office 2007

“Value Added” Features of Slice

SSRS Report Manager Portal

Page 19: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

19

Slice

Intuitive portal interface modeled after Office 2007

“Value Added” Features of Slice

Slice Portal

Page 20: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

20

Slice

Can execute and manage multiple open reports simultaneously

“Value Added” Features of Slice

Page 21: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

21

Slice

Can ‘tile’ reports for side-by-side comparison

“Value Added” Features of Slice

Page 22: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

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

Page 23: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

23

Slice

Custom, flexible, business-designed Filters for parameter input

“Value Added” Features of Slice

Slice Filters

End user controls placement and presentation

or…

or…

Page 24: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

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

Page 25: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

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”

Page 26: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

26

Slice

Custom, flexible, business-designed Filters for parameter input

“Value Added” Features of Slice

Instructional “Help” also available for each Filter

Page 27: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

27

Slice

Moderately sophisticated ad hoc data analysis capability

“Value Added” Features of Slice

Page 28: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

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…

Page 29: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

29

Quick Slice Demonstration

Page 30: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

30

Questions?

Page 31: 1 Extending SQL Server Reporting Services for a Custom Reporting Solution Chattanooga Business Intelligence User Group David Skelton | November 15, 2012

31

Thank You! for your sticking it out to the end