Exemplo de pool de recursos que limita as escolhas ao centro de custos

  • Versão de lançamento: Yokohama
  • Atualizado 30 de jan. de 2025
  • 3 min. de leitura
  • Você pode usar grupos de recursoscom blueprints para limitar as opções no formulário de solicitação do catálogo na nuvem.

    Caso de uso: Restringir a seleção do centro de custos

    Neste exemplo, o custo do ativo de nuvem é cobrado do orçamento do centro de custos do usuário. . sistema-base UserCostCenter grupo de recursosgarante que um usuário possa selecionar somente recursos em seu centro de custos.

    Considerações

    • O plug-in Gestão de custos [con.snc.cost_management] está ativo.
    • Os centros de custo são definidos e os usuários são associados aos centros de custo.
    • Pelo menos um blueprint está definido. Este exemplo usa um blueprint chamado AWS Virtual Server .
    • Você recebeu a função sn_cmp_cloud_admin e conhece scripts JavaScript e JSON.

    Componentes

    Revise o filtro do pool de recursos
    1. No portal do administrador de nuvem, navegue até Gerenciar > Grupos de recursos.
    2. Abra o. CostCenterPool E revise os filtros do pool de recursos relacionados.
      • Todos é um filtro de consulta que retorna todos os centros de custo na tabela.
      • UserCostCenter é um filtro de script que pesquisa o centro de custos associado ao usuário que está solicitando o item.
      Este é o script para UserCostCenter filtro:
      getFilteredRecords();
      //Do not remove function declaration
      /**
      * @returns filtered records in the format [{"value"="lookupValue",label="displayValue"}]
      */
      function getFilteredRecords() {
      	var filteredRecords = [];
      	var userId = gs.getUserID();
      	var userGr = new GlideRecord('sys_user');
      	if (userGr.get(userId)){
      		var costCenterId = userGr.getValue('cost_center');
      		if (costCenterId){
      			var costCenterGr = new GlideRecord('cmn_cost_center');
      			if (costCenterGr.get(costCenterId)){
      				var costCenter = {};
      				costCenter.value = costCenterGr.getUniqueValue();
      				costCenter.label = costCenterGr.getValue('name');
      				filteredRecords.push(costCenter);
      			}
      		}		
      	}
      
      	//force to string
      	return new global.JSON().encode(filteredRecords);
      }
    Parâmetros do formulário do catálogo de blueprint
    1. Navegar até Criar > Planos gráficose clique no bloco do blueprint que você deseja abrir.
    2. Com o blueprint em Rascunho estado, clique em Provisionamento bloco de operação no Catálogo > Operação de solicitação guia.

      Operação de provisionamento

    3. Na lista relacionada Conjuntos de variáveis, clique em Informações gerais conjunto de variáveis. Por padrão, a variável Centro de custos está neste conjunto de variáveis.
    4. Na lista relacionada Variáveis de nuvem no formulário Conjunto de variáveis, clique em Centro de custos variável.

      Variável de centro de custos

    5. No formulário Variável de nuvem, clique em Especificações de tipo .
    6. Olhe para Grupo e. Filtro de pool campos que se referem a. grupo de recursose filtro.
      • CostCenterPoolé o nome do grupo de recursos.
      • UserCostCenter é o script de filtro que extrai as opções do centro de custos para o usuário selecionar.

      Filtro e pool de recursos usados no valor da fonte de dados da propriedade do catálogo do centro de custos

    7. Defina o blueprint como Publicado .
    Usuário do centro de custos
    Identifique um usuário que é membro de um centro de custos e que tem acesso ao Portal de usuário da nuvem.

    Usuário que é membro do centro de custos de vendas.

    Testando o filtro do pool de recursos

    Depois de revisar os componentes que compõem este caso de uso, teste o item do catálogo em nuvem para verificar se os usuários podem selecionar somente o centro de custos.

    1. Representar o usuário, Dirigido por Alene Rabeck neste exemplo.
    2. Em Portal de usuário da nuvem, clique em Inicie uma pilha e, em seguida, selecione o item do catálogo de nuvem ( AWS Virtual Server neste exemplo).
    3. Revise as seleções no Centro de custos lista.

      Vendas é a única seleção para o centro de custos deste usuário.

    Com o. CostCenterPool::UserCostCentervalor da fonte de dados para este item do catálogo, a única opção para Centro de custos é o centro de custos do qual o usuário é membro.

    Alterando o filtro do pool de recursos

    Teste que o. grupo de recursoso filtro está controlando o comportamento do Centro de custos alterando-o e exibindo os resultados.

    1. No Portal do administrador de nuvem, navegue até Criar > Planos gráficos e clique em AWS Virtual Server .
    2. Clique em Provisionamento bloco de operação.
    3. Na lista relacionada Conjuntos de variáveis, clique em Informações gerais conjunto de variáveis. Por padrão, a variável Centro de custos está neste conjunto de variáveis.
    4. Na lista relacionada Variáveis de nuvem no formulário Conjunto de variáveis, clique em Centro de custos variável.
    5. No formulário Variável de nuvem, clique em Especificações de tipo .
    6. Edite o. Filtro de pool campo do qual mudar o filtro UserCostCenterpara All.

      Filtro e pool de recursos usados no valor da fonte de dados da propriedade do catálogo do centro de custos

    7. Clique em Atualizar e clique em Publicar. .
    8. Representar o usuário, Dirigido por Alene Rabeck neste exemplo.
    9. Em Portal de usuário da nuvem, inicie uma pilha e selecione AWS Virtual Server .
    10. Verifique se todos os centros de custo estão listados.

      Agora, todos os centros de custo são exibidos para seleção.