【AlteryxTips】ファイル移動する方法について

【AlteryxTips】ファイル移動する方法について

こんにちはSFです。

今回はAlteryx Designerツール一覧に存在しない「ファイル移動」をコマンド実行ツールを使って実現する方法をご紹介したいと思います。

コマンド実行ツールでできる事

外部プログラム(exeまたはbat形式)を実行することが可能です。本例はコマンド実行ツールからbatファイルを実行、batからPowershellプログラムを呼び出しする事で、特定ファイルをFolder A⇒Folder Bへファイル移動するフローとなります。

WorkFlow作成例

ファイルパス書き込み

ファイル格納パスのみをデータ出力する様、「5 出力フィールドを引用」:"常に非表示"に設定します。

FileをFolderA⇒Bへ移動

コマンドにファイル移動bat(MoveFile.bat)の格納先パス、ソースの書き込みに出力ファイルパスをそれぞれ設定します。なおソースの書き込みは処理に関係しませんが、指定しないと実行エラーとなりますので、ダミーファイルを指定してます。

MoveFile.batの中身はこちらとなります。
呼び出すPowerShellファイル(MoveFile.ps1)のパスに和名が含まれているため文字化けしない様、「chcp 65001」を指定してます。詳細はbatコマンドの関連サイトをご参照頂ければと思います。

chcp 65001
powershell -NoProfile -ExecutionPolicy Unrestricted .'C:\Users\~~~\FileMove\MoveFile.ps1' >log.txt 2>&1

 

MoveFile.ps1の中身はこちらとなります。
1行目でファイル格納パス(MoveFile.csv)を読み込みし、8行目でFolderBへファイル移動します。詳細はPowerShellコマンドの関連サイトをご参照頂ければと思います。

$rs = Import-Csv C:\Users\~~~\TEST\FileMove\MoveFile.csv -Encoding utf8 -Header FileName

foreach ($r in $rs) {
	Write-Host $r.FileName  #チェックシートファイル記述子
	$FileName =  $r.FileName
  try {
  #チェックシートを登録作業中フォルダへ移動
  Move-Item -path "$FileName" -destination "C:\Users\~~~\20250917_KCME_Techブログ\TEST\FolderB"

  } catch {
    $error[0] | Out-String | Out-File "error.log"
  }
}

※Alteryx Designer 2023.2.1.226時点の情報です

Alteryx製品のサポートについて

アップデートに関する疑問点や技術的な質問など、メールにてお答えします。お気軽にご相談ください。

京セラみらいエンビジョンは、Alteryxを活用した業務効率化を円滑に進められるようサポートいたします。

おすすめの記事