· documentation · 3 min read

บริหารงบประมาณด้วย Odoo

ทำความรู้จักกับโมดูลที่จะช่วยให้การวางแผนและการบริหารงบประมาณในหน่วยงานภาครัฐมีประสิทธิภาพมากยิ่งขึ้น!

ทำความรู้จักกับโมดูลที่จะช่วยให้การวางแผนและการบริหารงบประมาณในหน่วยงานภาครัฐมีประสิทธิภาพมากยิ่งขึ้น!

วันนี้ได้มีโอกาสเป็นหนึ่งใน Talk ของ OCA Days 2021 ในหัวข้อ Budget Control for Government จึงอยากขอนำสิ่งที่ได้เสนอไปมาแปลไทยใน Blog นี้ด้วย เผื่อว่าจะเป็นประโยชน์กับคนที่มองหาระบบ บริหารงบประมาณสำหรับใช้กับ Odoo Community Edition

OCA Budgeting

ว่าแต่อะไรคือการบริหารงานงบประมาณ?

โดยเบื้องต้นแล้วง่ายมาก สิ่งที่ต้องมีคือ

  1. วางแผนงบประมาณ
  2. เก็บผลการใช้งบประมาณที่เกิดขึ้นจริงในระบบ

สิ่งที่ได้คือ รายงานแผนเทียบผล ซึ่งจะช่วยให้ผู้ปฏิบัติงานเห็นประสิทธิภายในเชิงการใช้เงิน และเพื่อให้สามารถปรับแผนงบประมาณและการทำงานสำหรับกิจกรรมในอนาคต

Budgeting

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

ซึ่งถูกต้องนะครับจริงๆไอเดียของเรื่องนี้ก็มีเท่านี้เอง :D

ซึ่งจริงๆ Odoo ก็มีโมดูล Budget Management แบบพื้นฐานที่ทำให้ได้ตัวเลขดังกล่าวได้ทั้งใน Odoo Enterprise และ Community

แล้วทำไมเราถึงต้องสร้างโมดูลใหม่ขึ้นมาอีกให้กับ OCA / Odoo?

คำตอบคือ การบริหารงบประมาณในหน่วยงานราชการจริงๆมันไม่ได้ง่ายแค่นี้ เรากำลังพูดถึงการบริหารงบประมาณแบบเต็มรูปแบบ (Full Budget Cycle) ซึ่งประกอบไปด้วยขั้นตอนต่างๆมากมาย เช่น

Full Budgeting Cycle

  • การจัดสรรงบประมาณระดับองค์กร
  • การวางแผนงบประมาณระดับแผนก/โครงการ
  • การใช้ การตรวจสอบ การปรับแผน การโยกย้ายงบประมาณ
  • การปิดปีงบประมาณ การยกยอดงบประมาณข้ามปี

Note: วงจรงบประมาณในแต่ละองค์กรอาจมีความแตกต่างกัน

ตั้งแต่ต้นปีต้องมีกระบวนการพูดคุยเพื่อเสนอโครงการต่างๆ มีการของบประมาณและผ่านการอนุมัติจากผู้ให้ (source of fund) หลังจากได้รับแล้วจึงมีขั้นตอนการจัดสรรงบลงตามหน่วยงาน แต่ละแผนก มีการวางแผนการใช้งานตามกิจกรรมเพื่อความสอดคล้องกับนโยบาย มีการตรวจสอบการใช้งบประมาณให้เป็นไปตามกิจกรรมที่กำหนด บางช่วงเวลาอาจยอมให้มีการปรับโยกงบประมาณข้ามฝ่าย หรือหากมีการปรับนโยบายอาจต้องปรับใหญ่และกลับไปจัดสรรงบประมาณลงมาใหม่อีกรอบ

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


โมดูล Budget Control

โมดูล Budget Control ของ Ecosoft เป็นชุดของโมดูลด้าน budget control โดยมีเป้าหมายให้ใช้งานได้กับหน่วยราชการไทย

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

ใช้โมดูล mis_builder_budget (Stephane, ACSONE) เป็นแกนของระบบ เพื่อให้ระบบทำงานเร็วและถูกต้องตามหลักการ mis_builder_budget

โมดูลหลักประกอบด้วย

  • Budget Period
  • Budget Plan / Breakdown
  • Budget Control Sheet
  • Budget Transfer
  • Budget Revision
  • Budget Locking by Documents, i.e., PR, PO, EX, INV
  • Budget Monitoring
  • Budget Year End Closing
  • Commitment carry forward
  • Budget balance carry forward

