Hitachi

Cosminexus V11 BPM/ESB基盤 サービスプラットフォーム 開発ガイド 基本開発編


7.5.19 変換テーブルを利用して値を変換する

変換テーブルを利用して,マッピング元の値を変換してマッピング先に代入します。

〈この項の構成〉

(1) 使用するファンクション

変換テーブルを利用して,マッピング元の値を変換してマッピング先に代入するには,値置換えファンクションを使用します。

値置換えファンクションを使用した例を次に示します。

図7‒20 値置換えファンクションの使用例

[図データ]

(2) 設定手順

変換テーブルを利用して,マッピング元の値を変換してマッピング先に代入するには,まず,変換テーブルを作成・保存します。作成した変換テーブルの情報をJ2EEサーバ用ユーザプロパティファイル(usrconf.properties)に記述すると,変換テーブルが利用できる状態になります。変換テーブルが利用できる状態になったあと,値置換えファンクションを定義します。

(a) 変換テーブルの作成と保存

変換テーブルの作成と保存について説明します。

ポイント

作成した変換テーブルはパッケージングの対象にはなりません。そのため,実行環境での実運用開始後にも,任意のタイミングで編集できます。編集された内容は,次回のシステム起動時に反映されます。

変換テーブルの作成

変換テーブルは,csvファイルで作成します。csvファイルの形式を次に示します。

"値A01","値B01"
"値A02","値B02"
"値A03","値B03"
    :

同じ行に記述した「値Ann」と「値Bnn」を一対の組み合わせとして値を置き換えます。置き換え対象の文字列はダブルクォーテーション(")で囲んで記述します。置き換え対象の文字列にダブルクォーテーションが含まれる場合,ダブルクォーテーションをエスケープ文字として使用できます。エスケープ対象外の文字をエスケープした場合,エスケープ文字は無視されて,以降の文字が処理されます。

なお,変換テーブルに使用できる文字コードは次のとおりです。

  • MS932

  • UTF8

  • UTF16(ビッグエンディアン,またはリトルエンディアン)

変換テーブルの記述に使用する文字について次の表に示します。

表7‒4 変換テーブルに使用する文字

対象

使用する文字

開始文字

開始文字は不要です。

終了文字

次のどちらかの改行コードです。

  • LF(0x0A)

  • CR+LF(0x0D0A)

実行するOSがUNIXの場合はLF,Windowsの場合はCR+LFを使用します。

LF:ラインフィード

CR:キャリッジリターン

中間区切り文字

コンマ(,)を利用します。

注意事項
  • 変換テーブルに記述した変換対象は文字列として扱います。そのため,値置換えファンクションへの入力値が数値の場合,文字列に変換して処理されます。

  • 変換対象および入力値に,空要素は指定できません。

  • 属性値を入力する場合,入力値は正規化(タブをスペースに置き換えたり,連続したスペースを1つのスペースに置き換えたりするなど)した値で扱います。そのため,変換テーブルに記述した検索キー値も,正規化後の値を考慮する必要があります。

ポイント

「値Ann」から「値Bnn」の変換にするか,「値Bnn」から「値Ann」の変換にするかは,値置換えファンクションを定義するときに設定できます。

変換テーブルの保存

作成した変換テーブルは,任意の場所に保存します。

(b) J2EEサーバ用ユーザプロパティファイル(usrconf.properties)への登録

変換テーブルを作成したあとには,usrconf.propertiesに作成した変換テーブルを登録します。変換テーブルの登録方法の詳細については,マニュアル「サービスプラットフォーム システム構築・運用ガイド」の「2.3.9 J2EEサーバ用ユーザプロパティファイル(usrconf.properties)を設定する」の値置換えファンクションで使用する変換テーブルの登録に関する説明を参照してください。

(c) 値置換えファンクションの定義

値置換えファンクションを利用して,マッピング元の値を変換してマッピング先に代入するための手順を次に示します。

  1. パレットから値置換えファンクション(replace)を選択して,マッピングビューアに配置します。

  2. マッピング線を設定します。

  3. 次のどちらかの方法で[値置換え]ダイアログを表示させます。

    • 値置換えファンクションを右クリックして,[設定]を選択します。

    • 値置換えファンクションをダブルクリックします。

    [値置換え]ダイアログが表示されます。

    [値置換え]ダイアログの詳細については,マニュアル「サービスプラットフォーム リファレンス」の「1.6.38 値置換えダイアログ」を参照してください。

  4. [入力]に変換元ノードが指定されている場合,その変換元ノードに条件を設定して,その条件を満たす場合だけマッピングさせたいとき,[ノード条件設定]ボタンをクリックします。

    [ノード条件設定]ダイアログが表示されます。

    ノード条件の設定方法については,「7.7 ノード条件を設定する」を参照してください。また,[ノード条件設定]ダイアログについては,マニュアル「サービスプラットフォーム リファレンス」の「1.6.11 ノード条件設定ダイアログ」を参照してください。

  5. [変換テーブルID]にJ2EEサーバ用ユーザプロパティファイル(usrconf.properties)に記述した変換テーブルの名称を指定します。

  6. [検索キー列指定]で,変換テーブルの左列と右列のどちらを値の置き換え元とするか選択します。

  7. [検索失敗時の動作]で,マッピング元からの入力値が変換テーブルに存在しなかった場合のシステムの動作を選択します。

    デフォルト値を出力してマッピング先に代入する場合

    [デフォルト値を代入]をラジオボタンで選択し,[値]にデフォルト値として利用する文字列を入力します。

    変換エラーにする場合

    [変換エラー]をラジオボタンで選択します。

  8. [OK]ボタンをクリックします。