Creare uno script

Per creare un nuovo script o modificarne uno esistente: aprire l’apposita pagina all’interno della sezione Opzioni. Si ricorda che occorre avere i permessi di amministratore del database per poter gestire gli script.

Parametri

Nome Tabella Il nome della tabella associata allo script. Se il nome è **NIOS4 significa che lo script è usato direttamente dal programma.
Nome Script Il nome dello script.
Tipo Script La tipologia dello script che identifica quale evento lo fa eseguire.
Abilitato La categoria dei permessi che possono eseguire lo script.
Client Il tipo di dispositivo che può caricare ed eseguire lo script.
Script Il link per aprire l’editor.

Premendo su Aggiungi e scegliendo l’ambito di utilizzo verranno visualizzati tutti i possibili punti di esecuzione.

In base alla tipologia selezionata il programma potrebbe richiedere a quale tabella andrà associato lo script.

Si ricorda che è possibile collegare più script allo stesso evento della stessa tabella e verranno eseguiti seguendo l’ordine che attualmente hanno nella griglia.

Impostati i parametri per indicare chi può utilizzare lo script e da che dispositivo, premere sul link Edita per aprire l’editor vero e proprio dello script.

La finestra di editing è divisa in 4 sezioni: nella parte sinistra si trova la barra di navigazione delle funzioni utilizzabili all’interno del sottoprogramma, mentre al di sopra si trova la cella di ricerca dove è possibile filtrare.

Per inserire una funzione posizionare il cursore nell’editor di testo e dare click sulla voce desiderata. I valori racchiusi tra asterischi servono per identificare le parti della funzione da sostituire con un valore reale.

Al centro è presente l’editor vero e proprio dello script e a destra lo zoom sul codice.

Nella parte inferiore si trova la console di output per poter visualizzare i dati dello script mentre viene eseguito.

Si ricorda che dopo le modifiche occorre sempre salvare per aggiornare lo script.

Database

L’oggetto database possiede tutte le funzioni e i metodi principali per interagire direttamente con il database attualmente aperto.

value* = database.name()

Restituisce il nome del database.

database.createtable(*tablename*)

Crea una nuova tabella all’interno del database ridando un valore booleano nel caso l’operazione sia riuscita oppure no.

database.createfield(*tablename*,*fieldname*,*fieldlabel*,*fieldtype*,*widthtype*,*panelname*,*editable*,*displayable*)

Crea un nuovo campo all’interno di una tabella. I seguenti parametri sono per la creazione di un campo standard e in base al tipo di campo dovranno poi essere creati i parametri dedicati alla sua tipologia.

tablename Il nome della tabella dove verrà creato il campo.
fieldname Il nome effettivo del campo.
fieldlabel L’etichetta che verrà visualizzata sul campo.
fieldtype Il tipo di campo da creare
Testo = 0
Nota = 1
Immagine = 2
Percentuale = 3
Check = 4
Valuta = 5
Colore = 6
Data = 18
NumeroIntero = 9
NumeroVirgola = 10
Separatore = 11
Elenco = 12
Email = 14
ContatoreGlobale = 15
SottoTabella = 20
StatoDocumento = 21
Albero = 22
PosizioneGeografica = 24
Link = 25
Telefono = 26
ElencoStati = 27
File = 28
RipartitoreValore = 29
Firma = 30
widthtype Il fattore di larghezza che avrà il campo sulla scheda Totale = 1
Mezzo = 2
Quarto = 3
panelname Il nome del pannello dove verrà visualizzato il campo all’interno della scheda.
editable Il bitwise della categoria utente per consentire la sua modifica (1 = admin).
displayable Il bitwise della categoria utente per permettere la sua visualizzazione (1 = admin).

*value* = database.fieldexist(*tablename*,*fieldname*)

Controlla se esiste un campo all’interno di una tabella del database corrente.

*value* = database.tableexist(*tablename*)

Controlla se esiste una tabella all’interno del database corrente.

database.accessorytable(*tablename*,true)

Aggiunge o rimuove una tabella accessoria.

database.deletedatarowsql(*sql*)

Elimina una lista di dati dal database in base a una stringa SQL.

database.deletedatarow(*datarow*)

Elimina una datarow dal database.

*datatable* = database.getsql(*sql*)

Restituisce una tabella dati datatable.

database.setsql(*sql*)

Esegue una stringa SQL sul database corrente.

*datafield* = database.newdatafield()

Crea un nuovo campo fittizio. Il campo non è salvato all’interno del database.

*datarow* = database.newdatarow(*tablename*)

Crea una nuova riga partendo da una tabella. La riga non è presente nel database finché non viene salvata.

database.viewcolumn(*tablename*,*fieldname*,true)

Determina se la colonna di un campo viene visualizzata oppure no all’interno della tabella di editing/visualizzazione. Mettere True per visualizzarla o False per nasconderla.

database.addsyncbox(*tablename*,*gguid*)

Aggiunge una riga alla syncbox del mobile. Mentre il client Windows gestisce in automatico cosa sincronizzare per i client mobile, occorre indicare al sistema di inviare la riga dei dati in sincronizzazione qualora il database sia un cloud.

*value* = database.getind(*tablename*)

Recupera l’ultimo valore della colonna ind all’interno della tabella richiesta.

*boolean* = database.dbnull(value)

Restituisce se un valore è null oppure no.

database.subtable_tablename(*tablename*,*fieldname*,*totablename*)

Imposta la tabella utilizzata dal campo sottotabella.

database.subtable_addpairing(*tablename*,*fieldname*,*fromvalue*,*tovalue*)

Aggiunge un abbinamento al campa sottotabella.

database.list_addvalue(*listname*,*value*)

Aggiunge un elemento a una lista.

database.date_format(*tablename*,*fieldname*,*format*)

Imposta il tipo di formattazione da utilizzare per un campo di tipo data.