DefineAbrUsu

Esta função pode ser utilizada para definir as abrangências de usuários.

Importante

  • A função defineAbrUsu funciona em conjunto com a função gravaNoBancoAbrUsu. Caso não seja efetuada a gravação, a definição será descartada.
  • A função defineAbrUsu não aplica suas alterações na abrangência já carregada pela aplicação, para isso deve ser utilizada a função carregaAbrUsu.

Sintaxe: DefineAbrUsu(Alfa aCodMod, Numero aTipoAbr, Numero aCodUsu, Numero aIDPerfil, Numero aCodCon, Alfa aCampo, Alfa aValAbr);

Parâmetros:

Nome Tipo Descrição
aCodMod Alfa Código do módulo cujas abrangências deseja-se definir. Se o parâmetro aTipoAbr for diferente de "1", este parâmetro deve sempre receber o valor "RH". Os códigos dos módulos podem ser obtidos consultando através do CBDS os valores da enumeração "LModAbr".
aTipoAbr Numérico Tipo de Abrangência.
aCodUsu Numérico Código do usuário ou grupo.
aIDPerfil Numérico Código do Perfil. O código zero referencia o perfil padrão, que deve ser utilizado quando o recurso de abrangência por perfil não estiver ativado.
aCodCon Numérico Condição para ser setada a abrangência:
- 0(zero) - se não existem condições cadastradas, adicionará uma nova e aplicará a abrangência sobre esta nova condição. Se existem, apenas aplicará as abrangências sobre estas condições sem adicionar uma nova condição;
- CodCon não poderá exceder 3, e se for informada uma condição inexistente, sua antecessora será utilizada.
aCampo Alfa Campo que receberá a abrangência.
aValAbr Alfa Valor da abrangência.
Notas
  • Para o Tipo de Abrangência "5 - Lançamentos para Folha", a função sempre altera a primeira condição da abrangência, ignorando as demais condições. Neste caso, não é necessário utilizar três condições para determinar a abrangência, sendo utilizada apenas uma condição, montando uma só cláusula e atingindo o mesmo resultado;
  • Ao utilizar esta função para definir a abrangência de Situações para Acerto, não é possível informar qual situação irá receber a abrangência.
  • Quando deseja-se trabalhar com mais de um Tipo de abrangência (segundo parâmetro, por exemplo, com os valores 1 e 3), existem duas abordagens possíveis:
    • Separar os tipos e gravá-los individualmente, utilizando a função GravaNoBancoAbrUsu(): deve-se informar um Tipo de Abrangência, gravá-lo e, em seguida, informar o outro Tipo de Abrangência desejado e gravá-lo também.
    • Informar os valores de forma decrescente e gravar apenas uma vez: nesse caso, pode-se informar todos os tipos de abrangência desejados em ordem decrescente e gravá-los em uma única operação.

Tipo de Retorno: Retornará 1 se a definição for efetuada com sucesso. Caso contrário, retornará 0.

Exemplo:

@ Define para o usuário ativo uma abrangência de valor 2 para o campo NumCad @
DefineAbrUsu("RH", 1, CodUsu, 0, 1, "NumCad", "2");

Utilização: Em todas as regras.

Este artigo ajudou você?