Overview

Report designer

Designer report Stimulsoft su route #/<route>/report-designer, integrato con metadata framework.

Screenshot reference (manuale utente)

  • manual__reporting__03.png: apertura report designer e struttura pannelli principali.
  • manual__reporting__04.png: esempio datasource Stimulsoft precompilato dai metadati route.

Scope

  • Disegno layout report (.mrt) direttamente in UI.
  • Anteprima e salvataggio report associato alla route metadata.
  • Supporto alla modifica iterativa senza export/import manuale del modello dati.

Pre-popolamento datasource da metadati

Quando apri il report designer, il backend prepara il datasource Stimulsoft usando i metadati della route corrente.

Flusso logico:

  • risolve la route metadata (_metadati__tabelle) e il relativo schema/tabella/query.
  • legge la definizione colonne (_metadati__colonne) con nomi, tipi e proprietà rilevanti.
  • costruisce il datasource Stimulsoft con campi coerenti ai metadati applicativi.
  • rende disponibili i campi nel pannello Dictionary del designer, già pronti per drag-and-drop nel report.

Risultato:

  • riduzione attività manuale di mapping campi nel report designer.
  • allineamento tra modello dati usato in list/grid e modello dati report.
  • maggiore robustezza quando il report viene creato partendo da route metadata standard.

Creazione guidata: dialog di scelta template

Dal menubar amministrativo della lista (Report → Crea report) si apre un dialog che chiede il tipo di template e le colonne da includere prima di aprire il designer. Il file .mrt viene generato e salvato lato server (MetaService.scaffoldReport, riservato agli amministratori) in Reports/<route>/Report_YYYYMMDD_HHMMSS.mrt; il designer si apre poi sul file già pronto.

Template disponibili:

  • Tabellare (bands): elenco a righe con intestazioni; le celle sono già popolate con le colonne selezionate (label in header, binding {route.colonna} nella data band). Le route collegate (md_detail_grid_routes/md_nested_grid_routes) sono elencate come opzioni selezionabili — deselezionate di default — e generano le bande master-detail solo se spuntate, con le rispettive colonne.
  • Tabella pivot (crosstab): matrice righe × colonne con valore aggregato; il dialog chiede una o più colonne di riga, la colonna della dimensione orizzontale, la colonna valore e la funzione di aggregazione (Sum/Avg/Count/Min/Max).
  • Raggruppato (cross-group): sezioni per valore di raggruppamento; il dialog chiede la colonna di raggruppamento, le colonne di dettaglio e totali di gruppo opzionali (colonna numerica + aggregazione).

Note:

  • annullando il dialog non viene creato nulla; per gli utenti non amministratori (o in caso di errore) si apre il designer con il template storico a bande vuote.
  • le colonne non selezionate restano comunque disponibili nel pannello Dictionary: la scelta filtra solo le celle generate.

Note operative

  • Se aggiungi/rimuovi colonne metadata, riapri il report designer per rigenerare il dictionary.
  • Il report usa i nomi campo metadata-driven: evita rename non coordinati lato metadati.
  • Per scenari avanzati, puoi comunque integrare datasource personalizzati nel file .mrt.

Screenshot

report-designer / manual-report-01
report-designer / manual-report-01
Report designer in azione
Report designer in azione