Comportamento in caso di valore NULL
Comportamento in caso di valore NULL
Galateo gestisce in modo strutturato e semiautomatico la visualizzazione dei campi con valore SQL "NULL".
Si ricorda che il valore SQL NULL rappresenta una situazione in cui il campo SQL è PRIVO DI VALORE, condizione tutt'affatto differente da quella in cui il campo ha valore blank (per campi di tipo testo) o ZERO (per campi numerici). Per informazioni guarda (ad esempio) QUI.
NB: le funzioni di gestione dei valori NULL sono state introdotte in Galateo a partire dalla versione 3.26 (luglio 2016). Le versioni precedenti di Galateo utilizzavano la cosiddetta modalità standard (blank per stringhe e zero per numeri).
FORMATO E MODALITA'
Galateo è in grado di visualizzare i dati dei campi con valore
NULL utilizzando i formati descritti qui di seguito.
- modalità standard, ovvero stampare BLANK (nessuna stringa) per i campi di testo e "0" (il numero ZERO) per i campi numerici
- non stampare nulla, ovvero stampare un campo vuoto, sia per campi numerici che per campi testo
- stampare una stringa rappresentativa della condizione "NULL"; la stringa può essere scelta dall'utente
In via preliminare, è possibile definire un comportamento DEFAULT a
livello dell'intero REPORT. Tale comportamento è definito nelle opzioni generali.
In alternativa, per ogni singolo oggetto è possibile scegliere se applicare il
comportamento default (definito a livello di report) oppure se scegliere un
comportamento personalizzato.
VALORE DI UN OGGETTO
CONTENENTE VALORE NULL
ATTENZIONE: la modalità di visualizzazione di un oggetto con valore
NULL modifica il modo in cui l'oggetto viene rappresentato, ma non il suo
valore.
Valgono quindi le seguenti regole:
-
quando un oggetto con valore NULL viene referenziato in una funzione
GALATEO, il suo valore è:
- BLANK se si tratta di un campo di testo
- ZERO se si tratta di un campo numerico
- a prescindere dalla sua modalità di rappresentazione, è sempre possibile applicare a qualunque oggetto la funzione ISNULL() per sapere se il suo valore è NULL ()