ファイルの取得時に パスが長いためのエラー の回避方法

はじめに

この記事は以下の関連記事から派生して記載しています。
内容は以下の記事内に書いているのですが、検索で出やすいように、パスが長い(フォルダ名+ファイル名)場合にファイルコンテンツの取得でエラーとなるケースの解消部分をリライトしたものです。

パスが長いファイルコンテンツの取得でエラーとなる

上記の記事で、作成時にファイルの作成アクションでパスが長いとエラーとなる件およびその回避方法を記載しています。

TIPS上記は要約するとパスが長い場合にファイルの識別子(ID)も比例して長くなり、これがエンコード後の数が740ほどだとエラーとなる。が、記事に書いた対処方法で回避可能(そもそものSPO制限値まで作成できる)
併せて、取得時もファイル識別子が長いものは取得時に同様のエラーが発生する

ファイルの取得時は以下の参考記事にあるように1024バイトほどでエラーが発生するようです。
Power Automate 「ファイルの作成」は名前が長すぎるとエラー? – Qiita

パスによるファイルコンテンツの取得で解消

こちらの事象については、「ファイルコンテンツの取得」ではなく、「パスによるファイルコンテンツの取得」アクションに変更することで回避可能です。
ファイルメタデータの取得についても同様でパスによるファイルメタデータの取得にすればOKです。

以下長いパスで上記制限以上のファイルで試した結果です。IDはおおよそ2000バイトほどでした。

それぞれのアクションで検証

パスによるファイルコンテンツの取得とファイルコンテンツの取得

パスによるファイルコンテンツの取得であればエラーなし

結果は以下です。同じパスが長いファイルでもパスによる取得であれば問題なく取得が可能です。
ファイル識別子で指定しているファイルコンテンツの取得アクションはエラーとなります。

パスによるは成功だが、ID指定のコンテンツ取得の方は長いと同様のエラーとなる

Excel コネクターも同様

Excelのアクションで上記SPOファイルを使用する際もパスが長いものだと識別子(ID)指定でエラーとなるようです。こちらも完全パスを指定することで回避ができるとありますので同様ですね。
Power Automate: Excel コネクターの file パラメーターは 756 文字制限故に、識別子より完全パスがよさげ – Qiita

おわりに

本記事は見つけやすくするための派生記事なので、軽く記載しました。
全般的にこの辺は識別子(ID)指定のアクションではなく、パスの指定で実装するのが安全かなと思います。

パスが長いときに作成時におきるエラーおよび対応について気になる方は参考記事ご参考ください。それでは。

この記事は役に立ちましたか?

もし参考になりましたら、下記のボタンで教えてください。

ヨウセイ

ヨウセイ

一般職からSharePoint、C#、.NET系技術者へ、そこからPower App、Power Automate技術者へと転身。 ワンランク上のおっさんはPower Appsでシステム開発が出来る〜! qiitaや自社HPでも技術ブログを書いていました。

関連記事

コメント

この記事へのコメントはありません。

CONTENTS