Como programador 4D necessita frequentemente de gerir os utilizadores finais com o seu próprio sistema de directórios. Para utilizadores internos, pode criar alguns perfis com direitos diferentes ou pode simplesmente utilizar a conta por defeito do Designer para todos. O problema é quando várias pessoas usam o mesmo perfil, todos têm o mesmo nome e é difícil – por vezes impossível – diferenciá-los. Felizmente, o 4D v17 R5 resolve a dor de cabeça de tentar descobrir quem é quem. Neste post do blog, vamos explicar um novo comando e novos selectores que o ajudarão a definir a identidade do utilizador 4D, definindo um nome personalizado a usar em vez do nome da conta de utilizador 4D actual.
HDI: nova forma de identificar os utilizadores
um NOVO COMANDO para o salvamento
O SET USER ALIAS aceita uma string como parâmetro único para criar um alias que irá substituir o nome de utilizador 4D em todo o ambiente 4D … mesmo no caso de processos gémeos no servidor.
// Set my own user field as alias
SET USER ALIAS ([MyUserTable]Nome)
4D mantém o pseudónimo do utilizador durante a duração da sessão tanto nas aplicações remotas como nas aplicações do servidor. O comando não altera o nome de utilizador 4D original no directório 4D, apenas define um alias neste nome de utilizador. Embora disponível para aplicações de utilização única, é principalmente concebido para configurações cliente/servidor.
Para cancelar um alias de utilizador, basta chamar SET USER ALIAS (“”).
As capturas de ecrã abaixo mostram as janelas de administração do servidor 4D com e sem pseudónimos:
NOVOS SELECTORES
O “. Current user foi actualizado para aceitar um selector opcional: 4D user alias or account, 4D user alias, ou 4D user account.
4D user alias or account é o selector por defeito. Se tiver utilizado SET USER ALIAS durante a sessão, o Current user devolve o pseudónimo que definiu. Se não tiver feito uso SET USER ALIASdevolverá o nome original da conta de utilizador.
// Trigger on myTable to store the last user updating the record (alias if it's set, 4D user account otherwise)
[myTable]lastUpdater:=Current user
Verifique o centro doc para mais detalhes e veja o novo comando em acção com o HDI acima.