DevOpsChangeRelationshipHelper 스크립트를 사용하여 변경 요청 데이터 검색
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
프로시저
예
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());
}