1. 首頁
  2. »
  3. 網頁開發
  4. »
  5. 網頁設計
  6. »
  7. [教學] 利用 Google Script 查詢 Google Sheet 試算表的訂單資料 (查詢篇)

[教學] 利用 Google Script 查詢 Google Sheet 試算表的訂單資料 (查詢篇)

2020/03/30

梅問題-[教學] 利用 Google Script查詢Google Sheet試算表的訂單資料(查詢篇)
  先前梅干分享過,利用Google Script,將Google Sheet試算表,變成一個雲端資料庫來使用,並可將資料以GET或POST的方式寫入,由於是透過Google Script因此自由度相當的高,也不用受限於Google表單,甚至也不用逐一的去尋找每個欄位名稱,同時當資料寫入後,也可回傳完成的資訊,當接受到完成訊息後,可再作後續相關的處理,雖然剛開始不熟悉,會覺得有些繁鎖,但熟悉後,會愛上Google Script。

  竟然是資料庫,當然可寫入也要可查詢,因此接下來梅干將分享,如何透過Google Script,來查詢Google Sheet試算表中的資料,讓消費者可查詢訂單的相關資料,因此要如何做,現在就一塊來看看吧!


Step1
首頁,開啟要查詢的Google試算表,接著選擇 工具 / 指令碼編輯器
梅問題-[教學] 利用 Google Script查詢Google Sheet試算表的訂單資料(查詢篇)
Step2
將下方的語法貼上後,並修改試算表的ID與頁籤名稱後,接著就是要查詢的欄位序號,以梅干這個試算表來說,因為是以訂單編號作為查詢欄位,所以它的欄位序號就為1,若要以姓名的話,就得改為data[i][3],依此類推。
梅問題-[教學] 利用 Google Script查詢Google Sheet試算表的訂單資料(查詢篇)

function doGet(e) {
 /*查詢表單*/
 var params = e.parameter;
 var type = params.type;
 var time = params.order_time;
 var no = params.order_no;
 var pay = params.order_pay;
 var SpreadsheetAppId = "試算表ID";
 var getSheetByName ="試算表頁籤名稱";
 if(type == "select"){
  var SpreadSheet = SpreadsheetApp.openById(SpreadsheetAppId);
  var Sheet = SpreadSheet.getSheetByName(getSheetByName);
  var LastRow = Sheet.getLastRow();
  var data = [];
  for(i=0; i<LastRow; i++){
   data[i] = [];
  }
 data = Sheet.getRange(1,1,LastRow,8).getValues();
 var time,pay,name;
 var output=[];
 for(i=0; i<LastRow; i++){
  if(data[i][1]==no){ //查詢的欄位序號
   output.push({output:data[i],index:i});
  }//if
 }//for
  return ContentService.createTextOutput(JSON.stringify(output))
  .setMimeType(ContentService.MimeType.JSON);
 }//select
}//doGet


Step3
設定好後,再按 發布部署為網路應用程式
梅問題-[教學] 利用 Google Script查詢Google Sheet試算表的訂單資料(查詢篇)
Step4
接著將權限設為任何人。
梅問題-[教學] 利用 Google Script查詢Google Sheet試算表的訂單資料(查詢篇)
Step5
再按核對權限,而過程會與先前的寫入篇一樣。
梅問題-[教學] 利用 Google Script查詢Google Sheet試算表的訂單資料(查詢篇)
Step6
再把權限設定完畢後,就會看到一串網址,而這網址就是串接的API網址。
梅問題-[教學] 利用 Google Script查詢Google Sheet試算表的訂單資料(查詢篇)
Step7
這時可用Postman工具,先進行測試一下,首先上方先貼上剛的API網址,下方再貼入參數。
梅問題-[教學] 利用 Google Script查詢Google Sheet試算表的訂單資料(查詢篇)
Step8
再按下Send後,就會以json的格式作顯示,這時各位就可依自己的需求,處理所需的資料欄位。
梅問題-[教學] 利用 Google Script查詢Google Sheet試算表的訂單資料(查詢篇)
Step9
在梅干的範例頁面中,在訂完畢後,就會看到訂單查詢的輸入框。
梅問題-[教學] 利用 Google Script查詢Google Sheet試算表的訂單資料(查詢篇)
Step10
當按下送出後,隨即就會帶出訂單的狀態,因此是不是覺得超方便的呀!!如此一來Google試算表,不但可寫入,還可查詢,就跟在使用資料庫一樣,而有需要的朋友,不妨也可試試看囉!
梅問題-[教學] 利用 Google Script查詢Google Sheet試算表的訂單資料(查詢篇)
測試平台:https://demo.minwt.com.tw/gformpay