iInfo 資訊交流: Google Apps Script 入門到進階(1) --- Library建立與引用設定

最新消息

[公告2014/05/30] 如有需要將部落格中,任何一篇文章的程式碼使用在商業用途,請與我聯繫。

[公告2015/04/26] Line版的 iInfo程式與投資應用 群組已上線想加入的朋友們,請先查看 "入群須知" 再與我聯繫 Line : aminwhite5168,加入請告知身分與回答 "入群須知" 的問題。

[公告2017/02/20] 近來有網友詢問 MultiCharts 與 Excel 畫冰火能量圖 (8)MultiCharts 與Excel 畫冰火能量圖(11) --- 更名「台股儀表板」 文章中教學檔案取得方式,有興趣的朋友可透過 Line了解詳情 (請勿以為是免費分享),Line : aminwhite5168。

[公告2018/04/22] 台北 Python + Excel VBA 金融資訊爬蟲課程,課程如網頁內容 金融資訊爬蟲班:台北班 Python 金融資訊爬蟲、EXCEL VBA 金融資訊爬蟲,請盡快把握機會,歡迎券商、大專院校邀約講座。

[公告2018/06/01] 台指能量儀表板教學課程,課程如網頁內容 台北班:台指能量儀表板

[公告2018/10/02] 期交所於2018/10/03進行網址改版,若有參考部落格與期交所相關文章,請各位讀者自行修改。

2017年2月24日 星期五

Google Apps Script 入門到進階(1) --- Library建立與引用設定

Google Apps Script是Google推出的應用服務解決方案,基本上是以JavaScript為Base,熟悉JavaScript的朋友應該很快就可以上手了,今天就來介紹如何使用Google Apps Script建立一個Library。
Step 1. 在Google雲端硬碟上分別建立加法與乘法物件的gs檔案當作 Library,如下程式碼。

A.gs
function Test_A() {  
}

Test_A.prototype.add = function (a, b){
  Logger.log("Hello World.");
  this.a = a;
  this.b = b;
  return a+b;
}
C.gs
function Test_C() {  
}

Test_C.prototype.multiply = function(a, b) {
  this.a = a;
  this.b = b;
  return a*b;
}
分別將A.gs、C.gs發佈為「佈署為網路應用程式」。

「專案版本」選擇「新增」,「具有應用程式存取權的使用者」中三個項目皆可任選,筆者選擇「任何人,甚至是匿名使用者」,這可以在未來提供可其他人使用。

Step 2. 建立B.gs檔案,引用C.gs中的乘法物件來編寫函數。
(1) 先取得C.gs專案金鑰。


(2) 將C.gs專案金鑰,填到B.gs程式庫中。



(3) 輸入以下程式碼到B.gs檔案中,這樣就完成引用Library的操作。
function Test_B(a, b) {
  Logger.log("Hello World C");
  var obj= new C.Test_C();  
  Logger.log(obj.multiply(a, b));
  Logger.log("a = " + obj.a);
  Logger.log("b = " + obj.b);
} 
Step 3. 同樣的作法,將B.gs檔案發佈為「佈署為網路應用程式」,並取得A.gs、B.gs專案金鑰。
建立Test.gs檔案,填入A.gs、B.gs專案金鑰到程式庫,並輸入以下程式碼。

function Test() {  
  var Testadd = new a.Test_A();
  Logger.log(Testadd.add(1,5));
  Logger.log("Testadd.a = " + Testadd.a);
  Logger.log("Testadd.b = " + Testadd.b);
  
  Logger.log("\n\n");
  
  b.Test_B(5,9);
}
Step 4. 執行Test.gs檔案中的Test函數,並觀察輸出結果。



依據以上4個步驟就可完成 Library建立與引用設定。
參考資料: