Parametrizzazione > Utilizzo > Stampe > Consultazione SQL 

I software con tecnologia SAFE X3 integrano una consultazione che permette di creare delle videate di interrogazione partendo da query espresse sotto forma di un elenco di campi di tabelle del database, dove queste tabelle sono collegate sia di default che da legami espliciti indicati. Questo approccio permette ad un utente di creare rapidamente delle consultazioni senza utilizzare un linguaggio particolare, avendo semplicemente una conoscenza delle tabelle del database, conoscenza che può essere guidata dalle documentazioni tecniche in linea (in particolare MCD). Ottiene inoltre una interfaccia di interrogazione conviviale in videate multi-colonne con possibilità di tunnel.

Questa consultazione presenta tuttavia qualche limite, nella misura in cui le richieste complesse non possono essere necessariamente espresse sotto forma di un elenco di campi. Così, per gli utenti che hanno un profilo più tecnico e conoscono il linguaggio SQL, questa consultazione non permette di ottenere facilmente i risultati desiderati.

Per tale motivo è stato creato uno strumento complementare, la consultazione SQL, che permette di esprimere delle richieste utilizzando il linguaggio SQL classico. Questa consultazione SQL si distingue dalla consultazione precedente solo dalla sua videata di parametrizzazione. In effetti, le videate create da questa consultazione sono richiamate dalla stessa funzione di esecuzione consultazioni di quella usata dalla consultazione abituale.

Ciò significa che, così come la consultazione, la consultazione SQL funziona mediante estrazione temporanea di dati in una tabella (la stessa della consultazione classica), e dopo tramite consultazione della tabella. Al contrario, la consultazione si può fare su un solo livello, poichè le rotture ed i totali non sono possibili a questo livello.

