概要
前回記事 にてテストデータを作るジョブを作成しましたが、データパターンの作成方法をいくつか書いてみます。
他にももっと良い方法などあるかもしれませんが、参考までにご覧ください。
使用環境
TalendOpenStudio 7.1.1
参照
使用方法
tRowGenerator のRowGeneratorエディターにて、カラム別に関数を設定します。
関数欄にて、使用する関数を選択する方法と、
カスタマイズパラメータを選択して、式ビルダで指定する方法があります。
処理の融通が利くので、下記はカスタマイズパラメータを指定して、
式ビルダに設定した場合と考えてください。
数値ルーチン
- 連番を取得
関数:Numeric.sequence("連番名", 開始値, 増加値)
戻り値:Integer
式ビルダ設定 例)
Numeric.sequence("s1",5,2)
出力結果 |
---|
5 |
7 |
9 |
11 |
13 |
※5から開始し、2ずつ増えました。
※S1は、ジョブ内でグローバルです。
resetSequence でシーケンス値をリセットできます。
マイルーチンなどでシーケンス値を操作することができるでしょう。
- ランダム値を取得
関数:Numeric.random(最小値, 最大値)
戻り値:Integer
式ビルダ設定 例)
Numeric.random(5,10)
出力結果 |
---|
8 |
10 |
7 |
6 |
8 |
- ゼロ埋めした値を取得
関数:String.format("フォーマット", Numeric.random(最小値, 最大値))
戻り値:String
式ビルダ設定 例)
String.format("%06d", Numeric.random(5,10))
出力結果 |
---|
000008 |
000007 |
000006 |
000010 |
000009 |
TalendDataGeneratorルーチン
- ランダムな名前
関数:TalendDataGenerator.getFirstName()
戻り値:String
式ビルダ設定 例)
TalendDataGenerator.getFirstName()
出力結果 |
---|
Andrew |
William |
Millard |
Franklin |
Benjamin |
- ランダムな姓
関数:TalendDataGenerator.getLastName()
戻り値:String
式ビルダ設定 例)
TalendDataGenerator.getLastName()
出力結果 |
---|
Carter |
Clinton |
Pierce |
Kennedy |
Hoover |
TalendDateルーチン
- ランダムな日付
関数:TalendDate.getRandomDate("最小日", "最大日")
戻り値:Date
式ビルダ設定 例)
TalendDate.getRandomDate("2017-01-01", "2018-01-01")
出力結果 |
---|
2017/02/11 22:13:08 |
2017/10/22 20:07:50 |
2017/07/11 19:28:48 |
2017/12/10 10:48:20 |
2017/04/13 06:45:41 |
※ヘルプでは、TalendDate.getRandomDate("format date of the character string", String minDate, String maxDate) となっていましたが、"format date of the character string"は不要です。
スキーマのパターンにて、"yyyy/MM/dd HH:mm:ss"
を指定することで時分秒のランダム値を設定することができました。
※また、下記のように戻り値をString型に変換する方法もあります。
この場合は、スキーマのタイプは、Stringを指定します。
TalendDate.formatDate("yyyy/MM/dd HH:mm:ss",TalendDate.getRandomDate("2017-01-01","2019-01-01") )
出力結果 |
---|
2018/07/25 11:45:19 |
2017/11/05 19:33:12 |
2018/01/09 10:22:45 |
2018/01/26 19:19:03 |
2017/09/23 14:17:14 |
TalendStringルーチン
- ランダム文字列を取得
関数:getAsciiRandomString(文字数)
戻り値:String
式ビルダ設定 例)
TalendString.getAsciiRandomString(5)
出力結果 |
---|
BBVF4 |
PjvyB |
dluR0 |
MowPQ |
jTxtW |