# Dashboard query types, row limits and widget parameters

*CRM Analytics and Einstein Discovery Consultant Study Guide · Analytics Dashboard Implementation · Last updated November 3, 2026 · https://www.certifyforce.com/study-guide/crm-analytics-and-einstein-discovery-consultant/analytics-dashboard-implementation/dashboard-query-types-row-limits-and-widget-parameters*

Which dashboard query type fits a requirement (aggregateflex in compact or SAQL form, grain, saql, soql through Salesforce Direct, and custom static queries), the row limit each one starts with, and the widget-level settings that show or hide fields without changing the shared query.

- Certification: Salesforce CRM Analytics and Einstein Discovery Consultant
- Exam section: Analytics Dashboard Implementation
- Study guide: https://www.certifyforce.com/study-guide/crm-analytics-and-einstein-discovery-consultant

**Official exam objective:**

> Given business requirements, configure dashboards using accurate query types and widget level parameters.

## What the exam expects

- Choose the query type from the data source: dataset aggregate, record list, hand-written SAQL, live Salesforce object or user-defined values.
- Know how compact form and SAQL form differ inside an `aggregateflex` query, and which properties each form ignores.
- Predict how many rows a query returns by default, what happens when no limit is set, and how to return more.
- Show, hide and reorder fields per widget when widgets share one query, including through the dashboard JSON.
- Make global filters reach queries written in SAQL.
- Decide when a SQL query can replace SAQL, and when it can't.

Key terms: **query (step)** (the calculation behind a widget; the JSON calls it a step); **compact form** (the designer's structured query with measures, groups, filters, order and limit properties); **SAQL form** (an `aggregateflex` query whose logic sits in the `pigql` string); **Salesforce Direct** (a SOQL query on a Salesforce object, run by Salesforce); **custom query** (a `staticflex` step of user-defined values); **projection** (which of a query's fields a given widget displays).

## Key facts

| Fact | Detail | Source |
|---|---|---|
| New `aggregateflex` query | Limit set to 2,000 | [aggregateflex](https://developer.salesforce.com/docs/analytics/bi-dev-guide-json/guide/bi-dbjson-steps-types-aggregateflex.html) |
| `soql` row maximum | Set by the SOQL query limit | [soql](https://developer.salesforce.com/docs/analytics/bi-dev-guide-json/guide/bi-dbjson-steps-types-soql.html) |
| `soql` fields | Each listed in `strings`, `numbers` or `groups` | [soql](https://developer.salesforce.com/docs/analytics/bi-dev-guide-json/guide/bi-dbjson-steps-types-soql.html) |
| SAQL form ignores | `filters`, `limit`, `order` outside `pigql` | [aggregateflex](https://developer.salesforce.com/docs/analytics/bi-dev-guide-json/guide/bi-dbjson-steps-types-aggregateflex.html) |
| Global filter on SAQL form | Needs `useGlobal` and `autoFilter` true | [aggregateflex](https://developer.salesforce.com/docs/analytics/bi-dev-guide-json/guide/bi-dbjson-steps-types-aggregateflex.html) |
| `grain` step | One dataset, compact form only | [grain](https://developer.salesforce.com/docs/analytics/bi-dev-guide-json/guide/bi-dbjson-steps-types-grain.html) |
| Custom query size | Up to 20 columns | [Custom Query](https://help.salesforce.com/s/articleView?id=analytics.bi_dashboard_steps_custom_flex.htm&type=5&language=en_US) |
| Show and Hide | Only `aggregateflex` and `saql`; others use `columns` | [Projection](https://help.salesforce.com/s/articleView?id=analytics.bi_dashboard_widgets_projection_flex.htm&type=5&language=en_US) |
| SQL for CRM Analytics | Datasets only; no cogrouping, sampling, casting or relative dates | [SQL vs SAQL](https://developer.salesforce.com/docs/analytics/bi-dev-guide-sql/guide/bi-sql-vs-saql.html) |
| Query ID | Created from the label; can't be changed | [Query Editor](https://help.salesforce.com/s/articleView?id=analytics.bi_dashboard_step_saql_build.htm&type=5&language=en_US) |

## Check yourself

- Why can't a values table step combine two datasets?
- When does a custom query need two extra text columns?
- What field name does an unnamed SOQL count expression produce?
- Why must a SAQL-form measure appear twice in the JSON?

## Sources

- [Queries and Custom Queries](https://help.salesforce.com/s/articleView?id=analytics.bi_dashboard_steps.htm&language=en_US&type=5)
- [aggregateflex Step Type Properties](https://developer.salesforce.com/docs/analytics/bi-dev-guide-json/guide/bi-dbjson-steps-types-aggregateflex.html)
- [saql Step Type Properties](https://developer.salesforce.com/docs/analytics/bi-dev-guide-json/guide/bi-dbjson-steps-types-saql.html)
- [soql Step Type Properties](https://developer.salesforce.com/docs/analytics/bi-dev-guide-json/guide/bi-dbjson-steps-types-soql.html)
- [grain Step Type Properties](https://developer.salesforce.com/docs/analytics/bi-dev-guide-json/guide/bi-dbjson-steps-types-grain.html)
- [staticflex Step Type Properties](https://developer.salesforce.com/docs/analytics/bi-dev-guide-json/guide/bi-dbjson-steps-types-staticflex.html)
- [steps Properties for Compact Form and SAQL Form](https://developer.salesforce.com/docs/analytics/bi-dev-guide-json/guide/bi-dbjson-steps-form.html)
- [Create a Query with the Query Editor](https://help.salesforce.com/s/articleView?id=analytics.bi_dashboard_step_saql_build.htm&type=5&language=en_US)
- [Tips for Working with SAQL Queries in the Query Editor](https://help.salesforce.com/s/articleView?id=analytics.bi_dashboard_step_saql_limitations.htm&type=5&language=en_US)
- [Create a Custom Query with User-Defined Values](https://help.salesforce.com/s/articleView?id=analytics.bi_dashboard_steps_custom_flex.htm&type=5&language=en_US)
- [Project the Same Query Results Differently in Charts and Tables](https://help.salesforce.com/s/articleView?id=analytics.bi_dashboard_widgets_projection_flex.htm&type=5&language=en_US)
- [Add a Table Widget to Show Record Details](https://help.salesforce.com/s/articleView?id=analytics.bi_dashboard_widgets_table_add_flex.htm&type=5&language=en_US)
- [SAQL Developer Guide: Overview](https://developer.salesforce.com/docs/analytics/bi-dev-guide-saql/guide/bi-saql-intro.html)
- [Introducing SQL for CRM Analytics](https://developer.salesforce.com/docs/analytics/bi-dev-guide-sql/guide/bi-sql-intro.html)
- [SQL vs SAQL](https://developer.salesforce.com/docs/analytics/bi-dev-guide-sql/guide/bi-sql-vs-saql.html)
- [SQL Quick Start: Run Your First Query](https://developer.salesforce.com/docs/analytics/bi-dev-guide-sql/guide/bi-sql-quick-start.html)

## About the full unit

The "Core concepts", "Exam traps" and "Worked scenario" sections of this unit, its 11 linked practice questions, and unlimited timed mock exams are included with the CRM Analytics and Einstein Discovery Consultant pack (USD $19): https://www.certifyforce.com/practice-exams
