CHECKQUERY
Permette di verificare che la query sia valida prima del suo utilizzo.
I controlli effettuati dipendono dalla modalità con cui è stata definita la query. Se la query è stata definita utilizzando un comando SQL, la specifica provvede al controllo sintattico del comando SQL eseguendo questo sul server di riferimento eventualmente definito dalle variabili di ambiente.
Negli altri casi di query definita da programma il controllo è articolato come segue: quando si specifica per un campo che appare nel resultset della query una funzione di aggregazione tra MIN,MAX,SUM,AVG,GROUPBY è necessario che tutti i campi del resultset abbiano una funzione di aggregazione oppure la funzione COUNT. La condizione di ordinamento è indicabile solo per i campi del result-set.
Se indicato il parametro SQL[] viene restituita la sintassi SQL della query in una variabile stringa.
Parametri
| Parametro | Definizione | I/O | Versione traduttore | SMP | |
|---|---|---|---|---|---|
| IDQUERY | Long | ||||
| SQL | Stringa | ||||
| SORGENTE | Intero | ||||
| VINCOLI | Intero | ||||
| ERRORE | Intero |
IDQUERY
Identificatore della query ottenuto tramite @DEFQUERY.
SQL
Permette di ottenere in una variabile alfanumerica di programma, l'istruzione SQL creata per la lettura della query. VarSelect: Variabile di tipo stringa che riceve l'istruzione SQL.
SORGENTE
Parametro con valori ammessi, si possono utilizzare i seguenti valori:
| Valore | Descrizione |
|---|---|
0 | No |
1 | Si |
VINCOLI
Permette di abilitare la gestione della profilazione se la tabella è soggetta a un vincolo di tipo elenco, inserendo in modo automatico delle clausole SQL da parte dell'ambiente, per filtrare gli elementi della tabella
Parametro con valori ammessi, si possono utilizzare i seguenti valori:
| Valore | Descrizione |
|---|---|
0 | No |
1 | Si |
ERRORE
Consente al programma di intercettare e gestire l'errore restituito dalla funzione.
Utilizzare uno dei metodi GetLastError*() della classe BCContextInfo per ottenere le informazioni dell'errore.
Errori
| Codice | Descrizione |
|---|---|
| 22810 | Attenzione! Nessuna tabella definita per la query. |
Esempi
Definizione
DIM sqlStatement[STRING]
'@CHECKQUERY IDQUERY[queryId] SQL[sqlStatement]