You are on page 1of 40

Getting started

with
Dataverse

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 1


Last updated: February 2021
Agenda

1 Overview Dataverse
4 Security concepts in Dataverse

2 Basics - Tables, columns &


relationships in Dataverse 5 Summary

3 Environments in Dataverse
6
©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 3
OVERVIEW
DATAVERS
E

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 4


Dataverse
What is in the box?

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 5


BASICS -
TABLES,
COLUMNS &
RELATION-
SHIPS IN
DATAVERSE
©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 6
Important: Terminology updates
• Announced November 2020 by Microsoft
• Microsoft reasoned the changes by “Responding to customer feedback and data
from user research […]”
Old New
Entity, entities Table, tables
Field, fields Column, columns
Attribute, attributes
Record, records Row, rows
Option set, multi select option sets Choice, choices
Picklist, picklists
Two Options Yes/No
©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 7
Table Basics
Sales
Account
Order
table:
• Usually some form of table:
interpreatation of real-life - Name - Order ID
objects & concepts - Address - Customer
- Phone - Delivery Date
• Columns represent the - Email - Billing Address
individual data elements of a - Fax - Shipping
Address
- Credit Limit
table
• Relationships connect tables

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 8


Types of tables

• Standard tables: There are four different types of standard table


ownership. When you create a custom standard table the only
options are User or team owned or Organization owned, but you
should be aware that other tables have different ownership types.
• Activity tables: An activity can be thought of as any action for which
an entry can be made on a calendar.
• Virtual tables: A virtual table is a custom table in Dataverse that has
columns containing data from an external data source.

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 9


Standard Table

• When in doubt,
User/ Team Organization
chose User/Team
All rows have Row owned by
an owner organization
• Organization is great Supports All or nothing
for reference data access levels access

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 10


Activity Table
• Why should we use a
custom Activity table?
• Examples:
Task
• A non-profit created a
fundraiser application and
modeled the donation table Contact Donation
as a custom table
• A client wants to track the Email
visits of his customers and
wants to customize the visit
report (but the appointment
table is still used)

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 11


CUSTOM
&
ACTIVITY DEMO
TABLES
©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 12
Column Basics
• Data type and formatting
• Simple data type (Text, Whole number, Date,
etc.)
• Lookup (1:N)
• Yes/No, Choice(s)
• Cannot be changed after creation
• Can be calculated or rolled up
• System columns
• New! Image and File column types
©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 14
WHAT IS THE
DIFFERENCE
BEWTEEN
LOOKUPS AND
CHOICES?
©2020 Avanade Inc. All Rights Reserved <Highly Confidential> ©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 15
Lookup or Choice?
Lookups Choices
Account table Contact table
Account name Address Phone Contact name Account Gender Phone
Microsoft --- --- Sally --- --- ---
LinkedIn --- --- Harry --- --- ---

Lookup
Contact table Choice (gender)
Contact name Account Gender Phone Female
Sally Microsoft --- --- Male
Harry Microsoft --- --- Not specified

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 16


Lookups vs Choices

Lookups Choices
• Can store other data • Only stores label and value
• You build localization • Localization built-in
• Filter by views and security • Filtered by developer script
• Treated as reference data • Treated as solution component
• Supports inactive state • No built-in way to retire
• UX scales to lots of items • UX works to about 400 items
• Stores as entity reference • Stores as whole number

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 17


COUNTRY LIST –
LOOKUP OR
CHOICE?
©2020 Avanade Inc. All Rights Reserved <Highly Confidential> ©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 18
Calculated & Rollup columns
Data Type Simple Calculated Rollup
Single Line of Text x x
Multiple Lines of Text x
Whole Number x x x
Floating Point x
Decimal x x x
Currency x x x
Date Time x x x
Choice & Yes/No x x
Choices x

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 19


Calculated vs Rollup

Calculated Rollup
Calculated on retrieve of row Value stored on row, scheduled
update / on demand
Read only Read only
Row columns and parent columns 1:N only, columns on child rows
Can include rollup columns in Can rollup calculated columns
calculation

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 20


