Jabphap Team Tasks คู่มือการติดตั้ง
⏱ ติดตั้งประมาณ 10 นาที · ไม่ต้องเขียนโค้ด

ติดตั้ง Jabphap Team Tasks บน Google ของคุณเอง

ระบบจัดการงานและโปรเจกต์ของทีม ทำงานบน Google Sheets + Google Apps Script ในบัญชี Google ของคุณเอง ข้อมูลงานทั้งหมดอยู่ใน Drive ของคุณ ไม่มีค่าบริการรายเดือนต่อผู้ใช้

👤บัญชี GoogleGmail หรือ Google Workspace 1 บัญชี (เป็นเจ้าของระบบ)
💻คอมพิวเตอร์ใช้ตอนติดตั้งครั้งแรก หลังจากนั้นใช้มือถือได้
📄ไฟล์ 3 ไฟล์Code.gs · Index.html · appsscript.json
💬LINE OA (ไม่บังคับ)ถ้าต้องการแจ้งงานเข้ากลุ่ม LINE ของทีม
📑 สารบัญ
ส่วนที่ 1

ติดตั้งบน Google

ทำครั้งเดียวบนคอมพิวเตอร์ ประมาณ 10 นาที

1

เริ่มต้น

สร้างไฟล์ Google Sheets ใหม่

ไฟล์นี้คือ “ฐานข้อมูล” ของระบบ เก็บโปรเจกต์ งาน เช็กลิสต์ ความคิดเห็น ประวัติการเปลี่ยนแปลง สมาชิก และการตั้งค่า

  1. เข้า sheets.new ด้วยบัญชี Google ที่จะเป็นเจ้าของระบบ (แนะนำบัญชีของบริษัท ไม่ใช่บัญชีส่วนตัวของพนักงาน)
  2. คลิกชื่อไฟล์มุมซ้ายบน ตั้งชื่อ เช่น งานทีมของเรา
💡 ใช้ไฟล์ที่มีอยู่แล้วได้ไหม

ได้ แต่แนะนำไฟล์ใหม่เปล่า ๆ ระบบจะสร้างชีต Settings Users Projects Tasks Comments Activityให้เอง และจะไม่แตะชีตอื่นที่มีอยู่

2

ใส่ระบบ

วางไฟล์ Code.gs, Index.html และ appsscript.json

  1. ในไฟล์ชีต ไปที่เมนู ส่วนขยาย›Apps Script (Extensions › Apps Script)
  2. ตั้งชื่อโปรเจกต์มุมซ้ายบนเป็น Jabphap Team Tasks
  3. เปิดไฟล์ Code.gs ที่มีอยู่ กด Ctrl+A ลบโค้ดเดิม แล้ววางเนื้อหาจากไฟล์ Code.gs ที่ได้รับทั้งไฟล์
  4. กดปุ่ม + ข้างคำว่า “ไฟล์” › HTML ตั้งชื่อว่า Index (ตัว I ใหญ่ ไม่ต้องพิมพ์ .html) ลบเนื้อหาเดิม แล้ววางเนื้อหาจาก Index.html
  5. ไปที่ ⚙ การตั้งค่าโปรเจกต์ ติ๊ก แสดงไฟล์ Manifest “appsscript.json” ในเครื่องมือแก้ไข กลับมาที่หน้าแก้ไข เปิด appsscript.json แล้ววางเนื้อหาจากไฟล์ที่ได้รับแทนทั้งหมด
  6. กด Ctrl+S บันทึกทุกไฟล์
✓ ตรวจชื่อไฟล์

ต้องมี 3 ไฟล์: Code.gs, Index.html, appsscript.json — ชื่อ Index ต้องตรงทุกตัวอักษร

⚠ วางให้ครบทั้งไฟล์

ถ้าคัดลอกขาดท้ายไฟล์ จะเกิดข้อผิดพลาด “SyntaxError” ตอนบันทึก ให้คัดลอกใหม่ทั้งไฟล์

appsscript.json ทำหน้าที่อะไร

