Microsoft 365 の Power Apps を使って SharePoint リスト連携のアプリを作成していると、リスト側で列(フィールド)を追加したのにアプリに反映されず戸惑うことがあります。これは Power Apps と SharePoint がリアルタイムで列構造を自動更新しない仕様によるもので、適切に更新操作を行えば解決できます。
Power Apps が列を自動で反映しない理由
Power Apps で SharePoint リストをデータソースとして追加すると、アプリ側はその時点でのリスト構造を読み込みます。しかし、列を後から追加してもアプリが自動で列構造を再読み込みしないため、追加した列が一覧に現れない仕組みです。これは仕様として多くの開発者コミュニティでも指摘されています。([参照]参照)
そのため、列が追加された後は Power Apps 内で明示的な更新操作が必要になります。
データソースのリフレッシュ手順
リスト側に列を追加した後は、Power Apps の編集画面でデータソースをリフレッシュします。データタブで該当の SharePoint リストを右クリックし、「リフレッシュ」を選択すると、最新の列情報が反映されます。
これで新しい列がアプリ側で認識されるようになり、フォームなどでフィールドとして追加できるようになります。
フォームに新しい列を追加する方法
リフレッシュ後でもフォームには自動で表示されないため、対象 Form(編集フォームや表示フォーム)を選択し、右側のフィールド一覧から追加した列を手動で追加します。フォーム上で「フィールドの編集」→追加した列を選択します。
新しい列が隠れたデータカードとしてすでに存在している場合もあり、その場合はデータカードを表示状態に切り替える必要があります。
注意点とトラブルシューティング
・ リフレッシュ後に列が表示されない場合は、アプリを一度保存して再読み込みすると反映されることがあります。
・ 特殊な列タイプ(画像列や複雑なルックアップ列)は Power Apps 側で正しく認識されない場合があるため、必要に応じて標準的な列タイプで確認することもおすすめです。([参照]参照)
まとめ
Power Apps で SharePoint リストの列を追加した際は、アプリ側でデータソースをリフレッシュし、フォームに新しいフィールドを追加する必要があります。リフレッシュと手動追加を行うことで、リスト構造の変更をアプリに反映させ、備品使用申請アプリなどのフォームに必要な項目を正しく表示できるようになります。


コメント