JavaScript 📜
March 12

Auditoria em telas no Sankhya

Por N motivos, em certos processos precisamos saber qual o usuario efetuou o cadastro e qual o usuario alterou o registro.
Por isto, você precisa em cada tela criada e disponibilizada para o usuario identificar esses usuarios e a data que foi feito esta ação.

Crie 4 campos no construtor de telas/Dicionario de Dados.

  • Cód. Usuário de Inclusão
  • Dh. Atual Inclusão
  • Cód. Usuário Alteração
  • Dh. Atual Alteração

No campo de Usuário de Alteração utilizaremos a variavel $ctx_usuario_logado. Esta variavel é nativa do ERP e seu objetivo é retornar o codigo do usuario logado no momento da execução da tela.

1. if($col_CODUSUALT ==null && $col_CODUSUINC != null){
2. return $ctx_usuario_logado;
3. }else{
4. return $col_CODUSUALT;
5. }

Linha 1: Condicional para verificar 2 variantes. 1º se o campo Cód. Usuario Alteração estiver sem preenchimento e a 2º se não existir informação no campo de Cód. Usuário Inclusão.
Linha 2: Retornará o usuario logado.
Linha 4: Caso a condicional da linha 1 não ocorra, não será realizado o registro deste campo e retornará o valor existente.

Com base no entendimento do usuario de alteração, o campo de Dh. Atual Alteração será trabalhado com a variavel $ctx_dh_atual. Esta variavel é nativa do ERP e seu objetivo é retornar a data e hora atual do ERP.

Agora no campo de Usuário de Inclusão é a mesma logica, porém apenas 1 condicional.

1. if($col_DHATUALINC == null){
2. return $ctx_usuario_logado;
3. }else{
4.  return $col_CODUSUINC;
5. }

Linha 1: Condicional para verificar se o campo do usuario de inclusão está vazio
Linha 2: Retornará o usuario logado
Linha 4: Caso a condicional da linha 1 não ocorra, não será realizado o registro deste campo e retornará o valor do mesmo

Com o entendimento perfeito na criação do campo de usuario, faça o mesmo para o campo de data e hora.

if($col_DHATUALINC ==null){
return $ctx_dh_atual;
}else{
return $col_DHATUALINC;
}

RESULTADO

Ao criar um novo registro na tela de Viagens, apenas os campos de Usuário de Inclusão e Dh. Atual Inclusão são preenchidos.

Agora se o registro for alterado, apenas os campos de Usuário Alteração e Dh. Atual Alteração são preenchidos.