ในบทความนี้ผมจะนำการ demo full cycle budgeting ที่ได้นำเสนอไปช่วง OCA Days มาเขียนให้อ่านกันพอเห็นภาพนะครับ

ถ้าพร้อมแล้ว เริ่มกันเลยครับ !

ขั้นตอน demo

  1. การตั้งค่าระบบ Budget Control เบื้องต้น
  2. การทำการจัดสรรงบประมาณระดับองค์กร
  3. วางแผนงบประมาณระดับแผนก/โครงการ
  4. ใช้เงินงบประมาณในระดับเอกสารต่างๆเช่น Purchase Order, Expense, Vendor Bill
  5. ตรวจสอบการใช้งบประมาณ
  6. โอนงบประมาณข้ามหน่วยงาน
  7. ปิดปี ยกงบประมาณข้ามปี (ยอดผูกพัน และ ยอดคงเหลือ)

1. การตั้งค่าระบบ Budget Control เบื้องต้น Budget Control จากรูป เราได้เลือกให้เอกสารที่เกี่ยวข้องกับงบประมาณ (มีการผูกพันงบประมาณและใช้จริง) ที่เอกสาร Purchase และ Expense และ Account (Vendor Bill, Journal Entry)

โดยเลือก Budget KPI (demo) ซึ่งเป็น MIS Report Template (การระบุ KPI ด้วย Account Code) และเลือกใช้ Budget Plan (จัดสรรงบประมาณ) และ Budget Transfer ด้วย (โอนงบประมาณ)

ด้วย MIS Builder Template เราสามารถตั้งหมวดกิจกรรมที่ต้องการควบคุมได้ (KPI) เช่น

Budget Control เราสามารถกำหนดได้ว่าต้องการความละเอียดในการวางแผนปีงบประมาณในระดับใด เช่นระดับเดือนหรือระดับไตรมาส เช่น ในรูปด้านล่างจะเป็นการสร้าง Date Ranges เพื่อการวางแผนระดับไตรมาส สำหรับปี 2021, 2022

Budget Control ขั้นตอนสุดท้ายคือการสร้าง ปีงบประมาณ (Budget Period)

Budget Control ในที่นี้เราสามารถกำหนด KPI ที่ต้องการใช้ในการคุมงบประมาณ เราเลือกหน่วยงาน (Analytics) ที่ต้องการควบคุม ไปจนถึงระดับของการควบคุม (budget check) เช่น วางแผนตามกิจกรรม (KPI) แต่ควบคุมในระดับหน่วยงาน หรือต้องการควรคุมระดับกิจกรรมของหน่วยงานตามที่วางแผนไว้เลย

2. การทำการจัดสรรงบประมาณระดับองค์กร Budget Control หลังจากได้เสนอและได้รับการสนองงบประมาณจากส่วนกลางแล้ว องค์กรจะได้ทำการจัดสรรงบประมาณลงสู่หน่วยงานและโครงการภายใน หน้าต่าง Budget Plan จะเป็นที่แรกที่ใช้จัดสรรเงินลงตามฝ่ายหรือโครงการ (Analytic Account)

เลือก Analytic Account ที่ต้องการ ใส่ยอดเงิน, Confirm และ Create/Update Budget Control Sheet ระบบจะสร้าง Budget Control Sheet ให้สำหรับแต่ละหน่วยงาน

Budget Control สังเกตว่ารายการ Budget Control Sheet ที่สร้างขึ้นยังเป็นสีแดงเนื่องจากว่าในแต่ Budget Control Sheet ยังไม่มีการวางแผนเงินตามจำนวนที่ได้รับการจัดสรร

3. วางแผนงบประมาณระดับแผนก/โครงการ Budget Control ที่ Budget Control Sheet เราสามารถเลือก KPI ที่ต้องการใช้ในการควบคุมกิจกรรม แล้วกดปุ่ม Hard Reset สีแดง ระบบจะสร้างบรรทัดสำหรับใส่วางแผนงบประมาณในแต่ละกิจกรรมตามไตรมาส

Budget Control หลังจากวางแผนเรียบร้อยและกดปุ่มเปลี่ยนสถานะเป็น Controlled, ตอนนี้ระบบก็เปิดให้สร้างรายการเอกสารเพื่อผูกพันและใช้จริงงบประมาณแล้ว

4. ใช้เงินงบประมาณในระดับเอกสารต่างๆเช่น Purchase Order, Expense, Vendor Bill Budget Control ลองสร้างเอกสาร Purchase Order โดยเลือก Analytic Account ที่ต้องการกินงบประมาณ ระบบจะมี widget เล็กๆให้เห็นยอดเงินคงเหลือในปัจจุบัน แต่ถ้าผู้ใช้ใส่ยอดเงินมากกว่าที่มีระบบจะแจ้งเตือนเพราะผู้ใช้งาน Submit เอกสาร

