Saeree ERP - Complete ERP Solution for Thai Organizations Contact Us

ผลงาน: อัพเกรดครั้งใหญ่ Saeree ERP ของ อบก. (ตอนที่ 2)

  • Home
  • Success Stories
  • อัพเกรดครั้งใหญ่ Saeree ERP ของ อบก. (ตอนที่ 2)
อัพเกรดครั้งใหญ่ Saeree ERP ของ อบก. (TGO) ตอนที่ 2 เบื้องหลังเทคนิค
  • 21
  • February

ในตอนที่ 1 เราเล่าภาพรวมของการอัพเกรดครั้งใหญ่ไปแล้ว ตั้งแต่เหตุผลที่ต้องอัพเกรด สิ่งที่เปลี่ยนแปลง ไปจนถึง Timeline 14 ปีของการใช้งาน Saeree ERP ของ อบก. (TGO) — ในตอนนี้เราจะ เจาะลึกเบื้องหลังทางเทคนิคล้วนๆ ว่าทำไมถึงเลือก Angular 20, PrimeNG 20 และ Bootstrap 5 และTechnologyเหล่านี้ทำงานร่วมกันอย่างไรในระบบ ERP ระดับองค์กร

ทำไมเลือก Angular 20 — Framework สำหรับระบบ Enterprise

การเลือก Frontend Framework สำหรับระบบ ERP ไม่เหมือนกับการเลือก Framework สำหรับเว็บไซต์ทั่วไป ระบบ ERP ต้องการ Framework ที่รองรับโปรเจกต์ขนาดใหญ่ มีโครงสร้างที่ชัดเจน สามารถบำรุงรักษาได้ในระยะยาว และมี Ecosystem ที่แข็งแกร่ง — Angular 20 ตอบโจทย์ทุกข้อ

จุดเด่นของ Angular 20 ที่ทำให้เหมาะกับระบบ ERP:

  • Standalone Components — ไม่ต้องใช้ NgModule อีกต่อไป ทำให้โครงสร้างโค้ดเรียบง่าย แต่ละ Component เป็นอิสระ สามารถโหลดแบบ Lazy Loading ได้ทันที ลดขนาด Bundle และเพิ่มความเร็วในการโหลดหน้าจอ
  • Signal-based Reactivity — ระบบ Reactivity แบบใหม่ที่แทนที่ Zone.js เดิม ทำให้การอัพเดท UI แม่นยำและมีประสิทธิภาพมากขึ้น โดยเฉพาะในหน้าจอที่มีข้อมูลจำนวนมาก เช่น ตารางรายงานที่มีหลายพันแถว
  • SSR/SSG built-in — รองรับ Server-Side Rendering และ Static Site Generation โดยไม่ต้องติดตั้งเพิ่มเติม เพิ่มความเร็วในการโหลดHome
  • TypeScript strict mode — การใช้ TypeScript ในโหมด strict ช่วยป้องกันบั๊กจากการพิมพ์ผิดหรือใช้ตัวแปรผิดประเภท ซึ่งสำคัญมากสำหรับระบบ ERP ที่มีโค้ดจำนวนมาก

เมื่อเปรียบเทียบกับ ระบบเวอร์ชันเดิม (ZK Framework) ที่เป็นTechnologyเดิม จะเห็นความแตกต่างอย่างชัดเจน:

เกณฑ์เปรียบเทียบ ระบบเวอร์ชันเดิม (ZK Framework) Angular 20
UI/UX UI แบบ Desktop Application บน Web รูปลักษณ์ล้าสมัย ปรับแต่ง UI ได้ยาก UI ทันสมัย ปรับแต่งได้ทุกส่วน รองรับ Dark/Light Mode
Performance ประมวลผลฝั่ง Server เป็นหลัก โหลดช้าเมื่อข้อมูลมาก SPA (Single Page Application) โหลดเร็ว รองรับ Lazy Loading และ Virtual Scrolling
Responsive ไม่รองรับ Mobile แสดงผลได้ดีเฉพาะ Desktop Responsive เต็มรูปแบบ ใช้งานได้ทั้ง Desktop, Tablet และ Mobile
Ecosystem ชุมชนผู้พัฒนาเล็ก Component Library จำกัด ชุมชนขนาดใหญ่ Component Library มากมาย (PrimeNG, Angular Material ฯลฯ)
Maintainability หานักพัฒนาที่เชี่ยวชาญได้ยาก Technologyเฉพาะทาง หานักพัฒนาได้ง่าย มีเอกสารและ Community ขนาดใหญ่

