AppSheetのオフライン設定と同期エラー対策|データが反映されない原因と解決方法

AppSheet

AppSheetを現場で使っていると、「オフラインで入力したはずなのにデータが反映されない」「同期マークが消えない」といった問題が起こることがあります。原因は通信環境だけとは限りません。オフライン設定、同期のタイミング、Googleスプレッドシートの権限、キー列、数式の負荷などを順に切り分ける必要があります。焦ってアプリを削除すると端末内の未送信データを失うおそれもあります。安全な確認順序と、業務に合うAppSheetのオフライン設定を、初心者でも再現できる形で整理します。

蒼宮 ルシア
蒼宮 ルシア

👑圏外の倉庫で入力した報告が、事務所に戻っても表に見当たりません。もう一度入力したほうがよいのでしょうか?

AI執事
AI執事

🤖再入力の前に、端末に変更が残っているか確認しましょう。重複登録を防ぐためにも、同期状態とエラー内容の記録が先です。

蒼宮 ルシア
蒼宮 ルシア

👑同期エラーは、通信が戻ればすべて解決するわけではないのですね。

AI執事
AI執事

🤖はい。設定、権限、データ構造のどこで止まっているかを順番に見れば、原因を絞り込めます。

AppSheetがオフラインでも動く仕組み

AppSheetは、アプリの定義と必要なデータを端末に保持し、通信できない間の追加・更新・削除を端末内の待ち行列に保存します。通信が戻って同期すると、端末の変更をバックエンドへ送り、最新のアプリ定義とデータを端末へ取り込みます。そのため、画面上で保存できたことと、Googleスプレッドシートなどのデータソースへ反映されたことは同じではありません。

オフライン利用の前提は、対象端末で一度オンラインのままアプリを起動し、初回同期を完了させることです。まだ取得していないアプリ定義やデータは、圏外になってから読み込めません。現場へ端末を配布するときは、ログインだけで終えず、必要な一覧と入力フォームが表示できるところまで確認します。

現在の設定場所や項目名は更新される場合があります。新しいエディタでは主にSettingsのOffline modeとPerformanceから設定します。詳しい仕様はAppSheet公式ヘルプのオフラインと同期の説明も確認してください。

データと画像・ファイルでは保存の扱いが異なる

表データは端末へコピーされますが、画像や文書は初期状態ではオフライン用に保存されません。現場で図面、納品書、写真見本などを開くなら、Store content for offline useを有効にし、オンライン状態でダウンロードが終わるまで待ちます。画像が一度画面に表示されたからといって、オフライン用の保存が完了しているとは限りません。

ファイル参照には、データソースを基準にした相対パスが必要になる場合があります。ブラウザ利用では、画像・文書のオフラインキャッシュに制約があります。画像や文書をフォームへ添付したままタブを閉じると、同期前の内容を失うおそれもあるため、ファイルを扱う現場ではモバイルアプリで事前検証するほうが安全です。

蒼宮ルシア
蒼宮ルシア

👑端末を現場へ渡す前に、機内モードで一覧・入力・画像表示まで試すと、設定漏れを本番前に見つけやすくなります。

実務に合うオフライン設定

設定は、オフラインで起動できるか、変更をいつ送るか、クラウド側の更新をいつ受け取るかに分けて考えます。すべてを有効にすればよいわけではありません。通信が不安定な場所で使うのか、複数人が常時同じデータを更新するのかによって、適した組み合わせが変わります。

Offline modeで確認する2項目
  • The app can start when offline:圏外の状態でもアプリを起動できるようにします。設定前にホーム画面へ追加したショートカットは、設定後に削除して追加し直す必要がある場合があります。
  • Store content for offline use:画像と文書を端末へ保存します。ファイル数が多いほど初回準備に時間と端末容量が必要です。