ลดจำนวนเงินลงและลองอีกครั้งหนึ่ง จะเห็นได้ว่าเอกสารนี้ได้ผูกพันงบประมาณโดยจะเห็นได้ชัดเจนจาก Budget Commitment โดยมีการ Debit การผูกพันงบที่เอกสารนี้ = 500

Budget Control และหลังจากที่เอกสาร Vendor Bill ถูกสร้างและยืนยัน ระบบจะย้ายการผูกพันงบประมาณ (commit) ไปเป็นการใช้จริง (actual) ที่ Vendor Bill โดยมีการ Credit การผูกพันงบที่กลับคืนเอกสารต้นทาง = 500 ดังรูปบน

อีกตัวอย่างหนึ่งเช่น Expense ไป Vendor Bill ในลักษณะเดียวกัน

Budget Control จุดนี้เองที่เป็นหัวใจของระบบนี้ เราเรียกว่ารายการคลื่อนไหวในเชิงงบประมาณ (budget moves) ซึ่งการทำงานในลักษณะคล้ายคลึงกับระบบบัญชีคู่ (double entry accounting)

5. ตรวจสอบการใช้งบประมาณ

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

หรือจะเป็นรายการแผน (ฟ้า) เทียบผล (หลายสีตามประเภทเอกสาร) Budget Control

6. โอนงบประมาณข้ามหน่วยงาน

ในระหว่างปี ในระหว่างที่ยังไม่มีการปรับแผนงบประมาณครั้งใหญ่ ระหว่างหน่วยงานที่ได้รับการอนุมัติก็อาจต้องการโยกเงินระหว่างกัน รูปด้านล่างจะแสดงหน้าต่างการโอนเงินระหว่า Budget Control ของแต่ละหน่วยงาน Budget Control

โดยแต่ละ Budget Control จะต้องมีการปรับสถานเป็น Draft ก่อนเพื่อหยุดการใช้เงินจึงจะสามารถทำการโอนงบประมาณได้

7. ปิดปี ยกงบประมาณข้ามปี (ยอดผูกพัน และ ยอดคงเหลือ)

เมื่อถึงเวลาปิดปีงบประมาณ แต่ละหน่วยงานอาจยังมีเอกสารผูกพันงบประมาณค้างอยู่ จะต้องมีการยกยอดเหล่านี้ข้ามไปผูกพันในปีถัดไป หรืออาจต้องยกตัวเลขคงเหลือเพื่อไปตั้งต้นในปีถัดไปด้วย

จากรูปด้านล่าง สิ่งที่ต้องการคือการยกยอด

  • (1) ยอดผูกพัน (Purchase, Expense) และ
  • (2) ยอดคงเหลือ ไปยังปีถัดไป Budget Control

โดยระบบจะมีหน้าต่างสำหรับทำงานดังกล่าว

  • (1) Forward Budget Commitment และ
  • (2) Forward Budget Balance ตามลำดับ Budget Control Budget Control

หลังจากยกยอดเสร็จสิ้น จะถือว่าจบรอบปีงบประมาณแล้ว ถัดไปคงเป็นการดำเนินการซ้ำกับที่กล่าวมาข้างต้นสำหรับปีงบประมาณถัดๆไป

สำหรับบทความนี้ผมคงขอเล่าแต่เพียงเท่านั้น ทั้งหมดนี้เป็นเพียงส่วนหนึ่งของชุดโมดูลที่เราใช้ในการวางระบบงบประมาณให้กับหน่วยงานภาครัฐของไทย ซึ่งแต่ละที่จะมีรายละเอียดปลีกย่อยมากว่านี้มาก (ตามระเบียบการบริหารงบประมาณหน่วยงานภาครัฐ และระเบียบการจัดซื้อจัดจ้าง)

และก็เช่นเคยนะครับ Ecosoft เราเชื่อในแนวทาง open source ว่าจะช่วยผลักดันสังคมไทยให้ก้าวไปข้างหน้าอย่างยั่งยืน โดยโมดูลชุดนี้เป็นชุดที่เราตั้งใจทำเป็นพิเศษ ทั้งหมดที่เกี่ยวที่ผมได้อธิบายไป หากใครสนใจสามารถตามงานของเราได้ที่

https://github.com/OCA/account-budgeting/pull/51

แล้วพบกันใหม่ครับ !

by Kitti U.

Back to Blog