Raggruppamenti, grafici e sotto-report
Raggruppare per un campo con intestazione e piè di pagina propri, sommare con gli aggregati, disegnare grafici sulla carta e incorporare un report dentro un altro.
Una banda di dettaglio da sola sa solo stampare una riga per record. Quello che trasforma un elenco in un documento sono tre pezzi: i raggruppamenti, che spezzano l'elenco in blocchi con titolo e totale; i grafici, che riassumono quello che l'elenco dice; e i sotto-report, che portano dentro il documento un set di dati completamente diverso.
Restiamo nel report Oportunidades por conta dell'app Gestione Clienti.
Raggruppamenti
Un raggruppamento spezza l'elenco ogni volta che il valore di un campo cambia. Ogni livello porta due bande proprie: un'intestazione, che compare quando il valore cambia, e un piè di pagina, che compare quando il valore finisce.
È questo che fa il documento "ogni account, con le sue opportunità sotto e il totale alla fine".
Creare un raggruppamento
- Nella colonna di sinistra, clicca sul + della sezione Raggruppamenti.
- Seleziona la banda Intestazione: … che è comparsa sulla superficie di disegno.
- Nel pannello di destra, nella sezione Raggruppamento, scegli il Campo.

| Proprietà | Cosa fa |
|---|---|
| Campo | "Campo del set principale il cui valore definisce il gruppo. Le righe vengono ordinate in base a esso." Accetta percorsi con il punto per percorrere le relazioni: conta.nome. |
| Ordine | Crescente o Decrescente. |
| Ripeti intestazione | "Quando il gruppo continua nella pagina successiva, la sua intestazione compare di nuovo in alto." |
| Nuova pagina per gruppo | "Ogni gruppo inizia su una pagina tutta sua." È quello che si attiva per stampare una fattura per foglio. |
Le bande di gruppo compaiono sulla superficie di disegno incastrate attorno al dettaglio, con un rientro che mostra a quale livello appartengono. Puoi avere quanti livelli vuoi — per anno, poi per cliente, poi per fattura.
Dica
Un campo dentro un'intestazione di gruppo legge la prima riga del gruppo. È questo che fa comparire il nome dell'account sopra le sue opportunità. Fuori dalle bande di gruppo (nell'intestazione del report, per esempio) non c'è nessuna riga e il campo esce vuoto.
Totali con l'Aggregato
L'elemento Aggregato è un calcolo fatto dal motore: Somma, Media, Conteggio, Minimo o Massimo su un campo di un set.
Dove lo metti decide cosa conta:
| Dove si trova | Cosa somma |
|---|---|
| Nel piè di pagina di un gruppo | Solo le righe di quel gruppo — il totale di quell'account. |
| Nel piè di pagina del report | Tutte le righe — il totale generale. |
| Nella banda di dettaglio, su un set collegato | Solo le righe di quella riga — il totale di quella fattura. |
Nel Conteggio, il campo può restare vuoto: conta righe, non valori.
Grafici
Un grafico sulla carta usa lo stesso motore e le stesse opzioni del widget grafico delle schermate. Nel PDF viene disegnato sul server ed entra in vettoriale, non come immagine — un grafico rasterizzato sarebbe sfocato in stampa o all'ingrandimento.

Trascina Grafico dalla palette su una banda e configuralo:
| Proprietà | Note |
|---|---|
| Tipo di grafico | Barre, Linea, Area, Torta / Donut, Dispersione, Radar, Imbuto, Gauge (indicatore) o Mappa di calore. |
| Set di dati | Da dove vengono le righe. Vuoto usa il set principale. |
| Campo di categoria (asse X / fette) | "Campo che definisce l'asse orizzontale (o le fette)." |
| Campi di valore | "Campi numerici da disegnare. Senza campo di serie, ognuno è una serie." Si aggiungono con Aggiungi valore. |
| Campo di serie (raggruppamento) | "Campo che separa le serie. Con esso, si pivota sul primo campo di valore." |
| Legenda e Posizione della legenda | In alto, In basso, A sinistra o A destra. |
| Valori sui punti | Scrive il numero sopra ogni barra o punto. |
A seconda del tipo, compaiono anche Impilato, Linee morbide, Orizzontale e Raggio interno del donut (%).
Nell'esempio, il grafico del Piè di pagina del report ha categoria fase e
valore valor: una barra per fase del pipeline, con la somma degli affari di
ciascuna.
Nota
Un grafico in una banda di gruppo disegna i dati di quel gruppo — un grafico per account. In una banda di dettaglio disegnerebbe un grafico per riga stampata, che quasi mai è quello che si vuole.
Sotto-report
Un sotto-report è un altro report disegnato dentro questo. Serve per quello che il raggruppamento non fa: il raggruppamento spezza un set; il sotto-report ne porta un altro intero.
Il caso classico: in un estratto conto, le fatture aperte e i pagamenti — due elenchi di tabelle diverse sullo stesso foglio. Nel nostro esempio, l'intestazione di ogni account porta l'elenco dei suoi contactos, prima delle opportunità.

Disegnare il figlio
Il report incorporato è un report normale, con vita propria — si apre, si disegna e se ne fa l'anteprima come di qualunque altro. La differenza è che dichiara parametri per ricevere il contesto da chi lo incorpora.

Nell'esempio, Contactos da conta ha un parametro conta (Numero,
obbligatorio) e il suo set di dati filtra conta_id per quel parametro. Le bande
che non interessano in un documento incorporato — intestazione di pagina, piè di
pagina — restano disattivate.
Incorporare
- Trascina Sotto-report dalla palette su un'intestazione, un piè di pagina o una banda di gruppo.
- In Scegli il report, scegli il figlio.
- Per ogni suo parametro, di' da dove viene: Campo della riga (legge il campo della riga in cui si trova il sotto-report) o Valore fisso.
Atenção
Un sotto-report non può stare nella banda di dettaglio, e questo viene impedito, non segnalato: "eseguirebbe una query per ogni riga stampata" — mille fatture, mille andate alla base. Mettilo in un'intestazione, in un piè di pagina o in una banda di gruppo, dove le occorrenze sono poche.
Le ripetizioni con gli stessi parametri condividono la lettura, perciò un sotto-report nell'intestazione di gruppo costa una query per gruppo, non per riga.
Codici a barre e immagini
Due elementi che completano un documento aziendale:
Codice a barre — il valore può venire da un campo (il caso normale in una fattura) o essere fisso:
| Campo | Note |
|---|---|
| Tipo | Code 128 accetta testo e numeri. EAN-13 sono 12 o 13 cifre e verifica la cifra di controllo. QR accetta qualsiasi testo — è quello delle fatture. |
| Campo | "Campo con il valore da codificare. Vuoto usa il valore fisso qui sotto." |
| Valore fisso | Usato solo quando non c'è un campo scelto. |
| Mostra il valore | Stampa il valore sotto le barre (non si applica al QR). |
Immagine — l'Origine sceglie da dove viene:
| Origine | Cosa si compila |
|---|---|
| File dell'app | Un file caricato nell'app (per esempio icons/logo.svg). |
| Indirizzo | Un URL. |
| Campo dei dati | "Campo con l'immagine: URL, percorso in assets, o il binario in base64." |
L'Adattamento decide cosa succede quando l'immagine non ha la forma del riquadro: Adatta, Riempi o Estendi.
Domande frequenti
Il gruppo non raggruppa niente — esce tutto di seguito. Il campo del raggruppamento deve essere del set principale, e le righe vengono ordinate in base a esso. Se il campo è vuoto in molte righe, quelle finiscono tutte nello stesso gruppo.
Il totale del gruppo sta sommando tutto. L'aggregato è fuori dalla banda del gruppo. Mettilo nel piè di pagina di quel gruppo — è la posizione che definisce l'ambito del calcolo.
Il grafico esce bianco nel PDF ma si vede nel disegno. Sulla superficie di disegno, un grafico senza dati mostra un campione di esempio. Nel PDF c'è solo quello che i dati danno: controlla il Set di dati, il Campo di categoria e che ci sia almeno un Campo di valore scelto.
Posso mettere un sotto-report dentro un altro sotto-report? Sì, con la stessa regola: mai nella banda di dettaglio. Ma pensaci due volte — due livelli di incorporamento rendono il documento difficile da prevedere, e spesso quello che si voleva era un altro livello di raggruppamento.
