DBテーブルによる置換

ロジック名

DBテーブルによる置換

機能

入力文字列をDBテーブルにより置換して返します。

データ型

場所
1番目の入力ハンドラ 文字列
ロジックの出力 文字列
lightbulb詳細は「ロジックの仕様」を参照してください。

プロパティ

カテゴリ プロパティ 説明
必須設定 リソース名 置換に使用するリソースを指定します。
必須設定 テーブル名 テーブル名を指定します。
必須設定 キー列 入力ハンドラの値とマッチングを行う列を指定します。
必須設定 値列 置換する値として使用する列を指定します。
必須設定 マッチング方法 マッチング方法を指定します。
必須設定 置換方法 置換方法を指定します。
付加文字列 接頭語 置換後の文字列の前に追加される文字列を指定します。
付加文字列 接尾語 置換後の文字列のあとに追加される文字列を指定します。
マッチング・レコードが0件 処理オプション マッチング・レコードが0件の場合の処理方法を指定します。
マッチング・レコードが0件 代替文字列 代替文字列を指定します。
マッチング・レコードが2件以上 処理オプション マッチング・レコードが2件以上の場合の処理方法を指定します。
コメント コメント 仕様書にも設定したコメントが出力されます。変換処理には関係しません。

マッチング方法

オプション 説明
完全一致 入力ハンドラの値と[キー列]の値が完全に一致した場合に置換を行います。
部分一致 入力ハンドラの値の一部分と[キー列]の値が一致した場合に置換を行います。

置換方法

オプション 説明
完全置換 1番目の入力ハンドラの値を[値列]の値に置き換えます。
部分置換 1番目の入力ハンドラの値で一致した部分を[値列]の値に置き換えます。

マッチング・レコードが0件/処理オプション

オプション 説明
例外を発生させる 以下の例外を発生させます。

[mapping]の処理に失敗しました。原因:[com.appresso.ds.vp.mapper.fastconverter.NoSuchRecordException: ConvertByDBロジック - There is no such record that equals the following key(s): <キー列>]
代替文字列に置換 [代替文字列]で指定した値に置き換えます。
1番目のハンドラの値を返す 1番目の入力ハンドラの値をそのまま返します。

マッチング・レコードが2件以上/処理オプション

オプション 説明
例外を発生させる 以下の例外を発生させます。

[mapping]の処理に失敗しました。原因:[com.appresso.ds.vp.mapper.fastconverter.MultipleSuchRecordsException: ConvertByDBロジック - There are multiple such records that equal the following key(s): <キー列>]
先頭のレコードを使用する 一致した複数レコードの先頭のレコードを置換処理に使用します。
最後のレコードを使用する 一致した複数レコードの最後のレコードを置換処理に使用します。

一致したレコードの[キー列]の値が異なる場合、先頭のレコードの[キー列]の値に一致する最後のレコードを置換処理に使用します。

機能の詳細

複数キーの指定方法

以下の方法で、キー列を複数指定することができます。
  1. プロパティインスペクタの[キー列]の入力フィールドをダブルクリックします。


  2. 「▼」ボタンを押下します。
  3. 「置換に使用するキー列の編集」ダイアログが起動します。


  4. [追加]ボタンを押下して、[キー列名]を追加します。
  5. [キー列名]入力フィールド「▼」ボタンから、キー列となるカラムを選択します。


  6. [OK]ボタンを押下します。
  7. Mapperロジックの入力ハンドラが追加したキー列数に変更されます。

使用可能なグローバルリソース

[リソース名]では、以下のアダプタのグローバルリソースを指定できます。

アダプタの種類
Accessアダプタ
DB2アダプタ
MySQLアダプタ
Oracleアダプタ
PostgreSQLアダプタ
SQL Serverアダプタ
JDBCアダプタ
ODBCアダプタ
Dr.Sumアダプタ
Amazon Aurora for MySQLアダプタ
Amazon RDS for MySQLアダプタ
Amazon RDS for Oracleアダプタ
Amazon RDS for PostgreSQLアダプタ
Amazon RDS for SQL Serverアダプタ
Azure SQL Databaseアダプタ

仕様制限

注意事項

ロジックの使用例

マッピング定義

ロジックの設定と処理結果(完全一致の場合)

変換テーブルを用いて曜日の表記をアルファベットから漢字に置換します。
プロパティ設定
プロパティ 設定値
リソース名 DB
テーブル名 convertbydb_all
キー列 KEY1
値列 VALUE1
マッチング方法 完全一致
置換方法 完全置換
接頭語  
接尾語 曜日
マッチング・レコードが0件/処理オプション 1番目のハンドラの値を返す
マッチング・レコードが0件/代替文字列  
マッチング・レコードが2件以上/処理オプション 先頭のレコードを使用する
入力データ
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
変換テーブル
KEY1VALUE1
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
結果データ
日曜日
月曜日
火曜日
水曜日
木曜日
金曜日
土曜日

ロジックの設定と処理結果(部分一致の場合)

変換テーブルを用いて曜日の表記を漢字からアルファベットに置換します。
プロパティ設定
プロパティ 設定値
リソース名 DB
テーブル名 convertbydb_partial
キー列 KEY1
値列 VALUE1
マッチング方法 部分一致
置換方法 部分置換
接頭語  
接尾語  
マッチング・レコードが0件/処理オプション 1番目のハンドラの値を返す
マッチング・レコードが0件/代替文字列  
マッチング・レコードが2件以上/処理オプション 先頭のレコードを使用する
入力データ
3/20 (日)
3/21 (月)
3/22 (火)
3/23 (水)
3/24 (木)
3/24 (金)
3/25 (土)
変換テーブル
KEY1VALUE1
Sun
Mon
Tue
Wed
Thu
Fri
Sat
結果データ
3/20 (Sun)
3/21 (Mon)
3/22 (Tue)
3/23 (Wed)
3/24 (Thu)
3/24 (Fri)
3/25 (Sat)