PrimeNG 20 — UI Component Library ระดับ Enterprise

หลังจากเลือก Angular 20 เป็น Framework แล้ว คำถามถัดมาคือจะใช้ UI Component Library ตัวไหน ระหว่าง Angular Material กับ PrimeNG — คำตอบคือ PrimeNG 20

เหตุผลที่เลือก PrimeNG แทน Angular Material:

  • Component ครบถ้วนสำหรับ Enterprise — PrimeNG มี Component มากกว่า 80 ตัว ครอบคลุมทุกความต้องการของระบบ ERP ในขณะที่ Angular Material เน้นไปที่ Material Design ซึ่งเหมาะกับแอปพลิเคชันทั่วไปมากกว่า
  • DataTable ระดับ Enterprise — รองรับ Sorting, Filtering, Lazy Loading, Virtual Scrolling, Row Grouping, Column Reordering, Export to Excel/PDF — ฟีเจอร์เหล่านี้จำเป็นสำหรับรายงาน ERP ที่มีข้อมูลหลายหมื่นแถว
  • Theme System ที่ยืดหยุ่น — รองรับการปรับแต่ง Theme ได้อย่างอิสระ รวมถึง Dark/Light Mode ที่สลับได้ทันที
  • TreeTable — แสดงข้อมูลแบบลำดับชั้น ซึ่งจำเป็นสำหรับผังAccounting (Chart of Accounts) และโครงสร้างองค์กร

Component ที่ใช้บ่อยในแต่ละโมดูลของ Saeree ERP:

โมดูล PrimeNG Component ที่ใช้ ตัวอย่างการใช้งาน
e-Report DataTable + Chart รายงานการเงิน Accounting Inventory พร้อมกราฟแสดงผล Export ได้ทั้ง Excel และ PDF
KPI Dashboard Chart + Card แสดงผลตัวชี้วัดแบบ Real-time ด้วย Bar Chart, Pie Chart และ Card สรุปข้อมูล
ขออนุมัติใช้เงิน Stepper + Dialog แสดงขั้นตอนการอนุมัติแบบ Step-by-Step พร้อม Dialog ยืนยันการอนุมัติ
ผังAccounting TreeTable + Dropdown แสดงผังAccountingแบบลำดับชั้น สามารถขยาย/ยุบ Node ได้
ปฏิทินงบประมาณ Calendar + DataTable แสดงรอบงบประมาณในรูปแบบปฏิทิน พร้อมรายละเอียดในตาราง
ระบบ e-Report พัฒนาด้วย Angular 20 และ PrimeNG 20

Bootstrap 5 + PrimeNG — ทำงานร่วมกันอย่างไร

หลายคนอาจสงสัยว่า ทำไมต้องใช้ทั้ง Bootstrap 5 และ PrimeNG ในโปรเจกต์เดียวกัน — คำตอบคือ ทั้งสองมีหน้าที่ต่างกันอย่างชัดเจน และไม่ขัดแย้งกัน

  • Bootstrap 5 ทำหน้าที่ Layout — Grid System (12 คอลัมน์), Spacing (margin, padding), Typography, Responsive Breakpoints — ทุกอย่างที่เกี่ยวกับการจัดวางหน้าจอ
  • PrimeNG ทำหน้าที่ Component — Table, Form, Dialog, Chart, Calendar, Stepper — ทุกอย่างที่เป็น Interactive Component

การแยกหน้าที่ชัดเจนแบบนี้ทำให้:

  • ไม่มี CSS Conflict — Bootstrap ดูแลเรื่อง Layout, PrimeNG ดูแลเรื่อง Component ไม่ทับซ้อนกัน
  • นักพัฒนาคุ้นเคย — Bootstrap เป็น CSS Framework ที่นักพัฒนาส่วนใหญ่รู้จักอยู่แล้ว ไม่ต้องเรียนรู้ระบบ Grid ใหม่
  • บำรุงรักษาง่าย — เมื่ออัพเกรด Bootstrap หรือ PrimeNG เวอร์ชันใหม่ สามารถอัพเกรดแยกกันได้โดยไม่กระทบอีกฝั่ง

Dark Mode / Light Mode — มากกว่าแค่สวยงาม