กำหนดเขตเวลา Asia/Bangkok (กำหนดส่งและสรุปประจำวันใช้เวลาไทย) กำหนดสิทธิ์ที่ระบบขอใช้ให้น้อยที่สุด (ชีต, เมนูในชีต, ทริกเกอร์, ส่งอีเมล, เรียก LINE API) และตั้งค่าเว็บแอปให้ทำงานในนามเจ้าของ เข้าใช้ผ่านลิงก์โดยล็อกอินด้วย PIN ภายในแอป

3

สร้างฐานข้อมูล

รันฟังก์ชัน setup

  1. ที่แถบเครื่องมือด้านบนของหน้าแก้ไขโค้ด เลือกฟังก์ชัน setup ในช่องรายการฟังก์ชัน
  2. กด ▶ เรียกใช้ (Run) — ครั้งแรก Google จะขออนุญาตสิทธิ์ ทำตามขั้นตอนที่ 4
  3. รอจนบันทึกการดำเนินการขึ้นว่า “ติดตั้ง Jabphap Team Tasks เรียบร้อย”
สร้างชีต6 ชีตพร้อมหัวตาราง

Settings · Users · Projects · Tasks · Comments · Activity

ข้อมูลตัวอย่างทีมครีเอทีฟจำลอง

สมาชิก 6 คน โปรเจกต์ 5 โปรเจกต์ งาน 26 งาน พร้อมเช็กลิสต์และความคิดเห็น

ทริกเกอร์สรุปงานทุกเช้า

ตั้งทริกเกอร์รายวัน 08:00 ส่งสรุปงานใกล้ถึงกำหนด (ปิดได้ในหน้าตั้งค่า)

หลังจากนี้ เมื่อเปิดไฟล์ชีตจะมีเมนู 🗂️ Team Tasks บนแถบเมนู ใช้ซ่อมฐานข้อมูล (รัน setup ซ้ำได้ ไม่ลบข้อมูลเดิม) แสดงลิงก์เว็บแอป รีเซ็ต PIN ผู้ดูแล และล้างข้อมูลตัวอย่าง

4

ความปลอดภัย

อนุญาตสิทธิ์ให้สคริปต์

  1. หน้าต่าง “ต้องมีการให้สิทธิ์” กด ตรวจสอบสิทธิ์ แล้วเลือกบัญชี Google ของคุณ
  2. ถ้าเจอหน้า “Google ยังไม่ได้ยืนยันแอปนี้” กด ขั้นสูง › ไปที่ Jabphap Team Tasks (ไม่ปลอดภัย) — เป็นข้อความปกติของสคริปต์ที่คุณติดตั้งเอง
  3. ตรวจรายการสิทธิ์ แล้วกด อนุญาต จากนั้นกลับไปรัน setup อีกครั้งถ้ายังไม่ขึ้นข้อความติดตั้งเรียบร้อย
หน้าต่างขออนุญาตสิทธิ์ของ Google Apps Script
หน้าต่างขอสิทธิ์ — กด “ตรวจสอบสิทธิ์” แล้วเลือกบัญชี (ชื่อโปรเจกต์ในหน้าต่างของคุณจะเป็น Jabphap Team Tasks)
หน้าเตือน Google ยังไม่ได้ยืนยันแอป
คลิก “ขั้นสูง” แล้วเลือก “ไปที่ … (ไม่ปลอดภัย)” เพื่อดำเนินการต่อ
สิทธิ์ที่ขอใช้ทำอะไร
ดู แก้ไข สร้าง สเปรดชีตอ่าน/เขียนโปรเจกต์ งาน ความคิดเห็น ในไฟล์ชีตของคุณ
แสดงเนื้อหาในแอป Googleเมนู 🗂️ Team Tasks บนไฟล์ชีต
จัดการทริกเกอร์ตั้งเวลาส่งสรุปงานประจำวัน
ส่งอีเมลในนามคุณแจ้งเมื่อถูกมอบหมายงาน ถูกแท็ก และสรุปงานรายวัน
เชื่อมต่อบริการภายนอกส่งข้อความเข้า LINE ผ่าน LINE Messaging API (ใช้เมื่อเปิดใช้เท่านั้น)
5

