Dashboard builder

Views (SQL-laag) volledige reference

Views zijn de transformatielaag tussen datasource en widget. Hiermee combineer je bronnen, standaardiseer je kolommen en centraliseer je businesslogica.

1. Workflow

  1. Open dashboard in edit mode.
  2. Klik Edit Views in de editor tray.
  3. Voeg een view toe met Add View.
  4. Stel identifier, naam en query in.
  5. Zet filter/search toggles naar wens.
  6. Klik Apply en koppel widgets aan view-output.
Edit Views
Views dialoog met SQL editor en toggles.
Editor tray
Edit Views is bereikbaar via editor tray.

2. View settings (setting-by-setting)

Key Type Beschrijving
uidstringUnieke identifier binnen de pagina (verplicht).
namestringDisplay name in selectors/editors.
descriptionstringFunctionele toelichting voor maintainers.
applyPageFiltersbooleanPast actieve page filters toe op view bronnen.
applySearchToSourcesbooleanPast globale zoekterm (q) toe op view bronnen.
querySQL stringDashview SQL Engine statement (verplicht, zonder afsluitende ;).

Belangrijke defaults/normalisatie

  • Bij nieuwe views is applyPageFilters=false.
  • applySearchToSources volgt standaard de filter-toggle (true als filters aanstaan).
  • Editor trimt trailing puntkomma's in query.
  • Dubbele uid waarden blokkeren opslaan.

3. SQL model: global_* tabellen en filter placeholders

Datasource tabellen in views

  • Gebruik in views altijd datasource-tabellen met prefix global_.
  • Voorbeeld: datasource UID orders wordt global_orders.
  • Niet-alfanumerieke tekens in UID worden vervangen door _.
  • Zonder global_* tabelnaam kan Dashview de view-bron niet correct laden.

Placeholder syntax

  • Beide vormen werken: @filter.key en @filters.key.
  • Gebruik placeholders zonder extra quotes; Dashview rendert SQL-literals zelf.
  • Single values: WHERE country = @filters.country.
  • Multi values: WHERE status IN (@filters.status).
  • Date-range: @filters.invoiceDateFrom en @filters.invoiceDateTo.

Toggles in combinatie met placeholders

  • applyPageFilters=true voegt page filters toe op gebruikte global_* tabellen.
  • applySearchToSources=true voegt globale search (q) toe op tabelbronnen.
  • Placeholders geven je expliciete controle in SQL bovenop deze toggles.
SELECT
  o.invoice_date::DATE AS datum,
  o.country,
  o.status,
  o.total
FROM global_orders o
WHERE o.country = @filters.country
  AND o.status IN (@filters.status)
  AND o.invoice_date >= @filters.invoiceDateFrom
  AND o.invoice_date < @filters.invoiceDateTo

4. SQL patronen voor dashboardbouwers

Bronnen combineren

  • Gebruik expliciete aliassen voor stabiele widget field-mapping.
  • Normaliseer datums en sleutels vóór joins.
  • Voeg dimensies toe die filterbaar en groepeerbaar zijn.
SELECT
  o.order_date::DATE AS datum,
  o.region,
  o.revenue,
  c.segment
FROM global_orders o
LEFT JOIN global_customers c
  ON o.customer_id = c.customer_id

Pre-aggregatie en metrics

  • Bereken KPI ratio's in views i.p.v. in widgets.
  • Gebruik window functies voor rolling metrics/ranks.
  • Bewaar complexe businesslogica in een centrale view.
SELECT
  region,
  SUM(revenue) AS omzet,
  SUM(cost) AS kosten,
  SUM(revenue) - SUM(cost) AS marge
FROM global_finance
GROUP BY region

5. Validatie en fouten

Tip: valideren in Query Console en daarna pas widgets op de view aansluiten.