Récupérer les données de demande de changement à l’aide du script DevOpsChangeRelationshipHelper

  • Rversion finale: Xanadu
  • Mis à jour 1 août 2024
  • 1 minute de lecture
  • Récupérez les données associées à une demande de changement en fonction du type de relation spécifié à l’aide de l’include de script DevOpsChangeRelationshipHelper.

    Avant de commencer

    Rôle requis : sn_devops.viewer

    Pourquoi et quand exécuter cette tâche

    Utilisez les Includes de script pour stocker des fonctions et des classes JavaScript afin qu’elles soient utilisées par les scripts serveur. Vous pouvez appeler l’include de script à partir d’une règle métier, d’une action d’interface utilisateur, d’un script de workflow, d’une API REST scriptée, etc.

    Cette méthode récupère les données relatives à une demande de changement en fonction du type de relation spécifié.

    Les types de relations pris en charge sont les suivants :
    • DevOpsCommonConstants.COMMIT_TABLE
    • DevOpsCommonConstants.DEVOPS_WORK_ITEM
    • DevOpsCommonConstants.DEVOPS_TEST_SUMMARY_TABLE
    • DevOpsCommonConstants.DEVOPS_SECURITY_SCAN_SUMMARY_TABLE
    • DevOpsCommonConstants.DEVOPS_ARTIFACT_VERSION_TABLE
    • DevOpsCommonConstants.DEVOPS_SOFTWARE_QUALITY_SUMMARY_TABLE
    • DevOpsCommonConstants.DEVOPS_PULL_REQUEST_TABLE

    Procédure

    1. Accédez à la Tout > Définition du système > Includes de script.
    2. Recherchez le script DevOpsChangeRelationshipHelper.
      Vous pouvez appeler cet include de script à partir d’une règle métier, d’une action d’interface utilisateur, d’un script de workflow, d’une API REST scriptée, etc.

    Exemple

    Supposons que vous disposez d’une instance de l’objet contenant la méthode changeRelationHelperObj.
    var changeRelationHelperObj = new sn_devops.DevOpsChangeRelationshipHelper();
    Supposons que vous ayez un objet GlideRecord représentant une demande de changement.
    var changeRequest = new GlideRecord('change_request');
    changeRequest.addQuery('number', 'CHG123456');
    changeRequest.query();
    changeRequest.next();

    Les données récupérées peuvent inclure des détails supplémentaires en fonction du type de relation. Si des données sont trouvées, un tableau contenant les informations d’ID système connexes est renvoyé. Si les données sont introuvables, un message de débogage s’affiche et un tableau vide est renvoyé. Si un problème se produit lors de la récupération des données, un message d’erreur s’affiche avec les détails.

    Exemple 1 : récupération des données de validation pour une demande de changement.

    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());
    }
    
    Exemple 2 : récupération d’éléments de travail pour une demande de changement.
    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());
    }