In qualità di sviluppatore 4D, spesso è necessario gestire gli utenti finali con il proprio sistema di directory. Per gli utenti interni, potreste creare alcuni profili con diritti diversi oppure utilizzare l’account Designer predefinito per tutti. Il problema è che quando più persone utilizzano lo stesso profilo, tutti hanno lo stesso nome ed è difficile, a volte impossibile, distinguerli. Fortunatamente, 4D v17 R5 risolve il problema di capire chi è chi. In questo post del blog, spiegheremo un nuovo comando e nuovi selettori che vi aiuteranno a impostare l’identità dell’utente di 4D definendo un nome personalizzato da utilizzare al posto del nome dell’account utente corrente di 4D.
HDI: nuovo modo di identificare gli utenti
un nuovo comando in soccorso
Il comando SET USER ALIAS accetta una stringa come parametro unico per creare un alias che sostituirà il nome dell’utente 4D nell’intero ambiente 4D… anche nel caso di processi gemelli sul server.
// Set my own user field as alias
SET USER ALIAS ([MyUserTable]Name)
4D mantiene l’alias dell’utente per tutta la durata della sessione sia sull’applicazione remota che su quella server. Il comando non modifica il nome utente originale di 4D nella directory 4D, ma imposta semplicemente un alias su questo nome utente. Pur essendo disponibile per le applicazioni a uso singolo, è stato progettato principalmente per le configurazioni client/server.
Per cancellare un alias utente, basta chiamare SET USER ALIAS (“”).
Le schermate seguenti mostrano la finestra di amministrazione del server 4D con e senza alias:
NUOVI SELETTORI
Il comando Current user è stato aggiornato per accettare un selettore opzionale: 4D user alias or account, 4D user alias, o 4D user account.
4D user alias or account è il selettore predefinito. Se si è usato SET USER ALIAS durante la sessione, il comando Current user restituisce l’alias impostato. Se non è stato usato SET USER ALIASil comando restituirà il nome dell’account utente originale.
// Trigger on myTable to store the last user updating the record (alias if it's set, 4D user account otherwise)
[myTable]lastUpdater:=Current user
Per maggiori dettagli, consultate il doc center e vedete il nuovo comando in azione con l’HDI qui sopra.