メイン コンテンツをスキップする 補完的コンテンツへスキップ

ServiceNowでのレコードの挿入と更新

このジョブは、ServiceNowアカウントに接続し、既存のServiceNowエンティティに新しいレコードを挿入します。

始める前に

  • 有効な認証情報を使用してServiceNowインスタンスにアクセスできる必要があります。
  • ServiceNow テーブルにレコードを挿入/更新する権限が必要です。
  • ServiceNowテーブルAPIの詳細については、ServiceNowのドキュメントを参照してください。

コンポーネントのリンク

手順

  1. パレットから、tServiceNowConnectiontFixedFlowInputtJava、および2つのtServiceNowOutputコンポーネントをドラッグ&ドロップします。
  2. [Trigger] (トリガー)> [On SubJob OK] (サブジョブがOKの場合)接続を使って、tServiceNowConnectionコンポーネントをtFixedFlowInputコンポーネントに接続します。
  3. [Row] (行) > [Main] (メイン)接続を使って、tFixedFlowInputコンポーネントを最初のtServiceNowOutputコンポーネントに接続します。
  4. [Trigger] (トリガー)> [On SubJob OK] (サブジョブがOKの場合)接続を使って、tFixedFlowInputコンポーネントをtJavaコンポーネントに接続します。
  5. [Row] (行) > [Main] (メイン)接続を使って、tJavaコンポーネントを2番目のtServiceNowOutputに接続します。
    リンクされたすべてのコンポーネントとサブジョブを表示するジョブレイアウト。

コンポーネントの設定

手順

  1. tServiceNowConnectionコンポーネントをダブルクリックして、[コンポーネント]ビューを開きます。
  2. ServiceNowアカウントにアクセスするための接続情報(URLと認証情報)を入力します。
  3. [tFixedFlowInput]コンポーネントをダブルクリックして、[コンポーネント]ビューを表示します。
  4. [Basic settings] (基本設定)ビューで、[Edit schema] (スキーマを編集)をクリックしてスキーマエディターを開き、u_id(文字列)とu_name(文字列)の2つの列を定義します。
  5. [Use Single Table] (シングルテーブルの使用)セクションの[Values] (値)テーブルで、各列に挿入する値を入力します。
    列に挿入される値を示すtFixedFlowInput設定。
  6. tServiceNowOutputをダブルクリックして、その[Component] (コンポーネント)ビューを表示します。
  7. [Basic settings] (基本設定)ビューで、[Use Existing Connection] (既存の接続を使用)チェックボックスをオンにして、すでに定義した接続の詳細を再利用します。
  8. tFixedFlowInputコンポーネントで定義されたレコードを挿入するには、[Action (アクション)リストで[Insert] (挿入)を選択します。
  9. [Table] (テーブル)リストで、カスタムテーブルにレコードを挿入する場合は[Use Custom Table] (カスタム テーブルの使用)を選択します。
  10. [Custom Table name] (カスタムテーブル名)フィールドに、テーブルの名前を入力します。コンテキスト変数を使用できます。
  11. [カラムを同期]をクリックし、前のコンポーネントからスキーマを取得します。
    挿入アクションとカスタムテーブルが選択されたtServiceNowOutput設定。
  12. [Advanced settings] (詳細設定)ビューで、[Enable response debug mode] (レスポンスデバッグモードを有効化)チェックボックスが選択されていることを確認します。レスポンス変数には、更新操作に必要なsys_id列が保存されます。
  13. tJavaコンポーネントをダブルクリックして、[コンポーネント]ビューを開きます。
  14. [Code] (コード)領域に、実行するレコード更新に対応するコードを入力します。
    // Populate the output row for the tServiceNowOutput component
    String insertResponse = (String) globalMap.get("tServiceNowOutput_1_RESPONSE");
    
    JSONObject insertResult = new JSONObject(insertResponse).getJSONObject("result");
    
    row9.sys_id = insertResult.getString("sys_id"); // the "sys_id" attribute is mandatory for the "update" tServiceNowOutput component
    row9.u_name = insertResult.getString("u_name") + "_Updated"; // Update the "u_name" attribute
  15. 2番目のtServiceNowOutputコンポーネントをダブルクリックして、その[Component] (コンポーネント)ビューを表示します。
  16. [Basic settings] (基本設定)ビューで、[Use Existing Connection] (既存の接続を使用)チェックボックスをオンにして、すでに定義した接続の詳細を再利用します。
  17. tJavaコンポーネントで定義されているとおりにレコードを更新するには、[Action (アクション)リストで[Update] (更新)を選択します。
  18. [Table] (テーブル)リストで、[Use Custom Table] (カスタムテーブルの使用)を選択します。コンテキスト変数を使用できます。
  19. [Custom Table name] (カスタムテーブル名)フィールドに、テーブルの名前を入力します。
  20. [カラムを同期]をクリックし、前のコンポーネントからスキーマを取得します。
    更新アクションとカスタムテーブルが選択されたtServiceNowOutput設定。

ジョブを実行

手順

  1. Ctrl + Sを押してジョブを保存します。
  2. F6を押して実行します。

タスクの結果

ジョブはServiceNowアカウントに接続し、定義されたServiceNowテーブルに選択されたレコードを挿入および更新します。

テーブルに移動して更新されたレコードを確認することで、ServiceNowインスタンスの更新を確認できます。

次のタスク

必要に応じて、tServiceNowInputおよびtLogRowコンポーネントを使用して、ポストジョブで更新されたデータを読み取ることができます。
更新されたデータを読み取るポストジョブ。
実行コンソールに表示される更新されたデータ。

このページは役に立ちましたか?

このページまたはコンテンツにタイポ、ステップの省略、技術的エラーなどの問題が見つかった場合はお知らせください。