Dynamics insights for SMB Partners · • Cross-selling potential of customer • ... • Think and...

Preview:

Citation preview

Subtitle

Madrid 2017

Dynamics insights for SMB Partners

Subtitle

Do's and Don’ts in Power BI Projects: lessons learned from Power BI

implementations

Author

Björn Lüers, Robert Ipach, Julian Wissel

www.directionsemea.com

AgendaOur key-messages today

1

2

3

4

Definition of reporting requirements

Choosing the right visual and visualizing best practices

Knowing DAX and data modeling to master Power BI

Deployment and Development in Power BI

5 Knowing when to use which NAV-tables in Power BI

www.directionsemea.com

• Non-trivial task to identify goals and requirements

• Strive for big picture

• Gather reporting requirements – brainstorming!

• Breakdown of business goals

• Give inspiration

• Possible KPI-Hierarchy:

• We want every person in our country to use at least one of our products

• Become market leader

• New product A should reach x EUR sales in 2018

• Market share of product category y should become more than 25 %

Defining reporting requirements - approach

www.directionsemea.com

• Find relevant business questions/decisions:

• Should we grant a high discount that is requested by a customer?

• How much marketing effort should we invest into a certain segment?

• Should we offer new or additional products toa customer?

• Find facts that could drive these decisions – e.g. about granting a high discount

• Profit margin of customer – change over time

• Customer‘s lifetime value

• Cross-selling potential of customer

• …

Defining reporting requirements – decisions & facts

www.directionsemea.com

• Group facts, e.g. Profit-margin related

• Current profit margin

• Historic profit margin

• Profit margin of similar customers

• Average sales discount

• Identify measures and dimensions that are necessary for each group

• Facts

• Sales figures for current and last x years

• Sales

• Cost of sales

• Profit margin (if directly available)

• Granted sales discounts

• Dimensions

• Customer dimension

• Product dimension

• Salesperson dimension

Defining reporting requirements – cluster and focus

www.directionsemea.com

• What we have: requirements, facts, measures and dimensions

• What we want to reach: implementation concept of report incl. measures and visuals

• Focus on one group of requirements

• Define report design

• Define data model and connections

• Define data source and transformation

• Think and plan from top to down, develop into theopposite direction!

From requirements to implementation concept

www.directionsemea.com

AgendaOur key-messages today

1

2

3

4

Definition of reporting requirements

Choosing the right visual and visualizing best practices

Knowing DAX and data modeling to master Power BI

Deployment and Development in Power BI

5 Knowing when to use which NAV-tables in Power BI

www.directionsemea.com

• Visualizing data seems intuitive, BUT isn‘t

• Do not start thinking with empty PBI Desktop file, instead start from KPI-hierarchy

• Use visuals reference to choose the right visual

Tips & trick for creating good looking and insightful reports

www.directionsemea.com

Tips & trick for creating good looking and insightful reports –visuals guide from SQLBI.com

www.directionsemea.com

Tips & trick for creating good looking and insightful reports –best practices

www.directionsemea.com

Bad example

www.directionsemea.com

AgendaOur key-messages today

1

2

3

4

Definition of reporting requirements

Choosing the right visual and visualizing best practices

Knowing DAX and data modeling to master Power BI

Deployment and Development in Power BI

5 Knowing when to use which NAV-tables in Power BI

www.directionsemea.com

Data Modeling

• Power BI provides great flexibility to refine the data and add measures

• Measures are defined in DAX – knowledge is required to utilize the power of Power BI

A lot of things can happen between the source data and the report

NAVSource Data

Power BIData Model

Power BIReport

www.directionsemea.com

How DAX expressions are evaluatedFilters „flow“ along relationships

Date Customer No Net Sales

01.01.2017 1 200

04.01.2017 2 500

15.01.2017 1 200

03.02.2017 1 300

11.02.2017 2 1000

Customer No Customer Name1 John2 Paul

Net Sales = SUM('Sales'[Net Sales (Source)])

Data modelReport

www.directionsemea.com

How DAX expressions are evaluatedFilters „flow“ along relationships

Date Customer No Net Sales

01.01.2017 1 200

04.01.2017 2 500

15.01.2017 1 200

03.02.2017 1 300

11.02.2017 2 1000

Customer No Customer Name1 John2 Paul

Net Sales = SUM('Sales'[Net Sales (Source)])

ReportData model

www.directionsemea.com

How DAX expressions are evaluatedFilters „flow“ along relationships

Date Customer No Net Sales

01.01.2017 1 200

04.01.2017 2 500

15.01.2017 1 200

03.02.2017 1 300

11.02.2017 2 1000

Customer No Customer Name1 John2 Paul

Net Sales = SUM('Sales'[Net Sales (Source)])

Report

www.directionsemea.com

Changing filter contextManipulate the filters independent of user selection

[Net Sales] / [Net Sales (all customer)]

CALCULATE('Sales'[Net Sales]; ALL(Customer))

www.directionsemea.com

Time intelligenceWide range of formulas to support time-based analysis

CALCULATE('Sales'[Net Sales]; DATEADD('Date'[Date]; -1; YEAR))

www.directionsemea.com

