.. _orm_genropy/orm_genropy/lettura/selection: selection ========= La ``selection`` crea e ritorna un oggetto *SqlSelection*, contenente i dati risultato della *query*. Di questo oggetto *SqlSelection* è poi possibile richiedere un ``output`` di diversi tipi: :: myquery.selection().output('pkeylist') ['syd9_cQZPm_AxELj3jJKxw','ja14mgX2P2mRQWUNMWcdKg','g8pa8wDvMIeQW0R8Chn6ZA', 'mf_6EJbWN1unRWkVjRRTgA','pN1YrXqfPyinfCQBQ2qewQ','eXTjroRqOLqqaP5Ez4vL0g'] che restituisce la lista di *pkeys* oggetto di interrogazione. :: myquery.selection().output('records') [, , , , , ] restituisce la lista dei record. :: myquery.selection().output('list') [['Mario Rossi', 'syd9_cQZPm_AxELj3jJKxw'], ['Giardini e Giardini', 'ja14mgX2P2mRQWUNMWcdKg'], ['Porcari Francesco', 'g8pa8wDvMIeQW0R8Chn6ZA'], ['Rossi Mario', 'mf_6EJbWN1unRWkVjRRTgA'], ['Bianchi Luigino', 'pN1YrXqfPyinfCQBQ2qewQ'], ['Effelunga', 'eXTjroRqOLqqaP5Ez4vL0g']] restituisce la lista delle coppie di ``ragione_sociale`` e ``pkey``. :: myquery.selection().output('selection') restituisce una `Bag `_ con chiavi le *pkey*, e **attributi** la ``ragione_sociale`` e la ``pkey``. .. hint:: Abbiamo visto solo alcuni esempi più utilizzati, ma si tenga presente che gli *output* sono molteplici, ed è in particolare possibile richiedere: ``bag``, ``baglist``, ``grid``, ``count``, ``data``, ``dictlist``, ``distinct``, ``distinctColumns``, ``fullgrid``, ``generator``, ``json``, ``listItems``, ``recordlist``, ``tabtext``, ``template``, ``xls``, ``xmlgrid``. .. raw:: html
**Parametri:** +------------------------+------+--------------------------------------------------+ | Nome parametro | Tipo | Descrizione | +========================+======+==================================================+ |where |T |Permette di indicare la condizione "where" che | | | |individuerà i record oggetto della query (es: | | | |where='$id=#THIS.id') | +------------------------+------+--------------------------------------------------+ |pkey |T |Alternativamente alla where permette di fornire | | | |una pkey come criterio di ricerca (es: | | | |pkey=medico_id) | +------------------------+------+--------------------------------------------------+ |columns |T |Permette di indicare le colonne da restituire come| | | |risultato dell'interrogazione (es: | | | |columns='$fattura_id,$protocollo,$cliente_id') | +------------------------+------+--------------------------------------------------+ |for_update |B |Se impostato a True il risultato della query sarà | | | |predisposto per la modifica tramite un'operazione | | | |di update (es: for_update=True) | +------------------------+------+--------------------------------------------------+ |excludeDraft |B |Di default True, se impostato a False permette di | | | |includere nei risultati gli status "Bozza" (es: | | | |excludeDraft=False) | +------------------------+------+--------------------------------------------------+ |excludeLogicalDeleted |B |Di default True, se impostato a False permette di | | | |includere nei risultati i record archiviati o | | | |eliminati (es: excludeDraft=False) | +------------------------+------+--------------------------------------------------+ .. sectionauthor:: Davide Paci