Come rendere obbligatori i campi per certe categorie di utenti e per altri no


Nios4 attraverso le categorie dei permessi permette di creare diversi gruppi di utenti in base alle loro caratteristiche e alle operazioni che andranno a eseguire sui dati del database.
Attraverso queste categorie possiamo, con l'ausilio di script, decidere se un campo deve essere obbligatorio oppure no per certi utenti, visto che di base la compilazione di un campo quando obbligatorio vale per tutti.

In questo esempio vogliamo che la compilazione del campo "descrizione lavoro" sia obbligatorio per i tecnici sul campo e non per l'amministratore.
In questo modo l'amministratore può creare un rapporto di lavoro compilato solo nei dati di base dall'ufficio e assegnarlo a un tecnico che lo riceverà attraverso la sincronizzazione Cloud. Il tecnico quando andrà a inserire i dati mancanti dovrà per forza inserire la descrizione del lavoro eseguito per permettere l'effettivo salvataggio.

Impostazione del campo
Il campo dovrà essere impostato come non obbligatorio in modo che al salvataggio della scheda questo non venga controllato permettendo il salvataggio.

Creazione dello script di controllo
Andremo a creare uno script di tipologia "presalvataggio" sulla scheda in modo che venga eseguito prima di eseguire l'effettivo salvataggio dei dati.

descrizione = dataview.getvalue("descrizione_lavoro")
if descrizione == "" then
    errorn.errocode = "E12"
    errorn.errormessage = "Manca la descrizione del lavoro! Impossibile salvare!"
    do return end
end

Lo script recupera il valore dalla scheda e in caso non sia stato compilato viene inserito un codice (a vostra scelta) dentro al gestore degli errori degli script. Il sistema negli script di pre salvataggio controlla se il gestore degli errori è stato compilato. In caso positivo blocca il salvataggio, altrimenti procede con i controlli standard per poi eseguire l'effettivo salvataggio.

Impostazione categoria permessi allo script
Creato lo script dovremo applicare le categorie di permesso in modo che quest'ultimo venga lanciato solo per un determinato gruppo di utenti.


Questo è il passaggio più importante visto che se lo script fosse associato a tutte le categorie anche l'amministratore sarebbe obbligato a compilare il valore.






Commenti