逆引きテンプレートについて
HULFT Squareをご利用いただきありがとうございます。
本記事では、「ファイル名を動的に切り替えて出力したい」のスクリプトについて、詳細および使用方法についてご案内します。
※逆引きテンプレートは、HULFT Squareの画面から「App Square」より、アプリケーション「逆引き ファイル操作」をインストールいただくことでご利用いただけます。
スクリプト名
ファイル名を動的に切り替えて出力したい
Switch filenames dynamically
概要
ファイル名を動的に切り替えて出力したい場合は、ファイル名にスクリプト変数を使用してファイルの書き込みを行います。
スクリプトの説明
CSVファイルから抽出したメールアドレスをファイル名として、CSVファイルを出力します。
処理の流れ
スクリプトの処理の流れは以下の通りです。
- 「CSVファイル読み取り処理」で入力ファイルを読み取ります。
- 「繰り返し(データ件数)処理」で入力データの件数分、以下の処理を繰り返します。
- 「マッピング処理」でメールアドレスをスクリプト変数に格納し、入力データを出力データにマッピングします。
- 「CSVファイル書き込み処理」で出力ファイルに書き込みます。
入力データのイメージについては、「入力データ例」のサンプルデータ「input.csv」を参照してください。
実行結果のイメージについては、「出力データ例」のサンプルデータ「murata@localhost.csv」・「watanabe@localhost.csv」・「yamada@localhost.csv」を参照してください。
ポイントとなる機能
| 名前 | 説明 | ツールパレット上の場所 |
|---|---|---|
| CSVファイル書き込み処理 | 入力データをCSV(Comma Separated Value)形式、TSV(Tab Separated Values)形式などの形式のファイルに書き込みます。 | 「ファイル」-「CSV」-「CSVファイル書き込み」 |
処理のポイント
- CSVファイル書き込み処理の[ファイル]にスクリプト変数を指定します。
スクリプトの使用方法
上記処理を実装したスクリプトを用意しています。スクリプトを使用する場合の手順は「HULFT Squareアプリケーションのより詳しい使い方」をご参照ください。
スクリプトの作成手順
プロセスフローおよびデータフローは、「スクリプトの説明」のスクリプト画像を参照して適宜設定してください。
- ファイル名として使用するスクリプト変数を作成します。
-
スクリプト変数のプロパティは、以下のように設定します。
スクリプト変数のプロパティ
変数名 必須/省略可 説明 I_inputFile 必須 入力ファイルのフルパス I_outputFolder 必須 出力ファイルを格納するフォルダのフルパス
-
- デザイナのツールパレット「ファイル」-「CSV」-「CSVファイル読み取り」から、CSVファイル読み取り処理をスクリプトキャンバスに配置します。
-
CSVファイル読み取り処理の設定は、以下のように行います。
[必須設定]タブ
[読み取り設定]タブ
-
- デザイナのツールパレット「基本」-「フロー」-「繰り返し(データ件数)」から、繰り返し(データ件数)処理をスクリプトキャンバスに配置します。
-
繰り返し(データ件数)処理の設定は、以下のように行います。
[必須設定]タブ
-
- デザイナのツールパレット「変換」-「基本」-「マッピング」から、マッピング処理をスクリプトキャンバスに配置します。
- デザイナのツールパレット「ファイル」-「CSV」-「CSVファイル書き込み」から、CSVファイル書き込み処理をスクリプトキャンバスに配置します。
-
CSVファイル書き込み処理の設定は、以下のように行います。
[必須設定]タブ
処理のポイント
-
[ファイル]にスクリプト変数を使用することで、スクリプトを改修せずに動的に設定値を変更することができます。
スクリプト変数は、以下の方法で素早く入力できます。- 入力フィールドにフォーカスをあてて表示させる変数入力アシスタント機能から選択します。
- 入力フィールドの右クリックメニューで[スクリプト変数]を選択します。
[書き込み設定]タブ
-
[ファイル]にスクリプト変数を使用することで、スクリプトを改修せずに動的に設定値を変更することができます。
-
- マッピング処理のMapperエディタを開き、メールアドレスをスクリプト変数に格納し、入力データを出力データにマッピングする処理を作成します。
-
マッピングキャンバスは、以下のように設定します。
マッピングキャンバス
番号 ロジック名 説明 ツールパレット上の場所 (1) 単純な繰り返し 指定したノードを繰り返します。 「繰り返し」-「基本」-「単純な繰り返し」
-
- スクリプトを実行し、正常終了すれば成功です。
入出力データ例
-
入力データ例
-
input.csv
注文日,注文者Mail,野菜コード,数量,単位,単価,金額 2014/6/1,yamada@localhost,A001,1,本,150,150 2014/6/1,murata@localhost,A001,4,本,150,600 2014/7/1,watanabe@localhost,A015,8,個,110,880 2014/7/7,yamada@localhost,A014,1,本,100,100 2014/6/1,murata@localhost,A003,2,パック,120,240 2014/7/1,watanabe@localhost,A012,6,本,60,360 2014/6/8,murata@localhost,A001,4,本,150,600 2014/7/1,watanabe@localhost,A014,7,本,100,700
-
-
出力データ例
-
murata@localhost.csv
注文日,野菜コード,数量,単位,単価,金額 2014/6/1,A001,4,本,150,600 2014/6/1,A003,2,パック,120,240 2014/6/8,A001,4,本,150,600
-
watanabe@localhost.csv
注文日,野菜コード,数量,単位,単価,金額 2014/7/1,A015,8,個,110,880 2014/7/1,A012,6,本,60,360 2014/7/1,A014,7,本,100,700
-
yamada@localhost
注文日,野菜コード,数量,単位,単価,金額 2014/6/1,A001,1,本,150,150 2014/7/7,A014,1,本,100,100
-
コメント
0件のコメント
記事コメントは受け付けていません。