Hitachi

Cosminexus V11 BPM/ESB基盤 サービスプラットフォーム 解説


3.1.4 データ変換

〈この項の構成〉

(1) 機能

データ変換では,ビジネスプロセス上を流れる電文形式を異なる電文形式に変換したり,値を加工したりすることができます。また,複数の電文を組み合わせて1つの電文を作ることもできます。

データ変換は,サービス部品を呼び出すときに,サービス部品の要求電文形式に合わせた電文を作成する必要がある場合や,サービス部品からの応答電文を異なる電文に変換したい場合などに使用します。

ビジネスプロセスでのデータ変換の流れを次の図に示します。

図3‒4 ビジネスプロセスでのデータ変換の流れ

[図データ]

(2) 使用するアクティビティ

データ変換には,データ変換アクティビティを使用します。

データ変換の例を次に示します。

(例1)1対1でのデータ変換

[図データ]

(例2)N対1でのデータ変換

[図データ]

データ変換でできる処理を次の表に示します。

表3‒1 データ変換でできる処理一覧

処理

説明

文字列連結

複数の文字列を連結します。

部分文字列取得

1つの文字列から一部分の文字列を取り出します。

文字数取得

文字列の文字数をマッピング先に代入します。

文字列調査

文字列に指定した文字列が含まれているか,または指定した文字列で開始されているかを調査し,マッピング先に論理値を代入します。

空白除去

文字列の先頭と末尾の空白を除去します。また,文字列間の連続した空白を1つの半角スペースに置換します。

数値フォーマット変換

数値をフォーマット変換します。小数点文字および桁区切り文字を変更することができます。

数値演算

数値を演算(+,-,*,div,mod)します。

端数処理

小数点以下の端数を処理(四捨五入,切り捨て,および切り上げ)します。

総和

複数のノードセットの,ノードの数値を合計します。

否定演算

論理否定演算を実行します。

論理演算

論理演算(AND,OR,XOR)を実行します。

シフト演算

シフト演算を実行します。

ノード数取得

ノード数をマッピング先に代入します。

ノード名取得

ノード名をマッピング先に代入します。

ノード調査

指定した変換元ノードが存在するかを調査し,マッピング先にその論理値を代入します。

繰り返し

繰り返しを対応づけます。複数回出現する変換先ノードのインスタンスをソートすることもできます。

選択

条件によって異なる値を出力します。

値置換え

変換テーブルの指定に基づいて,マッピング元の値を変換し,マッピング先に代入します。

基数変換

基数変換を実行します。

カスタム

ユーザが作成したJavaプログラムで値の加工およびノードの作成ができます。

定数

指定した値をマッピング先に代入します。

XPath

XPath式を指定します。