Este exemplo mostra como usar um qualificador de referência avançado com JavaScript e uma inclusão de script para restringir o incidente Grupo de atribuição opções para somente os grupos que contêm o usuário especificado em Atribuído a. campo.
Antes de Iniciar
Função necessária: personalize_dictionary ou administrador
Procedimento
-
Abra um incidente.
-
Clique com o botão direito do mouse em Grupo de atribuição e selecione Configurar Dicionário .
-
Se o formulário aparecer em Exibição padrão , em Links relacionados , clique em Exibição avançada .
-
Em Use o qualificador de referência certifique-se de que Avançado a opção está selecionada.
-
Em Qual. De referência campo, insira ReferenceQualifierHelper().backfillAssignmentGroup() .
-
Salve o registro.
-
Navegar até .
-
Clique em Nova.
-
Nomeie suas inclusões de script como ReferenceQualifierHelper Para corresponder ao JavaScript na etapa a seguir.
Este nome garante que o Nome da API seja gerado corretamente, com base no campo Nome.
-
Inclusões de script Com o seguinte código JavaScript.
Certifique-se de que
Formulário acessível o campo está definido corretamente para o ambiente.
var ReferenceQualifierHelper = Class.create();
ReferenceQualifierHelper.prototype = {
backfillAssignmentGroup:function() {
var assigneeGroupsQualifier = '';
var assignee = current.assigned_to;
//return if the assigned_to value is empty (this causes all groups to be returned)
if(!assignee)
return;
//sys_user_grmember has the user to group relationship
var grAssigneeGroups = new GlideRecord('sys_user_grmember');
grAssigneeGroups.addQuery('user',assignee);
grAssigneeGroups.query();
while(grAssigneeGroups.next()) {
if (assigneeGroupsQualifier.length == 0) {
// Create the beginning of the qualifier and add the 1st group
assigneeGroupsQualifier = 'sys_idIN' + grAssigneeGroups.getValue('group');
}
else {
// build a comma separated string of groups if there is more than one
assigneeGroupsQualifier += (',' + grAssigneeGroups.group);
}
}
// return Groups where assigned to is in those groups we use IN for lists
gs.log('DP: RefQual = ' + assigneeGroupsQualifier);
return assigneeGroupsQualifier;
},
type: 'ReferenceQualifierHelper'
};
O que Fazer Depois
Para testar, crie um incidente e selecione um usuário no Atribuído a. campo. Clique em Grupo de atribuição ícone de pesquisa. São exibidos somente os grupos que contêm o usuário selecionado. Por exemplo, você atribui um incidente a Bob Smith, que pertence a. Banco de dados e Rede grupo. As únicas opções que aparecem no grupo de atribuição são Banco de dados e. Rede .