상단

Google Apps중 JavaScript와 같이 사용할 수 있는 Google Apps Script를 정리 합니다.

 

Google Apps Script 개요


  • Google Apps Script - All Services
    {|cellspacing="0" cellpadding="2" border="1" width="100%" bgcolor="#FFFFFF" align="center" 
    |- 
    |width="25%" align="center" valign="middle" style="background-color:#eee;"|Base Services 
    |width="75%"|

  • access to user, session and browser information
    align="center" valign="middle" style="background-color:#eee;"
  • Gmail

  • Contacts
    align="center" valign="middle" style="background-color:#eee;"
  • Calendar, Calendar events
    align="center" valign="middle" style="background-color:#eee;"
  • DocsList, File, Folder

  • Google Docs - Spreadsheet
    align="center" valign="middle" style="background-color:#eee;"
  • Google Sites
    align="center" valign="middle" style="background-color:#eee;"
    -
    align="center" valign="middle" style="background-color:#eee;"
  • 사용자와 스크립트에 할당된 property storage
    align="center" valign="middle" style="background-color:#eee;"
  • User Inteface
    align="center" valign="middle" style="background-color:#eee;"
  • Fetch resources and communicate with other hosts over the Internet

  • string encoding, decoding and date formatting
    align="center" valign="middle" style="background-color:#eee;"
  • Web Services via Soap

  • XML parsing and navigation capabilities
    align="center" valign="middle" style="background-color:#eee;"
    -
    align="center" valign="middle" style="background-color:#eee;"
  • JDBC 사용

  • Cloud database 서비스 구축 가능
    align="center" valign="middle" style="background-color:#eee;"
  • 번역
    align="center" valign="middle" style="background-color:#eee;"
  • Google Maps
    align="center" valign="middle" style="background-color:#eee;"
  • Google Finance
    |}

 

Google Apps Script 사용 위치


  • Google Apps Script 실행 방법의 종류

    • 자동 실행 : 페이지, 문서 등이 로딩되면 자동으로 실행

    • 웹서비스 방식 : URL 호출을 통하여 실행

    • 사용자 선택 방식 : 사용자의 행동에 의해 실행

    • 배치 방식 : 주기적으로 반복 실행

    • 강제 실행 방식 : 권한을 가진 사용자가 강제로 실행

     
  • Google Docs - Spreadsheet

    • Tools -> Scripts -> Script editor... : Google apps script 편집창이 표시됨

    • Insert -> Script... : Script Gallery에서 스크립트 삽입

    • Tools -> Scripts -> Insert... : Script Gallery에서 스크립트 삽입

    • Tools -> Scripts -> Manage... -> Run (강제 실행 방식)

    • 스프레드쉬트에서 사용자 정의 함수로서 사용 (자동 실행)

    • 스프레드쉬트 메뉴로 추가하여 사용 (사용자 선택 방식), Script를 사용하여 메뉴 추가

     
  • Google Sites

    • "Google 사이트 도구 - 관리" -> 사이트 콘텐츠 -> 애플리케이션 스크립트 : Google apps script 편집창이 표시됨

    • 페이지 편집 화면에서

      • 삽입 -> 링크 -> 애플리케이션 스크립트 (사용자 선택 방식)

      • 삽입 -> Apps Script Gadget (자동 실행), 매뉴얼에는 표시되어 있으나 실제로는 메뉴가 없음

     
  • Google apps script 편집창에서

    • 파일 -> 갤러리에서 스크립트 추가 : Script Gallery에서 스크립트 삽입

    • 실행 (강제 실행 방식)

    • 공유 -> 서비스로 게시... (웹서비스 방식)

      • User Interface as a Service : Ui Services를 사용하여 화면을 구성하고 이를 Sites 등에 표시할 수 있음

    • 트리거 -> Current script's triggers...

      • 주, 일, 시간, 분 단위로 반복되는 작업 지정 (배치 방식)

      • Spreadsheet의 On open, On edit, On form submit시 실행 (자동 실행)

    • 보기 -> 로그...

 
 Logger.log("Updating symbol: " + symbol);
 
  • Event 방식으로 Google Apps Script 실행

    • onInstall() : Script Gallery에서 설치될 때

    • onOpen() : Spreadsheet가 열릴 때

    • onEdit() : Spreadsheet가 편집 되었을 때

     
  • "On form submit" 함수 사례

 
 function onFormSubmit(e) {
   var timestamp = e.values[0](0.md);
   var name = e.values[1](1.md);
   var age = e.values[2](2.md);
   var submitter = e.namedValues["Username"]("Username".md);
 
   MailApp.sendEmail("email_username", "form submitted",
                   name + ", age " + age + " submitted by " + submitter + " on " + timestamp + ". ");
 }
 

Google Apps Script Service


Base Services

Calendar Services

Contacts Services

DocsList Services

 
 
 var files = DocsList.find(searchTerm);
 files[i](i.md).getName();
 files[i](i.md).getType();   //--- document, spreadsheet, presentation
 

Finance Services

Jdbc Services

Language Services

Mail Services

 MailApp.sendEmail(emailAddress, subject, message);
 

Maps Services

Properties Services

Sites Services

Soap Services

Spreadsheet Services

 function example() {
   var ss = SpreadsheetApp.getActiveSpreadsheet();
   var sheet = ss.getSheets()[0](0.md);
 
   var myValue = Browser.inputBox("Enter a number"); 
   sheet.getRange("A1").setValue("Number entered:");
   var b1Range = sheet.getRange("B1");
   b1Range.setValue(myValue);
 
   var valueToShow = b1Range.getValue() + 1;
   Browser.msgBox("The value you entered plus one is: " + valueToShow);
 }
 
 if (typeof inNum != "number") {
    return("error: input must be a number");
  }
 
  • Spreadsheet 메뉴 추가

 
 function onOpen() {
   var ss = SpreadsheetApp.getActiveSpreadsheet();
   var menuEntries = [ {name: "Say Hi", functionName: "sayHi"},
                       {name: "Say Hello", functionName: "sayHello"} ];
   ss.addMenu("Tutorial", menuEntries);
 }
 

Ui Services

  • User Interface as a Service

    • doGet(e), doPost(e)

    • Google Web Toolkit (GWT)를 사용하여 화면이 구성됨

 
 function doGet(e) {
   var app = UiApp.createApplication();
   return app;
 }
 
 var myapp = UiApp.createApplication().setTitle('Here is the title bar').setHeight(50).setWidth(100);
 var mybutton = myapp.createButton('Press Me');
 
 var mypanel = myapp.createVerticalPanel();
 mypanel.add(mybutton);
 myapp.add(mypanel);
 mydoc.show(myapp);
 

UrlFetch Services

 var response = UrlFetchApp.fetch(url, {method:'post', payload:payload, contentType:"application/x-www-form-urlencoded"});
 if (response.getResponseCode() == 200) {
   return JSON.parse(response.getContentText());
 }
 

Utilities Services

Xml Services

 

참고 문헌


 
 

분류: Cloud 
Google

최종 수정일: 2024-09-30 12:26:18

이전글 :
다음글 :