account-budgeting
account-budgeting copied to clipboard
[12.0][ADD] budget_control [WIP]
Note: start in [12.0] budget expected to continue in [13.0] as soon an required dependencies are ready.
Overview of Budget Control for Public Sector
This is a set of modules aimed for efficiently manage budgeting for public sector. It will include the following features,
- Budget Period For control period, i.e., 1 fiscal year, a central configurator on how budget will be control over the period.
- Budget Control Sheet For each costcenter/project (analytic account), there will be 1 control sheet per control period, allowing user to do the planning and then approval on how much budget allocated in each expense category.
- Budget Commitment (budget moves) In addition to invoiced amount (actual), system can now track budget commitment on all related documents for PR/PO/EX or SO. This give ability to control budget since the beginning.
- Budget Controlling Ability to block the confirmation of any document that will result in overall consumed amount (PR+PO+INV) exceed the allocated budget.
- Budget Transfer During the control period, ability to transfer budget from one analytic account to another.
- Budget Year End Closing Process
- Budget allocation carry forward. Allocated amount remain form older period, to be carried into the new period.
- Budget commitment carry over, ie.., PR/PO, from the old period, to also moved to commit in the new period.
- Multi Dimensions Extend the analytic_tag_dimension module to cover all document required. This will ensure that, the reporting is more useful when compare more dimensions
- Budget Reporting Enhance the mis builder report, i.e., to be more fined grained when displaying the report. Budget Monitoring Report that can see the entire picture of budget, using Odoo BI. Some other useful report.
Current WIP: https://github.com/OCA/account-budgeting/pull/35
Budget Process

Before new Fiscal Year
-
Prepare new Budget Period
- Budget Manager :: Create budget period for new fiscal year, identify all expense group.
-
Create Budget Control Sheets
- Budget Manager :: Prepare draft (inactive) budget control sheet with allocated budget for every budget code (analytic)
- Budget Approval Process (optional)
- Budget User :: Submit budget control sheet through final approval process in order to activate the budget (Optional step). At this point, each budget code (analytic) will have remaining balance to use.
During Fiscal Year
- Budget Commitment and Actual
- Budget commitment on PR/PO/EX
- Budget actual in INV
- Budget Balance = Budget Allocation - Budget Consumed (all commit + actual)
- Budget Monitoring and Control
- Budget Manager and Users will have visibility of all budgets (based on permission)
- At any point, if the confirmation of a any document will result in Budget Balance < 0.0, system will block the document confirm and show warning message that budget is not enough
- Budget Transfer
- Budget User and Budget Manager :: can always transfer unused budget from one budget code (analytic) to another. Optional approval process is possible. During budget transfer process, budget will be locked for transferring budget code (analytic).
Year End Closing Process
In additional to normal account closing process, we will have a new budget closing process too.
-
Budget Commitment Carry Forward
- Budget Manager :: can see all document (PR/PO/EX) with commitment amount of the current fiscal year, after confirm, those commitment amount will be moved to next fiscal year.
-
Budget Initial Allocation
- Budget Manager :: can use commitment amount forwarded as the initial budget allocation.
cc @sbidoul @lmignon This will be the scope I try to achieved.