Power Appsのコレクションには「委任制限(最大2000件)」という大きな壁があります。私自身もこの制限に悩んでいたのですが、海外の開発者である Matthew Devaney氏 が、非常にスマートな解決策を公開されていました。
参考元記事: Power Apps Get More Than 2000 Records With A Collection (Matthew Devaney氏)
データを「昇順」と「降順」でそれぞれ2000件ずつ取得し、最後にそれらを合体させて重複を排除するという方法です。
ボタンの OnSelect プロパティに以下のコードを記述します。
Power Apps
Concurrent(
ClearCollect(
colNum1,
Sort('SharePointリスト名', ID, Ascending)
),
ClearCollect(
colNum2,
Sort('SharePointリスト名', ID, Descending)
)
);
// 2つを統合し、重複(ID)を除外して最終的なコレクションを作成
ClearCollect(
colMaster,
colNum1,
Filter(colNum2, Not(ID in colNum1.ID))
);
// 一時的なコレクションを削除してメモリを解放
Clear(colNum1);
Clear(colNum2);多くのお困りの方にこちらの方法を知ってほしいと思ったので、こちらの方法を記載させていただきました。