ระบบ Saeree ERP เวอร์ชันใหม่รองรับทั้ง Dark Mode และ Light Mode ซึ่งผู้ใช้สามารถเลือกโหมดที่ต้องการได้เอง

วิธีการ Implement:

  • CSS Variables — สี, ขนาดตัวอักษร, ระยะห่าง ทุกอย่างถูกกำหนดเป็น CSS Variables ที่สามารถเปลี่ยนค่าได้ทันทีตาม Theme
  • PrimeNG Theme System — PrimeNG 20 มี Theme API ที่รองรับการสลับ Theme แบบ Runtime ไม่ต้องโหลดหน้าใหม่
  • prefers-color-scheme — ระบบจะตรวจจับค่า Media Query เพื่อใช้ค่าเริ่มต้นตามที่ผู้ใช้ตั้งไว้ในระบบปฏิบัติการ
  • User Preference ใน localStorage — เมื่อผู้ใช้เลือก Theme แล้ว ระบบจะบันทึกค่าไว้ใน localStorage เพื่อให้คงค่าเดิมเมื่อเปิดใช้งานครั้งถัดไป

ข้อดีของ Dark Mode ในระบบ ERP:

  • ลดความเมื่อยล้าสายตา — เจ้าหน้าที่ที่ใช้งานระบบ ERP ตลอดทั้งวัน การมี Dark Mode ช่วยลดแสงสว่างที่เข้าตา ลดอาการปวดตาและปวดศีรษะ
  • ประหยัดแบตเตอรี่ OLED — สำหรับอุปกรณ์ที่ใช้จอ OLED (Tablet, Laptop บางรุ่น) Dark Mode ช่วยประหยัดพลังงานได้ 30-60%
  • รองรับ Accessibility — ผู้ใช้ที่มีปัญหาเรื่องสายตาหรือแพ้แสงสามารถเลือก Dark Mode เพื่อความสะดวกในการใช้งาน
Dark Mode ใน Saeree ERP ช่วยลดความเมื่อยล้าสายตา

Multi-Language (ภาษาไทย + ภาษาอังกฤษ)

ระบบ Saeree ERP เวอร์ชันใหม่ของ อบก. รองรับ 2 ภาษา: ภาษาไทยและภาษาอังกฤษ โดยสามารถสลับภาษาได้ทันทีโดยไม่ต้องโหลดหน้าใหม่

Technologyที่ใช้:

  • @ngx-translate/core — Library สำหรับ Internationalization (i18n) ใน Angular ที่ได้รับความนิยมสูงสุด
  • JSON Translation Files — แต่ละภาษามีไฟล์ JSON แยกกัน เก็บคำแปลทุกข้อความในระบบ
  • Dynamic Language Switching — ผู้ใช้สามารถกดปุ่มสลับภาษาได้ทันที ทุก Label, ข้อความ, หัวตาราง จะเปลี่ยนภาษาพร้อมกัน

ตัวอย่างการใช้งานจริง

เมื่อเจ้าหน้าที่การเงินเปิดรายงาน "งบทดลอง" ในโหมดภาษาไทย Label จะแสดงเป็น "เดบิต", "เครดิต", "ยอดคงเหลือ" — เมื่อกดสลับเป็นภาษาอังกฤษ Label จะเปลี่ยนเป็น "Debit", "Credit", "Balance" ทันที โดยข้อมูลตัวเลขยังคงเหมือนเดิม

ทำไม Multi-Language ถึงสำคัญสำหรับ อบก.?

อบก. ทำงานร่วมกับหน่วยงานต่างประเทศอย่างต่อเนื่อง ทั้ง UNFCCC (United Nations Framework Convention on Climate Change), ตลาด Carbon Market ระดับสากล และองค์กรด้านสิ่งแวดล้อมระหว่างประเทศ การมีระบบที่รองรับภาษาอังกฤษทำให้:

  • ส่งออกรายงานเป็นภาษาอังกฤษสำหรับการประชุมระดับนานาชาติได้ทันที
  • ผู้เชี่ยวชาญต่างชาติที่มาร่วมงานสามารถเข้าถึงข้อมูลในระบบได้โดยไม่ต้องแปล
  • รองรับมาตรฐานการรายงานระดับสากลที่กำหนดให้ข้อมูลต้องเป็นภาษาอังกฤษ

สถาปัตยกรรมโดยรวม (Architecture)

