Data model, security & variables

Synthetic keys, alternate states, Section Access, variables and incremental QVD loads, and what replaces them in a Power BI semantic model.

WHERE Modified >= '$(vLast)' ... Concatenate ... WHERE NOT Exists(ID); STORE ... INTO x.qvd QVD incremental load The QVD incremental pattern (load the changes, append the old QVD rows not in the change set, store) has no file-level equivalent in Power BI. Use the incremental refresh policy on the semantic model, or in Fabric land the data in a Delta table with MERGE. Partial / different approach $Syn tables (automatic) Synthetic keys and associative linking Qlik links tables automatically on every field with the same name and builds synthetic keys when they share several fields. Power BI never links by name. Relationships are explicit, use a single column and have a direction, so migrations usually remodel to a star schema. No 1:1 equivalent Sum({StateName} Sales) Alternate states (comparative analysis) Alternate states give objects independent selection sets, for example comparing two groups of regions side by side. Power BI has one filter context per visual, plus disconnected tables and measures that apply them with TREATAS. There is no built-in "state" concept. Partial / different approach Section Access; LOAD ACCESS, USER.EMAIL, REGION ...; Section Application; Section Access (data reduction) Section Access reduces data per user with a security table in the script. Power BI uses row-level security roles: DAX filters evaluated with the signed-in user's UPN, usually through a security table. OMIT maps to object-level security. Partial / different approach SET vSales = Sum(Sales); LET vToday = Today(); Variables (SET, LET and $-expansion) Qlik variables hold expressions, values and settings, and are expanded as text. Power BI splits these roles: measures for reusable logic, Power Query parameters for load settings, what-if and field parameters for user input, calculation groups for logic applied to many measures, and VAR inside DAX. Partial / different approach