So You Want To Be A Rockstar Report Developer?

Similar documents
MICROSOFT BUSINESS INTELLIGENCE (MSBI: SSIS, SSRS and SSAS)

70-466: Implementing Data Models and Reports with Microsoft SQL Server

Implementing Data Models and Reports with Microsoft SQL Server (466)

Deltek PM Compass 2.2. Custom Reports and Microsoft SQL Server Reporting Services Guide

Improve SSIS Delivery with a Patterns-Based Approach. Meagan Longoria July 19, 2017

Microsoft End to End Business Intelligence Boot Camp

From Reporting Services Rookie to Rockstar

MS-55045: Microsoft End to End Business Intelligence Boot Camp

Azure Data Factory VS. SSIS. Reza Rad, Consultant, RADACAD

Recently Updated Dumps from PassLeader with VCE and PDF (Question 1 - Question 15)

Cross-Platform Parallels: Understanding SharePoint (Online) Through Notes-colored glasses

Arena: Edit Existing Reports

MSBI( SSAS, SSIS, SSRS) Course Content:35-40hours

POWER BI COURSE CONTENT

1. SQL Server Integration Services. What Is Microsoft BI? Core concept BI Introduction to SQL Server Integration Services

10778A: Implementing Data Models and Reports with Microsoft SQL Server 2012

Implementing Data Models and Reports with Microsoft SQL Server Exam Summary Syllabus Questions

Accurate study guides, High passing rate! Testhorse provides update free of charge in one year!

Introduction to SSIS. Or you want to take some data, change it, and put it somewhere else? Then boy do I have THE tool for you!

MICROSOFT BUSINESS INTELLIGENCE

Deccansoft Software Services. SSIS Syllabus

SQL Server Reporting Services

CREATE AN SSRS REPORT WITH IQA

MSBI Online Training (SSIS & SSRS & SSAS)

After completing this course, participants will be able to:

resources, 56 sample questions, 3 Business Intelligence Development Studio. See BIDS

Ad Hoc Reporting with Report Builder

SharePoint Document Management

SQLSaturday #620 Dublin 17 June, 2017 Reports on the Run: Mobile Reporting with SQL Server Peter Myers Bitwise Solutions

MICROSOFT VISUAL STUDIO 2010 Overview

LEVERAGING VISUAL STUDIO TEAM SYSTEM 2008 Course LTS08: Five days; Instructor-Led Course Syllabus

Performance Tuning for the BI Professional. Jonathan Stewart


Continuous Delivery and Team Foundation Server Ognjen Bajić Ana Roje Ivančić Ekobit

Data Architectures in Azure for Analytics & Big Data

CHAKRA IT SOLUTIONS TO LEARN ABOUT OUR UNIQUE TRAINING PROCESS:

Transitioning From SSIS to Azure Data Factory. Meagan Longoria, Solution Architect, BlueGranite

SAS BI Dashboard 3.1. User s Guide Second Edition

Connectivity Pack for Microsoft Guide

Introduction to SQL Server 2005/2008 and Transact SQL

Data Partitioning. For DB Architects and Mere Mortals. Dmitri Korotkevitch

TFS for SQL/BI Developers. Dave Fackler Business Intelligence

SharePoint 2010 Tutorial

Microsoft Windows SharePoint Services

2012 Microsoft Corporation. All rights reserved. Microsoft, Active Directory, Excel, Lync, Outlook, SharePoint, Silverlight, SQL Server, Windows,

Microsoft Office Programs and SharePoint Products and Technologies Integration Fair, Good, Better, Best

ETL Best Practices and Techniques. Marc Beacom, Managing Partner, Datalere

(Introduction Title slide) (Forward engineering) [Start demo]

SSAS Multidimensional vs. SSAS Tabular Which one do I choose?

SharePoint 2013 Site Owner

Datazen. Bent On-premise mobile BI. November 28, #sqlsatparma #sqlsat462

SAP BW 3.5 Enhanced Reporting Capabilities SAP AG

TechNet Home > Products & Technologies > Desktop Products & Technologies > Microsoft Office > SharePoint Portal Server 2003 > Deploy

Power BI 1 - Create a dashboard on powerbi.com... 1 Power BI 2 - Model Data with the Power BI Desktop... 1

SQL SERVER Interview Questions & Answers - SET 5 (10 Questions)

Configuring and Customizing the ArcGIS Viewer for Silverlight. Katy Dalton

