3
0

Power Apps で 検索したレコードを一括更新する方法(2024年版)

Last updated at Posted at 2024-06-27

はじめに

Power Apps で 検索したレコードの値を一括で修正したいという要望は多いかと思います。
まぁ一括変更というと ForAll関数とPatch関数を組み合わせればいいじゃないと思うかもしれません。

しかし、その際のレコード指定方法がちょっと変わっていたので、記事にまとめます。

Microsoft Learn では

ここでは、式の例が掲載されています。

image.png

しかしながら、実際に似たような形で書いてみると、以下のようなエラーが発生し、正しく登録することができません。

image.png

ThisRecord の ID で LookUp したレコードを指定する

では、以下のように LookUp した場合はどうか
image.png

ClearCollect(testdata1,Filter(テスト1,value>3));
ForAll(
    testdata1,
    Patch(
        テスト1,
        LookUp(
            テスト1,
            ID=ThisRecord.ID
        ),
        {
            text:TextInputCanvas1.Value
        }
    )
)

ですが、以下のようにネットワークエラーが発生してしまいます。

image.png

どうも正しく更新対象のレコードが取得できていないように思います。
※前はこれでいけてたように気がするけど・・・

[正解]ThisRecordを指定すればいいだけ

ダメ元で試した結果なんですが、ForAll 中の ThisRecord を Patch の レコードとして指定すれば良いようです。

image.png

ClearCollect(testdata1,Filter(テスト1,value>3));
ForAll(
    testdata1,
    Patch(
        テスト1,
        ThisRecord,
        {
            text:TextInputCanvas1.Value
        }
    )
)

まとめ

ギャラリーとかで選択したものを一括変更はよくありますが、入力した文字列などで検索して一気に検索というパターンも需要があると思います。
そんなときは、こちらのやり方をぜひお試しください!

3
0
3

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
3
0