เปิดให้ทีมใช้

เผยแพร่เป็นเว็บแอป

  1. มุมขวาบนของหน้าแก้ไขโค้ด กด การทำให้ใช้งานได้›การทำให้ใช้งานได้รายการใหม่ (Deploy › New deployment)
  2. กดรูปเฟือง ⚙ ข้าง “เลือกประเภท” แล้วเลือก เว็บแอป
  3. ตั้งค่า: เรียกใช้ในฐานะ = ฉัน (อีเมลของคุณ) · ผู้ที่มีสิทธิ์เข้าถึง = ทุกคน แล้วกด ทำให้ใช้งานได้
  4. คัดลอก URL ของเว็บแอป (ลงท้ายด้วย /exec) ส่งให้ผู้ใช้ทุกคน บันทึกเป็นบุ๊กมาร์กหรือ “เพิ่มไปยังหน้าจอหลัก” บนมือถือ
เมนูการทำให้ใช้งานได้รายการใหม่
เมนู Deploy › New deployment มุมขวาบน
เลือกประเภทการทำให้ใช้งานได้เป็นเว็บแอป
กดรูปเฟืองแล้วเลือก “เว็บแอป”
ตั้งค่าเว็บแอป เรียกใช้ในฐานะฉัน ทุกคนเข้าถึงได้
เรียกใช้ในฐานะ “ฉัน” และผู้มีสิทธิ์เข้าถึง “ทุกคน” — ผู้ใช้ไม่ต้องมีบัญชี Google แต่ต้องล็อกอินด้วยชื่อผู้ใช้และ PIN ของระบบ
URL ของเว็บแอปหลังเผยแพร่
คัดลอก URL ของเว็บแอป (ลงท้าย /exec) ไปใช้งาน
⚠ ทำไมต้องเลือก “ทุกคน”

ข้อมูลไม่ได้เปิดเผยต่อสาธารณะ ทุกคนที่เปิดลิงก์จะเห็นแค่หน้าล็อกอิน ต้องมีชื่อผู้ใช้และ PIN ที่ผู้ดูแลสร้างให้ ระบบล็อกบัญชี 5 นาทีเมื่อใส่ PIN ผิด 5 ครั้ง และไฟล์ชีตยังเป็นของคุณคนเดียว (อย่าแชร์ไฟล์ชีตให้คนอื่นถ้าไม่จำเป็น)

6

ใช้งานได้แล้ว

เข้าสู่ระบบครั้งแรกและเปลี่ยน PIN

  1. เปิด URL เว็บแอป ใส่ชื่อผู้ใช้ admin และ PIN 1234
  2. ระบบจะบังคับตั้ง PIN ใหม่ทันที (ตัวเลข 4–8 หลัก ห้ามใช้ 1234 หรือ 0000)
  3. ไปที่ ตั้งค่า ใส่ชื่อทีม/บริษัท และเลือกว่าจะให้สมาชิกเห็นทุกโปรเจกต์หรือเฉพาะโปรเจกต์ของตัวเอง
หน้าเข้าสู่ระบบ Jabphap Team Tasks
หน้าเข้าสู่ระบบ — ฝั่งซ้ายแนะนำระบบ ฝั่งขวากรอกชื่อผู้ใช้และ PIN (บนมือถือแสดงเฉพาะฟอร์ม)
💡 ลืม PIN ผู้ดูแล

เปิดไฟล์ชีต › เมนู 🗂️ Team Tasks › 🔑 รีเซ็ต PIN ผู้ดูแล (admin) เป็น 1234 แล้วเข้าสู่ระบบใหม่ ส่วนผู้ใช้คนอื่นที่ลืม PIN ให้ผู้ดูแลรีเซ็ตให้ในหน้าจัดการผู้ใช้

ส่วนที่ 2

ตั้งค่าเพิ่มเติม