Deployment Best Practices Oct Product Version 7.0 and above

Prosphero Intranet Sample Websphere Portal / Lotus Web Content Management 6.1.5

App Studio for the Developer Studio User

Active Workspace 3.4 Configuration. David McLaughlin / Oct 2017

Writing Reports with Report Designer and SSRS 2014 Level 1

2) Mention what are the important architecture components of SSRS?

Property Default Schema Is Not Available For Database Ssis

Session 41660: Using Hyperion Data Integration Management with Hyperion Planning and Hyperion Essbase

VERINT EFM 8.0 Release Overview

Quality Gates User guide

HEARTLAND DEVELOPER CONFERENCE 2017 APPLICATION DATA INTEGRATION WITH SQL SERVER INTEGRATION SERVICES

Business Intelligence Integrated Solutions

Building your own BMC Remedy AR System v7 Applications. Maruthi Dogiparthi

How Information Architecture can improve in SharePoint 2013

SharePoint Online for Power Users

Deltek Costpoint CRM 6.2. Custom Reports and Microsoft SQL Server Reporting Services

Best ETL Design Practices. Helpful coding insights in SAS DI studio. Techniques and implementation using the Key transformations in SAS DI studio.

ArcGIS Online: Best Practices for High-Demand Web Applications. Kelly Gerrow-Wilcox Bonnie Stayer Beth Romero

A Crash-Course in Biml. Tim Mitchell, Principal Data Architect, Tyleris Data Solutions Moderated By: Cathrine Wilhelmsen

Migrating from Business Objects Crystal Reports to SQL Server 2005 Reporting Services

VMware AirWatch Database Migration Guide A sample procedure for migrating your AirWatch database

Manufacturing Process Intelligence DELMIA Apriso 2017 Installation Guide

EXAMGOOD QUESTION & ANSWER. Accurate study guides High passing rate! Exam Good provides update free of charge in one year!

Custom Report Writing Session 70, Jamie Caples, Synergy Resources

Site Owners: Cascade Basics. May 2017

presented by Traci Grassi BrightWork Solution Specialist hosted by Bróna O Donnell Customer Success

Deccansoft Software Services Microsoft Silver Learning Partner. SSAS Syllabus

AVANTUS TRAINING PTE PTE LTD LTD

The following topics describe how to work with reports in the Firepower System:

HYPERION SYSTEM 9 BI+ GETTING STARTED GUIDE APPLICATION BUILDER J2EE RELEASE 9.2

CA ERwin Data Modeler r9 Rick Alaras N.A. Channel Account Manager

IBM Workplace Services Express - Technical Overview and Directions. Stuart Duguid Asia Pacific Portal & Workplace Technical Lead

To Receive CPE Credit

ER/Studio Enterprise Portal User Guide

Reporting On Backups And Db Schema Project Server 2010

ProServeIT Corporation Century Ave. Mississauga, ON L5N 6A4 T: TF: F: W: ProServeIT.

SharePoint Online Power User

MSBI (SSIS, SSRS, SSAS) Course Content

COGNOS DYNAMIC CUBES: SET TO RETIRE TRANSFORMER? Update: Pros & Cons

SSAS Tabular in the Real World Lessons Learned. by Gerhard Brueckl

How to be a Super Team Owner

Andrea Martorana Tusa. Customizing SQL Server 2016 Mobile Report Publisher

Enabling Performance & Stress Test throughout the Application Lifecycle

Aggregating Knowledge in a Data Warehouse and Multidimensional Analysis

Transcription:

So You Want To Be A Rockstar Report Developer? October 15-18, 2013 Charlotte, NC Melissa Coates, BI Architect BlueGranite

Speaker Bio Melissa Coates Business Intelligence & Data Warehousing Developer BI Architect with BlueGranite www.blue-granite.com Co-Organizer of SQL Saturday Charlotte BI Edition http://www.sqlsaturday.com/237/event home.aspx Co-Leader of Charlotte BI Group http://charbigroup.com Blog: www.sqlchick.com Twitter: @sqlchick 2

Agenda We will be walking through an end-to-end demo while discussing the following topics & choices: Requirements & Templates Development Practices We won t review each of the following slides explicitly think of them as supporting documentation for topics discussed during the end-to-end demo. Testing & Validation Delivery Mode & Deployment 3

Requirements & Templates What do we need before beginning report development? 4 October 15-18, 2013 Charlotte, NC

