.. _tablehandler/ViewResource/base_hooks/th_query_method: Metodo th_query =============== Criterio di ricerca predefinito ------------------------------- :: def th_query(self): Non riceve alcun parametro e ritorna un **dizionario contenete la colonna e le regole** utilizzate nella query iniziale:: return dict(column='ragione_sociale', op='contains', val='') dove: 1) ``column`` indica la colonna su cui effettuare la ricerca. La colonna iniziale della ricerca potrà essere sia **una colonna della tabella principale**, sia una **qualsiasi altra colonna di una tabella in relazione**, nel qual caso andrà indicata con la consueta sintassi per indicare la colonna di una tabella in relazione (ad es: ``@fatture.fattura_numero``) 2) ``op`` contiene la lista delle operazioni possibili 3) ``val`` l'eventuale valore iniziale (che viene passato alla finestra contenente la grid) 4) ``runOnStart`` (Boolean, opzionale defeult = False) indica se eseguire immediatamente la query Vediamo ora alcuni esempio per dimostrare l'uso dei parametri: .. image:: /_static/images/ViewResource/base_hooks/th_query_01.png :width: 474px :align: center :height: 126px il primo parametro ``column`` seleziona dalla lista delle colonne disponibili, la colonna su cui fare la selezione .. image:: /_static/images/ViewResource/base_hooks/th_query_02.png :width: 416px :align: center :height: 158px il secondo parametro ``op`` imposta il criterio di selezione dei dati .. image:: /_static/images/ViewResource/base_hooks/th_query_03.png :width: 481px :align: center :height: 133px e infine il terzo parametro ``val`` viene impostato (se valorizzato) nel campo come valore di ricerca. Riepilogando il significato sarà: seleziona tutte le righe che nella colonna (1) che soddisfano il criterio (2) con il valore (3) .. raw:: html
**Parametri:** +------------------------+------+--------------------------------------------------+ | Nome parametro | Tipo | Descrizione | +========================+======+==================================================+ |column |T |Indica la colonna predefinita su cui verrà fatta | | | |la ricerca, l'utente la potrà comunque cambiare | | | |scegliendo dalla tendina una colonna diversa. | +------------------------+------+--------------------------------------------------+ |op |T |il valore di default per op è 'contains' ovvero | | | |viene fatta una query in cui il valore sia | | | |contenuto nella colonna indicata. Possibili valori| | | |per op: 'equal', 'startswith', 'wordstart', | | | |'contains','similar', 'startswithchars', | | | |'greater', 'greatereq', 'less', 'lesseq', | | | |'between', 'isnull', 'istrue', 'isfalse', | | | |'nullorempty', 'in', 'regex' | +------------------------+------+--------------------------------------------------+ |val |T |valore iniziale predefinito che viene impostato | | | |nel campo di ricerca (il valore predefinito è un | | | |campo vuoto) | +------------------------+------+--------------------------------------------------+ |runOnStart |T |L'impostazione di questo parametro al consente di| | | |stabilire se la query debba essere esguita | | | |automaticamente (runOnStart=True). La mancata | | | |assegnazione del parametro assume l'impostazione | | | |di default (runOnStart=False)quindi la query non | | | |viene eseguita in modo automatico. | +------------------------+------+--------------------------------------------------+ .. sectionauthor:: Valter Vettorello