Technical Article

Never ship a broken semantic model again: how to build automated tests in Power BI with user-defined functions

User-defined functions (UDFs) in Power BI let you build reusable, automated tests for your semantic models — so you catch broken measures, duplicate rows, and faulty relationships before they reach your reports. This article walks through how to use UDFs alongside PQL.Assert to standardize testing across your team, and how to automate those tests with Power Automate or a Fabric Notebook.

External Article

Add Nodes to SQL Server 2022 and Windows Server 2022 Failover Cluster

I used the guide in a previous tip on Install SQL Server 2008 on a Windows Server 2008 Cluster Part 1 to install a SQL Server 2008 on a Windows Server 2008 failover cluster (WSFC). Now, I would like to upgrade and migrate my SQL Server 2008 failover clusters to SQL Server 2022 running on Windows Server 2022. What is the process for installation and configuration?

Stairway icons Database Deployments

Concurrency and Baseline Control: Stairway to Reliable Database Deployments Level 5

As database development scales across multiple contributors, concurrency becomes an inherent aspect of the process. Changes that are individually correct may still conflict when developed against a shifting baseline. This level introduces a disciplined approach to managing parallel changesets by controlling their scope, identifying overlap, and resolving conflicts through realignment. By ensuring that only one changeset retains its original baseline while others are adapted accordingly, deployments remain predictable and consistent. Once released, changesets are treated as immutable, and further evolution proceeds through new, forward-only changes.

Blogs

T-SQL Tuesday #203: Risk and Reward

By

This is timely, as I’m currently on a boat in the Adriatic taking a...

dataMinds Connect 2026 – Slides & Scripts

By

You can find the slides and SQL scripts for my session “Spice up your...

How to Clear the SSMS Cache (SSMS 21 and Later)

By

How to Clear the SSMS Cache (SSMS 21 and Later) Updated...

Read the latest Blogs

Forums

Alamat BCA KCP Pasar Kenari Telp:08218200203

By layanan_Bca88

Telp/Wa 628218200203 Gedung Sutrado, Jl. Kenari 2 No.5 Lt. 1, RT.2/RW.3, Kenari, Kec. Senen,...

Alamat BCA KCP Biak Telp:08217555651

By R4nt4u

Telp/Wa 628218200203 Jl. Biak No.44 AB, RT.8/RW.11, Cideng, Kecamatan Gambir, Kota Jakarta Pusat, Daerah...

Alamat BCA KCP Plaza Index Telp:08217555651

By m4rt1n4

Telp/Wa 628217555651 Gedung Plaza Bank Index Ground, Jl. M.H. Thamrin No.57 Floor Suite GF-21,...

Visit the forum

Question of the Day

Using CHOOSE()

We have this code that sets some status values and then queries them using the CHOOSE() function in SQL Server 2025.

CREATE TABLE Status
(
    StatusID INT,
    StatusDescription VARCHAR(20)
);
GO
INSERT dbo.Status
(
    StatusID,
    StatusDescription
)
VALUES
(0, 'Uncategorized'),
(1, 'Active'),
(2, 'Inactive'),
(3, 'Temp');

GO
SELECT CHOOSE(StatusID, 'Unknown', 'Active', 'Inactive', 'Temporary')
FROM Status;
When the SELECT runs, what is returned?

See possible answers