Power BI Course
Sharing Reports and Collaboration Features
Publishing a report to the Service is the beginning, not the end. Getting the right report to the right person in the right format — on their terms, not yours — is what makes Power BI useful at an organisational scale. This lesson covers every way to share a report, how to automate report delivery with subscriptions, how to alert users when data crosses a threshold, and how teams collaborate through comments and annotations inside the Service.
Sharing a Report — All Methods
| Method | How it works | Best for |
|---|---|---|
| Share link | Report → Share → copy link or enter email. Recipient gets a notification and a link to the live report. Filter state can be embedded in the URL. | Quick, ad-hoc sharing with named individuals who have Pro licences |
| Publish to App | Packages all workspace content into a branded App with custom navigation. Published to users, groups, or the whole organisation. | Broad audience, polished consumer experience, clear separation of development and consumption |
| Embed in Teams | Add the Power BI tab to any Teams channel. Users view the report without leaving Teams. Supports full interactivity. | Teams-first organisations where users live in Teams all day |
| Embed in SharePoint | Add the Power BI web part to any SharePoint page. Report renders inline in the SharePoint page. | Intranet portals, SharePoint-based dashboards |
| Publish to web | Creates a public URL accessible to anyone on the internet without logging in. The report is fully public — no authentication required. | Public data only. Never use for internal or sensitive data. Good for publicly published open-data dashboards. |
| Export | Export a report page or visual as PDF, PowerPoint, CSV, or Excel. A snapshot of the data at the time of export — not a live link. | Email attachments, executive presentations, offline reference documents |
Sharing with Filtered URLs
A Power BI report URL can include filter parameters so the recipient opens the report already filtered to a specific value. This removes the step of telling someone "open the report, select 2024, then select North" — the link does it for them.
// Filtered URL format:
// Base URL + ?filter=TableName/ColumnName eq 'Value'
// Example — share report filtered to North region and 2024:
https://app.powerbi.com/groups/{workspaceId}/reports/{reportId}
/ReportSection
?filter=Orders/Region eq 'North'
and Calendar/Year eq 2024
// Multiple filters use 'and' between conditions
// Text values need single quotes: eq 'North'
// Numeric values have no quotes: eq 2024
// Date values: eq '2024-01-01'
// Filter a matrix to a specific row:
// ?filter=Products/Category eq 'Electronics'
// Navigate directly to a named page:
// ?pageName=ReportSection2 (use the internal page name, not display name)
// Internal page names are visible in the URL when you navigate to that page
// Bookmark + filter combination:
// ?bookmarkGuid={bookmarkId}&filter=Orders/Region eq 'North'
// This applies both a bookmark state AND a filter
// Sharing a filtered URL:
// Method 1: Build the URL manually from the components above
// Method 2: Service → Share → Copy link → check
// "Include my current filters and slicers"
// Power BI appends the current slicer state to the URL automatically
Power BI Apps — Building and Publishing
An App is a published package of workspace content — reports, dashboards, and datasets — with a custom navigation menu and branding. End users install the App once and access all content through it. When you update content in the workspace and republish the App, all users automatically see the updated version.
// Building and publishing an App
// Step 1 — Go to the workspace
// Service → select workspace → Create app (top right button)
// Step 2 — Setup tab
// App name: "Sales Analytics"
// Description: "Company-wide sales reporting · Updated monthly"
// App logo: upload a 45×45px PNG icon
// Contact info: alice@company.com (who to email for help)
// App website: optional link to documentation
// Step 3 — Content tab
// Decide which workspace items to include in the App
// Drag to reorder — first item appears on App home
// Create sections (folders) to organise reports:
// 📁 Executive Summary
// → KPI Dashboard
// 📁 Regional Analysis
// → North Region Report
// → South Region Report
// 📁 Product Performance
// → Product Detail Report
// Step 4 — Audience tab
// Define who can access the App:
// Option A: Entire organisation (all licensed users)
// Option B: Specific users or groups (add emails/AD groups)
// Option C: Multiple audience groups with different access
// (some users see only Executive Summary section)
// Step 5 — Publish app
// Click "Publish app" — users with access can now find it
// in their Apps section or via a direct link you share
// Updating the App after changes:
// Make changes to reports in the workspace
// Workspace → Update app → Publish
// All existing App users instantly see the updated content
// No re-installation required
Subscriptions — Automated Report Delivery
A subscription sends a snapshot of a report page as an email attachment on a schedule — daily, weekly, or at a specific time. The recipient does not need to remember to check the report. The email includes a thumbnail image and a link to the live report in the Service.
// Creating a subscription — Service only (not Desktop)
// Report → Subscribe (envelope icon in the top bar)
// Subscription settings:
// Recipient: Enter email addresses (yourself + others)
// Note: external recipients need a Power BI licence
// Subject line: Customise the email subject
// E.g. "Sales KPI Dashboard — Weekly Update"
// Message body: Optional note included in the email
// Start date: When the subscription begins
// End date: Optional expiry (useful for time-limited campaigns)
// Frequency: Daily / Weekly / After data refresh
// Time: 7:00 AM IST (delivery time in recipient's time zone)
// Report state: Current page with current filters, or
// a specific bookmark state
// Subscription limitations:
// - The snapshot is taken at delivery time — it reflects the data
// at that exact moment, not when you set up the subscription
// - Subscriptions deliver a static image — filters in the email
// cannot be changed; recipient clicks through to the live report
// - Pro users can subscribe others up to 24 recipients per subscription
// - Free users can only subscribe themselves (if workspace is Premium)
// "After data refresh" frequency:
// Delivers the email immediately after the dataset refresh completes
// More useful than a fixed time because the data is always fresh
// If the refresh fails, no email is sent
Data Alerts — Notify When a Threshold Is Crossed
Data alerts send an email notification when a dashboard tile's value crosses a threshold you define — for example, when daily revenue drops below $5,000 or when customer count exceeds 1,000. Alerts only work on dashboard tiles (not report visuals), and only on tiles showing a single numeric value (cards, gauges, KPIs).
// Setting up a data alert
// Step 1 — Pin a visual to a dashboard
// Report → hover a card/KPI visual → click the pin icon
// Select an existing dashboard or create new
// Step 2 — Set the alert on the dashboard tile
// Dashboard → hover the tile → "..." menu → Manage alerts
// Click "+ Add alert rule"
// Alert rule configuration:
// Active: ON
// Condition: Above / Below
// Threshold: enter the numeric value
// At most: Once a day / Once an hour / Every time (noisy)
// Notification: Email to me
// Example alert rules:
// Revenue below $5,000 → alert: check if data refresh failed
// Late orders above 15% → alert: operations team to investigate
// Customer count above 1,000 → alert: scaling review needed
// Alert delivery:
// Email from Power BI Service
// Also appears in the notification bell in the Service header
// Mobile app push notification (if Power BI Mobile is installed)
// Alert limitations:
// - Dashboard tiles only (not report visuals)
// - Single numeric value tiles (card, gauge, KPI)
// - Evaluated after each scheduled dataset refresh
// (not in real-time between refreshes)
// - Only the person who sets up the alert receives it
// (cannot set alerts for other users)
Comments and Annotations
Comments in the Service allow teams to discuss insights directly on the report, ask questions, and tag colleagues — all without leaving Power BI or switching to email. Annotations on dashboard tiles let users draw attention to specific values with arrows and text overlays.
// Adding comments to a report — Service only
// Report → Comments icon (speech bubble in top bar)
// Comments panel opens on the right
// Type a comment → Post
// Mentioning a colleague:
// Type @ followed by their name or email
// They receive an email notification with a link to the comment
// The @ mention shows the comment in their notification feed
// Replying to a comment thread:
// Click Reply under any comment
// All replies are nested under the original comment
// Useful for discussing a specific insight over time
// Resolving comments:
// "..." menu on a comment → Mark as resolved
// Resolved comments are hidden by default
// Toggle "Show resolved" to see the full history
// Comment scope — what filter state does the comment reference?
// Comments are saved WITH the current filter state of the report
// When another user views the comment, the report jumps to
// the same filter state that was active when the comment was posted
// This means "@Bob can you check why North is down this month?"
// automatically shows North data when Bob clicks the comment link
// Annotations on dashboard tiles:
// Dashboard → hover a tile → pencil icon → "Add note"
// Draw arrows, add text, highlight specific data points
// Annotations are saved to the tile permanently
// Useful for flagging an anomaly or explaining an outlier
// in context: "Revenue spike — Q4 year-end push" drawn on the chart
Export Options
| Format | What is exported | Notes |
|---|---|---|
| All report pages as a PDF document. Current filter state is captured. | Best for document-style delivery. Non-interactive. Print-ready. | |
| PowerPoint | Each page becomes a slide. Visuals are exported as images — not editable shapes. | Useful for executive presentations where the report pages slot into a deck. Titles and text boxes become editable text in PowerPoint. |
| CSV / Excel | The underlying data of a specific visual — the rows and columns as currently filtered. Not the full dataset. | Right-click a table or chart → Export data → choose summarised (aggregated) or underlying (row level if permitted by RLS). |
| Analyse in Excel | Creates a live Excel workbook connected to the published dataset via a PivotTable. The data is live — refreshing the workbook pulls current data from the Service. | Powerful for ad-hoc analysis by Excel users who want to build their own pivot views without accessing Power BI Desktop. |
Teacher's Note: The feature that gets the most positive reactions from non-technical stakeholders is the "After data refresh" subscription. Before it, stakeholders either checked the report daily (which they forget) or relied on someone to manually email updates (which creates a maintenance burden). Setting up a subscription that fires after the morning refresh means the CEO gets a fresh KPI email at 6:30am every weekday without anyone doing anything. It takes five minutes to set up and saves hours of manual reporting every month. Set it up for every recurring report you build.
Practice
Practice 1 of 3
To share a report with a colleague pre-filtered to a specific region without needing to give them instructions, you append ___ parameters to the report URL — for example adding ?filter=Orders/Region eq 'North' to the URL.
Practice 2 of 3
A subscription set to deliver "After data ___" sends the report email immediately after the scheduled dataset refresh completes — ensuring recipients always receive a snapshot of the latest data rather than a fixed delivery time that may arrive before the refresh finishes.
Practice 3 of 3
Data alerts can only be set on ___ tiles — not report visuals — and only on tiles that show a single numeric value such as a card, gauge, or KPI visual.
Lesson Quiz
Quiz 1 of 3
You set up a daily subscription for an executive at 8:00 AM. The dataset refresh is scheduled for 7:30 AM but frequently takes 40 minutes due to a large data source. The executive regularly reports that the email shows yesterday's data. What is the best fix?
Quiz 2 of 3
An analyst uses "Publish to web" to share an internal sales dashboard with external partners. A week later your IT security team contacts you about a data breach. What went wrong?
Quiz 3 of 3
You set up a data alert on a Revenue card tile: alert when Revenue goes below $50,000. Revenue has been below $50,000 for the last 10 days but you have only received one alert email. Is this expected?
Next up — Lesson 49 covers Refresh Schedules and the On-Premises Data Gateway in depth, including incremental refresh for large datasets, troubleshooting refresh failures, and gateway cluster configuration for high availability.