Performanceで確認する同期項目
項目役割実務上の注意
Sync on start起動時に同期し、完了まで操作を待たせる開始時の鮮度を保ちやすい反面、通信が遅い場所では待ち時間が増える
Delayed sync変更を端末にため、まとめて送る圏外作業に向くが、手動運用では同期忘れへの対策が必要
Automatic updates待機中の変更や更新をバックグラウンドで同期する反映を自動化しやすいが、通信量と同期回数が増える
Delta sync変更されたテーブルを中心に取得する外部数式や毎回再計算が必要な仮想列がある構成には合わない場合がある
Quick syncほかの利用者が保存した変更を素早く表示する高度なセキュリティフィルター、シート数式、完全同期が必要な仮想列とは相性を確認する
利用場面別の設定例
利用場面考え方運用ルール
倉庫・山間部の点検Delayed syncを有効にし、手動同期を前提にする出発前と帰着後に同期する
通信が安定した社内Delayed syncとAutomatic updatesを組み合わせるバックグラウンド同期後も重要処理は完了表示を確認する
在庫を複数人で更新データの鮮度を優先し、起動時同期や自動更新を検討する同じ行を同時編集しない業務設計にする
大きな画像を連続登録送信負荷を見込み、良好な回線でまとめて同期する同期前にアプリ削除や端末交換をしない

Delayed syncとAutomatic updatesを両方有効にする構成は、多くの一般的な用途で待ち時間を抑えやすい組み合わせです。一方、同期する場所と時刻を現場側で明確に制御したいなら、Delayed syncを有効、Automatic updatesを無効にし、利用者が明示的に同期します。圏外からオンラインへ戻っても即時に反映されず、次の自動同期まで時間が空く場合がある点も周知してください。

蒼宮ルシア
蒼宮ルシア

👑設定名だけで決めず、「いつ最新データが必要か」「誰が同期完了を確認するか」を業務手順に落とし込むのがコツです。

データが反映されない主な原因

同期トラブルは、端末、AppSheet、データソースの3層に分けると探しやすくなります。利用者から「反映されない」と連絡が来たら、どの端末で、何時ごろ、どのレコードを、どの操作で変更したかを聞き取ります。「注文番号A123」のようにキー値まで控えると、監査ログと元データを照合できます。

変更が端末内で送信待ちになっている

Delayed syncが有効、または通信が一時的に切れた場合、保存した変更は端末内に残ります。同期アイコンに未送信を示す表示がないか確認し、安定した通信へ切り替えて手動同期します。何度押しても進まないときは、連打せず、エラー文と進捗が止まる位置を記録します。

端末が古いデータを表示している

データソースを直接編集した変更や、別ユーザーの更新は、端末が同期するまで表示されません。端末からクラウドへの送信と、クラウドから端末への取得は別の流れです。自分の入力が表にあるのに画面が古い場合は、取得側の同期を疑います。

データソースへの権限が失われている

403系のエラーやUnable to fetch dataが出る場合は、アプリ作成者または実行ユーザーがGoogleスプレッドシートへアクセスできるか確認します。共有解除、アカウント変更、ファイル移動などがきっかけになります。404系なら、元ファイルの削除・名称変更・移動も確認対象です。

シートの列構成とアプリ定義がずれている

Googleスプレッドシート側で列を追加・削除・名称変更したまま、AppSheet側の列定義を更新していないと、列数不一致や新しいアプリ版のため変更を適用できない旨のエラーが起こります。データ構造を変える前に全端末の未同期データを送信し、変更後はエディタでテーブル構造を再生成してから利用を再開します。

キー列が重複または変化している

AppSheetはキーで行を識別します。_RowNumberをキーにすると、並べ替え、行削除、複数端末からの追加で参照先が変わりやすく、誤更新や重複の原因になります。追加時の初期値にUNIQUEID()を使うなど、端末単独でも生成でき、生涯変わらない一意の値をキーにします。スプレッドシート数式で後からキーを採番する方法は、オフライン追加には向きません。

数式・画像・自動処理が同期を重くしている

