---
sourceDocument: Xanadu モバイルの構成とナビゲーション
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/xanadu/mobile

 Release :

    - xanadu

ft:locale :

    - ja-JP

ft:publication_title :

    - Xanadu モバイルの構成とナビゲーション

ft:clusterId :

    - mobile

bundleId :

    - mobile

workflow :

    - Platform


---

# アクションアイテムの設定

# アクションアイテムの設定 {#ariaid-title1}

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

アクション機能を機能させるには、アクション機能に関連付けるアクションアイテムを作成する必要があります。アクションアイテムは、アクション機能とその動作を定義します。

## 始める前に

アクションアイテムを作成する前に、アクション機能を作成します。

必要なロール：admin

## このタスクについて

ほとんどのアクションアイテムではパラメーターを使用します。

アクションアイテムを使用して、ユーザーがその機能を使用したときにアクション機能が何を行うかを定義します。次の手順では、パラメーターのないアクションの作成について詳しく説明します。パラメーター化されたアクションアイテムの作成については、「[パラメーターを使用してアクションアイテムを構成する](https://servicenow-prod.fluidtopics.net/LOyav5qhD56NPCZEig4ZAQ "パラメーターによって、正しいレコードを変更していることを確認し、必要なフィールドを必要に応じて強制するアクションに渡す情報が決定されます。パラメーターを使用してアクションアイテムを作成し、アクションに加えられる変更とその変更方法を定義します。")」を参照してください。  
注:  
ServiceNow モバイルアプリでは、プラットフォームの Web ベースインターフェイスで実行できないアクションは実行できません。たとえば、ACL を使用して、解決コードとメモを追加しなければユーザーがインシデントをクローズできないようにした場合、ユーザーは同じ要件を持たないアプリ内のインシデントをクローズすることはできません。アクションを作成する場合は、このことを念頭に置き、適切なパラメーターを追加するようにします。

## 手順

1. 移動先 すべてシステムモバイルモバイルアプリビルダー.  
   モバイルアプリビルダー が新しいブラウザータブで開き、アプリケーションスコープ選択画面が表示されます。
2. 作業しているアプリケーションスコープを検索し、アプリケーションスコープの名前を選択します。  
   モバイルアプリビルダー カテゴリのホーム画面が表示されます。
3. メニューから \[関数\]を選択してから、\[新規\] を選択します。
4. \[アクションアイテム\] セクションで \[新規\] を選択し、必要に応じて次のフィールドに入力します。  
   {#sg-studio-create-action-item__table_dcb_qzh_2fb__entry__2}

   | フィールド | 説明 |
   |-|-|
   | 名前 | アクションアイテムの名前。同じ名前を持つ複数のアクションアイテムを持つことができます。区別しやすい名前を選択してください。 |
   | 説明 | アクションアイテムの識別に役立つその他の情報。 |
   | タイプ | アクションアイテムの種類。次のいずれか 1 つを選択します。 * 新規 * 更新 * 削除 * スクリプト * 複数ステップ。詳細については、「[アクションアイテム内のアクションステップを設定する](https://servicenow-prod.fluidtopics.net/wKpR2XUIcPb8U53d_0mAoA "アクションアイテムで複数のプロセスを実行するには、個別のアクションステップを定義する必要があります。")」を参照してください。 {#sg-studio-create-action-item__ul_w1w_x13_2fb}選択したアクションのタイプに応じて、\[アクションアイテム\] フォームに異なるフィールドが表示されます。 |
   | テーブル | アクションアイテムが適用されるテーブル (Incident など)。 |
   | 実行スクリプト | アクションによって実行されたスクリプト。このフィールドは、タイプとして \[スクリプト\] を選択した場合にのみ表示されます。詳細については、以下の例を参照してください。 スクリプトでパラメーター画面からの入力を使用するには、`parm_input.<InputName>` を使用します。 スクリプトでパラメーター画面からの変数を使用するには、`parm_variable.<VariableName>` を使用します。 |
   | 現在のレコードを条件として使用 | アクションアイテムに対して個別のクエリー条件セットを使用するかどうか。選択した場合、\[クエリー条件\] フィールドは無効になります。更新または削除アクションの場合は、Sys ID を指定して更新または削除するレコードを定義する必要があります。\[現在のレコードを条件として使用\] を「true」としてマークすると、パラメーターを作成せずにこれを実行できます。 |
   | クエリー条件 | アクションアイテムに適用されるフィルター条件。 |
   | フィールド値の設定 | アクションの対象となるフィールド値を決定します。たとえば、「解決済み」ステータスのインシデントを更新するアクションを作成する場合は、フィールド値 \[ステータス\] = \[解決済み\] を指定します。また、フィールド値に渡すパラメーター化されたアイテムを作成することもできます。 |
   | 入力フォーム画面 | このアクションアイテムで使用する入力フォーム画面を選択します。「[入力フォーム画面を構成する](https://servicenow-prod.fluidtopics.net/ntoIHRdKxUgXyzILe88yeQ "入力パラメーターを設定して、ユーザーがモバイルアプリのレコードリストを表示できるようにします。ユーザーはレコード名をタップするだけで、リストからレコードにアクセスできます。")」を参照してください。 |
   [表 : 1. アクションアイテムフィールド]

   {#sg-studio-create-action-item__table_dcb_qzh_2fb}
5. \[保存\] を選択します。

## 例

次の例では、SMTask オブジェクトを使用して、スクリプトでタスクを現在のユーザーにアサインしています。最初の `if` 文は、入力が有効な `wm_task` レコードであることを確認し、そうでない場合にはスクリプトを終了します。2 番目の `if` ステートメントには、 `canAssignToSelf` メソッドに従って、ユーザーが権限を持っている場合にそのタスクを現在のユーザーにアサインするコードが含まれています。このアクションは、これらのチェックを含めることができるように、更新ではなくスクリプトとして実行されました。

    (function WriteBackAction(parm_input, parm_variable) {
    	var smTask = new global.SMTask();
           var work_order_task_id = parm_variable['sys_id'];
    	var wotGR = new GlideRecord("wm_task");
    	if (!wotGR.get(work_order_task_id)) {
    		gs.error("wot_assign_to_me write-back action - failed to find work order task");
    		gs.addErrorMessage(gs.getMessage("Task assignment failed."));
    		return;
    	}
    	
    	if (smTask.canAssignToSelf(wotGR))
    		smTask.assignToMe(gs.getUserID(), work_order_task_id);
    	else
    		gs.addErrorMessage(gs.getMessage("Not a valid task assignment."));
    })(parm_input, parm_variable);

次の例では、アクションが実行された後にスクリプトを使用してナビゲーション完了機能を実行します。機能として `actionResult` を入力し、アクションが実行されたら `setRedirectionInfo(gr.getUniqueValue(), gr.getTableName()` を定義して移動先を指定します。

    (function WriteBackAction(parm_input, parm_variable, actionResult) {​
                var gr = new GlideRecord('incident');​
                gr.get(parm_variable['sys_id']);​
                gr.short_description = 'Updated by Scripted Action';​
                gs.addInfoMessage(gs.getMessage("This is the First success message"));​
                gs.addInfoMessage(gs.getMessage("This is the Second success message"));​
                gs.addInfoMessage(gs.getMessage("This is the Third success message"));​
                gr.update();​
            actionResult.setRedirectionInfo(gr.getUniqueValue(), gr.getTableName());         ​
    })(parm_input, parm_variable, actionResult);

アクションアイテムにパラメーターを使用する場合は、スクリプトでパラメーターを呼び出すことができます。スクリプト内の呼び出しは、パラメーター名と正確に一致する必要があります。たとえば、上記の最初のスクリプトのように、パラメーター名が wb_wot_reject_work_note の場合は、`gr.work_notes = input.wb_wot_reject_work_note;` を使用してスクリプトで呼び出すことができます。

## 次のタスク

アクションアイテムをアクション機能に関連付けます (「[アクション機能](https://servicenow-prod.fluidtopics.net/HlqnAXX5FlsdWOyX6h4~Aw "ユーザーはアクション機能を使用して、データベース内のデータを変更できます。たとえば、レコードへの更新を行ったり、コメントを追加したりするには、アクション機能が必要です。")」を参照)。

アクションステップをアクションアイテムに関連付けます (「 [アクションアイテム内のアクションステップを設定する](https://servicenow-prod.fluidtopics.net/wKpR2XUIcPb8U53d_0mAoA "アクションアイテムで複数のプロセスを実行するには、個別のアクションステップを定義する必要があります。")」を参照)。

