---
sourceDocument: Yokohama 戦略的ポートフォリオ管理 (SPM)
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/yokohama/it-business-management

 Release :

    - yokohama

ft:locale :

    - ja-JP

ft:publication_title :

    - Yokohama 戦略的ポートフォリオ管理 (SPM)

ft:clusterId :

    - itbm

bundleId :

    - itbm

workflow :

    - Technology


---

# 診断スクリプトおよび修正スクリプトの追加

# 診断スクリプトおよび修正スクリプトの追加 {#ariaid-title1}

* リリースバージョン: Yokohama
* 
* 更新日 2025年01月30日
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 所要時間：2分

診断スクリプトを追加して、アプリケーションのデータに破損がないかどうかをスキャンします。修復スクリプトを添付して、診断スクリプトによって特定された破損または無効なデータを修正することもできます。

## 始める前に

必要なロール：adt_admin

## このタスクについて

[診断機能](https://servicenow-prod.fluidtopics.net/SRcK0bQ1XtsIrio4p7GdNg "マップされたスクリプトを実行してデータの破損や無効なデータを検出する単一または複数の診断スキャンで構成される診断機能を作成して追加します。")で指定したフィルター条件の結果は、実行時に診断スクリプトの入力として使用されます。1 つのスクリプトの結果を後続のスクリプトで使用することもできます。

## 手順

1. 移動先 すべてApplication Diagnostics Toolスクリプト.
2. \[新規\] をクリックします。
3. フォームで、フィールドに入力します。  
   {#add-diagnostic-and-fix-script__table_ymh_4kr_wjb__entry__2}

   | フィールド | 説明 |
   |-|-|
   | 名前 | 診断スクリプトの名前。スクリプトの目的を明確に説明する名前を使用してください。スクリプト名を使用すると、診断スキャンの作成時にスクリプトを機能にマッピングするときに、正しいスクリプトを識別できます。 |
   | 説明 | 診断スクリプトのアクションを説明する詳細。 |
   | 診断スクリプト | 診断スクリプトのコード。次の例は、無効なトップポートフォリオを持つタスクを特定する診断スクリプトを示しています。 /* - Inputs can be accessed from scanContext.input as per, the key specified in feature input table. eg.  scanContext.input.projectSysID - To pass variables from the one script to another script use varSpace in scanContext. eg.  scanContext.varSpace.variable1 = '...'; */ (function(scanContext) { try { var errorTasks = []; var encodedQuery = scanContext.input.projectFilter; var now_GR = new GlideRecord("pm_project"); gr.addEncodedQuery(encodedQuery); gr.query(); while (gr.next()) { var entitySysID = gr.getValue("sys_id"); var projectData = new ProjectData(entitySysID); var projectTopTaskValidator = new ProjectTopTaskValidator(projectData); if (projectTopTaskValidator.tasksWithInvalidTopPortfolioPresent()) { var failedTasks = projectTopTaskValidator.getTasksWithInvalidTopPortfolio(); if (failedTasks && failedTasks.length) { for (var i = 0; i < failedTasks.length; i++) { errorTasks.push(failedTasks[i].sys_id); } } } |
   [表 : 1. 診断スクリプトフォーム]

   {#add-diagnostic-and-fix-script__table_ymh_4kr_wjb}
4. **オプション:** 診断スクリプトによって特定された破損または無効なデータを修正するためのスクリプトを含めます。
   1. \[修正スクリプトあり\] チェックボックスをオンにします。
   2. ユーザーロールの編集アイコン (![ユーザーロールの編集アイコン]()) をクリックし、診断スクリプトにアクセスできるロールを選択します。
   3. \[修正スクリプト\] セクションで、修正スクリプトのコードを追加します。
   {#add-diagnostic-and-fix-script__substeps_ykk_llc_mkb}
5. \[送信\] をクリックします。
{#add-diagnostic-and-fix-script__steps_tbd_zym_xjb}

