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

  • Rversion finale: Yokohama
  • Mis à jour 30 janv. 2025
  • 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 Includes de script pour stocker les fonctions et classes JavaScript à utiliser 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...

    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...

    Exemple

    Supposons que vous ayez une instance de l’objet contenant la méthode changeRelationHelperObj.
    var changeRelationHelperObj = new sn_devops.DevOpsChangeRelationshipHelper();
    Supposons que vous disposez d’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 selon le 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é. En cas de problème lors de la récupération des données, un message d’erreur s’affiche avec des 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());
    }