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();取得されるデータには、関係タイプに応じて追加の詳細が含まれる場合があります。データが見つかった場合は、関連する sys 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());
}