.. _tablehandler/tipi_tablehandler/groupby_th: groupByTableHandler =================== Questo speciale TableHandler è quello che si ottiene anche da interfaccia in una qualunque vista cliccando sull'icona del sigma: .. image:: /_static/images/tipi_tablehandler/sigma.png :width: 30px :align: center Può essere usato all'interno di un altro TableHandler o in una webpage, purché sia indicata anche una `condition`:: def main(self,root,**kwargs): bc = root.borderContainer(height='100%', datapath='main.tracks') bc.contentPane(region='top', margin='5px').dbSelect(value='^artist', table='mu.artists', lbl='Seleziona un artista') bc.contentPane(region='center').groupByTableHandler(table='mu.tracks', struct=self.structAlbum, condition='@albumid.artistid=:artist', condition_artist='^artist') def structAlbum(self, struct): r = struct.view().rows() r.fieldcell('@albumid.albumid', hidden=True) r.fieldcell('@albumid.title', name='album') r.fieldcell('name') r.fieldcell('genre_id') r.fieldcell('composer') Il risultato è il seguente: .. image:: /_static/images/tipi_tablehandler/groupbyth.gif :width: 760px :align: center Si noti che il *groupByTableHandler* presenta una `Grid View` e una `Tree View`, entrambe poi rappresentabili in modalità `Flat` e `Stacked`. .. hint:: Può essere una rappresentazione utile nel caso in cui si voglia dare la possibilità di fare delle analisi statistiche su una tabella. .. raw:: html
**Parametri:** +------------------------+------+--------------------------------------------------+ | Nome parametro | Tipo | Descrizione | +========================+======+==================================================+ |table |T |Permette di indicare la table di partenza dei dati| +------------------------+------+--------------------------------------------------+ |relation |T |In caso di tabella in relazione, permette di | | | |indicare la relation_name da seguire per | | | |recuperare i dati | +------------------------+------+--------------------------------------------------+ |formResource |T |Permette di indicare una specifica formResource | | | |del Tablehandler da utilizzare | +------------------------+------+--------------------------------------------------+ |viewResource |T |Permette di indicare una specifica viewResource | | | |del Tablehandler da utilizzare | +------------------------+------+--------------------------------------------------+ |condition |T |Permette di indicare la condition sulla base della| | | |quale filtrare i dati (es: | | | |condition='@albumid.artistid=:artist', | | | |condition_artist='^artist') | +------------------------+------+--------------------------------------------------+ |title |T |Titolo del box occupato dal Tablehandler | | | |(visualizzato sopra la griglia) | +------------------------+------+--------------------------------------------------+ |delrow |B |True o False, se impostato a False disattiva la | | | |possibilità di eliminare record | +------------------------+------+--------------------------------------------------+ |addrow |B |True o False, se impostato a False disattiva la | | | |possibilità di aggiungere record | +------------------------+------+--------------------------------------------------+ |export |B |True o False, se impostato a True permette di | | | |esportare i dati in formato Excel | +------------------------+------+--------------------------------------------------+ |virtualStore |B |True o False, se impostato a True il caricamento | | | |dei dati sarà automatico e la ricerca | | | |disabilitata. | +------------------------+------+--------------------------------------------------+ |view_store_onStart |B |In caso di chiamata a un tablehandler con quindi | | | |di default uno store statico, al fine di | | | |visualizzare i dati nello store al caricamento si | | | |può impostare un innesco oppure il parametro | | | |view_store_onStart=True | +------------------------+------+--------------------------------------------------+ |searchOn |B |Se impostato a "False" disabilita la casella di | | | |testo per effettuare la ricerca quando questa è | | | |già in sostituzione alla query classica (es: | | | |quando virtualStore=False) | +------------------------+------+--------------------------------------------------+ |extendedQuery |B |True o False, se impostato a True attiva la | | | |ricerca avanzata e la toolbar di default del | | | |tablehandler | +------------------------+------+--------------------------------------------------+ |autoSave |B |Se impostato a True, il salvataggio automatico | | | |delle modifiche sarà abilitato | +------------------------+------+--------------------------------------------------+ |grid_autoSelect |B |Se impostato a True verrà automaticamente | | | |selezionato il primo valore in griglia al | | | |caricamento | +------------------------+------+--------------------------------------------------+ |grid_multiSelect |B |True o False, se impostato a False impedisce la | | | |selezione multipla delle celle | +------------------------+------+--------------------------------------------------+ |grid_selfDragRows |B |True o False, se impostato a True permette | | | |l'ordinamento personalizzato delle righe tramite | | | |trascinamento | +------------------------+------+--------------------------------------------------+ |form_locked |B |Permette di scegliere se la Form del th | | | |rappresentato si mostrerà di default come aperta o| | | |chiusa | +------------------------+------+--------------------------------------------------+ |formInIframe |B |Se impostato a True la form sarà caricata in un | | | |iframe | +------------------------+------+--------------------------------------------------+ |configurable |B |Di default True, se impostato a False non mostrerà| | | |la linguetta per configurare le colonne | +------------------------+------+--------------------------------------------------+ |struct |T |Permette di indicare un metodo che descrive la | | | |struct della vista | +------------------------+------+--------------------------------------------------+ .. sectionauthor:: Davide Paci