# エラー処理

このシナリオは、Talend Data Management Platform、Talend Big Data Platform、Talend Real-Time Big Data Platform、Talend Data Services Platform、Talend Data Fabricにのみ適用されます。

このシナリオでは、tHMapコンポーネントを使ってエラー状態を処理する方法を示す6コンポーネントジョブを作成します。

tHMapがTalend Data Mapperマップを実行する時は常にExecutionStatusオブジェクトが返されます。このオブジェクトへのポインターは&lt;tHMap\_id&gt;\_EXECUTION\_STATUSとしてglobalMapに保存されます。また、[Overall Severity] (全体的な重大度)の数値も&lt;tHMap\_id&gt;\_EXECUTION\_SEVERITYとしてglobalMapに保存されます。

最後に、[Exception Threshold] (例外しきい値)というパラメーターが定義されます。これによって例外を返す重大度が指定され、ジョブ関連またはコンポーネント関連のエラー処理がトリガーされます。この値は、[Advanced settings] (詳細設定)タブにあるtHMapのプロパティで定義できます。このパラメーターのデフォルト値は[Fatal] (致命的)です。

org.talend.transform.runtime.common.MapExecutionStatusの次のファンクションを使えば、マップの実行に関する情報を取得できます。

* getOverallSeverity(): 最高レベルの重大度を数値で返します。

  * INFOの場合は1が返されます。
  * WARNの場合は2が返されます。
  * ERRORの場合は4が返されます。
  * FATALの場合は0x40が返されます。

* isOK(): 警告、エラー、致命的ステータスがない場合はtrueが返されます。

* exportToXml(writer): ステータス項目をXML形式で書き込みます。

* getFirstNonInfo(): INFOよりも重大度が高い最初のステータス項目に対応する、org.talend.transform.runtime.common.StatusItemクラスのオブジェクトを返します。INFOステータスの項目しかない場合、このメソッドはNullを返します。

  このorg.talend.transform.runtime.common.StatusItemオブジェクトでは、getAsText()メソッドを使用できます。このメソッドは、ステータス項目の説明を人間が読める形式の文字列として返します。

* getItem(int\_index): 項目のコレクションで、指定されたインデックスにあるステータス項目を返します。このインデックスはゼロベースです。

* getFirstNonInfoIndex(): 項目のコレクションで、INFOよりも重大度が高い最初のステータス項目のインデックスを返します。これは、getFirstNonInfo()が返す項目のインデックスです。このメソッドは、INFOよりも重大度レベルが高い項目がない場合は-1を返します。

情報メモ注: getFirstNonInfo()、getItem(int\_index)、getFirstNonInfoIndex()、getAsText()は、Talendが提供するR2024-06以降のTalend Studioマンスリーアップデートをインストール済みである場合のみ利用できます。詳細は管理者にお問い合わせください。

![](https://help.qlik.com/talend/ja-JP/components/8.0/Resources/images/use_case-thmap-scenario_error_handling.png)

### このセクション内

* [コンポーネントを追加してリンク](https://help.qlik.com/talend/ja-JP/components/8.0/data-mapping/thmap-tjava-tfixedflowinput-tjavarow-adding-and-linking-components-standard-component-enterprise-in)
* [RunIfトリガーのプロパティの定義](https://help.qlik.com/talend/ja-JP/components/8.0/data-mapping/thmap-tjava-tfixedflowinput-tjavarow-defining-properties-of-runif-trigger-standard-component-enterprise-select)
* [tFixedFlowInputのプロパティの定義](https://help.qlik.com/talend/ja-JP/components/8.0/data-mapping/thmap-tjava-tfixedflowinput-tjavarow-defining-properties-of-tfixedflowinput-standard-component-enterprise-select)
* [tJavaRowのプロパティの定義](https://help.qlik.com/talend/ja-JP/components/8.0/data-mapping/thmap-tjava-tfixedflowinput-tjavarow-defining-properties-of-tjavarow-standard-component-enterprise-select)
* [tHMapのプロパティの定義](https://help.qlik.com/talend/ja-JP/components/8.0/data-mapping/thmap-tjava-tfixedflowinput-tjavarow-defining-properties-of-thmap-standard-component-enterprise-select)
* [最初のtJavaコンポーネントのプロパティの定義(OnSubjobError)](https://help.qlik.com/talend/ja-JP/components/8.0/data-mapping/thmap-tjava-tfixedflowinput-tjavarow-defining-properties-of-first-tjava-component-onsubjoberror-standard-component-enterprise-select)
* [2番目のtJavaコンポーネントのプロパティの定義(OnSubjobOk)](https://help.qlik.com/talend/ja-JP/components/8.0/data-mapping/thmap-tjava-tfixedflowinput-tjavarow-defining-properties-of-second-tjava-component-onsubjobok-standard-component-enterprise-select)
* [3番目のtJavaコンポーネントのプロパティの定義(RunIf)](https://help.qlik.com/talend/ja-JP/components/8.0/data-mapping/thmap-tjava-tfixedflowinput-tjavarow-defining-properties-of-third-tjava-component-runif-standard-component-enterprise-select)
* [さまざまな条件下でのジョブの実行](https://help.qlik.com/talend/ja-JP/components/8.0/data-mapping/thmap-tjava-tfixedflowinput-tjavarow-running-job-under-different-conditions-standard-component-enterprise-press)

**関連資料**

* [tHMap](https://help.qlik.com/talend/ja-JP/components/8.0/data-mapping/thmap "[Mapping] (マッピング)パースペクティブにあるTalend Data Mapperの機能を利用して、異なる入力と出力の間で変換(マップと呼ばれる)を行います。")

**関連情報**

* [tFixedFlowInput](https://help.qlik.com/talend/r/ja-JP/8.0/components/tfixedflowinput/tfixedflowinput)
* [tJava](https://help.qlik.com/talend/r/ja-JP/8.0/components/java-custom-code/tjava)
* [tJavaRow](https://help.qlik.com/talend/r/ja-JP/8.0/components/java-custom-code/tjavarow)