12
16

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Google App Makerとスプレッドシートを駆使してシステムを構築する(スプレッドシートのデータを表示する)

Last updated at Posted at 2018-12-12

#やること
Google App Makerがイケてるツールなのかを知るために、簡易なシステムを作ってみる。
(スプレッドシートをDB代わりにする)

#前提
・もともとはAppMakerでスプレッドシートをDB代わりに使えていたようだけと、どこかのアップデートのタイミングで機能が廃止された
・Google App Makerにはデータを格納するものとして、Cloud SQLがきっと推奨されている
・だけど、Cloud SQLは別途費用かかったり、学習コストがかかったり、利用までに少し壁があるので、SpreadSheet APIを駆使して何とかDB代わりにできないか頑張る

#目次

  • スプレッドシートのデータを表示する ←今ココ
  • データを変更する
  • データを新規登録する
  • 検索する

#やってみる

  • スプレッドシートを用意

image.png

次AppMakerなんですが、ログインとかは割愛。

  • 下のDATAの右側の「+」をクリック

image.png

  • Calculatedを選択しNEXT

image.png

  • 適当に名前つけてください。
    image.png

  • 「ADD FIELD」からFieldを追加。(データが記載されたスプレッドシートと揃える)
    image.png

  • データを取得するコードを下記へ書いていきます。
    image.png

test.js
//スプレッドシートのデータを取得する。
var sheets = SpreadsheetApp.openById('ここに基になるスプレッドシートのIDを記載');
var sheet = sheets.getSheetByName('そのスプレッドシートのシート名を記載');
var records = [];
var values = sheet.getDataRange().getValues();
//タイトル行いらないので削除
values.splice(0,1);

//AppMakerのテーブル用に整形
values.forEach(function(value){
  var record = app.models.GSuiteGroup.newRecord();
 //AppMakerで作ったFIELDと揃える。
  record.id = value[0];
  record.name = value[1];
  record.mail = value[2];
  records.push(record);  
});
//最後に結果を返す
return records;  

#結果
こんな感じで表示される
image.png

次回は「データを変更する」をやろうかと思います。

  • スプレッドシートのデータを表示する ←今ココ
  • データを変更する
  • データを新規登録する
  • 検索する
12
16
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
16

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?