# マップでglobalMap変数を定義

ジョブを作成し、APIからデータを抽出して、globalMap変数に保管します。

## 手順

1. Integrationパースペクティブで[Job Designs] (ジョブデザイン)ノードを右クリックし、[Create Standard Job] (標準ジョブを作成) をクリックします。
2. ジョブの名前、目的、説明を入力して[Finish] (終了)をクリックします。
3. 次のコンポーネントをデザインワークスペースに追加し、[Row] (行) &gt; [Main] (メイン)接続にリンクさせます。
   * tHttpRequest
   * tHMap
   * tLogRow

   ジョブは次のようになります: ![ジョブの説明。](https://help.qlik.com/talend/ja-JP/data-mapper-functions-reference-guide/Resources/images/define_globalmap_variable_in_map_01_job.png)
4. tHttpRequestコンポーネントをダブルクリックして、以下のように設定します:
   | パラメーター | 値 |
   | --- | --- |
   | URI | "https://www.swapi.tech/api/people?page=1&limit=10" |
   | Method | GET |
5. tLogRowコンポーネントをダブルクリックして、[Edit schema] (スキーマを編集)の横にある[...]ボタンをクリックします。
6. 以下のカラムを入力に追加して、それらを出力にコピーしてから、OKをクリックします。
   | カラム | [Type] (タイプ) |
   | --- | --- |
   | pages | 整数 |
   | results | 整数 |
7. tHMapコンポーネントをダブルクリックして、マップを生成します。
   1. 1番目のステップでは、[Select an existing hierarchical mapper structure] (既存の階層マッパーストラクチャーを選択)を選択して、[Next] (次へ)をクリックしてから、APIから作成したストラクチャーを選択します。
   2. 2番目のステップでは、デフォルトオプションのままにしておき、[Next] (次へ)をクリックしてから、[FInish] (終了)をクリックします。

   マップが作成され、定義できるようになります。
8. 出力rowエレメントをクリックし、その[Loop] (ループ)タブのFixedLoopファンクションを配置します。
9. 入力total\_recordsエレメントを出力resultsエレメントに、入力total\_pagesエレメントを出力pagesエレメントに配置します。

   ![エレメントの配置。](https://help.qlik.com/talend/ja-JP/data-mapper-functions-reference-guide/Resources/images/define_globalmap_variable_in_map_02_map.png)
10. 出力rootエレメントをクリックして、[Util] (ユーティリティ)タブを開いてから、その中にPutValueToExternalMapファンクションを配置します。
11. ConstantファンクションをKey引数に配置し、それをダブルクリックして変数の名前(total.pagesなど)を定義します。
12. XPathFunctionファンクションをValue引数に配置し、それをダブルクリックして、[Functions/Arguments] (ファンクション/引数)フィールドにxs:integer(%v)と入力します。

    この例では、作成される変数は整数である必要がありますが、PutValueToExternalMapはデフォルトでStringを生成します。変数を整数として使うには、XPathFunctionファンクションを追加してBigIntegerとして定義します。
13. 入力total\_pagesエレメントをXPathFunctionに配置します。

    ![total_pagesエレメントの配置。](https://help.qlik.com/talend/ja-JP/data-mapper-functions-reference-guide/Resources/images/define_globalmap_variable_in_map_03_variable.png)
14. マップを保存します。

## タスクの結果

ジョブの最初の部分が設定されており、それを実行して結果をチェックできます。次のステップでは、変数を別のコンポーネントで使います。