Blog

Come raggruppare e filtrare i dati in tempo reale con la Grouped View

Come raggruppare e filtrare i dati in tempo reale con la Grouped View

Abbiamo già visto nella precedente Genropill “Come creare velocemente report su dati aggregati” come Genropy ci metta a disposizione un semplice ed efficace strumento, il Group By, per aggregare dati sulla base di criteri di nostra scelta ed ottenere di fatto report immediati.

Da oggi però Genropy ci mette a disposizione un ulteriore strumento di analisi per definire criteri di raggruppamento e selezione dei dati in tempo reale, la Grouped View.

La Grouped View permette di aggregare i dati e mostrare un risultato modificabile in tempo reale: nella parte a sinistra compariranno infatti i dati aggregati sulla base dei criteri che abbiamo scelto, quindi nel nostro caso il totale per anno, il sub-totale per regione e ancora il sub-totale per cliente. Cliccando su una qualsiasi di queste righe verranno visualizzati tutti i record che contribuiscono al totale visualizzato (quindi tutte le fatture dell’anno, o della regione, o del cliente). I dati di partenza della vista saranno sempre gli stessi, non sarà quindi necessario ripetere la query ogni volta, ma per spostarsi da un filtro all’altro sarà sufficiente cliccare sul raggruppamento di interesse.

Il filtro viene applicato in progressione da sinistra a destra, sulla base dell’ordinamento delle colonne: quindi, nel nostro caso, prima l’anno, poi la regione e infine il cliente. Trascinando a sinistra la regione ribalteremmo la situazione, e raggrupperemmo i dati prima per regione e poi per anno, quindi per cliente.

Il video ci mostra come funziona la Grouped View per aggregare i dati della tabella Fatture sulla base dell’anno, della regione e del singolo cliente.

La Grouped View rappresenta quindi uno strumento di selezione rapida in base a criteri che prima era possibile solo tramite l’utilizzo delle sections, ma mentre queste dovevano essere definite dal programmatore nel codice della pagina, la Grouped View è modificabile in tempo reale in totale autonomia dall’utilizzatore finale .

Dal punto di vista dello sviluppatore, la Grouped View è attivata come predefinita in qualsiasi View generata attraverso Tablehandler. Alternativamente, per regolarne o meno l’attivazione in questo o altri contesti, è possibile impostare a True o False l’attributo groupable del metodo th_options della view:

def th_options(self):
     return dict(groupable=False)

Inoltre, non necessariamente la struct deve essere definita da interfaccia, ma è possibile preparare delle struct anche nella risorsa View con il metodo th_groupedStruct:

def th_groupedStruct(self,struct): 
    "Per anno, regione e ragione sociale" 
     r = struct.view().rows()
     r.fieldcell('data', name='Anno', width='6em', group_aggr='YYYY')
     r.fieldcell('@cliente_id.@provincia.regione', name='Regione')
     r.fieldcell('@cliente_id.ragione_sociale', name='Rag.soc.')
     r.cell('_grp_count',name='Cnt',width='5em',
             group_aggr='sum',dtype='L',childname='_grp_count')

La Grouped View è stata una novità di recentissima introduzione, che potenzia notevolmente Genropy nella sua funzionalità di analisi dei dati.

Ti interessa approfondire l’utilizzo della Grouped View? Consulta la documentazione dedicata:


Ti stai avvicinando al mondo Genropy e desideri saperne di più? Seguici sui social per tenerti in contatto con le ultime novità che Genropy ha da offrire:

Genropy Seguici su Facebook
Pagina Facebook

 

Genropy Seguici Gruppo Facebook
Gruppo Facebook

 

Genropy Gruppo Telegram
Gruppo Telegram