Microsoft Power Automate を使ってみる

目次


概要

Microsoft の RPA である Power Automate を使って、定期的にインターネットから取得したファイルをFTPサイトにアップロードしてみます。

  • Microsoft の Power Automate を使用します。
    Microsoft 365 Business Standard など、Power Automate が使用できることが前提です)

  • 定期的に実行するために、[スケジュール済みクラウドフロー]を使用します。

  • OneDriveのアクションを使用してインターネットからファイルを取得しOneDriveに格納します。  (ホントはHTTPのアクションを使えば良いのでしょうが、PREMIUMなので使用しません)

  • OneDriveに格納したファイルをFTPでアップロードします。

Power Automate を起動する

  1. 起動する
    https://flow.microsoft.com/ja-jp/


  2. f:id:HopStepLab:20210103170423p:plain

    • 初めて開いた場合は、この画面が表示されるので、[ご契約条件]を確認し、[開始する]をクリック。


  3. f:id:HopStepLab:20210103170428p:plain

フローを作成する


  1. f:id:HopStepLab:20210103170434p:plain

    • 左側のメニューから[作成]をクリックし、[スケジュール済みクラウド フロー]を選択する。


  2. f:id:HopStepLab:20210103170439p:plain

    • フロー名:任意。ここでは「定期的にインターネットからファイルを取得する」としておきます。
    • 開始します:カレンダーから開始日を選択する。
            ドロップダウンから開始する時刻を選択する。15分単位で選択できるようです。
    • 繰り返し間隔:分、月、週、日、1時間、分、第 から選択できます。

    • [作成]をクリック

ファイル取得処理を追加する


  1. f:id:HopStepLab:20210103170445p:plain

    • [+新しいステップ]をクリックする。


  2. f:id:HopStepLab:20210103170451p:plain

    • [OneDrive for Business]を選択し絞り込む。


  3. f:id:HopStepLab:20210103170459p:plain

    • [URLからファイルのアップロード]を選択する。


  4. f:id:HopStepLab:20210103170506p:plain

    • ソースURL:インターネットから取得するファイルのURLを記載する。
    • 対象ファイルのパス:OneDriveに保存するファイル名をフルパスで記載する。
      ※存在しなければ、自動的に作成されます。
    • 上書きする:定期的に実行するので、ここでは[はい]を選択します。
    • [保存]をクリックする。


  5. f:id:HopStepLab:20210103192545p:plain

    • 保存に成功すると、上側に緑色のバーでメッセージが表示されます。

ファイルアップロード処理を追加する

  1. 続けて、[+新しいステップ]をクリックする。

  2. 最初に、アップロードするファイルの内容を取得するため、
    上記と同様に、[OneDrive for Business]→[パスによるファイル コンテンツの取得]を選択する。


  3. f:id:HopStepLab:20210103170518p:plain

    • ファイルパス:先にOneDriveに格納したファイル(アップロードしたいファイル)をフルパスで指定する。
    • [保存]をクリックする。

  4. 続けて、[+新しいステップ]をクリックする。


  5. f:id:HopStepLab:20210103170528p:plain

    • 検索ボックスに[FTP]を入力し、絞り込まれた状態で [FTP]→[ファイルの作成] を選択する。


  6. f:id:HopStepLab:20210103170534p:plain 最初に接続情報を作成します。環境に合わせて設定してください。

    • 接続名:任意
    • サーバー アドレス:ホスト名でもIPアドレスでも大丈夫なようです。
    • ユーザー名:FTPで接続する際のユーザー名を入力する。
    • パスワード:上記ユーザーのパスワードを入力する。
    • FTPサーバーポート:21
    • SSLを有効にしますか?:ここでは、OFF にします。
    • バイナリ転送しますか?:ON
    • 証明書の検証を無効にしますか?:ON
    • 要求が完了するたびにFTP接続を閉じますか?:ON
    • [作成]クリック。


  7. f:id:HopStepLab:20210103192556p:plain 上記で、認証に失敗すると、「テスト接続に失敗しました。」のメッセージが表示されます。
    サーバーアドレス、ユーザー名、パスワードが間違っていないか確認します。
    また、ここでの通信は Power Automate から通信が行われますので、FTPサーバ側で海外アドレスからのアクセスが制限されていないか等を確認します。


  8. f:id:HopStepLab:20210103170547p:plain

    • フォルダーのパス:フォルダアイコンをクリックすると、フォルダを選択できます。
    • ファイル名:アップロードする際にファイル名を指定する。
    • ファイルコンテンツ:子画面で、[動的なコンテンツ]の中の[ファイルコンテンツ]を選択する。 f:id:HopStepLab:20210103194905p:plain
    • [保存]をクリックする

テスト実行する

ここまででフローの作成は完了です。
ここからは、フローが正しく動作するかテストを行っていきます。


  1. f:id:HopStepLab:20210103170558p:plain

    • 画面右上の[テスト] をクリックする。


  2. f:id:HopStepLab:20210103170608p:plain

    • フローのテスト:[手動]
    • 画面右下の [テスト] ボタンをクリックする。


  3. f:id:HopStepLab:20210103170613p:plain

    • 確認画面で、[フローの実行] ボタンをクリックする。


  4. f:id:HopStepLab:20210103170619p:plain

    • 実行できたことを確認し、[完了]をクリック。


  5. f:id:HopStepLab:20210103170628p:plain

    • 正常に実行できると、画面上部に緑色のバーで「・・・実行されました」と表示されます。
    • また、OneDrive 及び転送先のFTPサーバにファイルができていることを確認します。

記事内の環境について