Query semplici

Il modo principale per effettuare una interrogazione , da una Pagina per la gestione di tabella , è lo strumento detto Plain query che si trova a sinistra nella barra degli strumenti sotto il titolo della pagina.

Questo strumento permette di creare rapidamente una query ponendo una sola condizione. Tale condizione è costituita da

  • il campo di riferimento

  • eventualmente la negazione NOT

  • l’operatore

  • il valore di raffronto

    Esempio: anno_nascita NOT < 1980

Lo strumento Plain query è perciò costituito da:

  1. Un menu che propone, non solo tutte le colonne della tabella principale, ma anche tutte le colonne delle tabelle in relazione ascendente o discendente.

  2. Un piccolo menu per aggiungere o togliere l’operatore di Negazione NOT

  3. Un menu che offre tutti gli operatori compatibili con il tipo di dato della colonna selezionata

  4. Un campo input dove digitare il valore di raffronto

  5. Un bottone di invio per eseguire la query

../../../_images/01_query2.png

Il menu selezione campo

Il campo di riferimento a cui applicare la condizione viene scelto da un menu composto da tutte le colonne proprie della tabela principale, comprese le aggregazioni di campi (ovvero i metadati come ad esempio Sistema, dove i dati vengono raggruppati in un’unica informazione), e le colonne delle tabelle in relazione ascendente o discendente.

../../../_images/01_aggregazioni.png

Suggerimento

L’elenco che compare nel menu a discesa è generato automaticamente sulla base della struttura della tabella tenendo conto di tutte le relazioni. Se la visualizzazione è troppo articolata per l’utilizzo da parte dell’utente, si tenga presente che gli utenti di livello superadmin possono in qualunque modo definire le singole voci da visualizzare personalizzando l’albero della Query

Le relazioni e le aggregazioni di campi all’interno del menu vengono precedute da una freccia che ne consente l’esplorazione. Nel momento in cui si esplode un campo della tabella principale in relazione con un’altra tabella, l’applicazione Genropy è in grado di eseguire la Join. Come anticipato le relazioni possono essere

  • ascendenti, ad es. in caso di tabella principale prodotto, una tabella in relazione ascendente è Tipo prodotto (il prodotto avvitatore appartiene alla tipologia utensileria/elettrici)

../../../_images/03_ascendente.png
  • discendenti, ad es. sempre nel caso della tabella principale prodotto un tabella in relazione discendente è Fattura righe (ovvero il prodotto quante volte è stato venduto)

../../../_images/02_discendente.png

In entrambi i casi la relazione è di tipo uno a molti, ovvero più prodotti apparterrano alla stessa tipologia prodotto, e un prodotto sarà venduto n volte.

Il NOT

Il not è un operatore logico di negazione booleano, che restituisce tutti i record che non corrispondono a quella condizione; viceversa se non selezionato.

../../../_images/04_not.png

Gli operatori

Nel menu corrispondente vengono proposti tutti gli operatori di confronto compatibili con il tipo di dato della colonna scelta

  • se il tipo è data, data e ora, o numerico gli operatori sono:
    • = (uguale a)

    • > (maggiore di)

    • < (minore di)

    • >= (maggiore o uguale a )

    • <= (minore o uguale a)

    • is null (se non ha un valore)

    • IN (contenuto all’interno di una lista di valori)

  • se il tipo è alfanumerico o testo oltre a quelli precedenti abbiamo:
    • contiene

    • inizia con

    • inizio parola

    • inizia con caratteri

    • nullo o vuoto

    • espressione regolare

    • tra

  • se il tipo è un booleano sono:
    • vero

    • falso

Il valore di raffronto

E” presente un campo di input dove l’utente digita il valore di raffronto coerente con il tipo di dato della colonna scelta.

L’applicazione Genropy è in grado di tradurre il linguaggio naturale per i valori di raffronto il cui tipo di dato è una data. Quindi rispetto alla data di lavoro ( Login/Logout ), che il sistema prende come data solgia, è in grado di calcolare e tradurre:

Esempio: la data di lavoro è 13/09/2018

ieri

il giorno precedente dalla data soglia

12/09/2018

oggi

il giorno della data soglia

13/09/2018

domani

il giorno successivo alla data soglia

14/09/2018

oggi -/+ numero

il giorno indietro o avanti di n giorni dalla data soglia es. 10 g.

03/09/2018 o 23/09/2018

mese/questo-ultimo mese/ mese precedente??

tutto il mese della data soglia

settembre

anno/questo-ultimo-prossimo anno/ anno precedente

tutto l’anno della data soglia

??

settimana/questa-ultima settimana??

la settimana della data soglia

dal 10 al 16/09/2018??

mese prossimo

tutto il mese successivo alla data soglia

ottobre

settimana prossima

la settimana successiva alla data soglia

dal 17 al 23/09/2018

Nel caso in cui l’operatore selezionato è IN, la lista di valori di raffronto nel campo di input va separata da una virgola

Esempio: clienti delle province MI, TO, GE

La query viene eseguita dando invio o premendo il bottone interrogazione run

../../../_images/05_invio.png
Inoltre, se la colonna scelta è un campo di relazione e l’utente non ricorda i valori compilati per questa tabella, inserendo nel campo del valore di raffronto il simbolo ? seguito da un termine che individua la colonna scelta, all’esecuzione della query verrà aperta una finestra di dialogo che avrà
  • per etichetta, il termine digitato nel valore di raffronto

  • e un campo menu con l’elenco dei dati compilati nella tabella in relazione

Scelto il valore di raffronto cliccando su conferma i dati che soddisfano i requisiti dell’interrogazione saranno visualizzati nella griglia

../../../_images/07_query_.png

Sequenze di interrogazioni

Di default lo strumento Plain query non mantiene uno stato della selezione corrente. Per tanto ogni esecuzione di nuove interrogazioni va a creare una nuova selezione che va riempire la griglia , sostituendo la precedente.

E” però possibile creare una sequenza di interrogazioni collegate tra loro, mantenendo uno stato della selezione corrente tra una query e l’altra.

Per fare questo bisogna usare il menu popup che si trova a sinistra del Plain Query, prima del menu di selezione del campo. Di default questo menu mostra la voce Cerca, che serve a creare ogni volta una selezione nuova, ma è possibile invece scegliere altre opzioni

  • Unisci: con questa opzione la nuova interrogazione andrà ad aggiungere i record risultanti alla selezione corrente

  • Interseca: questa opzione farà sì che la nuova interrogazione contenga soltanto i record che della selezione corrente soddisfano anche la nuova condizione

  • Togli: con questa opzione si rimuovono i record dalla selezione corrente

../../../_images/06_sequenzeinterrogazione.png

Seguono esempi