Forum Discussion
report builder parameters "select all"
- 7 months ago
Hו sanpanico
The issue you are encountering is likely a Circular Dependency or a Query Designer Metadata Mismatch. When parameters are created via the Query Designer (especially for Power BI Datasets or Analysis Services), the designer often links the dataset and the parameter in a way that prevents the "Default" list from initializing before the "Available" list is filtered.
1. The Root Cause: Dependency Loops
In the Query Designer, if your dataset MainDataSet generates the parameter Param1, and you then try to use MainDataSet (or a dependent child dataset) to populate the defaults for Param1, the report engine encounters a logic loop: it cannot fetch default values for a parameter from a dataset that is itself waiting for that parameter to be defined.2. The Solution: Independent Helper Datasets
To resolve this without writing custom SQL, you must create a dedicated "Helper" dataset for each parameter's default values that does not share filters with the main query.Create a New Dataset: Right-click Datasets -> Add Dataset.
Use the Query Designer: Open the Query Designer for this new dataset.
Isolate the Dimension: Select only the field you need for the parameter (e.g., ID or Name). Do not add any filters or related dimensions that would link this query to your existing parameters.
Map the Defaults:
Go to Parameter Properties -> Default Values.
Select Get values from a query.
Choose this new, isolated "Helper" dataset.
Set the Value field to the unique ID.
3. Synchronization Check (Internal Query Designer)
The Query Designer has its own internal parameter mapping that can override Report Builder settings.Open your main dataset in the Query Designer.
Click the Parameters icon (usually a small filter icon with a subscript 'p' or a specific button in the toolbar).
Ensure that the "Multiple Values" checkbox is checked inside the Query Designer table, not just in the Report Builder Parameter properties. If these are out of sync, the "Select All" instruction from the Default Values tab is ignored.
4. Data Type Validation
Query Designer often defaults values to Text (String) even if the underlying data is Integer.Check the Data Type in the General tab of Parameter Properties.
If your "Available Values" dataset returns Integers but the parameter is set to Text (or vice versa), the "Select All" match will fail silently. They must match exactly.
If this post helps, then please consider Accepting it as the solution to help the other members find it more quickly
Hו sanpanico
The issue you are encountering is likely a Circular Dependency or a Query Designer Metadata Mismatch. When parameters are created via the Query Designer (especially for Power BI Datasets or Analysis Services), the designer often links the dataset and the parameter in a way that prevents the "Default" list from initializing before the "Available" list is filtered.
1. The Root Cause: Dependency Loops
In the Query Designer, if your dataset MainDataSet generates the parameter Param1, and you then try to use MainDataSet (or a dependent child dataset) to populate the defaults for Param1, the report engine encounters a logic loop: it cannot fetch default values for a parameter from a dataset that is itself waiting for that parameter to be defined.
2. The Solution: Independent Helper Datasets
To resolve this without writing custom SQL, you must create a dedicated "Helper" dataset for each parameter's default values that does not share filters with the main query.
Create a New Dataset: Right-click Datasets -> Add Dataset.
Use the Query Designer: Open the Query Designer for this new dataset.
Isolate the Dimension: Select only the field you need for the parameter (e.g., ID or Name). Do not add any filters or related dimensions that would link this query to your existing parameters.
Map the Defaults:
Go to Parameter Properties -> Default Values.
Select Get values from a query.
Choose this new, isolated "Helper" dataset.
Set the Value field to the unique ID.
3. Synchronization Check (Internal Query Designer)
The Query Designer has its own internal parameter mapping that can override Report Builder settings.
Open your main dataset in the Query Designer.
Click the Parameters icon (usually a small filter icon with a subscript 'p' or a specific button in the toolbar).
Ensure that the "Multiple Values" checkbox is checked inside the Query Designer table, not just in the Report Builder Parameter properties. If these are out of sync, the "Select All" instruction from the Default Values tab is ignored.
4. Data Type Validation
Query Designer often defaults values to Text (String) even if the underlying data is Integer.
Check the Data Type in the General tab of Parameter Properties.
If your "Available Values" dataset returns Integers but the parameter is set to Text (or vice versa), the "Select All" match will fail silently. They must match exactly.
If this post helps, then please consider Accepting it as the solution to help the other members find it more quickly
Miss Fainshtein, thank you for the solution.
Especially the "Isolate the Dimension..." part, was quite helpful!
I was not able to implement all aspects of Step 3 unless I switched form DAX to MDX, which impacted other things, but all in all, this solution worked! Many thanks!
~San