Con SQLEdit puoi accedere il lettura ed in scrittura a tabelle di database. SQLEdit permette l'aggiunta, la modifica e la cancellazione su dati presenti su una tabella o su più tabelle relazionate fra di loro tramite relazione 1 => 1 o 1 => n.
Per impostare l'oggetto è sufficiente selezionare il percorso al database e il nome della tabella. Automaticamente verrà generato un form con tutte le colonne della tabella prescelta.
Pagina chiamante.
Impostare l'url ad una eventuale pagina chiamante. Questa pagina può essere,
per esempio, una pagina con un oggetto SQLReport da cui, premendo su di un
pulsante Add/Edit si accede a questo oggetto. E' l'url che verrà utilizzato
quando si "salva e torna indietro".
Debug attivo
Se impostato mostra le query SQL eseguite e gli eventuali errori. Se
disattivato, eventuali errori non verranno visualizzati.
Template
Scegli un template per il tuo modulo. Dai un'occhiata anche alle
variabili da usare nel template e ad un esempio su
come personalizzarlo.
Template default per i campi
Il template di default da utilizzare per la generazione del codice HTML dei vari
campi, se il template del campo è impostato a "inherited". Dai un'occhiata anche
alle variabili da usare nel template e ad un esempio
su come personalizzarlo. Questa
impostazione è ininfluente se il template del modulo non contiene una variabile
<TMPL_VAR NAME="form.fields.template"> bensi un
loop <TMPL_LOOP name="fields_loop">
Inizia nuovo form
Valorizza a 1 la variabile di template form.begin, utilizzata usualmente per
stampare il tag FORM
Chiudi il form
Valorizza a 1 la variabile di template form.end utilizzata usualmente per
inserire il pulsante di submit e la chiusura del tag FORM.
Visibile
Uno script in PERL che deve ritornare un booleano. Imposta se l'intero elemento
verrà visualizzato sulla pagina o no. E' possibile utilizzare le macro di WebGUI
che verranno espanse prima che lo script venga compilato.
Database Link
L'amministratore può configurare database comuni sui quali puoi eseguire report
SQL, senza dover conoscere o inserire DNS, Username e Password. Se un database è
selezionato da questa lista i campi DNS, Username e Password saranno ignorati.
Se il database che devi usare non è configurato come un Database Link, puoi
inserire DSN, User, e Password.
DSN
Data Source Name é l'identificatore univoco che il linguaggio
PERL usa per descrivere la locazione del tuo database. La sintassi é DBI:[driver]:[database
name]:[host].
Esempio: DBI:mysql:WebGUI:localhost
Utente Database
Lo username che usi per collegarti al DSN.
Password Database
La password che usi per collegarti al DSN.
Nome della tabella
Il nome della tabella che si vuole gestire. Una volta impostato un DSN
corretto, è possibile selezionare la tabella tra quelle presenti nel database.
onLoad
Una funzione in PERL. Questa funzione è elaborata prima di iniziare il
processo di costruzione del form e prima che venga eseguita qualsiasi operazione
a livello di database. Può essere utile per variare la modalità di
visualizzazione di SQLEdit. Per esempio, si potrebbe volere che alcuni utenti
non possano fare new ma che si trovino sempre in modalità edit di un dato
record (il proprio). La funzione riceve un riferimento ad hash con i seguenti
elementi:
session_form: contiene un riferimento ad un hash con i parametri, via GET o via POST, con cui è stata chiamata la pagina
Esempio: $_[0]->{session_form}->{exec}
onBeforeEdit
Una funzione in PERL. Questa funzione verrà valutata prima di mostrare il
form a video ma dopo che gli eventuali valori sono stati recuperati dal database. Può quindi essere utilizzata per inizializzare o comunque, variare
il valore dei campi del form. La funzione riceve un riferimento ad hash con i
seguenti elementi:
fld_values: contiene un riferimento ad un hash con i valori del form, con chiave, il nome della colonna del database
Esempio: $_[0]->{fld_values}->{id}fld_pers: contiene un riferimento ad un hash con i valori di personalizzazione (tabella SQLEdit_field), con chiave, il nome della colonna del database. Ogni elemento di questo hash è un riferimento ad un altro hash con chiave, le colonne della tabella SQLEdit_field
Esempio: $_[0]->{fld_pers}->{id}->{type}tmpl_var: contiene un riferimento ad un hash con i parametri del template. Non usare però questo parametro per impostare il valore di campo.
Esempio: $_[0]->{tmpl_var}->{'form.isNew'}
onBeforeSave
Una funzione in PERL. Questa funzione verrà valutata prima di salvare i dati
nel database. Può quindi essere utilizzata per modificare o comunque, variare il
valore dei campi prima che questi vengano salvati. La funzione riceve un
riferimento ad hash con i seguenti elementi:
fld_values: contiene un riferimento ad un hash con i valori del form, con chiave, il nome della colonna del database
Esempio: $_[0]->{fld_values}->{id}cancel: può essere impostata con un messaggio di errore. Se non è nulla, l'operazione viene annullata e il messaggio di errore viene mostrato all'utente.
Esempio: $_[0]->{cancel} = '^International(38);';
onBeforeCancel
Una funzione in PERL. Viene elaborata prima della
cancellazione di un record. La funzione riceve un riferimento ad hash con i
seguenti elementi:
cancel: può essere impostata con un messaggio di errore. Se non è nulla, l'operazione viene annullata e il messaggio di errore viene mostrato all'utente.
Esempio: $_[0]->{cancel} = '^International(38);';