Requirements Document Download a Report Requirements template from Goals: http://www.sqlchick.com/presentations/#reportdev Capture individual report needs before development starts 5

Report Style Guide Goals: Capture standard report settings Provide a consistent user experience Make report development more efficient Download a Report Style Guide from http://www.sqlchick.com/presentations/#reportdev

Solutions, Projects, & Source Control Projects in SSDT or BIDS should be organized the same way reports are delivered. Goals: One project per destination folder or library Don t get in habit of toggling deployment properties (this introduces risk & confusion for new developers) Multiple Projects may reside under one Solution (especially if related by subject area or functional area) Preferably all files are under source control (such as TFS)

Custom Report Template Custom report template can be used as a starter report with consistent header, footer, titles, logo, colors, fonts, etc. Template should align to the Report Style Guide. Add as many RDL files as you d like to the \ReportProject location (on each machine). Different RDL names can use different formats (ex: if individual divisions or schools use different color palettes & formatting). C:\Program Files (x86)\microsoft Visual Studio 10.0\Common7\IDE\PrivateAssemblies\ProjectItems\ ReportProject

BIDS Helper Delete Dataset Cache Files Deletes the *.data files stored locally to force refresh of data. Unused Report Datasets Locates unused datasets to delete. Don t forget all datasets execute whether they are used or not! SmartDiff Compares differences in XML files. Requires TFS. (There s other BIDS Helper features as well for SSIS and SSAS.) Download BIDS Helper from http://bidshelper.codeplex.com

Development Practices Making conscious report development choices 10 October 15-18, 2013 Charlotte, NC

Datasets One dataset per data region? Or one dataset shared among data regions? Data Source Connection Dataset SELECT FROM WHERE Data Region Separate queries per data region useful: With different data sources With different granularity One query shared across regions useful: When using data region filters When using different data regions to display same type of data (ex: tablix & chart) Which renders faster? Easier to maintain? Verify all datasets are used. If present, it executes. Data Region

Datasets Query embedded in SSRS dataset? Or via stored procedure? Or a view? Are there standards for data access in your organization? Stored Procedure Reuse query plan Reuse across reports DBMS security DBA visibility Abstraction layer Deployment & testing Views No reuse of query plan Limitations (ex: variables) Embedded in Dataset Easy; simpler deployment Limited formatting No comments Considerations Pros/cons of each Separation of duties Source system (SSAS vs SQLSvr) Use of shared datasets Same approach per project

Sorting & Grouping Sort data in dataset? Or within report? Group data in dataset? Or within report? Does an Order By within the query run faster or slower? Report Server is efficient at sort operations. Usually bringing back less data (aggregated data) within the dataset query is most efficient. Need details to display on drill down? Report Server is efficient at grouping operations.

Filtering Query filtering (the where statement)? Or report filtering (dataset, data region, group)? Typically, query filtering is most efficient Report filtering is useful when: One dataset is shared with multiple data regions You are unable to modify the original stored procedure or shared dataset Data source doesn t support query parameters Report is being rendered from a snapshot

Derived Fields & Calculations Derive field within dataset query? Or textbox expression? Derive data in the underlying data source or in ETL? Centralization of logic Maintainability (who will maintain it going forward?) Reuse (is the calculation report-specific or general use?) Performance implications (ex: SSAS formula engine cache or SQL Server cache) Parameterization (is a report parameter part of calc?)

Expressions & Variables Derive in Expression? Or within Group Variable? Or within Report Variable? Scope of the logic & when it s evaluated Expression: once per page (no caching) Group Variable: once per unique group (caching) Report Variable: once per report (caching) Reusability Expression: applicable to one textbox Group Variable: applicable to 1 group & children Report Variable: applicable throughout report

Custom Code Derive in Expressions? Or within Report Code? Or External Assembly? Who will maintain report going forward? (VB.NET skills) External assembly must be deployed Scope of custom code: One textbox (expression) One report (custom code) Many reports (external assembly)

Parameters Query-driven list? Or static list of values? Default value? Or no default? Will list of possible values ever change? Is list of values very long? List of possible values should only show values with data (ex: NonEmpty) Should user respond to parameter before the report executes? Is there a default value common for most users? Does report execute extremely quickly? Consider a DateDefaults shared dataset

Centralization Facilitating Centralization & Reuse Shared Data Sources Caution: data source embedded in report is default within the dialog box Shared Datasets Reusable queries great for commonly used data queries & parameter value queries such as Dates & Geography Report Parts Charts & tables reusable within Report Builder Images Store in DB, or SSRS Project, or as a Report Part instead of embedded in report Store logic & calculations at lowest possible level Source System vs. BI ETL vs. Cube vs. Report

