アプリ作成編 〜Google G SUITE appmakerを使ってみた 〜
社内のインベントリ情報の検索ツールを作ってみた。
CRUDツールである。
おおまかな手順は下記の通り
- GCP上で、データソースとなるSQLインスタンスを作成
- G Suiteの管理画面で、Google Cloud SQL インスタンスの設定を行う
- インスタンスにappmaker からアクセスできるようにGCPのAIMでCloud SQL 管理者として、appmaker-maestro@appspot.gserviceaccount.com を追加
- appmakerでアプリを作成し、データ→モデルを作成→Google Cloud SQL を選択
- 初期データがあれば左上にあるIMPORT DATA FROM SHEET からデータを投入(モデル作るときにインポートできるようにしてくれればいいのに!)
- ページ・UIを作成
- デプロイ
あとは、触りながら、下記のアクションの方法を参照にしながら作れば
なんとか形になるはずです。
Google App Maker ー デフォルトアクションの一覧 - Qiita
ちょっとしたTIPSなど
1. SQLインスタンスをGCPに作成する時は、us-central1 で作成すべし
良かれと思って、日本のリージョンに作ったけど、us-central1に作れと怒られましたw
2. プレビューとデプロイは別データ
初期データなどをインポートするときにわかることですが、previewとデプロイには別々にデータを投入する必要があります。
3. 共通する処理はSCRIPTSに書け
例えばデータを検索するロジックなどは、client script(javascript)を書き
検索ボタンのonClickイベント時にCustom Action で指定して発火させます。
function useQueryBuilder() {
var text = app.pages.index.descendants.FilterText.value;
if (text === null) {
app.datasources.account.query.where ='';
} else {
app.datasources.account.query.where = '(target contains :Value) or (login contains :Value) or (note contains :Value)';
app.datasources.account.query.parameters.Value = text;
}
app.datasources.account.load();
}
4. ちゃんと権限設定しよう
appmaker のアプリに対する権限設定がわかりづらいので理解の足しになれば。