Power Automate DesktopでFTP接続を行い、ファイルをFTPにアップロードすることについて解説しています。
■PC環境
Windows 10 Pro
■Power Automate Desktopで新しいフローを作成する
まずは、Power Automate Desktopを起動します。起動すると画面の上部に「新しいフロー」と表示された十字ボタンがありますので、こちらをクリックします。
クリックすると、「フローを作成する」というウインドウが表示されます。ウインドウ内の「フロー名」の入力欄がありますので、今回は「PDFファイルのテキスト抽出」と入力します。
入力後、「作成」ボタンをクリックします。
クリックすると、フローが作成されて、アクションの設定を行う画面が表示されました。この画面で、FTP接続を行い、ファイルをFTPにアップロードするまでの設定を行っていきます。
まずは画面の左側にある「アクション」のメニューから「FTP」をクリックします。クリックするとプルダウンメニューが表示されます。このメニュー内から「FTP接続を開く」というアクションをクリックします。
クリックすると、「FTP接続を開く」というアクションの詳細設定のウインドウが表示されます。ウインドウ内で、「ホスト名(サーバーアドレス)」を入力します。
その後、「ポート」は「21」のままで、アクティブモードは利用しないので、そのままです。次にユーザー名(サーバーのアカウント名等)を入力し、サーバーのパスワードを入力します。
最後に「タイムアウト」が「10」になっていますが、「10」のまま接続してしまうと、
: Robin.Core.ActionException: ftpサーバー に接続できません。
場所 Robin.Modules.FTP.Actions.OpenFtpConnectionAction.Execute(ActionContext context)
場所 Robin.Runtime.Engine.ActionRunner.RunAction(String action, Dictionary`2 inputArguments, Dictionary`2 outputArguments, IActionStatement statement)
上記のようなエラーが発生してしまいます。この問題を対処するのに、Windows Defender ファイアウォールの設定(ファイアウォールによりブロックされてしまうこと)なども見直しましたが、「タイムアウト」を「300」と接続の確立を待機する時間(秒)を長めに設定することで、FTP接続が可能となりました。
それでも接続が行えない場合は、「コントロールパネル」から「Windows Defender ファイアウォール」で「アプリにWindows Defender ファイアウォール経由の通信を許可する」という項目で「Power Automate Desktop」のWindows Defender ファイアウォール経由の通信を許可してみてください。
最終的に「FTP接続を開く」というアクションの詳細設定は上記になります。今回はheteml(ヘテムル) FTP へ接続してみます。
設定後、「保存」ボタンをクリックします。
クリックすると、フローのアクションの設定画面の「Main」に、設定したアクションが追加されます。
次に、画面の左側にある「アクション」のメニューから「FTP」をクリックします。クリックするとプルダウンメニューが表示されます。このメニュー内から「作業ディレクトリの変更」というアクションをクリックします。
クリックすると、「FTP接続を開く」というアクションの詳細設定のウインドウが表示されます。
ウインドウ内の「作業ディレクトリを以下に設定」で、ファイルをアップロードする場所(ディレクトリ)を設定します。
設定後「保存」ボタンをクリックします。
クリックすると、フローのアクションの設定画面の「Main」に、設定したアクションが追加されます。
次に、画面の左側にある「アクション」のメニューから「FTP」をクリックします。クリックするとプルダウンメニューが表示されます。このメニュー内から「ファイルをFTPにアップロード」というアクションをクリックします。
クリックすると、「ファイルをFTPにアップロード」というアクションの詳細設定のウインドウが表示されます。ウインドウ内の「アップロードするファイル」の右側のボタンをクリックします。
クリックすると「ファイルの選択」というウインドウが表示されますので、アップロードするファイルを選択します。今回はあらかじめ作成したテキストファイル(.txt)を選択し、「開く」ボタンをクリックします。
クリックすると、「アップロードするファイル」に、先ほど選択したファイルのパスが表示されます。表示後、「FTP接続」、「リモートの場所」、「転送の種類」、「ファイルが存在する場所」は、デフォルトのままで「保存」ボタンをクリックします。
クリックすると、フローのアクションの設定画面の「Main」に、設定したアクションが追加されました。これで、FTP接続を行い、ファイルをFTPにアップロードするまでのフローが完成となります。
■フロー(FTP接続を行い、ファイルをFTPにアップロードする)の実行と検証
フローは完成しましたので、FTP接続を行い、ファイルをFTPにアップロードするまでを実行してみます。
実行する際は、フローのアクションの設定画面の上部にある「実行」ボタンをクリックします。
クリックするとフローが実行されます。
実行すると、画面下に「ステータス:実行中」と水色の枠内に表示されます。実行が完了すると、表示が消えます。
実行後、FTPクライアントソフトであるFileZillaを使用し、サーバーにアクセスしてみると、ファイルがアップロードされていることが確認できました。
コメント