L'obiettivo principale di questa guida sarà quello di mostrare come visualizzare
determinati dati presenti in una particolare tabella - dati che verranno scelti di
volta in volta - utilizzando le query. Verranno inoltre spiegate le varie
funzionalità proprie del modulo Query.
La tabella di riferimento per l'estrapolazione dei dati sarà quella delle Risorse,
AngRes. Le risorse presenti nella tabella AngRes sono, per questa guida, le seguenti:
La visualizzazione standard della tabella AngRes è questa:
| Cod. Ris. | Desc. Ris. |
|---|---|
| MR | Mario Rossi |
| GV | Guido Verdi |
| PB | Paolo Bianchi |
| PR1 | Pressa 1 |
La query standard che sta dietro a questa tabella è StdAngRes, rintracciabile
all'interno della lista query che viene visualizzata come schermata iniziale del
modulo Query. Per poter modificare questa query, dovremo crearne una nuova versione.
Una query template è una query di base, non modificabile. Tutte le versioni che le
succederanno avranno come minimo il contenuto della stessa template. Per creare un
nuovo template di query, entrare nel modulo Query e cliccare il pulsante
Nuovo template posizionato in alto sopra la barra delle etichette. Si aprirà un modal.
false dall'utente; sarà il sistemista o lo sviluppatore che, per personalizzaretrue.All'interno del modulo Query, cercare tramite il bottone di ricerca la query standard
StdAngRes, selezionarla, e aggiungere tramite il pulsante in alto Nuova Versione
una nuova versione di questa query, denominando il campo Descrizione Query Risorse2.
Impostando il flag del campo Default a true la nuova versione sarà quella
predefinita e sarà quindi possibile modificare la query a seconda dei dati che si
vorranno visualizzare.
NB: Risorse2 non è visibile all'interno della lista delle query standard; essa
è la nuova versione della query standard StdAngRes. La si potrà recuperare
all'interno della lista delle versioni di questa query.
All'interno del modulo Query, selezionata la query di interesse, si aprirà una
schermata divisa per sezioni, la prima delle quali sarà la sezione Query.
All'interno di essa abbiamo più voci:
true se si vuole utilizzare la nuova versione dellafalse, verrà fatta lavorare la query standard.All'interno di questa sezione, cliccando la tabella collegata AngRes comparirà
il modal Modifica tabella di partenza e collegamenti. Vediamo le voci e i flag
che contiene:
true, verranno aggiunti alle Colonne visualizzabilitrue, permette di visualizzare i campiDue tabelle possono essere legate da relazioni di dipendenza o di dettaglio:

Esempio pratico:
Il flag Solo Se Esiste (SSE) fa da filtro alla visualizzazione:
true → vengono mostrati solo i record che hanno il dato collegato valorizzatofalse → vengono mostrati tutti i record, anche quelli senza il dato collegatoEsempio — collegamento AngRes + AngPrjCal (Calendari):
SSE = true
| Desc. Ris. | Desc. Calend. |
|---|---|
| Mario Rossi | Calendario Mario Rossi |
| Guido Verdi | Calendario Guido Verdi |
SSE = false
| Desc. Ris. | Desc. Calend. |
|---|---|
| Mario Rossi | Calendario Mario Rossi |
| Guido Verdi | Calendario Guido Verdi |
| Paolo Bianchi | |
| Pressa 1 |
Questa sezione permette di scegliere quali colonne visualizzare e in quale ordine.
Dando Modifica, compariranno due sotto-sezioni:
Esempio con Descrizione Risorsa e Codice Risorsa:
| Desc. Ris. | Cod. Ris. |
|---|---|
| Mario Rossi | MR |
| Guido Verdi | GV |
| Paolo Bianchi | PB |
| Pressa 1 | PR1 |
| Etichetta | Descrizione |
|---|---|
| Alias | Riferimento alla tabella di provenienza della colonna |
| Nome colonna | Codice della colonna |
| Descrizione breve | Nome stringato della colonna |
| Descrizione estesa | Nome completo della colonna |
| Tipo colonna | A = Uid, B = Vero/falso, I = Numero intero, S = Testo, T = Data/ora |
| Ricerca fulltext | Abilita la ricerca testuale (solo per colonne di tipo S) |
Questa sezione permette di modificare l'ordine di visualizzazione dei record.
Compariranno due sotto-sezioni:
Esempio con ordinamento per Descrizione Risorsa (Crescente = true):
| Desc. Ris. | Cod. Ris. |
|---|---|
| Guido Verdi | GV |
| Mario Rossi | MR |
| Paolo Bianchi | PB |
| Pressa 1 | PR1 |
In caso di omonimi, aggiungendo anche il Codice Risorsa agli ordinamenti applicati
con Crescente = false:
| Desc. Ris. | Cod. Ris. |
|---|---|
| Guido Verdi | GV1 |
| Guido Verdi | GV |
| Mario Rossi | MR |
| Paolo Bianchi | PB |
| Pressa 1 | PR1 |
Flag Crescente:
true= ordine A→Z,false= ordine Z→A
Entrare nel modulo Query, selezionare la query StdAngRes e la nuova versione
Risorse2. Cliccare Modifica, spostarsi nella sezione Colonne visualizzate,
selezionare Descrizione Risorsa (ResDsc) e cliccare Rimuovi. La tabella
risultante sarà:
| C. Ris. |
|---|
| MR |
| GV |
| PB |
| PR1 |
| GV1 |
I Tipi Risorse disponibili sono: operaio, ufficio, materiali.
Per visualizzarli, collegare la tabella AngRes alla tabella AngResTyp nella
sezione Tabelle collegate. Il risultato sarà:
| Desc. Ris. | Desc. Tip. Ris. |
|---|---|
| Mario Rossi | Ufficio |
| Guido Verdi | Operaio |
| Paolo Bianchi | Ufficio |
| Pressa 1 | Materiali |
| Guido Verdi | Ufficio |
Collegare in sequenza:
Il risultato sarà:
| Desc. Ris. | Desc. Tip. Ris. | Cod. Mac. Typ. |
|---|---|---|
| Mario Rossi | Ufficio | H |
| Guido Verdi | Operaio | H |
| Paolo Bianchi | Ufficio | H |
| Pressa 1 | Materiali | M |
| Guido Verdi | Ufficio | H |
Selezionare la query di interesse e cliccare il pulsante Anteprima — si aprirà
un modal con i dati risultanti dalla query.
Selezionare la query di interesse e cliccare Esporta. Il modal permette di scegliere:
true, esporta anche la sezione Colonnetrue, esporta anche la sezione Ordinamenti.qry sul proprio PCDal modulo Query cliccare Importa. Il wizard si articola in due passi:
.qry da importareCMR) e laCalendarioMarioRossi)UffTec, Descrizione: Ufficio Tecnico)trueSSE = false
| Desc. Ris. | Desc. Grp. |
|---|---|
| Guido Verdi | |
| Guido Verdi | |
| Mario Rossi | Ufficio Tecnico |
| Paolo Bianchi | |
| Pressa 1 |
SSE = true
| Desc. Ris. | Desc. Grp. |
|---|---|
| Mario Rossi | Ufficio Tecnico |
La tabella AngResGrp è necessaria perché Risorse e Gruppi non hanno un
riferimento diretto l'una all'altra. AngResGrp funge da tabella di associazione,
permettendo di legare più risorse a più gruppi.