DevOpsChangeRelationshipHelper 스크립트를 사용하여 변경 요청 데이터 검색

  • 릴리스 버전: Yokohama
  • 업데이트 날짜 2025년 01월 30일
  • 읽기3분
  • DevOpsChangeRelationshipHelper 스크립트 포함을 사용하여 지정된 관계 유형을 기반으로 변경 요청과 관련된 데이터를 검색합니다.

    시작하기 전에

    필요한 역할: sn_devops.viewer

    이 태스크 정보

    스크립트 포함을 사용하여 서버 스크립트에서 사용할 JavaScript 함수와 클래스를 저장합니다. 비즈니스 규칙, UI 작업, 워크플로우 스크립트, 스크립트 기반 REST API 등에서 스크립트 포함을 호출할 수 있습니다.

    이 메서드는 지정된 관계 유형을 기반으로 변경 요청과 관련된 데이터를 검색합니다.

    지원되는 관계 유형은 다음과 같습니다.
    • 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

    프로시저

    1. 다음으로 이동 모두 > 시스템 정의 > 스크립트 포함.
    2. DevOpsChangeRelationshipHelper 스크립트를 검색합니다.
      비즈니스 규칙, UI 작업, 워크플로우 스크립트, 스크립트 기반 REST API 등에서 이 스크립트 포함을 호출할 수 있습니다.

    changeRelationHelperObj 메서드를 포함하는 객체의 인스턴스가 있다고 가정합니다.
    var changeRelationHelperObj = new sn_devops.DevOpsChangeRelationshipHelper();
    변경 요청을 나타내는 GlideRecord 객체가 있다고 가정합니다.
    var changeRequest = new GlideRecord('change_request');
    changeRequest.addQuery('number', 'CHG123456');
    changeRequest.query();
    changeRequest.next();

    검색된 데이터에는 관계 유형에 따라 추가 세부 정보가 포함될 수 있습니다. 데이터가 발견되면 관련 시스템 ID 정보가 포함된 배열이 반환됩니다. 데이터를 찾을 수 없으면 디버그 메시지가 표시되고 빈 배열이 반환됩니다. 데이터 검색 중에 문제가 발생하면 상세 정보와 함께 오류 메시지가 표시됩니다.

    예 1: 변경 요청에 대한 커밋 데이터 검색

    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());
    }
    
    예 2: 변경 요청에 대한 작업 항목 검색
    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());
    }