การพัฒนาเว็บแอปด้วย Google Apps Script ร่วมกับ Google Sheet
Kms74 Sep 20, 2022
ขั้นตอน
เตรียมชีตข้อมูล (Database)
เปิดใช้งานโปรเจค Google Apps Script (GAS)
เขียนโค้ด GAS, html
เผยแพร่เว็บแอป
นำเว็บแอปที่เผยแพร่แล้วไปใช้งาน
เตรียมชีตข้อมูล (Database)
ผู้บันทึกได้สร้างแฟ้มข้อมูลในกูลเกิ้ลชีต ตั้งชื่อว่า GAS Database Demo Sheets โดยมีฟิลด์ข้อมูลคร่าว ๆ ไว้ดังรูป ผู้ศึกษาอาจทดลองสร้างตามแบบ หรือจะเปิดเป็นไฟล์ว่าง ๆ ไว้ก่อนก็ได้ เนื่องจากจะยังไม่เชื่อมต่อกับสคริปต์ในบทแนะนำนี้ แต่จะขอแนะนำไว้ก่อน เพราะจะค่อย ๆ แนะนำการพัฒนาสคริปต์ไปทีละขั้น จนสามารถใช้งานบันทึก เพิ่ม แก้ไข ลบ และอ่านข้อมูลในตารางได้จริง ในชีตข้อมูลนี้จะเป็นตารางสำหรับบันทึกข้อมูลลูกค้าเบื้องต้น
ฟิลด์ข้อมูล
id ไว้สำหรับเก็บเลขทะเบียนการบันทึกข้อมูล
CCode ก็คือรหัสลูกค้า (customer_code)
CName ชื่อลูกค้า/บริษัท, ห้าง, ร้าน (customer_name)
CAddress ที่อยู่ลูกค้า (customer_address)
CPhone หมายเลขโทรศัพท์ลูกค้า (customer_phone)
เปิดใช้งานโปรเจค Google Apps Script
เมื่อเตรียมชีตข้อมูลเรียบร้อยแล้ว ก็ได้เวลาสำหรับการเขียนสคริปต์ ทำการเปิดเข้าใช้งาน Google Apps Script Project โดยไปที่เมนู ส่วนขยาย แล้วเลือก Apps Script

ระบบจะพาไปที่หน้า Apps Script Project ผู้บันทึกได้ทำการแก้ไขชื่อโปรเจคเป็น GAS Database Demo เพื่อให้สอดคล้องกับชีตข้อมูล เผื่ออนาคตสร้างชีตฐานข้อมูลอื่น ๆ มาใช้งานอีกจะได้ไม่สับสน 😄
เขียนโค้ด GAS, html
ขั้นต่อมาเป็นการเขียนโค้ด Apps Script ไปที่ไฟล์ code.gs หรือชื่อภาษาไทยว่า โค้ด.gs คืออันเดียวกัน จะเปลี่ยนให้เป็นภาษาอังกฤษก็ได้เพื่อความเรียบร้อย
ลบโค้ดเดิมที่มีอยู่ แล้วเขียนโค้ดนี้ลงไป
code.gs
function doGet(request) {
return HtmlService.createTemplateFromFile('index').evaluate();
}ฟังชั่น doGet() เป็นข้อกำหนดที่ต้องใช้ หากมีการเผยแพร่สคริปต์เป็นเว็บแอป ในตัวอย่างจะทำงานเมื่อมีการส่งคําขอ HTTP GET ไปยังแอป โดยผู้ใช้งาน Apps Script ก็จะเรียกใช้ฟังก์ชัน doGet(request) โดยรับเอาพารามิเตอร์ request ที่ผู้ใช้ส่งเข้ามาในการประมวลคำสั่งว่าจะให้ทำอะไร จากนั้นจึงส่งกลับค่า (return) ออกไปเป็น Html Service ทาง index.html
index.html
เพิ่มไฟล์ index.html เข้าในโปรเจค ในการทดสอบเราจะใช้โค้ดเริ่มต้น ที่โปรเจคสร้างให้อัตโนมัติโดยยังไม่ต้องไปแก้ไขอะไร แค่เพิ่มบรรทัดต่อไปนี้ ลงไปในส่วนแท็ก <body> </body> แบบนี้
...
<body>
<h1>Hello, Google Apps Script</h1>
</body>
...เสร็จแล้วกดบันทึกเพื่อไปสู่ขั้นต่อไป
นำเว็บแอปที่เผยแพร่แล้วไปใช้งาน
เมื่อพร้อมแล้ว เรามาทำการเผยแพร่สคริปต์ออกเป็นเว็บแอป เพื่อให้สามารถเข้าถึงได้ผ่านทางเว็บเพจ
ขั้นตอนการเผยแพร่เว็บแอป
กดปุ่ม
การทำให้ใช้งานได้ที่มุมขวาบนในหน้าต่างโปรเจคApps Scriptเลือกหัวข้อการทำให้ใช้งานได้รายการใหม่
การกำหนดค่า เลือกประเภทเป็น
เว็บแอป
กำหนดค่า ดังนี้
คำอธิบายใหม่(จะเปลี่ยนหรือไม่ก็ได้) ส่วนผู้มีสิทธิ์เข้าถึงให้เลือกเป็นทุกคนเสร็จแล้วกดปุ่มการทำให้ใช้งานได้

กดปุ่ม
ให้สิทธิ์เข้าถึงกดเลย

เลือกบัญชีอีเมลที่เป็นของเรา

เว็บจะเตือนว่า บัญชีอีเมลของเรากำลังจะเข้าถึงเว็บที่อาจมีความเสี่ยง กดปุ่ม
Advanced

กด
Go to <ชื่อโปรเจค> (unsafe)เพื่ออนุญาตให้เข้าสู่เว็บที่อาจจะมีความเสี่ยงนี้ได้ (สคริปต์ของเราเองฉะนั้นหายห่วง)

เว็บจะให้เรายืนยันสิทธิ์ในการเข้าถึงต่าง ๆ เหล่านี้ กด
Allow

จากนั้น เว็บจะสรุปให้ทราบว่า เราได้เผยแพร่เว็บแอปเป็นที่เรียบร้อย สังเกตจะเป็น
เวอร์ชั่น 1กดปุ่มคัดลอก เพื่อนำลิงค์เว็บแอปของเราไปใช้ในการเข้าใช้งานเว็บ จากนั้นกดปุ่มเสร็จสิ้นเป็นอันเสร็จ

นำลิงค์ที่คัดลอกมาก่อนหน้านี้ ไปวางลงที่ช่อง Address ของบราวเซอร์ กด
Enterถ้าไม่ได้ทำขั้นตอนไหนผิดไป ก็จะต้องปรากฏหน้าเว็บHello, Google Apps Scriptดังรูป 🎉

แล้วจะใช้ประโยชน์อะไรจากเว็บแอป?
Last updated