Testing & Validation Ideas for being efficient, consistent, and thorough 20 October 15-18, 2013 Charlotte, NC

Unit Testing 21 Goal: Download a Report Unit Testing Checklist from http://www.sqlchick.com/presentations/#reportdev Remember to test all the critical components, as well as the little things that can increase user satisfaction

Delivery Mode & Deployment Gaining efficiency while minimizing the chance for errors 22 October 15-18, 2013 Charlotte, NC

Modes for Storing & Managing Reports SharePoint Mode (Integrated Mode) SharePoint serves as a single access point for BI portal Additional metadata fields may be created Unified security model Checkouts Workflow & approvals Versioning & history Additional ULS logging Unsupported: Linked reports Native Mode (Report Manager) Report Manager is much like a file system folder structure Simpler than SharePoint mode, but offers much less flexibility than document libraries Not customizable Separate security model No checkouts, workflow, versioning Unsupported: Data Alerts & Power View 23

Delivery Mode: SharePoint (1 of 2) Easy to find Documentation & Help Make access to Reports and Data Connections readily available Keep users informed with Announcements

Delivery Mode: SharePoint (2 of 2) Consider requiring approvals (workflow) & check-outs Create custom metadata fields to help users; can be used with Search Structure libraries by security needs, subject, user base, and/or report type Consider using versioning (esp. user reports w/out source control)

Delivery Mode: Report Manager Structure folders by security needs, subject, user base, and/or report type Add helpful info to the Description (such as Purpose or Contact Name) Native Mode: Separate security model Not customizable No versioning No workflow

SSRS Deployment Options Deployment Approach Deploy from SSDT or BIDS Upload to SharePoint or Report Manager MSBuild RS.exe Save As from Report Builder Useful for Development & Test Yes Most straightforward method to publish Depends This works fine for deploying a small number of reports; quickly becomes tedious for a large number of reports Depends If team is doing frequent builds Not typically used for Dev & Test N/A - Typically for use by self-service BI users Useful for QA & Production Depends Some organizations allow this, but in situations where developers do not have Prod rights or need to hand off deployments to operations, this usually isn t ideal Depends This works fine for deploying a small number of reports; quickly becomes tedious for a large number of reports Yes Very useful to hand off to an admin or operations folks Yes Very useful to hand off to an admin or operations folks N/A - Typically for use by selfservice BI users

Deployments from SSDT or BIDS (1 of 2) If you need to deploy to various locations out of SSDT or BIDS, use configurations. Default name is same as project might need to alter slightly. Remember to include folder paths that correspond to how reports are organized (usually by subject).

Deployments from SSDT or BIDS (2 of 2) TargetServerVersion controls feature compatibility ErrorLevel controls error/warning flexibility: 0 = Severe errors (No preview) 1 = Severe errors 2 = Less severe 3 = Minor errors 4 = Warnings If you have an error <= the ErrorLevel setting, it will be considered a warning.

Deployments via Upload Process Simple to do in SharePoint or Report Manager just need to start in the correct library or folder Tedious if more than a handful of reports to deploy May need to manually bind report to data sources or shared datasets

Deployment Utilities RS.Exe RS.exe is a deployment utility which uses a VB.NET script file as input (the.rss file) Can deploy a set of reports & data sources (which is an advantage over SSDT or BIDS which can deploy the entire project or one report) CodePlex project no longer available MSBuild MSBuild is what powers building of projects in Visual Studio; based on the.net framework Useful to automate builds, such as whenever someone checks in new code, or to use the command line to automate tasks C# CodePlex project: http://ssrsmsbuildtasks.codeplex.com/ 31

Wrap Up Questions, comments? Requirements & Templates Slides & templates available at sqlchick.com (Presentations page) Development Practices Testing & Validation Delivery Mode & Deployment 32

Session Evaluations Your feedback is important and valuable. ways to access Submit by 5pm Friday Oct. 18 to WIN prizes Go to passsummit/evals Download the GuideBook App and search: PASS Summit 2013 Follow the QR code link displayed on session signage throughout the conference venue and in the program guide 33

Thank you for attending this session and the 2013 PASS Summit in Charlotte, NC Slides & templates available at sqlchick.com (Presentations page) 34 October 15-18, 2013 Charlotte, NC