大量データ、大きな画像、複雑なシート間数式、同期時に動くBotは処理時間を延ばします。同期が半分付近で長く止まる場合、変更の送信やイベント処理に時間がかかっている可能性があります。不要列を減らし、画像サイズを抑え、重いシート数式を整理し、Botの実行内容を監査ログで確認します。

同じ行を複数人が更新している

複数端末が同じ行を変更すると、基本的には後からサーバーへ届いた変更が残ります。数日分をまとめて同期すると、現場に残っていた古い編集が新しい値を上書きすることもあります。担当者ごとに行を分ける、確定済みレコードを編集不可にする、更新者と更新日時を記録するといった設計が必要です。

蒼宮ルシア
蒼宮ルシア

👑「通信が悪かった」で片づけず、キー値・発生時刻・利用者・エラー文を残すと、次回から調査時間を大きく減らせます。

同期エラーを安全に解決する手順

未同期データがある端末は、唯一の原本になっている可能性があります。最初から再インストールすると調査材料と入力内容を失いかねません。次の順で、変更を守りながら確認します。

  1. 端末を削除・初期化せず、同期アイコン、未送信件数、表示されたエラー文を画面記録します。
  2. 対象レコードのキー値、操作時刻、利用者、追加・更新・削除の別を控えます。
  3. 機内モードを解除し、安定したWi-Fiまたはモバイル回線で手動同期を1回実行します。
  4. 元のGoogleスプレッドシートなどを開き、キー値で検索して反映有無と重複を確認します。
  5. 作成者がエディタのManage、Monitor、Audit Historyを開き、同時刻のSyncやUpdateの失敗記録を確認します。
  6. 権限、列構成、キー重複、数式負荷、画像容量、Botの処理をエラー内容に沿って修正します。
  7. 未送信内容を保全できたことを確認してから、アプリの終了・再起動を試します。
  8. 再起動でも直らない場合に限り、未同期データの回収方法を決めたうえで再インストールを検討します。

Audit Historyには同期、追加、更新、削除などの記録が残り、反映されなかった申告の調査に使えます。ログの表示には数分かかる場合があり、保持期間や詳細な分析機能は契約によって異なります。画面構成や利用条件は変更されることがあるため、最新情報は公式サイトで確認してください。

エラー表示から確認先を絞る
症状・表示疑う場所最初の対応
同期が長時間終わらない回線、画像、数式、Bot良好な回線で再試行し、監査ログの処理時間を見る
403または権限エラーデータソースの共有権限作成者と実行ユーザーのアクセス権を確認する
404または取得不可元ファイルの場所削除、移動、名称変更、接続先を確認する
列不足・列数不一致テーブル構造未同期データを保全し、列定義を再生成する
別の行が更新されたキー列重複と_RowNumber利用を調べる
画像だけ表示されないオフライン保存とパスコンテンツ保存設定、相対パス、事前取得を確認する

本番前に行うオフライン動作テスト

管理者の端末で動くだけでは不十分です。実際に使う端末、アカウント、通信条件で、登録からバックエンド反映まで一連のテストを行います。テスト用レコードには日時と端末名を入れると追跡しやすくなります。

  1. オンラインでアプリを初回起動し、同期完了を確認します。
  2. 必要な一覧、入力候補、画像、文書を一度開きます。
  3. 機内モードに切り替え、アプリを終了してから再起動します。
  4. 新規追加、既存行の更新、写真添付をテスト用データで実行します。
  5. アプリを閉じずにオンラインへ戻し、手動または自動同期を完了させます。
  6. データソースをキー値で検索し、値と添付ファイルを確認します。
  7. 別端末でも同期し、更新が見えるか、同じ行の競合時にどうなるかを確認します。
導入に向いている業務と慎重にすべき業務

設備点検、訪問記録、棚卸し、配送報告のように、担当者ごとに別のレコードを追加する業務はオフライン運用と相性がよい傾向があります。一方、複数人が同じ在庫行を秒単位で更新する処理、数週間にわたり完全オフラインのまま使う運用、地図データを圏外で参照することが必須の業務は慎重な設計が必要です。Googleマップの地図データはAppSheet側でオフライン用にキャッシュできません。

