[Workshop] สร้าง History Log แอป ฯ บันทึกการแก้ไขข้อมูลด้วย AppSheet

บทความนี้เป็นบทความประกอบ Video สร้าง History Log แอป ฯ บันทึกการแก้ไขข้อมูลด้วย AppSheet

AppSheet คือเครื่องมือสร้าง Application สำหรับใช้ภายในองค์กรโดยไม่ต้องเขียนโค้ด โดยมีจุดเด่นที่เก็บข้อมูลบน Google Sheet และรองรับการใช้งาน Service ของ Google เช่นส่งอีเมล สร้างนัดหมาย เป็นต้น อ่านบทความแนะนำ AppSheet ได้ที่นี่

ตัวอย่าง History Log แอป ฯ บันทึกการแก้ไขข้อมูล
ตัวอย่าง History Log แอป ฯ บันทึกการแก้ไขข้อมูล

ใน Workshop จะสอนทำ Application ด้วย AppSheet โดยเป็นแอป ฯ ที่สามารถบันทึกข้อมูลการเปลี่ยนแปลงย้อนหลังได้ เหมาะกับกับการทำ Audit หรือต้องการเก็บประวัติการแก้ไขข้อมูล

Template AppSheet ของ Project นี้

ขั้นตอนการลงมือทำ / How to

ขั้นตอนในการลงมือทำไล่เป็นขั้นตอนอย่างละเอียด โดยหากทำตามขั้นตอนเหล่านี้จะสามารถเห็นภาพรวมของการพัฒนาได้ดียิ่งขึ้น

เตรียมไฟล์ Google Sheet

เตรียมไฟล์ Google Sheet สำหรับทำ Project AppSheet
เตรียมไฟล์ Google Sheet สำหรับทำ Project AppSheet

สร้างไฟล์ Google Sheet ใหม่ โดยใส่รายละเอียดดังนี้

File: Product Log

สร้าง Sheet “data”

Sheet: data

ตัวอย่างข้อมูล

data_idproduct_namepricecolordate_timeremarks
24129d10Apple13Orange6/1/2025 18:02:58

สร้าง Sheet “log”

Sheet: log

ตัวอย่างข้อมูล

history_iddata_idproduct_namepricecolordate_timeremarks
2bc1b0ec24129d10Apple12Orange6/1/2025 18:02:43ปรับราคาเป็น 12.00 USD

ดูตัวอย่างไฟล์ Google Sheet

เชื่อมต่อ Google Sheet เข้าไปใน AppSheet

เชื่อมต่อ AppSheet ด้วย Extension → AppSheet → Create an app

เชื่อมต่อ AppSheet ด้วย Extension → AppSheet → Create an app

ดึงข้อมูล Table มาให้ครบ, ปรับ Data Type และ ค่าเริ่มต้น (Initial value) ให้เหมือนกัน

ดึงข้อมูล Table ส่วนที่เหลือ และปรับ Data Type กับ ค่าเริ่มต้น (Initial value) ตามรายละเอียดดังนี้

ตั้งค่า Table “data”

Table: data

การตั้งค่าข้อมูลใน Table data
การตั้งค่าข้อมูลใน Table data
NAMETYPEINITIAL VALUEFORMULA
data_id (KEY)TextUNIQUEID()
product_nameName
pricePrice
colorColor
date_timeDateTimeNOW()
remarksText

ตั้งค่า Table “log”

Table: log

การตั้งค่าข้อมูลใน Table log
การตั้งค่าข้อมูลใน Table log
NAMETYPEINITIAL VALUE
log_id (KEY)TextUNIQUEID()
data_idText
product_nameName
pricePrice
colorColor
date_timeDateTime
remarksText

เชื่อมต่อ Table “log” กับ Table “data” ด้วยการ Reference จาก Field “data_id”

เชื่อมต่อ Table “log” กับ Table “data” ด้วยการ Reference จาก Field “data_id”

ไปที่ Field data_id ของ Table log โดยตั้งค่าดังนี้

  • ปรับ Type เป็น Ref
  • เลือก Source table เป็น data
  • เลือก Is a part of (เพื่อให้ถ้า Row ใน Table data ถูกลบ Table log จะถูกลบตามด้วย)

สนใจเรียน AppSheet กับเรา ?

ไม่ต้องเสียเวลาเรียนรู้ AppSheet ด้วยตัวเอง เพียงแค่เรียนคอร์ส AppSheet Intensive Course ผ่าน Facebook Group กับเรา พร้อมให้คำปรึกษาหลังเรียน

สร้าง Action ที่จะ Copy ข้อมูลจาก Table “data” ไปที่ Table “log”

สร้าง Action ที่จะ Copy ข้อมูลจาก Table “data” ไปที่ Table “log”

สร้าง Action ใหม่ชื่อ Create log โดยมีรายละเอียดดังนี้

  • เลือก Record of this table เป็น data
  • เลือก Do this เป็น Data: add a new row to another table using values from this row
  • เลือก Table to add to เป็น log

ตั้งค่า Column ให้เอาข้อมูลจาก Table data มาใช้ดังนี้

log_idUNIQUEID()
data_id[date_id]
product_name[product_name]
price[price]
color[color]
date_time[date_time]
remarks[remarks]

เมื่อสร้าง Action เสร็จแล้ว ให้ลองกดดู สังเกตว่าระบบจะ Copy ค่าจาก Table data มาใส่ให้ใน Table log (เป็นการก็อปปี้ข้อมูล)

สร้าง Bot ที่จะทำ Action นี้เมื่อมีการ Add หรือ Update ข้อมูลที่ Table “data”

ต่อไปเราจะทำให้ระบบนี้ทำเองอัติโนมัติทุกครั้งที่มีการสร้างหรือแก้ไขข้อมูลใน Table data ผ่านการสร้าง Bot

สร้าง Bot ชื่อ Create log โดยตั้งค่าดังนี้

ตั้งค่า Event ใน Bot

การตั้งค่า EVENT ใน Bot
การตั้งค่า EVENT ใน Bot
  • เลือก Event source เป็น App
  • เลือก Table เป็น data
  • เลือก Data change type เป็น Adds, Updates

ตั้งค่า Process ใน Bot

การตั้งค่า PROCESS ใน Bot
การตั้งค่า PROCESS ใน Bot
  • เลือก Run a data action
  • เลือก Custom action เป็น Create log

จากนั้นก็ลองทดลองเพิ่มหรือแก้ไขข้อมูล จะพบว่าระบบสร้าง Log ให้อัติโนมัติ จากนั้นค่อย Hide Action นี้เพื่อให้ระบบทำงานได้จาก Bot อย่างเดียวเท่านั้น