Recuperar dados da solicitação de mudança usando o script DevOpsChangeRelationshipHelper

  • Versão de lançamento: Yokohama
  • Atualizado 30 de jan. de 2025
  • 1 min. de leitura
  • Recupere dados associados a uma solicitação de mudança com base no tipo de relação especificado usando a inclusão de script DevOpsChangeRelationshipHelper.

    Antes de Iniciar

    Função necessária: sn_devops.viewer

    Por Que e Quando Desempenhar Esta Tarefa

    Use Inclusões de script para armazenar funções e classes JavaScript para uso por scripts de servidor. Você pode chamar a Inclusão de script de uma Regra de negócio, Ação de IU, script de fluxo de trabalho, Scripted REST API e assim por diante.

    Este método recupera dados relacionados a uma solicitação de mudança com base no tipo de relação especificado.

    Os tipos de relação compatíveis são:
    • DevOpsCommonConstants.COMMIT_table
    • DevOpsCommonConstants.DEVOPS_WORK_ITEM
    • DevOpsCommonConstants.DEVOPS_TEST_SUMMARY_TABELA
    • DevOpsCommonConstants.DEVOPS_SECURITY_SCAN_SUMMARY_TABELA
    • DevOpsCommonConstants.DEVOPS_ARTIFACT_VERSION_TABELA
    • DevOpsCommonConstants.DEVOPS_SOFTWARE_Quality_SUMMARY_TABELA
    • DevOpsCommonConstants.DEVOPS_PULL_REQUEST_TABELA

    Procedimento

    1. Navegar até Tudo > Definição do Sistema > Inclusões de script.
    2. Pesquise o script DevOpsChangeRelationshipHelper.
      Você pode chamar esta Inclusão de script a partir de uma Regra de negócio, Ação de IU, script de fluxo de trabalho, Scripted REST API e assim por diante.

    Exemplo

    Suponha que você tenha uma instância do objeto que contém o método changeRelationHelperObj.
    var changeRelationHelperObj = new sn_devops.DevOpsChangeRelationshipHelper();
    Suponha que você tenha um objeto GlideRecord que representa uma solicitação de mudança.
    var changeRequest = new GlideRecord('change_request');
    changeRequest.addQuery('number', 'CHG123456');
    changeRequest.query();
    changeRequest.next();

    Os dados recuperados podem incluir detalhes adicionais, dependendo do tipo de relação. Se forem encontrados dados, será retornada uma matriz que contém as informações dos SYS IDs relacionados. Se os dados não forem encontrados, uma mensagem de depuração será exibida e uma matriz vazia será retornada. Se houver um problema durante a recuperação de dados, uma mensagem de erro será exibida com detalhes.

    Exemplo 1: Recuperando dados de confirmação para uma solicitação de mudança.

    try {
        var commitsData = changeRelationHelperObj.getChangeRelationData(changeRequest, sn_devops.DevOpsCommonConstants.COMMIT_TABLE);
        if (commitsData && commitsData.length > 0) {
            gs.log('Commits Data:', commitsData);
        } else {
            gs.log('No commits found for Change Request:', changeRequest.getDisplayValue());
        }
    } catch (error) {
        gs.error('Error fetching commits data:', error.getMessage());
    }
    
    Exemplo 2: Recuperando itens de trabalho para uma solicitação de mudança.
    try {
        var workItemsData = changeRelationHelperObj.getChangeRelationData(changeRequest, sn_devops.DevOpsCommonConstants.DEVOPS_WORK_ITEM);
        if (workItemsData && workItemsData.length > 0) {
            gs.log('Work Items Data:', workItemsData);
        } else {
            gs.log('No work items found for Change Request:', changeRequest.getDisplayValue());
        }
    } catch (error) {
        gs.error('Error fetching work items data:', error.getMessage());
    }