File data type

• Allows files to be columns on a table


• Default maximum file size: 32 MB; largest possible size: 128 MB
• Supports multiple files per table
• Attachments / notes not required
• Leverages heterogeneous storage behind the scenes
• Supports canvas and model-driven

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 21


Relationships
Tables
Column 1 Column 2 Column 3 Column 1 Column 2 Column 3 Column 1 Column 2 Column 3

Column 1 Column 2 Column 3 Column 1 Column 2 Column 3 Column 1 Column 2 Column 3

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 22


Relationships (continued)

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 23


One-to-many relationships

• One record of a primary table


• Zero, one, or many rows of a
related table
• Related table has a lookup field
• N:1 is a reverse 1:N relationship

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 24


Many-to-many relationships

• Many-to-many (N:N) is
symmetrical
• Hidden intersect table created
• Two 1:N relationships
• Intersect table cannot be
customized
• Can be used by report desginers and
developers

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 25


Hierarchical relationships

• Use self-referential relationships


to define a hierarchy

• Visualize hierarchical data in


model-driven apps

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 26


RELATIONSHIPS ARE
TOUGH...
REQUIREMENT:
TRACK THE
LANGUAGE A
CONTACT SPEAKS
©2020 Avanade Inc. All Rights Reserved <Highly Confidential> ©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 27
What is the difference?
1:N Relationship N:N Relationship

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 28


What is the difference?
N:N Relationship Manual N:N Relationship

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 29


Relationships behaviors

Control how certain actions cascade down to records related to the


primary table record through the 1:N table relationship.
Type of behavior Description
Parental All actions use the Cascade All behavior.
Referential, Assign, Share, Unshare and Reparent use the Cascade None
Remove Link behavior.
Delete uses the Remove Link behavior.
Merge uses the Cascade All behavior.
Referential, The same as Referential, except that Delete uses the
Restrict Restrict Delete behavior.
Custom Invidual behaviors can be assigned for each action. If the
choices match any of the other Type of behavior catagories,
the value will change to the Type of behavior value.

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 30


COLUMNS
&
RELATION- DEMO
SHIPS
©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 31
ENVIRONMENT
S
IN DATAVERSE

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 32


Power Platform Admin Center

• https://admin.powerplatform.microsoft.com/
• Unified portal for administrators to manage environments and settings for Power
Apps, Power Automate, and customer engagement apps

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 33


Environments

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 34


ENVIRON-
MENTS DEMO

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 35


SECURITY
CONCEPTS
IN
DATAVERSE

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 36


Users, Roles and Privileges

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 37


Key concepts
• Users and Teams can be assigned
security roles
• A user must have at least one security
role to access the application
• User access is determined by the
combined privileges of all assigned roles
• Giving the user the MOST access
• There is NO deny
• By default (new) custom tables have no
access for most users
• Security roles can be used to manage
access to role-based forms and model-
driven app access
©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 38
Dataverse Security Features Level Set

• Data in a table can be organization owned or user / team owned


• Security roles grant discrete privileges to services and data
• Teams and user can have security roles that provide aggregate
privileges
• Business Units contain users & teams and act as security
boundaries
• Business Units have a default team containing all users in that unit

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 39


Dataverse Security Features Level Set
(continued)
• Record sharing can be used to share specific rows outside regular
boundaries, but user or team must have that privilege already
• Try to avoid using sharing!!
• Field Level Security can be used to control access at the field level
for custom and some system columns
• Granted to users / teams and not to security roles!
• Auditing can help post monitor who has done what after the fact

©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 40


Summary

The data model is the foundation you are building your solution
on, so take time to make it solid.
• Consider more than one approach to data model
• Use proof of concepts to test ideas
• Take advantage that Dataverse is good in incremental data
modeling
• Build your data model so you can manage it with available
security features
©2020 Avanade Inc. All Rights Reserved. <Highly Confidential> 41
THE END

©2020 Avanade
©2020 Inc. All Rights
Avanade Reserved.
Inc. All <Highly Confidential>
Rights Reserved 42

You might also like