# tDqReportRunでのコンテキスト用法

コンテキストにはパラメーターに特徴があります。

| 用語 | 定義 |
| --- | --- |
| コンテキスト | 特定の設定でジョブを実行するために使われるパラメーターをグルーピングします。コンテキストにはコンテキストグループが少なくとも1つ、そしてコンテキスト変数が1つ以上含まれています。 |
| コンテキストグループ | コンテキスト変数の値が含まれています。コンテキストグループごとに名前が異なります。 |
| コンテキスト変数 | 値を持ち、コンテキストに属しています。コンテキスト変数の名前や値は、コンテキストグループごとに異なる場合も同一の場合もあります。 |

ジョブコンテキストは次の場所で設定できます。

* [Run] (実行)ビュー。
* tDqReportRunコンポーネントの[Browse reports] (レポートを参照)ダイアログボックス選択されたレポートで、[Run] (実行)ビューや[Context] (コンテキスト)ビューで設定されたジョブコンテキストが上書きされます。

ジョブの実行中は、[Run] (実行)ビューで選択されたコンテキストが有効となる唯一のコンテキストです。分析エディターのコンテキストグループと、[Context] (コンテキスト)ビューのデフォルトコンテキストグループは無視されます。

## コンテキストのアップデート

tDqReportRunコンポーネントが使用するコンテキストをアップデートした後、

* 組み込みコンテキストの場合は、このコンテキストを使ってジョブを再生成します。
* リポジトリーコンテキストの場合は、このコンテキストを使ってジョブを開いてアップデートを受け入れます。

これは、メインプロジェクトと参照プロジェクトに適用されます。

生成されたジョブのコンテキストは組み込みモードです。

## tDqReportRunがコンテキストグループとコンテキスト変数のマージに使用するルール

Profiling パースペクティブでレポートにtDqReportRunを使用してジョブを生成する時、データマート接続と分析またはレポートエディターで使用されるコンテキストグループはすべて、ジョブ[Context] (コンテキスト)ビューの統合リスト内にマージされます。

ジョブの[Context] (コンテキスト)ビューには、接続、分析、レポートで使用しているコンテキストグループとコンテキスト変数のすべてに関する完全なマトリクスが表示されます。このマージは、複数の異なるコンテキストグループに使用されている変数が同じ名前になっているケースをカバーする特定のルールに従います。

tDqReportRunコンポーネントは、以下のルールを使用してコンテキストグループと変数をマージします。

* 同じ名前のコンテキストグループが2つある場合、マージ後はその名前のコンテキストグループが1つだけになります。新しいコンテキストグループには、2つのコンテキストグループに含まれていたコンテキスト変数がすべて含まれます。名前の異なるコンテキストグループが2つある場合は、マージ後もコンテキストグループは2つで、それぞれのコンテキストグループに2つのコンテキストグループに含まれていたコンテキスト変数がすべて含まれます。

* 2つのコンテキスト変数の名前が同じである場合、マージ後は最初のコンテキスト変数のみが残ります(2番目の変数の値は破棄されます)。重複するコンテキスト変数名をリスト表示する警告メッセージが表示されます。2つのコンテキスト変数の名前が異なる場合は、マージ後も2つのコンテキスト変数が残り、値も元のままです。

コンテキストが以下のように使用されている Profiling パースペクティブでレポートにジョブを生成した場合:

* レポートエディター: 2つのコンテキストグループ: ctxgroup1, var1 + ctxgroup2, var1
* 分析エディター: ctxgroup1、varAおよびvarB + ctxgroup3、varA、varB
* データマート接続: ctxgroupA、varCおよびvarD

コンテキストマージの結果、生成されたジョブの[Context] (コンテキスト)ビューが以下のキャプチャーのようにマージされます: ![生成されたジョブの\[Context\] (コンテキスト)ビュー。](https://help.qlik.com/talend/ja-JP/components/8.0/Resources/images/dqreportrun_context.png)