Business Professionals
Power BI | Power Pivot | Power Query | DAX
Cloud Flows | RPA | AI Builder | Copilot
60+ Formulas | Data Stories | Advanced Reporting & Modeling
VB Programming | Report Automation |
MS-Office Automation
Techno-Business Professionals
Power BI | Power Query | Advanced DAX | SQL - Query &
Programming
Microsoft Fabric | Power BI | Power Query | Advanced DAX |
SQL - Query & Programming
Power BI | Power Apps | Power Automate | Copilot Studio | Power Pages | Dataverse
Microsoft Power Apps | Microsoft Power Automate
Power BI | Adv. DAX | SQL (Query & Programming) |
VBA | Python | Web Scrapping | API Integration
Power BI | Power Apps | Power Automate |
SQL (Query & Programming)
Power BI | Adv. DAX | Power Apps | Power Automate |
SQL (Query & Programming) | VBA | Python | Web Scrapping | API Integration
Power Apps | Power Automate | SQL | VBA | Python |
Web Scraping | RPA | API Integration
Technology Professionals
Power BI | DAX | SQL | ETL with SSIS | SSAS | VBA | Python
Power BI | SQL | Azure Data Lake | Synapse Analytics |
Data Factory | Databricks | Power Apps | Power Automate |
Azure Analysis Services
Microsoft Fabric | Power BI | SQL | Lakehouse |
Data Factory (Pipelines) | Dataflows Gen2 | KQL | Delta Tables | Power Apps | Power Automate
Power BI | Power Apps | Power Automate | SQL | VBA | Python | API Integration
Power BI | Advanced DAX | Databricks | SQL | Lakehouse Architecture
Business Professionals
Power BI | Power Pivot | Power Query | DAX
Cloud Flows | RPA | AI Builder | Copilot
60+ Formulas | Data Stories | Advanced Reporting & Modeling
VB Programming | Report Automation |
MS-Office Automation
Techno-Business Professionals
Power BI | Power Query | Advanced DAX | SQL - Query &
Programming
Microsoft Fabric | Power BI | Power Query | Advanced DAX |
SQL - Query & Programming
Power BI | Power Apps | Power Automate | Copilot Studio | Power Pages | Dataverse
Microsoft Power Apps | Microsoft Power Automate
Power BI | Adv. DAX | SQL (Query & Programming) |
VBA | Web Scrapping | API Integration
Power BI | Power Apps | Power Automate |
SQL (Query & Programming)
Power BI | Adv. DAX | Power Apps | Power Automate |
SQL (Query & Programming) | VBA | Web Scrapping | API Integration
Power Apps | Power Automate | SQL | VBA |
Web Scraping | RPA | API Integration
Technology Professionals
Power BI | DAX | SQL | ETL with SSIS | SSAS | VBA
Power BI | SQL | Azure Data Lake | Synapse Analytics |
Data Factory | Azure Analysis Services
Microsoft Fabric | Power BI | SQL | Lakehouse |
Data Factory (Pipelines) | Dataflows Gen2 | KQL | Delta Tables
Power BI | Power Apps | Power Automate | SQL | VBA | API Integration
Power BI | Advanced DAX | Databricks | SQL | Lakehouse Architecture
LEARN THIS HANDS ON
Microsoft Fabric & Power BI
Migrating Power BI datasets to Microsoft Fabric is less about pressing a magic button and more about planning, sequencing, and avoiding nasty surprises in production. This playbook walks through a practical, step‑by‑step approach you can apply to existing workspaces, with concrete checks and patterns you can reuse across tenants and environments.
If you want to turn this into a repeatable skill for your team, pairing this guide with a deeper, structured path like a dedicated Microsoft Fabric & Power BI curriculum helps you move faster without breaking things.
Before touching Fabric switches, you need a migration inventory. Not every dataset should move on day one.
For each existing Power BI workspace, classify it:
Start with Tier 2 workspaces for your first migrations. They’re important enough to matter, but not so critical that a minor issue becomes a crisis.
For each dataset in scope, note:
This shapes your migration order. For example:
If you already know Fabric basics, focus on what changes specifically for Power BI datasets when a workspace becomes Fabric‑enabled.
Your existing workspace can be in:
For dataset migration, what matters is:
If you’re planning to land data into a Lakehouse or Warehouse and then model it, you want:
FIN-Prod-Fabric, Sales-Analytics-FabricOnce in a Fabric workspace, your Power BI datasets:
The semantic layer doesn’t disappear; it just sits in a richer environment.
Migration is the best time to clean up and document what you actually have.
In each workspace:
Fewer objects = fewer surprises.
For each dataset in scope, capture:
A simple table in Excel or a OneNote page is enough. This becomes your migration checklist.
Agree with stakeholders on a change freeze window:
This avoids chasing a moving target while you test in Fabric.
You have two main strategies for each dataset.
You keep the data sources as they are (e.g. Azure SQL, on‑prem SQL via gateway) and move the dataset into a Fabric workspace.
Use this when:
High‑level steps:
You move both the data pipelines and the semantic layer into Fabric (e.g. Lakehouse + Warehouse + dataset).
Use this when:
High‑level steps:
This is the quickest path for existing workspaces.
In the Power BI Service:
From Power BI Desktop:
Optionally, export measures using Tabular Editor if you want an external backup.
In Power BI Desktop:
Sample SQL query used by a dataset:
SELECT
o.OrderID,
o.OrderDate,
c.CustomerName,
o.TotalAmount
FROM dbo.Orders o
INNER JOIN dbo.Customers c
ON o.CustomerID = c.CustomerID
WHERE o.OrderDate >= DATEADD(DAY, -365, CAST(GETDATE() AS date));
Keep queries like this unchanged during initial migration unless you’re also re‑platforming.
From Power BI Desktop:
In the Service:
In the Fabric workspace:
Test a manual refresh. Only move on when it passes.
In the Service or Desktop:
Example DAX filter for a Sales Manager role:
[RegionCode] IN VALUES(Users[RegionCode])
Where Users is a table mapping user principal names to region codes.
Use View as in Power BI Desktop or the Service to validate:
If reports were previously bound to the old dataset:
Finally, update:
When you want to modernize the data layer as well, follow this path.
Use Fabric Data Pipelines or Dataflows Gen2 to load data.
Example: simple SQL source into a Fabric Warehouse using a Data Pipeline:
If you prefer Lakehouse, you might use a Notebook to transform data:
from pyspark.sql.functions import col, to_date
orders = spark.read.table("source_db.dbo_Orders")
orders_clean = (
orders
.withColumn("OrderDate", to_date(col("OrderDate")))
.filter(col("OrderDate") >= "2023-01-01")
)
orders_clean.write.mode("overwrite").saveAsTable("lakehouse_gold.Orders")
In the Lakehouse or Warehouse:
Example measure migration:
Old measure in the Power BI dataset:
Total Sales :=
SUM ( Sales[SalesAmount] )
You can copy this directly into the new semantic model.
Ensure dimension keys and surrogate keys are consistent:
If you change keys (e.g. introduce surrogate keys), document mapping logic and validate row counts.
Once the Fabric semantic model is ready:
Testing is where migrations succeed or fail.
For each key table/measure:
You can use a simple validation query in the Warehouse:
SELECT
CAST(OrderDate AS date) AS OrderDate,
SUM(TotalAmount) AS TotalAmount
FROM dbo.FactSales
GROUP BY CAST(OrderDate AS date)
ORDER BY OrderDate DESC;
Export both old and new results to Excel and compare.
Focus on:
If performance regresses:
CALCULATE with wide filters)Test RLS with real users or test accounts:
Document results and sign‑off from data owners.
Once testing is done, plan the switch.
Pick a low‑usage window and define:
Send a short, focused update:
For the first days:
Only after stability is proven:
Don’t migrate workspaces ad‑hoc. Create a repeatable migration checklist (inventory → classify → choose path → lift‑and‑shift or re‑platform → test → cutover) and apply it workspace by workspace. The discipline of running the same steps every time will save you far more hours than any single Fabric feature.
Microsoft Fabric
New
Next Batches Now Live
Power BI
SQL
Power Apps
Power Automate
Microsoft Fabrics
Azure Data Engineering