· documentation · 3 min read
บริหารงบประมาณด้วย Odoo
ทำความรู้จักกับโมดูลที่จะช่วยให้การวางแผนและการบริหารงบประมาณในหน่วยงานภาครัฐมีประสิทธิภาพมากยิ่งขึ้น!
วันนี้ได้มีโอกาสเป็นหนึ่งใน Talk ของ OCA Days 2021 ในหัวข้อ Budget Control for Government จึงอยากขอนำสิ่งที่ได้เสนอไปมาแปลไทยใน Blog นี้ด้วย เผื่อว่าจะเป็นประโยชน์กับคนที่มองหาระบบ บริหารงบประมาณสำหรับใช้กับ Odoo Community Edition
ว่าแต่อะไรคือการบริหารงานงบประมาณ?
โดยเบื้องต้นแล้วง่ายมาก สิ่งที่ต้องมีคือ
- วางแผนงบประมาณ
- เก็บผลการใช้งบประมาณที่เกิดขึ้นจริงในระบบ
สิ่งที่ได้คือ รายงานแผนเทียบผล ซึ่งจะช่วยให้ผู้ปฏิบัติงานเห็นประสิทธิภายในเชิงการใช้เงิน และเพื่อให้สามารถปรับแผนงบประมาณและการทำงานสำหรับกิจกรรมในอนาคต
มีคนถามว่าทำไมต้องมาวุ่นวายกับเรื่องงบประมาณ ตำตอบคือ เพื่อให้เราได้เป็นกังวลก่อนการใช้เงินและหลังจากใช้เงินไปแล้วน่ะสิ !!!
ซึ่งถูกต้องนะครับจริงๆไอเดียของเรื่องนี้ก็มีเท่านี้เอง :D
ซึ่งจริงๆ Odoo ก็มีโมดูล Budget Management แบบพื้นฐานที่ทำให้ได้ตัวเลขดังกล่าวได้ทั้งใน Odoo Enterprise และ Community
แล้วทำไมเราถึงต้องสร้างโมดูลใหม่ขึ้นมาอีกให้กับ OCA / Odoo?
คำตอบคือ การบริหารงบประมาณในหน่วยงานราชการจริงๆมันไม่ได้ง่ายแค่นี้ เรากำลังพูดถึงการบริหารงบประมาณแบบเต็มรูปแบบ (Full Budget 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
- การตั้งค่าระบบ Budget Control เบื้องต้น
- การทำการจัดสรรงบประมาณระดับองค์กร
- วางแผนงบประมาณระดับแผนก/โครงการ
- ใช้เงินงบประมาณในระดับเอกสารต่างๆเช่น Purchase Order, Expense, Vendor Bill
- ตรวจสอบการใช้งบประมาณ
- โอนงบประมาณข้ามหน่วยงาน
- ปิดปี ยกงบประมาณข้ามปี (ยอดผูกพัน และ ยอดคงเหลือ)
1. การตั้งค่าระบบ 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) เช่น
เราสามารถกำหนดได้ว่าต้องการความละเอียดในการวางแผนปีงบประมาณในระดับใด เช่นระดับเดือนหรือระดับไตรมาส เช่น ในรูปด้านล่างจะเป็นการสร้าง Date Ranges เพื่อการวางแผนระดับไตรมาส สำหรับปี 2021, 2022
ขั้นตอนสุดท้ายคือการสร้าง ปีงบประมาณ (Budget Period)
ในที่นี้เราสามารถกำหนด KPI ที่ต้องการใช้ในการคุมงบประมาณ เราเลือกหน่วยงาน (Analytics) ที่ต้องการควบคุม ไปจนถึงระดับของการควบคุม (budget check) เช่น วางแผนตามกิจกรรม (KPI) แต่ควบคุมในระดับหน่วยงาน หรือต้องการควรคุมระดับกิจกรรมของหน่วยงานตามที่วางแผนไว้เลย
2. การทำการจัดสรรงบประมาณระดับองค์กร หลังจากได้เสนอและได้รับการสนองงบประมาณจากส่วนกลางแล้ว องค์กรจะได้ทำการจัดสรรงบประมาณลงสู่หน่วยงานและโครงการภายใน หน้าต่าง Budget Plan จะเป็นที่แรกที่ใช้จัดสรรเงินลงตามฝ่ายหรือโครงการ (Analytic Account)
เลือก Analytic Account ที่ต้องการ ใส่ยอดเงิน, Confirm และ Create/Update Budget Control Sheet ระบบจะสร้าง Budget Control Sheet ให้สำหรับแต่ละหน่วยงาน
สังเกตว่ารายการ Budget Control Sheet ที่สร้างขึ้นยังเป็นสีแดงเนื่องจากว่าในแต่ Budget Control Sheet ยังไม่มีการวางแผนเงินตามจำนวนที่ได้รับการจัดสรร
3. วางแผนงบประมาณระดับแผนก/โครงการ ที่ Budget Control Sheet เราสามารถเลือก KPI ที่ต้องการใช้ในการควบคุมกิจกรรม แล้วกดปุ่ม Hard Reset สีแดง ระบบจะสร้างบรรทัดสำหรับใส่วางแผนงบประมาณในแต่ละกิจกรรมตามไตรมาส
หลังจากวางแผนเรียบร้อยและกดปุ่มเปลี่ยนสถานะเป็น Controlled, ตอนนี้ระบบก็เปิดให้สร้างรายการเอกสารเพื่อผูกพันและใช้จริงงบประมาณแล้ว
4. ใช้เงินงบประมาณในระดับเอกสารต่างๆเช่น Purchase Order, Expense, Vendor Bill ลองสร้างเอกสาร Purchase Order โดยเลือก Analytic Account ที่ต้องการกินงบประมาณ ระบบจะมี widget เล็กๆให้เห็นยอดเงินคงเหลือในปัจจุบัน แต่ถ้าผู้ใช้ใส่ยอดเงินมากกว่าที่มีระบบจะแจ้งเตือนเพราะผู้ใช้งาน Submit เอกสาร
ลดจำนวนเงินลงและลองอีกครั้งหนึ่ง จะเห็นได้ว่าเอกสารนี้ได้ผูกพันงบประมาณโดยจะเห็นได้ชัดเจนจาก Budget Commitment โดยมีการ Debit การผูกพันงบที่เอกสารนี้ = 500
และหลังจากที่เอกสาร Vendor Bill ถูกสร้างและยืนยัน ระบบจะย้ายการผูกพันงบประมาณ (commit) ไปเป็นการใช้จริง (actual) ที่ Vendor Bill โดยมีการ Credit การผูกพันงบที่กลับคืนเอกสารต้นทาง = 500 ดังรูปบน
อีกตัวอย่างหนึ่งเช่น Expense ไป Vendor Bill ในลักษณะเดียวกัน
จุดนี้เองที่เป็นหัวใจของระบบนี้ เราเรียกว่ารายการคลื่อนไหวในเชิงงบประมาณ (budget moves) ซึ่งการทำงานในลักษณะคล้ายคลึงกับระบบบัญชีคู่ (double entry accounting)
5. ตรวจสอบการใช้งบประมาณ
การเคลื่อนไหวในเชิงงบประมาณทั้งหมดที่เกิดขึ้น ทำให้ทั้งระดับหน่วยงานและระดับองค์กรสามารถสร้างสรรค์รายงานเชิงงบประมาณและบิดได้ตามมุมมองที่ต้องการ เช่น ในรูปด้านล่างจะแสดงความเคลื่อนไหวทั้งหมดตามประเภทการผูกพัน แบ่งตามไตรมาส ตามเลขที่เอกสาร
หรือจะเป็นรายการแผน (ฟ้า) เทียบผล (หลายสีตามประเภทเอกสาร)
6. โอนงบประมาณข้ามหน่วยงาน
ในระหว่างปี ในระหว่างที่ยังไม่มีการปรับแผนงบประมาณครั้งใหญ่ ระหว่างหน่วยงานที่ได้รับการอนุมัติก็อาจต้องการโยกเงินระหว่างกัน รูปด้านล่างจะแสดงหน้าต่างการโอนเงินระหว่า Budget Control ของแต่ละหน่วยงาน
โดยแต่ละ Budget Control จะต้องมีการปรับสถานเป็น Draft ก่อนเพื่อหยุดการใช้เงินจึงจะสามารถทำการโอนงบประมาณได้
7. ปิดปี ยกงบประมาณข้ามปี (ยอดผูกพัน และ ยอดคงเหลือ)
เมื่อถึงเวลาปิดปีงบประมาณ แต่ละหน่วยงานอาจยังมีเอกสารผูกพันงบประมาณค้างอยู่ จะต้องมีการยกยอดเหล่านี้ข้ามไปผูกพันในปีถัดไป หรืออาจต้องยกตัวเลขคงเหลือเพื่อไปตั้งต้นในปีถัดไปด้วย
จากรูปด้านล่าง สิ่งที่ต้องการคือการยกยอด
- (1) ยอดผูกพัน (Purchase, Expense) และ
- (2) ยอดคงเหลือ ไปยังปีถัดไป
โดยระบบจะมีหน้าต่างสำหรับทำงานดังกล่าว
- (1) Forward Budget Commitment และ
- (2) Forward Budget Balance ตามลำดับ
หลังจากยกยอดเสร็จสิ้น จะถือว่าจบรอบปีงบประมาณแล้ว ถัดไปคงเป็นการดำเนินการซ้ำกับที่กล่าวมาข้างต้นสำหรับปีงบประมาณถัดๆไป
สำหรับบทความนี้ผมคงขอเล่าแต่เพียงเท่านั้น ทั้งหมดนี้เป็นเพียงส่วนหนึ่งของชุดโมดูลที่เราใช้ในการวางระบบงบประมาณให้กับหน่วยงานภาครัฐของไทย ซึ่งแต่ละที่จะมีรายละเอียดปลีกย่อยมากว่านี้มาก (ตามระเบียบการบริหารงบประมาณหน่วยงานภาครัฐ และระเบียบการจัดซื้อจัดจ้าง)
และก็เช่นเคยนะครับ Ecosoft เราเชื่อในแนวทาง open source ว่าจะช่วยผลักดันสังคมไทยให้ก้าวไปข้างหน้าอย่างยั่งยืน โดยโมดูลชุดนี้เป็นชุดที่เราตั้งใจทำเป็นพิเศษ ทั้งหมดที่เกี่ยวที่ผมได้อธิบายไป หากใครสนใจสามารถตามงานของเราได้ที่
https://github.com/OCA/account-budgeting/pull/51
แล้วพบกันใหม่ครับ !
by Kitti U.