2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Power Automate(クラウドフロー)でOne Driveファイル名の値が謎の文字列になるバグっぽい事象と回避 #powerautomate

Last updated at Posted at 2022-11-13

OneDriveのモジュールとトリガーにファイルに変更があったら -> 何かするを作ろうとし
てますがちょっとよくわからない挙動に当たったのでメモがてら記録しておきます。

Power Automate(クラウドフロー・DPA)での話です。 PADではないので悪しからず。

まずは通常の使い方から

動的コンテンツ(変数的なものだと思ってます。)のファイル名にファイル名が入ってきますが、以下のように<ファイル名>が更新されたよなどと入れておくと、例えばbook.xlsxを変更した場合、book.xlsxが更新されたよの文字列が送られてきます。

スクリーンショット 2022-11-13 15.49.04.png

<ファイル名>のみで扱うとバグる?

特定のファイル名だったら何か処理をする、を実装する場合、以下のようにすると思います。

例えばbook.xlsxが変更された場合

スクリーンショット 2022-11-13 15.52.58.png

ただこれだとfalseに行ってしまい、中身を確認するとYm9vay54bHN4といった文字列になっていました。

スクリーンショット 2022-11-13 15.47.05.png

条件を<ファイル名>がYm9vay54bHN4だったらに変更してみたら...

スクリーンショット 2022-11-13 15.54.58.png

まさかのtrue。

スクリーンショット 2022-11-13 15.48.11.png

ということでbook.xlsxYm9vay54bHN4という文字列に変換されてました。

回避策 - ○○を噛ませてxxで囲む

調べても有効な手段がなかったのですが(PADの方がでてきてしまって、Power Automateのクラウドフローのググラビリティ悪さ... )

こんな形で 変数を作成 し、

スクリーンショット 2022-11-13 16.17.31.png

文字列として追加する際に動的コンテンツのファイル名をダブルクオーテーションで囲みます。

見出しに書いた○○は変数で、xxは""ですね。変数を噛ませて""で囲むことで回避できます。

スクリーンショット 2022-11-13 16.18.42.png

条件式では作った変数を利用します。

スクリーンショット 2022-11-13 16.19.56.png

すると なぜか分からんけど回避できます。

JavaScriptでx=1はNumberだけど${x}にすると文字列に変換されるような挙動だったり、エクセルで001を入れると1という表示になってしまうけど'001と入れると文字列で001になったりしますがその辺をイメージしてみたらうまくいきました。

成功するとこんな感じ

謎文字列ではなくちゃんとブック.xlsxという文字が変数に格納されていて、

スクリーンショット 2022-11-13 16.22.46.png

条件はtrueに入ってました。

スクリーンショット 2022-11-13 16.23.31.png

試した際のこの式の場合ブック.xlsxをいじるとtrue、他ファイルをいじるとfalseに分岐します。

まとめ

仕様がわからなくてつらみがある。回避したあとに以下の記事を見つけたけどx-ms-file-name-encodedというエンコード方式があるっぽいですね。。うーむ。。

Power AutomateにてOneDriveから取得したファイルのファイル名が文字化けする問題の解決方法

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?