23
今から始める Google Apps Script 2010/10/08 @都内某所

今から始めるGoogle apps scirpt

Embed Size (px)

DESCRIPTION

2010/10/08 社外合同勉強会

Citation preview

Page 1: 今から始めるGoogle apps scirpt

今から始めるGoogle Apps Script

2010/10/08 @都内某所

Page 2: 今から始めるGoogle apps scirpt

自己紹介• 名前:ikikko• 所属:株式会社 ヌーラボ

Page 3: 今から始めるGoogle apps scirpt

アジェンダ• Google Apps Scriptの概要• 主な機能の説明• 注意事項

ときどきデモを交えます

Page 4: 今から始めるGoogle apps scirpt

Google Apps Scriptの概要

http://www.flickr.com/photos/darrentunnicliff/3371355414/

Page 5: 今から始めるGoogle apps scirpt

Google Apps Scriptとは

• Googleスプレッドシート上で、定型処理を自動化するためのスクリプト機能– Excelのマクロ機能のようなもの– VBAの代わりに、Javascriptで記述

http://code.google.com/intl/en/googleapps/appsscript/

Page 6: 今から始めるGoogle apps scirpt

デモ

http://www.flickr.com/photos/bluesquarething/4285344075/

Hello World

Page 7: 今から始めるGoogle apps scirpt

Hello Worldfunction helloWorld() {

var name = Browser.inputBox(“名前を入力してください”);

// ダイアログで表示Browser.msgBox(“こんにちは、” + name + “ さん”);

}

Page 8: 今から始めるGoogle apps scirpt

Google Apps Scriptの特徴• Webとの親和性が高い

–特に、Googleの他サービスとの連携が豊富– HTTP通信と各種フォーマット・プロトコルのサポート(SOAP・JSON・OAuth)

Page 9: 今から始めるGoogle apps scirpt

Google Apps Scriptの特徴• 実行タイミングの柔軟な制御ができる

–手動実行–イベント駆動

• スクリプトのインストール時• スプレッドシートのオープン時• スプレッドシートの編集時

–定期実行

Page 10: 今から始めるGoogle apps scirpt

機能一覧• Basic Services• Calendar Services• Contacts Services• DocsList Services• Finance Services• Jdbc Services• Language Services• Mail Services• Maps Serivces

• Properties Services• Sites Services• Soap Services• Spreadsheet Services• Ui Services• UrlFetch Services• Utilities Services• Xml Services

Page 11: 今から始めるGoogle apps scirpt

機能一覧(有用そうなもの)• Basic Services• Calendar Services• Contacts Services• DocsList Services• Finance Services• Jdbc Services• Language Services• Mail Services• Maps Serivces

• Properties Services• Sites Services• Soap Services• Spreadsheet Services• Ui Services• UrlFetch Services• Utilities Services• Xml Services

独自のダイアログを作成

キー・値での永続化

HTTP通信を行う

Page 12: 今から始めるGoogle apps scirpt

主な機能の説明

http://www.flickr.com/photos/swisscan/2918682767/

Page 13: 今から始めるGoogle apps scirpt

Spreadsheet Services• スプレッドシートを読み書きする

var name = Browser.inputBox(“名前を入力してください”);

var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();

var sheet = spreadsheet.getSheets()[0];sheet.getRange("A1").setValue(name);

Page 14: 今から始めるGoogle apps scirpt

Mail Services

var address = "[email protected]";var subject = "Mail Servicesのテスト";

var body = "本文";

MailApp.sendEmail(address, subject, body);

• メールを送信する

Page 15: 今から始めるGoogle apps scirpt

UrlFetch Services• HTTP通信を行う

var response = UrlFetchApp.fetch("http://www.nulab.co.jp/");

Browser.msgBox(response.getContentText());

Page 16: 今から始めるGoogle apps scirpt

デモ

http://www.flickr.com/photos/bluesquarething/4285344075/

backlog-template-issue~ Backlogへ課題一括登録 ~

Page 17: 今から始めるGoogle apps scirpt

構成

1. スプレッドシートから登録データ取得2. Backlog APIを用いて、Backlogに課題登録3. Backlogから課題登録後の登録情報を取得4. スプレッドシートに登録結果を追記

http://github.com/ikikko/backlog-template-issue-gas/wiki

Page 18: 今から始めるGoogle apps scirpt

注意事項

http://www.flickr.com/photos/pictureperfectpose/76138988/

Page 19: 今から始めるGoogle apps scirpt

サーバサイドスクリプトブラウザによる差異がないクロスドメイン制約がない

Windowオブジェクトの使用不可• setInterval / setTimeout などDOM Parserの使用不可

Page 20: 今から始めるGoogle apps scirpt

開発環境どこでも開発できる

テストしにくいバージョン管理しにくいモジュール(ファイル)分割しにくい

標準で備わっているスクリプト履歴保存機能

Page 21: 今から始めるGoogle apps scirpt

APIの仕様変更自動で機能拡張されていく

仕様をコントロールできないクリティカルなバグがあっても対応できない(ことがある)

Page 22: 今から始めるGoogle apps scirpt

いきなりサービス停止にはならないかと思います

Page 23: 今から始めるGoogle apps scirpt

ご清聴ありがとうございました