ทำหลังติดตั้งเสร็จ จากหน้าเว็บแอปโดยใช้บัญชีผู้ดูแล

7

ทีม

เพิ่มสมาชิกทีม

  1. ไปที่เมนู สมาชิกทีม กด เพิ่มสมาชิก
  2. กรอกชื่อ-สกุล ชื่อผู้ใช้ภาษาอังกฤษ (เช่น somchai) ตำแหน่ง สิทธิ์ อีเมล (รับแจ้งงาน) สีประจำตัว และ PIN เริ่มต้น
  3. ส่งลิงก์เว็บแอป ชื่อผู้ใช้ และ PIN เริ่มต้นให้สมาชิก — เข้าครั้งแรกจะถูกขอให้ตั้ง PIN ใหม่
หน้าสมาชิกทีม
สมาชิกทีม — การ์ดแสดงงานค้าง กำลังทำ เลยกำหนด และงานที่เสร็จใน 30 วันของแต่ละคน (ผู้ดูแลคลิกการ์ดเพื่อแก้ไข รีเซ็ต PIN หรือปิดบัญชี)
สิทธิ์ทำอะไรได้
ผู้ดูแลระบบทุกอย่าง · ทุกโปรเจกต์ · จัดการสมาชิกและการตั้งค่า
สมาชิกสร้างโปรเจกต์ของตัวเอง · สร้าง/แก้ไข/ย้ายงานและคอมเมนต์ได้เฉพาะโปรเจกต์ที่ตนเป็นสมาชิก · โปรเจกต์อื่นดูได้อย่างเดียว (ถ้าเปิด “เห็นทุกโปรเจกต์”)
ผู้ชมดูบอร์ด รายการ ปฏิทิน และความคืบหน้าได้อย่างเดียว เหมาะกับผู้บริหารหรือลูกค้า
ดูอีเมลหลักของบัญชี Googleตรวจว่าผู้รันฟังก์ชันผู้ดูแล (ติดตั้ง / รีเซ็ตรหัสผ่าน) เป็นเจ้าของไฟล์ — กันไม่ให้ผู้เปิดเว็บแอปเรียกใช้ได้
8

เริ่มงาน

สร้างโปรเจกต์แรก

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

ฟอร์มโปรเจกต์
ฟอร์มโปรเจกต์ — สมาชิกที่เลือกเท่านั้นที่แก้ไขงานในโปรเจกต์และรับมอบหมายงานได้
9

ไม่พลาดกำหนดส่ง

ตั้งค่าแจ้งเตือนทางอีเมลและ LINE

  1. ไปที่ ตั้งค่า เลือกการแจ้งเตือนทันที: อีเมลเมื่อถูกมอบหมายงาน · อีเมลเมื่อถูกแท็ก @ชื่อ · แจ้ง LINE กลุ่มเมื่อมอบหมาย/งานเสร็จ
  2. เปิด สรุปงานประจำวัน ตั้งชั่วโมงที่ส่ง และจำนวนวันล่วงหน้าที่จะรวมงานใกล้ถึงกำหนด
  3. LINE: สร้าง LINE Official Account ที่ manager.line.biz เปิดใช้ Messaging API แล้วไปที่ LINE Developers Console › Channel › แท็บ Messaging API › ออก Channel access token (long-lived) มาวาง
  4. เชิญบอทเข้ากลุ่ม LINE ของทีม แล้วใส่ Group ID (ขึ้นต้นด้วย C) หรือใส่ User ID ของคุณเอง (ขึ้นต้นด้วย U จากแท็บ Basic settings) · กด ทดสอบส่ง
หน้าตั้งค่า
ตั้งค่า — ชื่อทีม การมองเห็นโปรเจกต์ การแจ้งเตือนทันที สรุปประจำวัน และ LINE Messaging API (token เก็บใน Script Properties ไม่อยู่ในชีต)
10

ดูแลระบบ

ล้างข้อมูลตัวอย่าง & อัปเดตเวอร์ชัน

