2022年8月のアップデート(バージョン 2.23)で、Power Automate for desktop(PAD)にSharePointを操作するためのアクションが追加されました(2023年3月時点でプレビュー版)。
これにより、「パスによるファイル コンテンツの取得」アクションでSharePoint上のファイルをバイナリ形式で取得して、「バイナリ データをファイルに変換」アクションで任意のフォルダにファイルを保存することができるようになっていたのですが、PAD バージョン 2.29で「パラメーター ‘バイナリ データ’: 引数 ‘バイナリ データ’ は ‘バイナリ’ である必要があります。」エラーが発生するようになりました。
この問題への対処法がPower Platform Communityのスレッドで紹介されていました。
- 「パスによるファイル コンテンツの取得」アクションでSharePoint上のファイルをバイナリ形式で取得します(生成された変数:%GetFileContentByPathResponse%)。
- 「ファイルをバイナリ データに変換」アクションで適当なファイルを指定し、「生成された変数」として、上記「パスによるファイル コンテンツの取得」アクションと同じ変数を指定します。このとき、存在しないファイルを指定することで、わざとエラーが起こるようにします。
- 「エラー発生時」からエラー時の処理を設定し、ファイルをバイナリ データに変換アクションでエラーが発生しても次のアクションが実行されるようにします。
- 「バイナリ データをファイルに変換」アクションの「バイナリ データ」パラメーターで「パスによるファイル コンテンツの取得」アクションで取得した変数を指定します。
パスによるファイル コンテンツの取得アクションとバイナリ データをファイルに変換アクションの間に、指定したファイルをバイナリ形式で取得するための別のアクション「ファイルをバイナリ データに変換」アクションを挟み、エラーをスルーすることによってSharePoint上のファイルをローカルに保存するという当初の目的を達成しています。
PADのSharePoint関連のアクションはまだプレビュー版で、今回の件もいずれは修正される一時的な不具合だとは思いますが、上記のような方法を取ることによって暫定的に対応することができます。
2023/3/22 追記:
バージョン 2.30で上記不具合は修正され、「ファイルをバイナリ データに変換」アクションを挟まなくてもSharePoint上のファイルをダウンロードできるようになりました。
この記事へのコメントはありません。