top 10 sql server reporting services tips

19
Top 10 SQL Server Reporting Services Tips By Ike Ellis The Monastery @ike_ellis www.the-monastery.com Blog.the-monastery.com http://www.linkedin.com/in/ikeellis

Upload: ike-ellis

Post on 18-Dec-2014

7.353 views

Category:

Technology


0 download

DESCRIPTION

SSRS Reporting Tips and Tricks

TRANSCRIPT

Page 1: Top 10 sql server reporting services tips

Top 10 SQL Server Reporting Services Tips

By Ike EllisThe Monastery

@ike_elliswww.the-monastery.comBlog.the-monastery.com

http://www.linkedin.com/in/ikeellis

Page 2: Top 10 sql server reporting services tips

Tip #1: Store Colors in the Database

• Colors = Business Logic• Put it in the database• Use Expressions to read the colors• Include action colors and levels• Demo

Page 3: Top 10 sql server reporting services tips

Tip #2: Get Buy-in to Export to Single Format

• Build to export to a single format– Excel– Word– Web– PDF

• Then get buy-in and make it a standard in the organization

• Demo: Build to export to excel

Page 4: Top 10 sql server reporting services tips

Tip #3: Alias, Obscure, and De-couple

• Use DNS CName Aliases for ConnectionStrings– If you can’t use that, then use the HOSTS file on

the report server and on your dev machine– Or alias the client on the server and your dev

machine• Use Views instead of tables and don’t hit the

views directly in datasets

Page 5: Top 10 sql server reporting services tips
Page 6: Top 10 sql server reporting services tips

Tip #4: Log, Log, Log (and beware of subscriptions)

select c.Name, e.InstanceName, e.UserName, e.Parameters, e.TimeStart, e.TimeEnd, e.TimeDataRetrieval, e.TimeProcessing, e.TimeRenderingfrom executionlog e join catalog c on e.reportid = c.ItemID

Send a Link, or a file on a shared folder that you can audit. Find someway to audit who opened the link or the file in the folder. Try to avoid sending the PDF without a way to audit it.

Page 7: Top 10 sql server reporting services tips

Tip #5: Create a Template

• Create an ssrs template • Add execution date • Add execution parameters on report surface• Add who executed it • Create small fonts• Add business owner to the bottom• Add Default Database Connections/Variables

Helps with troubleshooting, logging, report modification, and number matching

Page 8: Top 10 sql server reporting services tips

Tip #6: Used Linked Reports to Manage Security

• Allows you to use Role assignments and • Not have duplicate reports in folders• Not have users in folders they shouldn’t be in• Not manage security on individual reports• Demo

Page 9: Top 10 sql server reporting services tips

Tip #7: Keep Report Quantity Small

• Too many reports means that there are more things to keep consistent

• Reports that aren’t used, tend to get forgotten, and then used with bad data

Page 10: Top 10 sql server reporting services tips

Tip #8: Spend 10 Minutes on Design

• Spend 10 minutes on design (as opposed to the zero we typically spend)

• Choose colors wisely • 99/100 - developers use the default color

palette • HTML color picker websites – http://www.lavishbootstrap.com

• MorgueFile– http://www.morguefile.com/

Page 11: Top 10 sql server reporting services tips

Tip #9: Use Multi-Value Parameter in T-SQL

• Demo

Page 12: Top 10 sql server reporting services tips

Tip #10: The Monastery Report Process

• Maintain Balance– Form, Fit & Function

• Know Your Audience– Give your user the right pictures, numbers & words for their needs– Use appropriate visual metaphors

• Communicate Effectively which means Simplify• Use the Right Report Type

– Use standard report styles – Keep them interesting

• Make Data Actionable– Enable users to act on the information they receive

Page 13: Top 10 sql server reporting services tips

Tip #11: T-SQL Tips

• Use CONCAT instead of "+" • Use Try_cast instead of cast • Use Try_convert instead of convert• Use CTEs to link non-linkable data (like 10 ten

employees with top 10 customers)• Demo

Page 14: Top 10 sql server reporting services tips

Tip #12: Dashboard Design Tips

• "The most important information needs to be consumable in 5 seconds" - Paul

• Know your audience - Your users think differently than you do. Some are visual, some textual, some more mathematical

• Satisfy everyone in a good report dashboard

Page 15: Top 10 sql server reporting services tips

Good Dashboard Example

Page 16: Top 10 sql server reporting services tips

Tip #13: Report Design Tips• Flat, non-bold colors• Avoid 3-D effects • Avoid default, out-of-the box styles • Match corporate color palates

• Remember…this is what executives care about. This is how we make money• You don't need to label days of the week or months • You don't need the full year • You don't need a wide variety of colors…just shades of one color • You don't need borders or anything else that distracts the eye • Use darker colors when there's a warning • no fluff• thin fonts (Arial, segoe ui)• dim column headers• dim labels• one accent color• visualize rules• simple icons• Demo

Page 17: Top 10 sql server reporting services tips

Tip #14: Choose the Right Chart• Pie charts don't really give you an action

– They let you understand the contribution to a whole, but afterwards, there's really nothing left to understand

– START THEM AT THE TOP, NOT THE RIGHT, SO IT LOOKS LIKE A CLOCK • time = spark line = shows changes over time without a comparison to

other categories• categories = bars• sequence = lines• Spark lines instead of series

– collapse a bunch of yearly data into a sparkline…and then let them see it when you expand

• correlation = scatter chart• Look at bullet graphs

Page 18: Top 10 sql server reporting services tips

Tip #15: Format in the database

• Store formats in the database and use common formats

• Or add them as hidden parameters in the report template

Page 19: Top 10 sql server reporting services tips

Ike Ellis

• The Monastery• http://blog.the-monastery.com• http://www.the-monastery.com• YouTube• SQL Pass Book Readers• San Diego Tech Immersion Group• @ike_ellis• 619.922.9801• Email address is just my first name @the-

monastery.com.