キャンバスアプリ構築中に始めてみたエラー「ネットワークから受信したデータが無効です(Invalid data from the network)」が発生したので、対応方法をメモ。
原因
このエラーはデータソース側のデータ(特に選択肢列のデータ)に何かしら異常がある場合に発生するらしい。
今回発生した原因は以下の通り。
発生手順
こんな感じのテーブルを用意して、
選択肢を用意。
こんな感じでデータを作成して、
キャンバスアプリに表示する。
この状態で既にデータに登録されている選択肢(今回は選択肢4)を削除して、
キャンバスアプリ側からテーブルを更新すると、
エラー「ネットワークから受信したデータが無効です」エラーが発生。
今回はこのエラーの原因を探すのにかなり時間がかかってしまった。。。
原因の特定に時間がかかった理由
今回のエラーの原因特定に時間がかかった理由は、以下の要素が合わさってしまったため。
- Power Apps Studioにエラーアイコンが表示されなかった
- 複数人で開発していて、選択肢を削除したのが別の開発者だった
特にPower Apps Studioにエラーアイコンが表示されなかったのが大きくて、
ブログのために簡易的に再現させた際はこんな感じでエラーアイコンと赤の下線が出たんだけど、本番環境ではこの表示がなぜか出ず。。。
※エラー表示が出なかった理由はいまだ不明
そのためそもそもアプリのどのデータが悪いかわからず、原因解明に時間がかかる。。
「ネットワークから受信したデータが無効です」の原因の列が不明のとき
以下の参考サイトによると、このエラーは、アプリの設定「数式レベルのエラー処理」をオンにしていて、何かしらの不整合がある情報にアクセスすると発生するエラーらしい。
※参考サイトも当方も「選択肢」でエラーが発生していたので、選択肢列で発生することが多い?
そこで現象が発生している画面で、データを参照しているところ(特に選択肢の情報を参照しているところ)を一つずつコメントアウトするなりしてエラーが消えるのを確認するしかないよう。
対処方法
対処方法はもちろんデータの不整合をなくすこと。今回は消してしまった選択肢を選択しているレコードを修正 or 削除する。
コメント