ล้างข้อมูลตัวอย่าง: เปิดไฟล์ชีต › เมนู 🗂️ Team Tasks › 🧹 ล้างข้อมูลตัวอย่าง ระบบลบโปรเจกต์ งาน ความคิดเห็น และประวัติทั้งหมด แต่เก็บการตั้งค่าและผู้ใช้ไว้ — จากนั้นปิดบัญชีสมาชิกตัวอย่าง (piyapong, nattida, thanakorn, orawan, surachai) ในหน้าสมาชิกทีม

อัปเดตเวอร์ชันใหม่: วางทับ Code.gs และ Index.html รัน setup อีกครั้ง (เพิ่มคอลัมน์ใหม่ ไม่ลบข้อมูล) แล้วไปที่ การทำให้ใช้งานได้ › จัดการการทำให้ใช้งานได้ › ✎ › เวอร์ชันใหม่ — URL เดิมใช้ต่อได้

อ้างอิง

โครงสร้างชีตในฐานข้อมูล

แก้ไขในชีตได้ แต่ห้ามเปลี่ยนชื่อชีต หัวคอลัมน์ และคอลัมน์ id

ชีตเก็บอะไรคอลัมน์สำคัญ
Settingsการตั้งค่าcompany_name, see_all_projects, board_done_days, notify_*, line_on_*, digest_*
Usersสมาชิกusername, name, role (admin/member/viewer), position, color, email, pin_hash + salt, active
Projectsโปรเจกต์name, description, color, owner_id, member_ids, start_date, due_date, status (active/on_hold/done)
Tasksงานproject_id, title, status (todo/doing/review/done), priority, assignee_ids, start_date, due_date, checklist (JSON), progress_manual, tags, attachments (JSON), position, completed_at
Commentsความคิดเห็นtask_id, user_id, body, created_at
Activityประวัติการเปลี่ยนแปลงtask_id, project_id, user_id, action, detail, created_at

ช่วยเหลือ

คำถามที่พบบ่อย

เปิดลิงก์แล้วขึ้น “ไม่พบฟังก์ชันสคริปต์: doGet”

วาง Code.gs ไม่ครบหรือยังไม่บันทึก วางใหม่ทั้งไฟล์ กด Ctrl+S แล้ว Deploy เวอร์ชันใหม่

หน้าเว็บขาว หรือขึ้น “ไม่พบไฟล์ HTML ชื่อ Index”

ไฟล์ HTML ต้องชื่อ Index ตรงตัวพิมพ์ใหญ่-เล็ก

สมาชิกบอกว่าแก้ไขงานไม่ได้

สมาชิกแก้ไขได้เฉพาะงานในโปรเจกต์ที่ตนเป็นสมาชิก ให้เจ้าของโปรเจกต์หรือผู้ดูแลเพิ่มชื่อเข้าโปรเจกต์ที่หน้าแก้ไขโปรเจกต์ บัญชี “ผู้ชม” แก้ไขไม่ได้ทุกกรณี

ลากการ์ดบนมือถือไม่ได้

เบราว์เซอร์มือถือไม่รองรับการลากวาง ให้แตะการ์ดแล้วเปลี่ยนสถานะที่ปุ่มสถานะในหน้ารายละเอียดงาน

แก้โค้ดแล้วเว็บแอปยังเป็นแบบเดิม

ต้อง Deploy เวอร์ชันใหม่ทุกครั้งที่แก้โค้ด (การตั้งค่าในหน้าเว็บมีผลทันที)

ไม่ได้รับอีเมลแจ้งงาน

ตรวจว่าสมาชิกมีอีเมล เปิดการแจ้งเตือนในหน้าตั้งค่า และดูโฟลเดอร์สแปม · ระบบไม่ส่งอีเมลเมื่อคุณมอบหมายงานให้ตัวเอง · Gmail ทั่วไปส่งได้ประมาณ 100 ฉบับ/วัน

รองรับกี่คน กี่งาน

เหมาะกับทีม 2–30 คน และงานหลายพันงาน ทุกการบันทึกใช้ LockService ป้องกันการเขียนทับกัน