SharePoint & Power BI: Better Together Poll: O365 users, PBI users Have open: PBI web app, PBI desktop How to get SP data out of SP and present it in a dashboard Christine Payton
What is Power BI? Easy-to-use dashboard/data exploration tool WAY easier than SharePoint (assuming you don’t get into DAX) Part of O365 If you don’t have O365, you can also sign up at powerbi.com with any email address, as long as it is not associated with a MS “personal” account. It is free to use with SharePoint Online data in most cases On-premise data requires a $10/month license for viewers and creators Consists of a desktop application and web application Support is abnormally responsive
Demo: SharePoint Profiles Profile data syncs to the “UserInformationList” in SharePoint, which is accessible via OData feed in Power BI. Here’s the list URL: https://yourtenant.sharepoint.com/_layouts/15/people.aspx?MembershipGroupId=0 SharePoint side of the demo: because this is the SPUG Data entered in a profile is accessible via the “user information list” name/department/manager fields are there by default. Can add more with custom profile properties
Customizing the Profile Instructions are for O365 Create a new property in the SharePoint admin center.
Configuring the Property Type: Single/Multi Value – can ONLY be set at creation Length: Doesn’t seem to actually do anything (resets to some large number no matter what you enter) A closed term set is a good idea, you can add instructions for how to request additions in the description field. Have the term set imported before creating the property. “Replicable” box: This is what pushes the data to the User Information List (note: takes forever to replicate the very first time… like… up to a month in SPO) I can make our crowdsourced starter term sets available on meetup, or email me
Configuring the Property You want your users to be able to enter data in the field, right? If you index the property, you can also use the field values as refiners in people searches! (requires mapping to a RefinableString property in search center)
Making it Easier to Get To This is where your custom properties end up: buried where no one will ever find them. Luckily, we can move them!
Moving the Properties In the “manage properties” area, you can move properties up and down the property list Move the custom ones into the “Basic Information” section by clicking the up arrow many, many times Anyone know of a better way to do this? PowerShell? Also enter some data in a profile to help trigger replication? Swap presentation to other screen, present desktop app
On to Power BI Download the application at http://powerbi.com Connecting to the data: Use data source OData feed or “SharePoint List” (I prefer OData). OData URL: https://yourtenant.sharepoint.com/_vti_b in/listdata.svc Authentication Type: For O365, Organizational. On-premise: varies Select your UserInformationList, then “Edit” *wait for data to populate; hard to tell from looking at SP list because the view is not configured to show your columns SharePoint Server – need personal gateway for refresh (Odata and SP List both still work) If you’re not connecting to profile data, use site URL in Odata feed
Clean Up Your Data Select the columns you want to keep and “Remove Other Columns” “Remove” vs “Remove Other” – “Remove Other” allows you to go back and edit the step to change columns later. Filter out the not-real-people entries I like to do this by removing people with null departments in combination with a custom property we set with PowerShell for employee type. The former removes service accounts, the later removes offboarded staff.
Splitting Multiple Value Fields If you allowed multiple values for your properties, you will have comma or semicolon separated values in those columns in your profile list. You will want to count these in a separate table (I use one for each property). Right click -> Reference to create a new table from your source. Do another “remove other” – I like to leave name, ID, and the property I’m splitting and remove the rest. Rename the table something descriptive
Splitting Multiple Value Fields Remove the null value entries for the column Split by delimiter – “custom,” so you can add a space at the end (the SP values have a trailing space) Let it split into as many columns as it needs under Advanced (unless it’s a weirdly high number… happens) – it tends to adjust according to how many entries people have
Splitting Multiple Value Fields Looks messy! Now let’s unpivot Select your Name and ID columns (holding shift), right click, “Unpivot Other Columns” Remove the junk Attribute column, rename Value to something descriptive Select all, right click, remove duplicates (long story: SharePoint bug creates duplicate column values in User Info List)
Optional: Create Relationships Creating relationships will allow you to create visuals that combine multiple tables. For instance: Which personality types correlate with which skills? Which school did people go to for which what education level? Relationships may be created automatically, you’ll want to check to make sure they are accurate (they are often not, and can cause errors). Create relationships that relate your fields back to your “main” table (one to many, direction: both).
Make a Report Create visuals by selecting a visualization type, then dragging columns into the axis, legend, and value buckets. You can sort using the three-dot menu in the corner of the visual Change the visual title, data labels, and colors under the paintbrush icon
Publish to Power BI To share your dashboard, you need to publish it.
Create a Dashboard Pin visuals from the web app to create a dashboard (click the pin icon to pin). A dashboard is what gets “shared.” You can pin items from multiple reports to one dashboard. Clicking a tile in the dashboard opens that tab of the report. Natural language query
Schedule a Refresh Daily is free You need to enter credentials in setup (auth type OAuth 2) Your credentials will expire once in a long while; you’ll get a notification of the failure. You will need to go back and re-enter your credentials to fix
Licensing Tips & Tricks “Pro Features” – triggers pro license requirements for the dashboard (license necessary for all viewers) Sharing with security groups Publishing to shared workspaces (a.k.a. O365 Groups) On-premise data refresh Sharing with distribution groups does not trigger pro features; however it was buggy last time I tried it. Microsoft says they will fix it this year sometime. You can also batch-share with semicolon separated lists of email addresses. Embedding: Microsoft is working on it, alternately there is a third-part app.
Examples: Goal Tracking Power BI can be used with any SharePoint list, here’s some ideas!
Example: SP Profiles
Example: Case Management
Example: Nomination Forms
Examples: O365 Data Feed OData Feed: https://reports.office365.com/ecp/R eportingWebService/Reporting.svc Use admin credentials, Basic Authentication
Example: SharePoint Usage Word on SP embeds
Resources Powerbi.com – many step-by-step tutorials Power BI Community – user-based forum EdX Courses Meetup: Power BI User Group, same day as SPUG at 6PM Questions? Christine.Payton@nwea.org Sizzle pie..