この記事は、Power Apps Advent Calendar 2024 12月24日担当分の記事です。
今回のAdvent Calendarでは、Power AppsによるSharePointフォームのカスタマイズの話をします。
12月24日は前編、中編、後編のうちの後編になります。
前編では通常のキャンバスアプリとの違い、中編では注意点を書きましたが、後編ではカスタマイズフォームの複製方法について記載します。
複製しようと思った理由
SharePointリストは5000件以上のアイテムを格納すると、基本的には抽出や並替えの操作が不可となります。
※以下のように「リスト ビューのしきい値(5000 アイテム)を超えています。」と表示されます。
別途インデックス列を設定すれば5000件以上のアイテムを格納しても、抽出や並替えが可能ですが、インデックス作成不可の列もあります。(複数の選択子列やユーザまたはグループ列など)
そのため、SharePointリストの複製もできたほうが良いと考えました。
Power Appsからエクスポート
まずは、複製元のカスタマイズフォームのPower Appsをエクスポートします。
リストの設定画面から「フォームの設定」をクリックして、「バージョンと使用方法を参照」をクリックします。
Power Appsのアプリの詳細画面が開くので「エクスポート パッケージ」をクリックします。
エクスポート パッケージの画面で「名前」を任意に設定して「エクスポート」をクリックします。
ダウンロードフォルダ配下に、「名前_YYYYMMDDHHMMSS.zip」ファイルがダウンロードされます。
複製先リストの情報に書き換える
ダウンロードした「名前_YYYYMMDDHHMMSS.zip」ファイルを以下の階層まで辿ります。
「MicrosoftPowerApps」>「apps」>「19桁の数字」
上記の「19桁の数字.json」ファイルをコピーして、デスクトップなどの別のフォルダに貼付けします。
コピーした「19桁の数字.json」ファイルを開きます。
上記のsiteId、listId、listUrlの内容を複製先リストの情報に変更して保存します。
siteId、listId、listUrlはコピー先リストの「リストの設定」から確認ができます。
「19桁の数字.jsonファイル」をコピー元の「19桁の数字」フォルダ上で上書きコピー貼付けします。
Power Appsへインポート
Power Appsのページから「アプリをインポートする」をクリック→「パッケージから(.zip)」をクリックします。
パッケージのインポートの「アップロード」ボタンをクリックして「名前_YYYYMMDDHHMMSS.zip」を選択して開くボタンをクリックします。
「インポートの設定」の「セットアップ」には「新しく作成する」を「リソース名」は思い思いの名前を入力して保存ボタンをクリックします。
「すべてのパッケージ リソースが正常にインポートされました」と表示されることを確認します。
複製先リストのPower Apps設定
複製先のリストを開き、コマンドバーより[統合]ー[Power Apps]ー[フォームのカスタマイズ]をクリックします。
複製先のリストでPower Appsがコピーされた状態で開きます。
データには複製元のSharePointリストが接続されていますので削除します。
データの追加からSharePointを選択して、複製先のリストを選択します。
大量にエラーが出ますが、リスト名を置換をすることで解消させます。
虫眼鏡アイコンクリック→置換をクリックして、複製前リスト名から複製先リスト名にすべて置換します。
以上で、複製方法は終わりですが、変なエラーが残る場合は、エラーが出ているコントロール上で以下操作を行うと消えます。
依存先をクリック→適用をクリック
依存先の✕をクリック
まとめ
後編ではSPOフォームのカスタマイズの複製方法について記載いたしました。
他にも方法があればお教えいただきたくお願いいたします。
通常のキャンバスアプリと違う点が多々ありましたので、今回は前編、中編、後編と記事をまとめました。