今から始めるGoogle apps scirpt

4,180 views

Published on

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

Published in: Technology
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
4,180
On SlideShare
0
From Embeds
0
Number of Embeds
359
Actions
Shares
0
Downloads
5
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide

今から始めるGoogle apps scirpt

  1. 1. 今から始める Google Apps Script 2010/10/08 @都内某所
  2. 2. 自己紹介 • 名前:ikikko • 所属:株式会社 ヌーラボ
  3. 3. アジェンダ • Google Apps Scriptの概要 • 主な機能の説明 • 注意事項 ときどきデモを交えます
  4. 4. Google Apps Scriptの概要 http://www.flickr.com/photos/darrentunnicliff/3371355414/
  5. 5. Google Apps Scriptとは • Googleスプレッドシート上で、定型 処理を自動化するためのスクリプト機能 – Excelのマクロ機能のようなもの – VBAの代わりに、Javascriptで記述 http://code.google.com/intl/en/googleapps/appsscript/
  6. 6. デモ Hello World http://www.flickr.com/photos/bluesquarething/4285344075/
  7. 7. Hello World function helloWorld() { var name = Browser.inputBox(“名前を入力してください”); // ダイアログで表示 Browser.msgBox(“こんにちは、” + name + “ さん”); }
  8. 8. Google Apps Scriptの特徴 • Webとの親和性が高い – 特に、Googleの他サービスとの連携が豊富 – HTTP通信と各種フォーマット・プロトコル のサポート(SOAP・JSON・OAuth)
  9. 9. Google Apps Scriptの特徴 • 実行タイミングの柔軟な制御ができる – 手動実行 – イベント駆動 • スクリプトのインストール時 • スプレッドシートのオープン時 • スプレッドシートの編集時 – 定期実行
  10. 10. 機能一覧 • Basic Services • Properties Services • Calendar Services • Sites Services • Contacts Services • Soap Services • DocsList Services • Spreadsheet Services • Finance Services • Ui Services • Jdbc Services • UrlFetch Services • Language Services • Utilities Services • Mail Services • Xml Services • Maps Serivces
  11. 11. 機能一覧(有用そうなもの) キー・値での • Basic Services 永続化 • Properties Services • Calendar Services • Sites Services • Contacts Services • Soap Services • DocsList Services • Spreadsheet Services 独自のダイア • Finance ログを作成 Services • Ui Services • Jdbc Services • UrlFetch Services • Language Services • Utilities Services HTTP通信を行う • Mail Services • Xml Services • Maps Serivces
  12. 12. 主な機能の説明 http://www.flickr.com/photos/swisscan/2918682767/
  13. 13. Spreadsheet Services • スプレッドシートを読み書きする var name = Browser.inputBox(“名前を入力してください”); var spreadsheet = SpreadsheetApp.getActiveSpreadsheet(); var sheet = spreadsheet.getSheets()[0]; sheet.getRange("A1").setValue(name);
  14. 14. Mail Services • メールを送信する var address = "nakamura@nulab.co.jp"; var subject = "Mail Servicesのテスト"; var body = "本文"; MailApp.sendEmail(address, subject, body);
  15. 15. UrlFetch Services • HTTP通信を行う var response = UrlFetchApp.fetch("http://www.nulab.co.jp/"); Browser.msgBox(response.getContentText());
  16. 16. デモ backlog-template-issue ~ Backlogへ課題一括登録 ~ http://www.flickr.com/photos/bluesquarething/4285344075/
  17. 17. 構成 1. スプレッドシートから登録データ取得 2. Backlog APIを用いて、Backlogに課題登録 3. Backlogから課題登録後の登録情報を取得 4. スプレッドシートに登録結果を追記 http://github.com/ikikko/backlog-template-issue-gas/wiki
  18. 18. 注意事項 http://www.flickr.com/photos/pictureperfectpose/76138988/
  19. 19. サーバサイドスクリプト ブラウザによる差異がない クロスドメイン制約がない Windowオブジェクトの使用不可 • setInterval / setTimeout など DOM Parserの使用不可
  20. 20. 開発環境 どこでも開発できる 標準で備わっている スクリプト履歴保存機能 テストしにくい バージョン管理しにくい モジュール(ファイル) 分割しにくい
  21. 21. APIの仕様変更 自動で機能拡張されていく 仕様をコントロールできない クリティカルなバグがあっても 対応できない(ことがある)
  22. 22. いきなりサービス停止には ならないかと思います
  23. 23. ご清聴 ありがとうございました

×