Power BI DAX — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Power BI DAX (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Use this skill to author DAX measures and calculated columns that are correct under filter context and fast in VertiPaq.
SUM(Sales[Amount]) is implicitly CALCULATE(SUM(...)) inside a measure.CALCULATE is the only function that turns row context into filter context via context transition.Total Sales = SUM ( Sales[Amount] )Always have a marked Date table with a contiguous date range. Then:
Sales YTD =
CALCULATE ( [Total Sales], DATESYTD ( 'Date'[Date] ) )
Sales PY =
CALCULATE ( [Total Sales], SAMEPERIODLASTYEAR ( 'Date'[Date] ) )
Sales YoY % =
DIVIDE ( [Total Sales] - [Sales PY], [Sales PY] )Use DIVIDE instead of / to avoid divide-by-zero errors.
% of Total =
DIVIDE (
[Total Sales],
CALCULATE ( [Total Sales], ALLSELECTED ( Product[Category] ) )
)ALL removes all filters from a column or table.ALLSELECTED respects outer slicers but ignores inner row/column grouping.KEEPFILTERS intersects rather than overrides a filter inside CALCULATE.REMOVEFILTERS is the modern alias for clearing filters.Row-by-row math uses X functions:
Weighted Margin =
SUMX ( Sales, Sales[Qty] * ( Sales[Price] - Sales[Cost] ) )Avoid wrapping iterators in unnecessary CALCULATE; each row triggers context transition and can be slow.
Margin % =
VAR Revenue = [Total Sales]
VAR Cost = SUM ( Sales[Cost] )
RETURN DIVIDE ( Revenue - Cost, Revenue )Variables are evaluated once and reused, improving readability and performance.
SELECTEDVALUE instead of HASONEVALUE + VALUES patterns.~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.