Così come la consultazione classica, la struttura della tabella temporanea fa si che ogni utente vi conservi i risultati dell'ultima richiesta fatta, e l'utilizzo di questa funzionalità implica tre fasi diverse:

  • definizione della query attraverso questa funzione, poi Validazione per creare la videata di consultazione corrispondente.
  • lancio della consultazione (sia con il bottone  , sia dall'entrata nella funzione di interrogazione e richiesta di refresh dei dati).
  • interrogazione della consultazione se è già stata eseguita.

Prerequisiti

SEEREFERTTO Riferirsi alla documentazione di Implementazione

Gestione videata

Testata

Presentazione

In testata, si trovano delle informazioni che permettono di identificare la consultazione ed alcuni parametri di carattere generale.

Chiudi

 

Campi

I seguenti campi sono presenti in questo folder :

Blocco numero 1

Questo codice permette d'identificare una consultazione.

  • Descrizione (campo INTIT)

Permette di definire una descrizione associata ad ogni scheda.

  • Descr. breve (campo INTITSHO)

Questa descrizione permette di fornire una descrizione alla scheda.
Viene utilizzata in alcune videate o stampe quando non vi è spazio sufficiente per visualizzare la descrizione estesa.

  • Attivo (campo ENAFLG)

Questa casella da contrassegnare permette di attivare o disattivare la scheda corrente senza tuttavia perderne il contenuto.
Una scheda disattivata non potrà venire utilizzata (richiamandone il codice) in altre schede (documenti, parametrizzazioni, ecc.), o durante elaborazioni di massa.
Le abilitazioni su una determinata funzione possono vietare la creazione di una scheda attiva. In questo caso, la casella viene disattivata di default e non è modificabile se non da un utente autorizzato, o attraverso un circuito di firma definito tramite Workflow.

Caratteristiche

  • Tipo richiesta (campo ALLUSR)

Permette di gestire la visualizzazione di una consultazione, con i comportamenti seguenti:

  • Consultazione normale: il risultato della consultazione viene visualizzato se la query è già stata consultata dall'utente. Infatti, ogni utente che lancia la consultazione crea un set di dati personali che non può essere visto da altri.
  • Consultazione condivisa: il risultato dell'esecuzione di tale consultazione effettuata da un utente può essere consultato da altri utenti. L'interesse di avere delle consultazioni condivise consiste nel fatto che una query pesante, lanciata in un determinato momento da un solo utente, permette in seguito ad un insieme di utenti di disporre di un'informazione comune. Per questo genere di consultazione si consiglia che solo un utente possa eseguirla, mentre gli altri vi hanno accesso solo in consultazione. Inoltre, è perfettamente plausibile calcolare questo tipo di consultazione in batch se è particolarmente pesante da costituire; il codice del job batch corrispondente si chiama infatti CALALH.
  • Consultazione ricalcolata: il risultato della consultazione non viene mai visualizzato automaticamente. Occorre premere i bottone refresh o inserire i criteri. L'interesse di questo tipo di consultazione è quello di evitare di ricaricare dei dati se si è a conoscenza che questi scadranno rapidamente.
  • Rappresentazione (campo REPGRA)

Questo flag definisce il modo in cui la rappresentazione dei dati sarà fatta a video. Le possibilità offerte sono le seguenti:

  • Carattere: i dati sono rappresentanti solo sotto forma di un riquadro.
  • Car. o Graf.: i dati della sono presentati sotto una delle due modalità. La modalità di default è determinata dal campo Visualizzazione di default definito nei parametri grafici della scheda.
  • Car. e Graf.: i dati sono presentati sotto le due modalità simultaneamente. La posizione del grafico in relazione al riquadro è determinata dal campo Posizione del folder Grafico.
  • Grafico: i dati sono rappresentanti solo sotto forma di un grafico.
  • campo OPTGRA

Permette di organizzare la coabitazione tra carattere e grafico, quando la modalità di presentazione dei dati permette entrambi. A seconda dei casi:

  • se la presentazione è Car o Graf, si sceglie il valore di default della rappresentazione.
  • se la rappresentazione è Car e Graf, si fornisce la posizione del grafico in relazione al riquadro di dati.

Chiudi

 

Folder Parametrizzazione

Presentazione

Il primo folder permette di inserire la richiesta ed alcuni parametri generali.

Si potranno dare, nel riquadro definito Colonne, le informazioni che permettono di disporre di una presentazione più precisa. In effetti, all'esecuzione, la richiesta restituisce un elenco di valori che completeranno un riquadro. In assenza di informazioni più precise:

  • le colonne del riquadro non avranno un titolo.
  • dovranno essere caratterizzate come alfanumeriche, numeriche, o date, senza ulteriori specificazioni in funzione del tipo di dati restituiti.

Inoltre, una consultazione SQL fissa non deve essere necessariamente interessante. Si potranno introdurre dei parametri che verranno inseriti al momento del lancio. E' quello che permette il riquadro definito Parametri.

Chiudi

 

Campi

I seguenti campi sono presenti in questo folder :

Blocco numero 1

Definisce il codice di una stampa che verrà associata alla funzione File/Elenco a partire dalla consultazione delle richieste. Se non si indica nulla, si utilizza la stampa ALISTE che proporrà un'impaginazione di default. E' possibile duplicare tale stampa generica (basterà soltanto modificare l'impaginazione) per creare delle stampe che si adattano perfettamente alla consultazione così definita.

Il codice stampa qui inserito può essere associato ad un insieme di codici stampa attraverso la funzione dedicata.

Permette di collegare le autorizzazioni d'accesso alla consultazione alle autorizzazioni fornite sulla funzione.

Il principio è il seguente: si verifica, all'entrata nella consultazione, che la funzione collegata sia autorizzata all'utente (per almeno un sito, se l'abilitazione su questa funzione si effettua per sito). Ma questa verifica si effettua esclusivamente nel caso in cui tale consultazione non sia condivisa.

Infatti, se la consultazione è condivisa, si parte dal principio che le abilitazioni della persona che ha calcolato la consultazione si applicano e si propagano a tutti quelli che hanno il diritto di visualizzarla. Quindi occorre definire in modo molto accurato le abilitazioni alle richieste condivise, quando queste riguardano dei dati sensibili. Ciò viene effettuato mediante il codice di accesso situato in questo folder.

Questo codice di accesso permette di limitare l'accesso alla scheda corrente ad alcuni utenti.
Se il campo viene indicato, solo gli utenti che dispongono di questo codice di accesso nel loro profilo possono visualizzare e modificare questa scheda.

Il diritto di esecuzione controlla il fatto che si possa eseguire la consultazione in oggetto (facendo il refresh della consultazione o modificandone i parametri e rieseguendola).

  • Numero righe (campo NBRLIG)

Permette di definire un numero di righe per pagina logica nella videata di consultazione generata dalla consultazione. Se tale numero di righe supera il numero di righe fisiche visualizzabili, verrà visualizzato un ascensore a destra del riquadro. Dei bottoni situati in alto nella videata permetteranno di navigare tra pagine logiche (visualizzare la successiva, precedente, ultima, prima).

  • Righe massime (campo MAXLIG)

Il numero massimo di righe corrisponde ad un parametro della consultazione (maxrows) che arresta la ricerca quando è stato trovato nel database un numero di righe che soddisfa le condizioni (queste righe saranno in seguito ordinate, ma il database non garantisce che le N righe trovate siano le N prime nell'ordinamento). Si tratta di un'ottimizzazione che permette di limitare il carico per il database.

  • Gruppo (campo GRP)

Permette di disporre di un criterio di classificazione delle consultazioni.

  • N° colonne fisse (campo NBRCOL)

Permette di fissare le prime x colonne di un riquadro in caso di paginazione orizzontale.

  • Tempo massimo (campo MAXTIM)

Permette di fermare la ricerca dopo questo tempo (espresso in secondi). Ciò permette di evitare di aspettare troppo a lungo soprattutto nel caso di una parametrizzazione di una nuova consultazione.

Nota: Contrariamente al n° massimo di righe, tale informazione non viene trasmessa al database. Quindi il tempo massimo può essere superato se la durata della consultazione è troppo lunga.

Richiesta SQL

  • campo TEXTE

Permette di definire la consultazione stessa sotto un formato SQL classico comprensibile dal database.

Alcune osservazioni riguardo questa consultazione:

  • Ogni query Select anche complessa può essere scritta qui, a condizione che restituisca un numero di campo inferiore al massimo ammesso.
  • occorre ricordarsi che il campo NOMCHAMP(indice), gestito nella tabella NOMTABLE, è definito nel database come il campo NOMCHAMP_indice nella tabella NOMTABLE, indice che vale 0, 1, 2… N-1, dove N è la dimensione del campo.

Così per esempio si potrà scrivere:

Select LOGIN_0, CHEF_2 From AUTILIS
Where USR_0 like %1%
Order by CREDAT_0

  • In una query di questo tipo, è possibile definire dei parametri tramite la sintassi %N%, che si riferisce al parametro numero N definito nel riquadro dei parametri (%1% nell'esempio precedente). I parametri saranno inseriti tramite il bottone durante l'esecuzione della richiesta.

Riquadro Colonne

  • Descrizione (campo COLTIT)

Questo tipo di dati permette di precisare come deve essere fatta la presentazione del dato. In caso di un menù locale, si specificherà il numero del menù locale utilizzato. Se il tipo di dati utilizzato è collegato ad un oggetto, sarà possibile passare tramite tunnel nella gestione dell’oggetto al momento della consultazione.

  • Menù (campo COLNUM)

Permette di definire un numero di menù locale da utilizzare per presentare il valore numerico della colonna restituita dalla consultazione.

  • Tipo di grafico (campo GRA)

Questo campo può essere inserito solo se il modo di rappresentazione scelto in testata non è Carattere. Permette di specificare il modo in cui verrà attuata la rappresentazione grafica.

Può assumere i seguenti valori:

  • Nessuno o Descrizione se il campo della riga è di tipo alfanumerico. Il campo che utilizza il valore Descrizione sarà utilizzato come titolo del grafico. Attenzione, solo una riga del riquadro può assumere questo valore, se è già presente su una riga, occorrerà prima modificare il valore della riga che ha il valore Descrizioneper ridargli il valore Nessuno prima di poter assegnare questo valore ad un'altra riga del riquadro
  • Nessuno, Valoreo Defaultse il campo della riga è di tipo numerico. La regola à la seguente:
    • Nessuno significa che il campo non verrà mai presentato sul grafico.
    • Se il grafico definito nell'ultimo folder permette di far apparire più serie, tutte le serie che corrispondono ai campi definiti come Default saranno visualizzate (lo saranno tutte se nessuna è posizionata in avanti).
    • Se il grafico definito nell'ultimo folder permette di far apparire solo una serie, la colonna che corrisponde al primo campo definito Default sarà visualizzata (lo sarà la prima se nessuna è posizionata in avanti).
  • Rappresentazione (campo REP)

Questo campo può essere inserito solo se:

  • il modo di rappresentazione scelto nella testata non è Carattere.
  • sui campi numerici di cui si è deciso di visualizzare il valore.

Permette di gestire le combinazioni dei grafici se il tipo di grafico definito nei parametri grafici permette di far apparire più serie indipendenti di tipo differente (è ignorato negli altri casi). In pratica, le combinazioni utilizzabili sono le seguenti:

  • Tipo = Multigrafico, Grafico di default=Linee, Rappresentazione=Multi
  • Tipo = Multigrafico, Grafico di default=Barre, Rappresentazione=Multi

La regola à allora la seguente:

  • Default significa che la rappresentazione grafica della serie corrisponde al grafico di default dell'ultimo folder (Barre, o Lineenei casi che ci interessano).
  • Barra o Linea permette di forzare il modo di presentazione corrispondente alla serie in questione.

Riquadro Parametri

  • Descrizione (campo PARTIT)

Se il campo è indicato, un parametro la cui descrizione corrisponde a questo campo potrà essere inserito prima dell'esecuzione della consultazione (tramite il bottone ).

Questo parametro potrà essere utilizzato nel corpo della consultazione tramite la sintassi %N%, dove N rappresenta il numero della riga corrispondente nel riquadro dei parametri.

Questo tipo di dati permette di facilitare l'inserimento del parametro corrispondente. Effettivamente, se un tipo viene definito:

  • i controlli del formato sono attuati
  • Se il tipo di dati utilizzato è legato ad un oggetto, è possibile utilizzare la finestra di selezione corrispondente.
  • Menù (campo PARNUM)

Permette di definire un numero di menù locale da utilizzare per inserire il valore del parametro.

  • Valore di default (campo VALDEB)

 

Chiudi

 

Folder Grafico

Presentazione

Questo folder può essere compilato solo se è possibile rappresentare graficamente la consultazione. Si definisce allora il modo in cui vengono rappresentati i dati sul grafico.

Chiudi

 

Campi

I seguenti campi sono presenti in questo folder :

Grafico

  • Tipo (campo TYPGRA)

Questo campo è utile dal momento in cui si ha più di un valore numerico nel riquadro in grado di essere presentato in forma grafica. Può assumere due valori:

  • Grafico semplice: in questo caso si vede solo una colonna di valori alla volta (un selettore permette di scegliere quale)
  • Multigrafico: in questo caso, si vedono tutte le colonne visualizzabili, combinate secondo il parametro definito dal parametro Rappresentazione.
  • Rappresentazione (campo FSHGRA)

Quando nel grafico vengono rappresentate più serie (a condizione che la rappresentazione di tutte le serie sia identica e non sia di tipo settore), è possibile specificare come si combinano le serie di valori alla visualizzazione, inserendo il seguente valore:

  • Multipermette di presentare i valori di ogni serie gli uni di fianco agli altri (un colore per serie)
  • Cumulativo permette di presentare i valori in totalizzazione verticale.
  • Confronto permette di presentarli facendo un confronto relativo (l'altezza del grafico è costante).
  • Grafico di default (campo DEFGRA)

Definisce la rappresentazione grafica utilizzata per i dati da presentare (tra le scelte Barre, Linee, Aree, Settori). Una immagine visualizzata in funzione della scelta fatta illustra il tipo di rappresentazione ottenuto.

Se si presenta una sola serie di valori, la rappresentazione grafica di default è stabilita da questo parametro.

Se si presentano più serie di valori, è possibile miscelare i modi di rappresentazione (una serie in forma di barre, un'altra in forma di linee, ad esempio). In questo caso, ogni serie di valori viene rappresentata in funzione del campo Rappresentazionesituato nel riquadro dei campi:

  • se vale Barrao Linea, questa modalità di rappresentazione è utilizzata per la serie di valori interessata se è compatibile con la rappresentazione grafica di default (non è possibile miscelare dei settori con delle barre o delle linee).
  • se vale Default, viene utilizzata la modalità di rappresentazione grafica di default per la serie.

All'utilizzo, se la rappresentazione delle serie è omogenea (a maggior ragione se vi è una sola serie nel grafico), si dispone di un selettore dei grafici per passare in un'altra modalità di rappresentazione.

Blocco numero 3

  • campo IMAG

Immagine esplicativa delle informazioni inserite in precedenza.

Blocco numero 2

Blocco numero 4

Chiudi

 

Osservazione importante

Si noti che non viene realizzato nessun filtro collegato alle abilitazioni (che siano abilitazioni per ruolo, sito o codice di accesso) con la consultazione SQL. Quindi è consigliato proteggere le consultazioni di questo tipo con un codice di accesso per limitare i diritti di visualizzazione e l'esecuzione di tali consultazioni . Inoltre, l'accesso a questa funzione deve essere di norma limitato ad un elenco ristretto di utenti.

Bottoni specifici

genera la videata di consultazione associata e verifica l'esattezza della richiesta sottoponendola al database per verificare la sintassi e la sematica.

Permette il lancio della consultazione corrente. L'esecuzione si attiva aggiornando una tabella temporanea e si concatena sulla funzione di visualizzazione delle consultazioni, che permette di visualizzare il risultato della consultazione.

I seguenti campi sono presenti sulla finestra aperta da questo bottone :

Blocco numero 1

  • campo OBJET

 

  • campo CLES

 

Blocco numero 2

  • Dal dossier (campo DOSORG)

Questo campo permette di definire il dossier a partire dal quale sarà copiata la scheda. Le sintassi possibili sono descritte nell'allegato dedicato.

  • Tutti i dossiers (campo TOUDOS)

Questa opzione permette di copiare la scheda verso tutti i dossier definiti nel dizionario (tabella ADOSSIER della soluzione corrente).

  • Al dossier (campo DOSDES)

Questo campo permette di definire il dossier nel quale sarà copiata la scheda. Le sintassi possibili sono descritte nell'allegato dedicato.

Chiudi

Questo bottone permette di copiare la definizione della scheda da o verso un altro dossier.

Messaggi di errore

Oltre ai messaggi generici, i seguenti messaggi d'errore possono apparire al momento dell'inserimento :

Consultazione errata

[ descrizione dell'errore restituito dal database ]

La consultazione non è corretta dal punto di vista del database. Può accadere che non sia corretta dal punto di vista sintattico o che non esista un elemento. La descrizione complementare dà la descrizione dell'errore ottenuto dal database.

Accesso impossibile a questa scheda

Si è cercato di accedere ad una richiesta di consultazione classica con la consultazione SQL (i codici di una richiesta di consultazione SQL non possono essere utilizzati per richiamare una consultazione classica e viceversa).

Troppi campi

La consultazione lanciata restituisce un numero troppo grande di colonne. E' da notare che il numero di colonne che possono essere lette dalla consultazione SQL è limitato a 120.

Tabelle utilizzate

SEEREFERTTO Riferirsi alla documentazione di Implementazione