AppSheetを使ってPC台帳を整備してみる

こんにちは。コーポレートエンジニアの天野です。
技術本部でMDM、IDaaS周りを担当しています。

アドウェイズには7月に入社したばかりです。

今回は入社当時から課題感を持っているPC台帳について書こうと思います。

よろしくお願いします。

PC台帳の課題感

現状アドウェイズのPC台帳はスプレッドシートを利用して管理しています。
これはいろいろな会社であるパターンだと思います。

Excelなどで管理している会社もあるのではないでしょうか。

ただ以下の課題感がありました。

  • データの入力制限が難しい
    • なるべく人間の自由入力を制限して表記ゆれなどをなくしたい
  • 検索性がない
  • 誤入力が発生しやすい
  • 外部キー的にデータを引っ張ってくるのが難しい
  • 変更履歴は残るが探しづらく運用的に現実的ではない

スプレッドシートを利用したPC台帳はある程度の台数や規模感になってくると破綻するイメージが強いです。
これは、規模感が大きくなってくるにつれて台帳を運用している人数も増えていきますが、人によってデータの入力精度が違ってくるからです。

課題解決の候補

上記の課題感からスプレッドシートでの管理は辞めたほうがよさそうだと考えました。
そこで移行先を考えると下記の候補が挙がりました。

Snipe-ITは前前職で、Kintoneは前職で利用したことがありましが今回はAppSheetを選択しました。
KintoneでのPC台帳整備は「いとぅ」さんという方が書かれている下記のブログが参考になると思います。

AppSheetを選択した理由

  • コストが発生しない
    • ほとんどのGoogle Workspaceライセンスに内包されるようになりました。
  • Kintoneと近い感じでノーコードで利用が可能
  • サーバーレス

選択した理由として一番大きかったのは製品の利用自体にコストが発生しないという点です。
GWSのライセンスさえあれば手軽に構築できることが大きかったと思います。
AppSheetは以前であれば有料のライセンスが必要でした。ただ2023年7月からGoogle Workspaceのほとんどのエディションに内包されるようになりました。
詳しくはブログを書いている方がいるのでその記事を張っておきます。

構築をしていく

テーブルと中身を考える

簡単にですがテーブルと中身を考えます。

画像とは違うのですが検証の場合は下記のテーブルを作ることにしました。

  • PC
  • 機器台帳
  • 正社員
  • 業務委託、契約社員

Databaseを作っていく

まずはDatabaseを作っていきます。
下記のURLにアクセスして無料トライアルを押します。

  • Create → Database → New database

  • 左上からデータベースの名前を任意のものに変更します
  • 「Add Table」からテーブルを4つ作成して、リネームしておきます。
    • 一旦ここでは下記の4つをテーブルとして追加します。企業の要件によっては拠点のテーブル、部署テーブルを持ちたいなどあると思うのでそこはいい感じに設定してください。
      • PC台帳
      • 機器台帳
      • 正社員
      • 業務委託、契約社員
    • テーブルのリネームはテーブルタブ→「Table settings」からできます。

  • 機器台帳から設定していきます。機器台帳のテーブルを選択してください。
    • ここでいう機器台帳とは機種のスペックなどを定義したテーブルになります。

  • 必要な情報を「Add column」を押して追加していきます。

  • いろいろなデータの型みたいなものを定義できます。入力するデータによって適当に選んでください。
    • おすすめはEnumです。なるべく自由入力を減らすことをオススメします。

  • 必要な情報がすべて定義できたなら機器台帳の作成は完了です。
  • 次にPC台帳を作っていきます。機器台帳と同じように必要なColumnを定義していきます。

  • 機器台帳と違う点はPC台帳では他のテーブルの情報を使いたいです。外部キー的に使いたいわけです。
  • この場合「Add column」→「Link to table」→「Reference」で先ほど作成した機器台帳を選択することで他のテーブルから情報を引っ張ってくることが可能です。

  • これでPC台帳と機器台帳を繋げることができました。同じ要領で「正社員」「業務委託、契約社員」というテーブルを作成し、PC台帳と繋げます。
    • 「正社員」「業務委託、契約社員」を持つ理由はPCの貸出先に社員番号などを使うためです。
      • だれにPCを貸し出しているか把握しておく必要があるからです。
  • テーブルを4つ作成出来たらDatabaseの作業は完了になります。

アプリケーションを作成していく

  • 次にアプリケーションを作成していきます。Databaseで中身ができたのでガワを作っていきます。
  • Create → App → Black app

  • 下記の画面になると思うので簡単に使う項目を説明します。
    • 画面左側
      • Data
        • 利用するデータについての設定
      • View
        • データの表示方法を設定する
      • Actions
        • Action(データの削除、作成、追加など)を設定することができます。
        • 検証では使う要件はなかったので今回は省きます。
    • 画面右側
      • アプリケーションの実際の表示画面

  • まず、Dataを選択して先ほど作成したDatabaseと繋げていきます。
  • 左上の「+」→AppSheet Database を選択して先ほど作成したテーブルをすべて追加します。

  • 基本的にこれでDataの設定は完了です。必要であれば各テーブルの下記項目などを変更してください。
    • KEY
      • 主キーの変更が可能です。複数選択も可能ですがその場合は新しいColumnが作成されます。
    • LABEL
      • 表示設定
    • SHOW?
      • ユーザーに表示させるか、表示させないか
    • EDITABLE?
      • ユーザーに編集をさせるか、させないか
  • 最後にViewの設定をしていきます。左側の項目からViewを選択します。
  • 左上の「+」 → Create a new view

  • そして3か所ほど設定していきます。
    • View name
      • 任意の名前を設定
    • For this data
      • さきほど繋ぎこんだ「PC」テーブルを設定
    • View type
      • table

以上で設定は完了になります!
これで最低限使えるものができましたのであとは公開設定をするだけです。

公開設定・共有設定

  • アプリケーションのデプロイ
    • 左上のロケットのアイコンをクリックして、「Deployment Check」を選択してアプリケーションをデプロイします。

  • 共有設定
    • アプリケーションが必要な人に共有設定を行います。
    • 左上の「Share」からメールアドレスを入力して権限を追加します。

以上で公開・共有設定は完了になります。

どういったものができたか

実際にできたアプリケーションが下記のような画面になります。なにができるのか簡単にみていきましょう。

1. Viewの一覧。作成したViewの選択が可能

  • 画像は上のViewとは違うViewを選択した場合

2. クリックすることでデータの詳細確認、編集が可能

  • データの編集が可能
  • データの繋ぎこみをしているものは→を押すことで参照先の確認が可能


3. 検索機能

  • 部分一致で検索が可能

4. データの追加機能

  • データの追加が可能です。
  • このときDataで必須項目の設定などを行っていると必ず入力してほしい項目の制御が可能です。

5. Sort機能

  • 特定の条件でSortを行うことが可能

6. 複数選択機能

  • 複数のrowを選択して削除などを行うことが可能

最後に

いかがでしょうか。

比較的簡単にPC台帳アプリケーションを作成することができました。
GWSを使って&スプレッドシートでPCの管理に困っている方にはよい移行先ができたと思っています。

また、技術本部では本番運用に向けてもろもろの設計をしていこうと考えていますが下記の点が考慮事項に上がりそうです。

  • PCの利用履歴をどう持つか
    • おそらく利用履歴用でテーブルを持つように設計しないといけません
  • 従業員台帳の更新をどうするか
    • 別で人事DBなどがあった場合そちらとAPI連携orスプレッドシート連携する必要があります

課題解決に向けて頑張っていきます!

最後までお読みいただきありがとうございました!