長期間同期しないと、アプリ定義が古くなり、同じデータへの新旧更新も衝突しやすくなります。少なくとも始業時、作業終了時、端末引き渡し前など、業務上の同期ポイントを決めます。同期完了をチェック欄で記録すれば、口頭確認だけに頼らずに運用できます。

蒼宮ルシア
蒼宮ルシア

👑成功条件は「保存できた」ではなく、「元データへ反映され、別端末でも確認できた」までにすると、見落としを減らせます。

よくある質問

オフラインで入力したデータは消えませんか?

通常は端末内に保存され、同期できるまで待機します。ただし、同期前のアプリ削除、端末の故障・紛失、ブラウザでの画像添付後にタブを閉じる操作などでは失うおそれがあります。同期完了までは端末を初期化しないでください。

通信が戻れば自動で同期されますか?

Automatic updatesなどの設定によります。オンラインへ戻っても、次の自動同期まで反映されない場合があります。現場作業の終了時は同期アイコンを押し、完了と元データへの反映を確認する運用が確実です。

Delayed syncは有効にしたほうがよいですか?

圏外や不安定な回線で連続入力する業務には適しています。ただし、同期忘れとデータ競合が起こりやすくなるため、帰社時などに手動同期するルールをセットで用意します。

同期ボタンを何度押しても反映されないときはどうしますか?

連打せず、エラー文、発生時刻、対象レコードのキーを記録します。その後、良好な回線で1回再試行し、作成者がAudit History、データソースの権限、列構成を確認してください。

Googleスプレッドシートを直接編集してもよいですか?

運用上は可能ですが、列の追加・削除やキー値の変更はアプリ定義との不一致を招きます。値の編集でも、アプリ利用者と同じ行を同時に更新すると後から届いた内容が残るため、直接編集の担当と範囲を決めてください。

画像だけオフラインで表示されないのはなぜですか?

画像と文書は表データと違い、初期状態ではオフライン用に保存されません。Store content for offline useを有効にし、オンラインで取得完了を待ちます。ファイルの相対パスも確認してください。

Quick syncを有効にすれば同期問題はなくなりますか?

Quick syncは他ユーザーの変更を素早く表示するための機能で、すべての構成に合うわけではありません。シート数式、高度なセキュリティフィルター、完全同期が必要な仮想列を使う場合は、実データで相性を確認します。

おすすめAIツール

ChatGPTなどの生成AIは、AppSheetの設定を直接直す担当ではなく、調査を整理する補助役として使えます。エラー文、発生時刻、端末、操作、監査ログの抜粋を個人情報や機密情報を除いて渡し、「端末・AppSheet・データソースの順に確認項目を表にして」と依頼すれば、切り分け漏れを減らせます。

ほかにも、現場向けの同期チェックリスト、障害報告テンプレート、テストケースの下書きに利用できます。ただし、AIの回答だけで設定を変更せず、AppSheet公式ヘルプと実機テストで確かめます。顧客名、メールアドレス、ファイルURL、認証情報をそのまま入力しないことも社内ルールに含めてください。

まとめ

  • オフライン利用前に、対象端末をオンラインで初回同期し、必要なデータとファイルを取得する
  • Delayed sync、Automatic updates、起動時同期を業務の通信環境とデータ鮮度に合わせる
  • 反映されないときは、再インストール前に未送信データ、キー値、エラー文、監査ログを確認する
  • 権限、列構成、キー重複、数式負荷、同時編集まで含めて原因を切り分ける

AI執事の整理では、最初に行うべきことは「安定した回線で同期する」だけではありません。未同期の入力を守り、どの変更がどこで止まったかを記録することが出発点です。まずは実際の端末で、オンライン準備、機内モード入力、再接続後の同期、元データ確認までを1回通してみてください。

タイトルとURLをコピーしました