アプリのデータを毎晩 Google スプレッドシートに写して、見渡す台帳と復旧の保険にする

業務アプリのデータベースを、毎晩 Google スプレッドシートに読み出し専用で写しています。サーバーの PHP が Google Drive API(drive.file の権限)で書き込み、オーナーが見渡す台帳と、壊れた時の復旧の保険にしています。GAS ではなくサーバーが書き込む方式にした理由も書きます。

「毎晩、スプレッドシートに写す」の文字と、読み出し専用・新しい順・復旧の保険の札

アプリのデータベースを毎晩 Google スプレッドシートに写すと、見渡すための台帳と、サーバーが壊れた時の復旧の手がかりを、1つで用意できます。私たちは、GAS ではなくサーバーが書き込む方式にし、Google の権限は、アプリが作ったファイルだけを触れる drive.file だけを使っています。

不動産の業務アプリ(Kaitori Base)のデータは、私たちのサーバーのデータベースに入っています。これを、会社のオーナーの Google ドライブにある1つのスプレッドシートにも、毎晩写すことにしました。私たちは、これを「台帳」と呼んでいます。

台帳の目的は2つです。オーナーが、業者や案件をスプレッドシートで見渡せること。そして、もしサーバーが壊れた時に、データを戻す手がかりにすることです。この記事は、台帳に何を入れ、どう作ったかの記録です。

スプレッドシートの台帳は、読み出し専用の写し

データベースから、サーバーがボタンと毎晩の自動で表を作り、オーナーのドライブの台帳に読み出し専用で書き込む図
正しいデータはいつもデータベース。台帳はその写し

入れるものと、入れないもの

台帳に入れるものは業者と連絡先と訪問の記録、案件とその詳細、写真や資料のドライブの場所、組織の設定。入れないものはチャット、日報、やること、認証の情報
認証の情報は、台帳にも、どこにも書き出さない
入れる 入れない
業者、業者の連絡先、訪問の記録 チャット
案件と、その詳細のすべて(査定、打診、契約、販売など) 日報と、日報へのコメント
写真や資料の、Google ドライブの場所 やること
組織の設定、リフォームの単価などの設定 パスワードやトークンなどの認証の情報

チャット、日報、やることは入れません。認証の情報は、台帳にも、どこにも書き出しません。

人が見やすいように並べる

ピンクの机の上に置かれた、きれいに整えられたノートの写真
人が見やすいように、並べ方を整える(イメージ写真)

ほかにも、見やすさのために決めたことがあります。

  • 見出しの行と、先頭の列(案件名、業者名)を固定する
  • 前回の反映より後に新しく入った行と、変わった行に、薄い色を付ける
  • 金額は3桁区切りの数字のまま入れ、並べ替えや絞り込みが効くようにする
  • 選択肢は英語の記号ではなく、日本語で出す
台帳のスプレッドシートの再現。案件名、状態、最終更新の列があり、新しく更新された行が上に並び、薄い青で色が付いている。デモのデータ
台帳のイメージ(デモのデータ)

手動のボタンと、毎晩の自動

台帳への反映は、オーナー用の Web のページにある「今すぐ反映」のボタンと、毎晩の自動の2つです。どちらも同じ処理で、サーバーがデータベースから表を作り、スプレッドシートに書き込みます。失敗した時は、ページに出し、オーナーにメールで知らせます。

オーナー用のページの見本。Google と連携、台帳を作る、今すぐ反映のボタンと、前回の反映の結果が並んでいる
オーナー用のページのイメージ(見本)

GAS ではなく、サーバーが書き込む方式にした

最初は、スプレッドシートに GAS(Google Apps Script)を入れ、GAS がサーバーからデータを取りに行く方式を考えていました。けれども、この方式は採りませんでした。

台帳を作る方式の比較。GAS の方式は新しい会社ごとに貼り付けや鍵の登録や定期実行の設定が要り、確認されていないアプリの警告も出るおそれがある。サーバーが書き込む方式はオーナー用のページでボタン1つで作れる
新しく使い始める会社に、GAS の設定は頼めない

サーバーが壊れた時の保険

台帳とは別に、毎晩、全データの復旧用のファイルも、オーナーの Google ドライブに残しています。データベースそのものの毎日のバックアップは、私たち運営者の側でも取っています。命綱を2本持っておく考え方です。

銀行の金庫のような、丸いハンドルのついた重い扉の写真
サーバーが壊れた時の保険にもなる(イメージ写真)
サーバーが壊れた時の保険。台帳とは別に、毎晩、全データの復旧用のファイルをオーナーの Google ドライブに残し、データベースの毎日のバックアップも運営者の側で取る。命綱を2本持つ
命綱を2本持っておく考え方

まとめ

アプリのデータを毎晩 Google スプレッドシートに写して、見渡す台帳と復旧の保険にする:要点のまとめ。業者、案件、設定を、オーナーの Google ドライブの1つのスプレッドシートに、読み出し専用で写す
この記事の要点
  • 業者、案件、設定を、オーナーの Google ドライブの1つのスプレッドシートに、読み出し専用で写す
  • チャット、日報、やること、認証の情報は入れない
  • 新しいもの、更新されたものほど上に並べ、変わった行に色を付ける
  • 手動のボタンと毎晩の自動で反映する。作り方は GAS ではなく、サーバーが書き込む方式にした
  • 台帳と復旧用のファイルは、サーバーが壊れた時の保険にもなる

この記事は、AI(Claude)の支援を受けて作成し、筆者が内容を確認しています。

  • Googleスプレッドシート
  • Google Drive API
  • バックアップ
  • 業務アプリ
  • PHP
  • drive.file

関連する記事

この記事に関連するサービス・アプリ

ブログの一覧へ