AlteryxからAmazon S3に今日の日付をファイル名にしてファイルをアップロードする

こんにちは。Alteryxサポートエンジニアとして勉強中のスズです。

AlteryxからAmazon S3にファイルをアップロードする場合、Amazon S3 Uploadツールを使うことができます。ツールの設定でファイル名を指定することができますが、今回はファイル名を動的に設定する方法をご紹介いたします。

Amazon S3に今日の日付をファイル名にしてファイルをアップロードする

バッチマクロの作成

まずはAmazon S3にファイルをアップロードするのバッチマクロを作成します。Input Dataツールで入力したデータをAmazon S3 Uploadツールでファイルをアップロードするという簡単なワークフローを作ります。

このワークフローのInput Dataツールを右クリックからConvert To Macro InputでMacro Inputツールに変更します。また、Amazon S3 UploadツールにControl Parameterツールを接続します。Amazon S3 UploadツールとControl Parameterツールの間にはActionツールが自動的に配置されます。

Amazon S3 Uploadツールには接続先の設定を行います。Object Nameには仮のファイル名を入れています。

Actionツールでは、Update ValueObject(仮で設定したファイル名)を更新するように設定します。またReplace a specific stringを有効にます。

View -> Interface Designerでマクロを使う際に分かりやすいようにアイコンを設定して、バッチマクロを保存します。

ワークフローの作成

新しくワークフローを作成し、作成したバッチマクロを配置します。バッチマクロの上の入力にはファイル名となるデータを接続、下の入力にはファイルに出力するデータを接続します。

バッチマクロの上の入力に接続するデータを見ていきます。Text InputツールではFormulaツールを使うためにひとまずIDを1つだけ用意しています。

Formulaツールでは、新しく「DATE」列をV_WString型で作成します。DateTimeToday() + ".csv"と設定し、今日の日付とファイルの拡張子を出力します。

Formulaツールでの出力結果は以下のようになっています。

バッチマクロの下の入力に接続しているInput Dataツールでは、以下のようなデータを用意しました。

バッチマクロでは以下の設定をしています。Group Byではグループ化を設定していません。

Questionsではファイル名にするデータがある列(今回は「DATE」列)を選択します。

Amazon S3を確認すると、ファイルがアップロードされています。

ファイルをダウンロードすると、以下のデータを確認できました。

最後に

今回はAmazon S3にアップロードするファイルに動的なファイル名を設定する方法をご紹介しました。

Alteryxの導入なら、クラスメソッドにおまかせください

日本初のAlteryxビジネスパートナーであるクラスメソッドが、Alteryxの導入から活用方法までサポートします。14日間の無料トライアルも実施中ですので、お気軽にご相談ください。

alteryx_960x400