DBテーブルによる置換

DBテーブルによる置換

ロジック名

DBテーブルによる置換(ドキュメントMapper/変数Mapper/マージMapper)

機能

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

データ型

場所

1番目の入力ハンドラ

文字列

ロジックの出力

文字列

= 補足 =

詳細は以下を参照してください。

プロパティ

カテゴリ

プロパティ

説明

必須設定

リソース名

置換に使用するリソースを指定します。

必須設定

テーブル名

テーブル名を指定します。

必須設定

キー列

入力ハンドラの値とマッチングを行う列を指定します。

必須設定

値列

置換する値として使用する列を指定します。

必須設定

マッチング方法

マッチング方法を指定します。

必須設定

置換方法

置換方法を指定します。

付加文字列

接頭語

置換後の文字列の前に追加される文字列を指定します。

付加文字列

接尾語

置換後の文字列のあとに追加される文字列を指定します。

マッチング・レコードが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. 「Replace by DB Table」のアイコンをダブルクリッします。

  2. 「Key column」の右の[Add]ボタンをクリックします。

  3. キー列が追加されるので、ドロップダウンリストから指定したいキー名を選択します。

  4. [Finish]ボタンをクリックします。

  5. Mapperロジックの入力ハンドラが追加したキー列数に変更されます。

使用可能なコネクションリソース

[リソース名]では、以下のコネクターのコネクションリソースを指定できます。

コネクターの種類

DB2 Connector

MySQL Connector

Oracle Connector

PostgreSQL Connector

SQL Server Connector

JDBC Connector

Amazon Aurora for MySQL Connector

Amazon RDS for MySQL Connector

Amazon RDS for Oracle Connector

Amazon RDS for PostgreSQL Connector

Amazon RDS for SQL Server Connector

Azure SQL Database Connector

仕様制限

  • [テーブル名]にはコネクションリソースの一覧設定で指定した制限数のテーブルが表示されます。

  • 入力文字列に複数の変換対象があった場合には、最初に合致した1件のみが置換されます。

  • 変換後の文字列に含まれるスクリプト変数の書式(例:「${var}」)は、変数に展開されず単純な文字列として扱われます。

注意事項

  • [キー列]の値または[値列]の値がnullの場合、置換処理から除外されます。

    • マッチング・レコードの件数は、[値列]の値がnull以外のレコードの件数となります。

  • 名前にマルチバイト文字や機種依存文字を含むカラムを[キー列]または[値列]に使用する場合は、カラム名を引用符で囲んでください。

    = 備考 =

    引用符はデータベースによって異なります。引用符の定義については、各データベースベンダーに問い合わせてください。

ロジックの使用例

マッピング定義

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

変換テーブルを用いて曜日の表記をアルファベットから漢字に置換します。

プロパティ設定

プロパティ

設定値

リソース名

DB

テーブル名

convertbydb_all

キー列

KEY1

値列

VALUE1

マッチング方法

完全一致

置換方法

完全置換

接頭語

 

接尾語

曜日

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

1番目のハンドラの値を返す

マッチング・レコードが0件/代替文字列

 

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

先頭のレコードを使用する

入力データ

Sunday

Monday

Tuesday

Wednesday

Thursday

Friday

Saturday

変換テーブル

KEY1

VALUE1

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 (土)

変換テーブル

KEY1

VALUE1

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)

 

= 補足 =

ロジック全体の一覧は「Mapperロジックガイド」を参照してください。