# 基本的な検証ルールを使用する

検証ルールを設定したら、そのルールをジョブデザインに適用できます。ここでは例として、データベーステーブルを読み取る際に正しい値かどうかをチェックする、基本的な検証ルールを使用します。このシナリオは、Talend Studioユーザーガイドの*[Basic rule] (基本ルール)*セクションで作成された基本チェック検証ルールに基づいています。

## 基本検証ルール用にジョブ環境を設定

### 手順

1. [Palette] (パレット)からデザインワークスペースに、次のコンポーネントを配置します: データベース入力コンポーネント(ここではtMysqlInputで、値を読み取ってチェックする)、2つのtFileOutputDelimitedコンポーネント(有効なデータを1つのファイルに抽出し、リジェクトされたデータを別のファイルに抽出する)、tJavaコンポーネント(処理された行の数をコンソールに表示する)。
2. [Row] (行) &gt; [Main] (メイン)接続を使って入力データベースコンポーネントを最初のtFileOutputDelimitedコンポーネントに接続し、[Trigger] (トリガー) &gt; [OnSubjobOk]接続を使って、tMysqlInputコンポーネントをtJavaコンポーネントに接続します。

   情報メモ注:

   tMysqlInputコンポーネントに検証ルールを適用する場合のみ、tMysqlInputコンポーネントと2番目のtFileOutputDelimitedコンポーネントとの間にリジェクトリンクを作成できます。

   ![Designerでのジョブのスクリーンショット。](https://help.qlik.com/talend/ja-JP/data-integration-job-examples/Resources/images/basic_validation_rule_1.png)

## tMysqlInputを設定する

### 手順

1. tMysqlInputコンポーネントをダブルクリックし、[Basic settings] (基本設定)を開きます。

   ![コンポーネントの基本設定のスクリーンショット。](https://help.qlik.com/talend/ja-JP/data-integration-job-examples/Resources/images/basic_validation_rule_2.png)
2. [Property type] (プロパティタイプ)として[Repository] (リポジトリー)を選択し、フィールドの横にある[...]ボタンをクリックして、確認するメタデータに対応する接続のプロパティを取得します。
3. [Schema] (スキーマ)ドロップダウンリストから[Repository] (リポジトリー)を選択し、フィールドの横にある[...]ボタンをクリックして、データベーステーブルに対応するスキーマを取得します。
4. [Table] (テーブル)フィールドの横にある[...]ボタンをクリックし、確認するテーブルを選択します。
5. [Guess Query] (クエリーを推測)をクリックし、テーブルスキーマに対応するクエリーを自動的に取得します。

## 検証ルールを適用してリジェクトリンクを作成する

この検証ルールには[On select] (選択時)オプションを選択したので、検証ルールは入力コンポーネントに適用する必要があります。

### 手順

1. tMysqlInputの[Component] (コンポーネント)ビューで[Validation Rules] (検証ルール)タブをクリックします。

   ![コンポーネント検証ルールのスクリーンショット。](https://help.qlik.com/talend/ja-JP/data-integration-job-examples/Resources/images/basic_validation_rule_4.png)
2. [Use an existing validation rule] (既存の検証ルールを使用)チェックボックスをオンにし、コンポーネントに検証ルールを適用します。
3. [Validation Rule Type] (検証ルールタイプ)リストで[Repository] (リポジトリー)を選択し、[...]ボタンをクリックして、[Repository Content] (リポジトリーコンテンツ)ウィンドウで検証ルールを選択します。
4. tMysqlInputコンポーネントを右クリックし、メニューで[Row] (行) &gt; [Rejects] (リジェクト)の順に選択し、このコンポーネントを2番目のtFileOutputDelimitedコンポーネントにドラッグして、この2つのコンポーネントの間にリジェクトリンクを作成します。

   この検証ルールで[Reject link] (リジェクトリンク)オプションを有効にしている場合、リジェクトされたデータを取得して、リジェクトフローに流すことができます。

## 出力コンポーネントを設定してジョブ実行結果を表示する

### 手順

1. tFileOutputDelimitedコンポーネントをダブルクリックし、[Basic settings] (基本設定)を開きます。

   ![コンポーネントの基本設定のスクリーンショット。](https://help.qlik.com/talend/ja-JP/data-integration-job-examples/Resources/images/basic_validation_rule_3.png)
2. [File Name] (ファイル名)フィールドに、有効なデータを書き込むファイルのパスと名前を指定します。
3. 該当するフィールドに、行とフィールドの区切りを定義します。
4. [Include Header] (ヘッダーを含める)チェックボックスをオンにして、出力データにカラムヘッダーを含めます。
5. 2番目のtFileOutputDelimitedコンポーネントに前述のステップを繰り返し、リジェクトされたデータの出力を設定します。

   ![コンポーネントの基本設定のスクリーンショット。](https://help.qlik.com/talend/ja-JP/data-integration-job-examples/Resources/images/basic_validation_rule_5.png)
6. tJavaコンポーネントをダブルクリックし、[Basic settings] (基本設定)を開きます。

   ![コンポーネントの基本設定のスクリーンショット。](https://help.qlik.com/talend/ja-JP/data-integration-job-examples/Resources/images/basic_validation_rule_6.png)
7. [Code] (コード)フィールドには、アップデート行数、挿入行数、リジェクト行数を表示するコードを入力します。
   ```
   System.out.println("Valid data: "+((Integer)globalMap.get("tFileOutputDelimited_1_NB_LINE"))+"\nRejected
   data: "+((Integer)globalMap.get("tFileOutputDelimited_2_NB_LINE")));
   ```
8. ジョブを保存し、F6を押して実行します。

   ![ジョブの実行に成功した後のコンソールのスクリーンショット。](https://help.qlik.com/talend/ja-JP/data-integration-job-examples/Resources/images/basic_validation_rule_7.png)

### タスクの結果

有効なデータが最初の区切り付きファイルに出力され、リジェクトされたデータが2つの目の区切り付きファイルに出力されます。コンソールには、ジョブで処理された有効な行の数、およびリジェクト回数が表示されます。