Currency ConversionLooping over tables and flexible lookups

SUMX(Sales; Sales[Net Sales (Source)]

* LOOKUPVALUE('Conversion Rates'[Rate]; 'Conversion Rates'[Currency Code]; Sales[Currency Code]; 'Conversion Rates'[Month]; Year(Sales[Date])*100+Month(Sales[Date])

))

www.directionsemea.com

Measure selection with slicerSwitch measures based on user selection

if(SELECTEDVALUE('Measure Selection'[Select Measure]) = "Quantity"; [Quantity]; [Net Sales])

www.directionsemea.com

Do‘s and Don‘ts

• Use date tables• Use DAX-formatter

(www.daxformatter.com)• Use CALCULATE-function instead of SUMX

(performance)• Validate your data (maintain referential

integrity)

• Don't denormalize everything (Power BI isno excel pivot-table!)

• Don‘t build gigantic data models (focus on a certain business area)

• Don‘t use implicit measures• Don‘t solve with DAX if solution in data

model is possible (modeling first approach)

www.directionsemea.com

AgendaOur key-messages today

1

2

3

4

Definition of reporting requirements

Choosing the right visual and visualizing best practices

Knowing DAX and data modeling to master Power BI

Deployment and Development in Power BI

5 Knowing when to use which NAV-tables in Power BI

www.directionsemea.com

• Use Power BI Desktop for development

• Keep version history

• No integrated source control in Power BI

• Documentation

• Documentation of datasets and interfaces (ODATA) is essential

• Use SharePoint

Development Environment

www.directionsemea.com

• Dataload

• Loading large tables time consuming

• Use small development database

• Pre-filter your ODATA Feeds

• Use local Excel and Power Query to buffer data locally

• Limit your data model size

• Large models slow the development process

• Create separate files for different domains (Sales, Purchasing, Logistics…)

• Prepare your source data

• Consider using ETL tools to prepare your source data

• Especially when sources are used in many reports (shared dimensions)

• Use dataset as source

• Reduce redundancies

• Improve multiuser development

Development Tips and Tricks

www.directionsemea.com

• Restrict data access by rows

• Avoid duplication reports

Row Level Security

Role “Southern Germany”Role “Northern Germany”

• Branches

• Sales Areas

• …

www.directionsemea.com

Sharing Dashboards

Collaboration in Power BICollaborating and providing content in Power BI

Power BI-AppsApp Workspaces

Organisational content packs

Subtitle

www.directionsemea.comOur presentation title

App WorkspacesCollaboration in Power BI

www.directionsemea.com

• Used to collaborate in teams to create content

• Development teams

• Departments

• Content can not be copied between workspace

• Content in other workspaces can not be referenced

• Edit Rights

• Download PBIX files

• Analyze in Excel

• use dataset as source

• Row Level Security not working

• Read Only

• Limited options

• Row Level Security can be used

Collaboration - App Workspaces

• Use App Workspaces to separate Test and Live environment

• Use Prototyping workspaces to create a common Playground for business users

• Don’t use your personal workspace to store important work

• Don’t use App Workspaces to share content

Subtitle

www.directionsemea.comOur presentation title

Publishing ContentSharing Dashboards, Apps

and Content Packs

www.directionsemea.com

• Use content packs to provide full flexibility for the users.

• Use naming convention for content pack objects.

• Use Apps as your standard method if the flexibility of content packs is not required.

• Use dashboard sharing only for basic reporting.

Publishing Content

acce

ssre

po

rtp

ages

An

alyz

ein

Ex

cel

edit

rep

ort

s

use

dat

aset

asso

urc

e

do

wn

load

P

BIX

Ro

wle

vel

secu

rity

Sharing dashboards

Content packs

Apps

www.directionsemea.com

AgendaOur key-messages today

1

2

3

4

Definition of reporting requirements

Choosing the right visual and visualizing best practices

Knowing DAX and data modeling to master Power BI

Deployment and Development in Power BI

5 Knowing when to use which NAV-tables in Power BI

www.directionsemea.com

Handling NAV-data - fact tables and dimensions

• What NAV-tables to use? Does this help?

• Typical dimension tables from NAV

• Customer

• Vendor

• Salesperson

• Location

• Date (Posting Date, Order Date, Shipment Date etc.)

• Item

• G/L-Account

• Fixed Asset

• Normalize NAV-Tables into coherent dimension – e.g. product dimension instead of table of item, G/L-Account, Fixed Asset etc.

• Typical fact tables

• All entry tables

• Posted or unposted documents

• Different pro’s and con’s

www.directionsemea.com

Handling NAV-data - fact tables pro‘s and con‘s

www.directionsemea.com

Item Ledg. + Cust. Ledg. Entries

Customer Ledger Entries

Item Ledger Entries

Anti-Join

Same Doc. No. / Posting Date

Item Ledger Entries

Result ofAnti-Join

www.directionsemea.com

• Join our workshop Today 16:30 – Room Potsdam + Baden

• powerbi@navida.eu

• www.navida.eu

Thank you! Questions?

www.directionsemea.com

• Row level security driven by security filter in NAV

Use NAV to control PBI

Recommended