Query
Una query è un’interrogazione sui dati presenti nel database. Essa si presenta con una finestra di parametri che l’operatore deve utilizzare per specificare la sua richiesta (vedi esempio sotto riportato):

La sua definizione è attuata per tramite di un XML con:
- classe sql
- subclasse il nome (o numero) che si intende dare alla query
la query così definita è avviabile mediante il comando diretto sqnomequery (ad es. la query definita con classe sql e nome prova può essere avviata con il comando sqprova, per chi preferisse la numerazione delle query, la query definita con classe sql e numero 23 può essere avviata con il comando sq23).
La struttura principale di un XML che definisce una query è la seguente che definisce i seguenti ambiti:
- le stringhe SQL per la esecuzione della query;
- la definizione del modo con cui i campi estratti devono essere visualizzati;
- la definizione dei parametri di selezione;
- la definizione degli eventuali layout di stampa (report) associati alla query.
<?xml version="1.0" encoding="UTF-8"?> <root> <caption>il titolo della query</caption> <strselect>il costrutto select della query</strselect> <strwhere>la condizione where della query</strwhere> <strgroup>il costrutto group by della query</strgroup> <strhaving>il costrutto having della query</strhaving> <strorder>il costrutto di ordinamento della query</strorder> <execmode>tipo di output prodotto</execmode> <preferredexecmode>il tipo di output preferenziale</preferredexecmode> <keyfieldname>nome del campo chiave</keyfieldname> <detailformxml>form di dettaglio</detailformxml> <detailformmode>modo di apertura form dettaglio</detailformmode> <detailformwidth>larghezza form dettaglio</detailformwidth> <detailformheight>altezza form dettaglio</detailformheight> <toolpalette>eventuale palette degli strumenti</toolpalette> <preparefunction>funzione da eseguire prima dell'esecuzione della query</preparefunction> <prepareinclude>file php che contiene la classe/funzione da eseguire prima dell'esecuzione della query</prepareinclude> <prepareclass>classe contenente la funzione da eseguire prima dell'esecuzione della query</prepareclass> <postprocess>processo di post-elaborazione eseguito dopo la query e prima della produzione dell'output</postprocess> <coldefs> <nomecampo1> definizione primo campo </nomecampo1> ... <nomecampoN> definizione ultimo campo </nomecampoN> </coldefs> <selfields> <field> definizione primo campo per selezione </field> ... <field> definizione ultimo campo per selezione </field> </selfields> <reports> <report> definizione primo report di stampa </report> ... <report> definizione ultimo report di stampa </report> </reports> </root>