ภาพรวมสถาปัตยกรรมของระบบ Saeree ERP หลังอัพเกรด:

Layer Technology รายละเอียด
Frontend Angular 20 + PrimeNG 20 + Bootstrap 5 SPA (Single Page Application) ทำงานบน Browser รองรับทั้ง Desktop และ Mobile
Backend REST API (Saeree ERP Backend) Backend เดิมของ Saeree ERP ที่ให้Servicesผ่าน REST API
Database PostgreSQL ฐานข้อมูลเดิมจาก Saeree ERP เวอร์ชันเดิมที่เก็บข้อมูลมากว่า 14 ปี ไม่ต้อง Migrate
Authentication SSO + 2FA Single Sign-On ร่วมกับระบบอื่นในองค์กร พร้อม Two-Factor Authentication เพิ่มความปลอดภัย
Security SSL A+ / HTTPS ผ่านการทดสอบ SSL Test ระดับ A+ เข้ารหัสข้อมูลทุกการเชื่อมต่อ

หัวใจของสถาปัตยกรรม

สิ่งที่สำคัญที่สุดของสถาปัตยกรรมนี้คือ การแยก Frontend ออกจาก Backend อย่างชัดเจน — Frontend (Angular 20) สื่อสารกับ Backend ผ่าน REST API เท่านั้น ทำให้สามารถอัพเกรด Frontend ได้โดยไม่กระทบ Backend และฐานข้อมูล นี่คือเหตุผลที่ข้อมูล 14 ปียังคงอยู่ครบถ้วนแม้หลังอัพเกรด

ทั้งหมดนี้ทำงานบน Browser ได้ทั้ง Desktop และ Mobile (Responsive) — เจ้าหน้าที่สามารถตรวจสอบรายงาน อนุมัติเอกสาร หรือดู KPI Dashboard ผ่านมือถือได้ทุกที่ทุกเวลา

สรุป

การอัพเกรดครั้งใหญ่ของ อบก. (TGO) ไม่ใช่แค่การเปลี่ยนหน้าตาระบบ แต่เป็นการ ยกระดับTechnologyทั้ง Stack จากระบบเวอร์ชันเดิมสู่ Angular 20 + PrimeNG 20 + Bootstrap 5 พร้อม Dark Mode, Multi-Language และสถาปัตยกรรมที่แยก Frontend/Backend อย่างชัดเจน

สิ่งที่ได้จากการอัพเกรดครั้งนี้ในมุมเทคนิค:

  • UI/UX ทันสมัย — จากหน้าจอแบบ Desktop Application สู่ Web Application ที่ Responsive
  • Performance ดีขึ้น — Signal-based Reactivity, Lazy Loading, Virtual Scrolling
  • Maintainability สูง — TypeScript strict mode, Standalone Components, หานักพัฒนาได้ง่าย
  • รองรับอนาคต — Angular มี Release Cycle ที่ชัดเจน พร้อม Long-Term Support

ในตอนถัดไป (ตอนที่ 3) เราจะเจาะลึกเรื่อง Workflow อนุมัติเอกสาร — ระบบอนุมัติแบบ Step-by-Step ที่ออกแบบมาเฉพาะสำหรับ อบก. พร้อมเชื่อมต่อกับระบบ e-Office

"Technologyเปลี่ยนทุก 3-5 ปี แต่ข้อมูลขององค์กรต้องอยู่ตลอดไป — หัวใจของการอัพเกรดคือทำให้ Frontend ทันสมัยโดยข้อมูลเดิมทุกรายการยังคงอยู่ครบถ้วน"

- Saeree ERP Team

สนใจให้คำปรึกษาเรื่องTechnology Frontend สำหรับระบบ ERP ขององค์กรคุณ? สามารถนัดหมาย Demo หรือติดต่อทีมที่ปรึกษาเพื่อประเมินความพร้อมขององค์กร

Interested in ERP for your organization?

ปรึกษาผู้เชี่ยวชาญจาก Grand Linux Solution ฟรี ไม่มีค่าใช้จ่าย

ขอ Demo ฟรี

โทร 02-347-7730 | sale@grandlinux.com

image

About the Author

ทีมงานผู้เชี่ยวชาญด้านระบบ ERP จากบริษัท แกรนด์ลีนุกซ์ Solutions จำกัด พร้อมให้คำปรึกษาและServicesด้านระบบ ERP ครบวงจร