Aggiungi uno script a un modulo
Uno script aggiunge al modulo comportamenti automatici durante la compilazione: per esempio, riempie alcuni campi all’apertura, come i dati della sede, oppure aggiorna un campo quando chi compila ne modifica un altro.
Lo script si scrive in JavaScript, nel modulo stesso, con l’editor semplificato o con quello avanzato. Scriverlo richiede conoscenze tecniche del linguaggio.
Apri lo script
Sezione intitolata “Apri lo script”- Nell’editor semplificato, clicca l’icona Configurazione (un ingranaggio) e apri la scheda Script. La scheda elenca anche gli id dei campi del modulo.
- Nell’editor avanzato, seleziona l’elemento Modulo, il primo della scheda Albero, e nel pannello delle proprietà apri la sezione Input: lo script si scrive nel campo Event Map.
Scrivi le funzioni
Sezione intitolata “Scrivi le funzioni”- Per eseguire del codice all’apertura del modulo, scrivi una funzione
onInit. - Per reagire a un evento di un campo, scrivi una funzione che si chiama come l’id del campo
seguito da
One dal nome dell’evento:testo_1OnChangeviene eseguita quando cambia il valore del campotesto_1. - Le funzioni con un nome diverso sono funzioni di appoggio: si richiamano dalle altre con
this.davanti al nome, per esempiothis.calcola().
L’id di un campo si vede e si cambia così:
- nell’editor semplificato, con l’azione Identità campo (l’ingranaggio accanto al campo), nel campo Widget Id;
- nell’editor avanzato, nella proprietà ID univoco del componente.
Ogni id è diverso da quello di ogni altro campo del modulo. Nell’editor semplificato contiene solo lettere, numeri e trattini bassi, e non comincia con un numero.
Questo script, preso dal Registro presenze del corso, passa all’intestazione il progetto e la sede dell’elemento da cui il modulo è stato aperto:
function onInit(event) { const context = this.runtime.context || {}; const header = this.getWidget('form-header'); if (header) { header.project_id = context.project_id; header.office_id = context.office_id; }}Cosa può usare uno script
Sezione intitolata “Cosa può usare uno script”| Nel codice | Cosa contiene |
|---|---|
this.root | il modulo |
this.getWidget(id) | il campo o componente con quell’id |
this.runtime.context | l’elemento da cui il modulo è stato aperto: entity_id, entity_type, project_id, project_country, office_id, office_country, unit_id, unit_country |
this.runtime.target | il punto di lancio da cui il modulo è stato aperto |
this.nomeFunzione() | una funzione di appoggio scritta nello script |
Un modulo aperto dal file system non parte da un elemento, quindi il contesto può essere incompleto. Se una funzione contiene un errore, il modulo si apre comunque e l’errore compare nella console del browser.
Questo sito è protetto da reCAPTCHA e si applicano le Norme sulla privacy e i Termini di servizio di Google.