Delimited データ・ハンドラーを構成するには、次の手順に従ってください。
上記の各ステップについて、以下のセクションで詳しく説明します。
Delimited データ・ハンドラーを構成するには、その構成情報が Delimited
子メタオブジェクトに提供されることを確認する必要があります。Delimited
データ・ハンドラーについて、IBM では
MO_DataHandler_DefaultDelimitedConfig
子メタオブジェクトを提供しています。
このメタオブジェクトの各属性は、Delimited
データ・ハンドラーの構成プロパティーを定義しています。表 40
で、この子メタオブジェクト内の属性について説明します。
表 40. Delimited データ・ハンドラーの子メタオブジェクト属性
メタオブジェクト属性名 | 意味 | 納入時のデフォルト値 |
---|---|---|
ClassName | 指定された MIME タイプで使用するためにロードするデータ・ハンドラー・クラスの名前。トップレベルのデータ・ハンドラー・メタオブジェクトには、指定された MIME タイプと名前が一致し、タイプが Delimited 子メタオブジェクトである属性があります (表 40 で説明)。 | com.crossworlds. DataHandlers. text.delimited |
CxBlank | 特殊なビジネス・オブジェクト属性値 Blank (CxBlank 定数) の Delimited データに同等値を設定します。 詳細については、CxBlankを参照してください。 | CxBlank 定数
(ブランク・スペース) |
CxIgnore | 特殊なビジネス・オブジェクト属性値 Ignore (CxIgnore 定数) の Delimited データ に同等値を設定します。 詳細については、CxIgnoreを参照してください。 | CxIgnore 定数
(空ストリング) |
|
|
|
Delimiter | ビジネス・オブジェクト・データをファイルに書き込むときにビジネス・オブジェクト属性内の値を区切るために使用されるストリング、またはファイルをビジネス・オブジェクトに変換するときに属性に対応するデータのフィールドを区切ることが想定されるストリング。この値には複数の文字を含めることができます。 | ~ (波形記号) |
DummyKey | ビジネス・インテグレーション・システムで必要とされるキー属性。 | 1 |
Escape | 区切り文字およびエスケープ文字がビジネス・オブジェクト属性値に含まれている場合に、それらをエスケープするために使用されるストリング。この値は 1 文字だけです。 | ¥ (円記号) |
OmitObjectEventId | ビジネス・オブジェクトからストリングへの変換時、およびストリングからビジネス・オブジェクトへの変換時に ObjectEventId データが含まれているかどうかを判別するためのブール値。 | false |
ObjectEventId | ビジネス・インテグレーション・システムに必要なプレースホルダー属性。 | なし |
表 40 の「納入時のデフォルト値」列には、納入時のビジネス・オブジェクトの対応する属性の Default Value プロパティーの値がリストされています。環境を調べ、それらの属性の Default Value プロパティーをシステムおよび区切り文書に適した値に設定する必要があります。少なくとも ClassName 属性には、デフォルト値を設定しておく必要があります。
Delimited データ・ハンドラーは、処理するビジネス・オブジェクトについて想定します。したがって、Delimited データ・ハンドラーを使用して変換のためのビジネス・オブジェクトを作成するときには、次の規則に従ってください。
子メタオブジェクトの Delimiter 属性は、属性フィールドを区切るために使用される区切り文字を構成します。 デフォルト値は波形記号 (~) です。
区切り文字とエスケープ・ストリングをエスケープするためのストリングを構成するために、子メタオブジェクト属性 Escape を設定できます。
エスケープ・ストリングにより、属性値データに、区切り文字およびエスケープに類似のストリングを含めることができます。
Delimited データ・ハンドラーのビジネス・オブジェクトの構造に関する要件はありません。データ・ハンドラーは、いずれのビジネス・オブジェクトも処理できます。
データ・ハンドラーが処理するビジネス・オブジェクトには、統合ブローカーで許可される任意の名前を付けることができます。
ビジネス・オブジェクトのアーキテクチャーには、属性に適用されるさまざまなプロパティーが含まれています。表 41 では、Delimited
データ・ハンドラーがこれらのいくつかのプロパティーを解釈する方法、およびビジネス・オブジェクトの変更時にプロパティーを設定する方法について説明します。
表 41. Delimited データ・ハンドラーを使用して変換されるビジネス・オブジェクトの属性プロパティー
ビジネス・オブジェクトの属性には、CxIgnore または CxBlank の特殊値を指定できます。Delimited データ・ハンドラーは、以下のセクションで説明するとおり、属性がこれらの値を持つときは特別な処理ステップを実行します。
CxIgnore メタオブジェクト属性は、Ignore 属性値 (CxIgnore 定数) の Delimited データに同等値を設定します。デフォルトでは、CxIgnore メタオブジェクト属性が、CxIgnore 定数の値に設定されます。データ・ハンドラーは、CxIgnore メタオブジェクト属性を次のように使用します。
CxBlank メタオブジェクト属性は、Blank 属性値 (CxBlank 定数) の Delimited データに同等値を設定します。デフォルトでは、CxBlank メタオブジェクト属性が、CxBlank 定数の値に設定されます。データ・ハンドラーは、CxBlank メタオブジェクト属性を次のように使用します。
Delimited データ・ハンドラーには、ビジネス・オブジェクトまたはそれらの属性に関するアプリケーション固有情報は必要ありません。ただし、データ・ハンドラーは cw_mo_ タグがあるかどうかについては検査します。このタグは、コネクターが用いる子メタオブジェクトを指示するためにビジネス・オブジェクトが使用する場合があります。データ・ハンドラーは、ビジネス・オブジェクトのアプリケーション固有情報に含まれている cw_mo_ タグで識別された属性をすべて無視します。cw_mo_ タグの詳細については、ビジネス・オブジェクトからの変換のインプリメントを参照してください。
Delimited データ・ハンドラーは、ビジネス・オブジェクトがデータ・ハンドラーの要件に適合する形式でデータを引き渡す限り、いずれのビジネス・オブジェクトも区切りストリングに変換できます。Delimited データ・ハンドラーの唯一の要件は、データ・ハンドラーが区切りファイルを読み取る必要がある場合に、その個々のフィールドが構成済みの区切り文字で区切られていることです。
この要件を満たしていれば、既存のビジネス・オブジェクトも Delimited データ・ハンドラーによって変換できますが、処理するデータのタイプごとに独自のビジネス・オブジェクトを作成することをお勧めします。サンプルのビジネス・オブジェクト、または別のインプリメンテーションで同じアプリケーションをサポートするために開発されたビジネス・オブジェクトを使用する場合は、自身が開発を行うインプリメンテーションに必要な属性のみが含まれるように、必要に応じて定義を修正してください。
したがって、既存のビジネス・オブジェクトを、ご使用のデータと密接に対応した形式に変換するには、アプリケーションが必要とするデータおよびデータ・ハンドラーが必要とする情報のみを提供するように、ビジネス・オブジェクトを変更してください。既存のビジネス・オブジェクトを Delimited データ・ハンドラーで利用できるようにするためには、以下の操作を実行します。