Skip to content

Commit

Permalink
[IMP] accounting: update the analytic budgets page
Browse files Browse the repository at this point in the history
task-4237563
task-4257623
  • Loading branch information
afma-odoo committed Nov 5, 2024
1 parent 73638c0 commit 9b6025d
Show file tree
Hide file tree
Showing 8 changed files with 84 additions and 70 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ Configuration
Enable the :guilabel:`Analytic Accounting` feature by going to :menuselection:`Accounting -->
Configuration --> Settings --> Analytics`.

.. _accounting/analytic_accounting/analytic_accounts:

Analytic accounts
=================

Expand Down
152 changes: 82 additions & 70 deletions content/applications/finance/accounting/reporting/budget.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,101 +2,113 @@
Analytic budgets
================

Managing budgets is an essential part of running a business. Budgets help people become more
intentional with how money is spent and direct people to organize and prioritize their work to meet
financial goals. They allow the planning of a desired financial outcome and then measure the actual
performance against the plan. Odoo manages budgets using both **general** and **analytic accounts**.
:guilabel:`Analytic Budgets` track and forecast specific activities, helping businesses make
informed decisions about internal operations. They allow for allocating and tracking income and
expenses in detail, breaking down costs and revenues by specific projects, departments, or
activities. Analytic budgets can be applied across various departments or projects to measure
profitability and performance. Odoo manages analytic budgets using
:doc:`analytic accounting <analytic_accounting>`.

.. note::
:guilabel:`Financial budgets`, available in the :guilabel:`Profit and Loss` report, are linked to
the general ledger and focus on the company’s overall economic position. They are structured
around specific accounts and transactions for official financial reporting and compliance
purposes.

.. _accounting/reporting/analytic-budget/configuration:

Configuration
=============

Go to :menuselection:`Accounting --> Configuration --> Settings --> Analytics section`, and enable
:guilabel:`Budget Management`.
Go to :menuselection:`Accounting --> Configuration --> Settings`, and enable
:guilabel:`Budget Management` in the :guilabel:`Analytics` section.

Budgetary positions
-------------------
.. _accounting/reporting/analytic-budget/analytic-accounting:

Budgetary positions are lists of accounts for which you want to keep budgets (typically expense or
income accounts).
Analytic accounting
===================

To define budgetary positions, go to :menuselection:`Accounting --> Configuration --> Management:
Budgetary Positions` and :guilabel:`New`. Add a :guilabel:`Name` to your budgetary position and
select the :guilabel:`Company` it applies to. Click :guilabel:`Add a line` to add one or more
accounts.
Odoo structures budgets using :ref:`accounts <analytic_accounting/analytic_plans>` and
:ref:`accounts <accounting/analytic_accounting/analytic_accounts>`, which must be configured
*before* creating a budget.

.. note::
Each budgetary position can have any number of accounts from the chart of accounts, though it
must have at least one.
.. _accounting/reporting/analytic-budget/budget:

Use case
========
Set a budget
============

Let’s illustrate this with an example.
To create a new budget, go to :menuselection:`Accounting --> Analytic Budgets` and click
:guilabel:`New`.
Make sure the following fields are appropriately completed: :guilabel:`Budget Name`,
:guilabel:`Period`, and :guilabel:`Budget Type`.

We just started a project with *Smith & Co*, and we would like to budget the income and expenses of
that project. We plan on having a revenue of 1000, and we don’t want to spend more than 700.
Click :guilabel:`Add a line` in the :guilabel:`Budget Lines` tab to structure the budget according
to the analytic plans and accounts previously created.
While the analytic plans correspond to the column names, select the analytic accounts to define the
budget lines and set the chosen amounts for each in the :guilabel:`Budgeted` column. Once all the
budget lines are settled, click :guilabel:`Open`.
If changes need to be done once the budget is in the :guilabel:`Open` status, there are two options:

First, we need to define what accounts relate to our project’s expenses. Go to
:menuselection:`Accounting --> Configuration --> Management: Budgetary positions`, and click
:guilabel:`New` to add a position. Add the accounts wherein expenses will be booked.
- :guilabel:`Reset to Draft`: To overwrite the data, then reopen the budget.
- :guilabel:`Revise`: A new budget will be created. Once it is set to the :guilabel:`Open` status,
Odoo will add a :guilabel:`Rev` reference to the :guilabel:`Budget name`. The original budget has
then the :guilabel:`Revised` status.

.. image:: budget/smith-and-co-expenses.png
:align: center
:alt: display the Smith and Co expenses
.. _accounting/reporting/analytic-budget/budget-check:

Let's repeat the steps to create a budgetary position that reflects the revenue.
Check a budget
==============

.. image:: budget/smith-and-co-revenue.png
:align: center
:alt: display the Smith and Co revenue
Once the budget is in the :guilabel:`Open` status, two additional columns are available:
:guilabel:`Committed` and :guilabel:`Achieved`. Their amounts are automatically calculated based on
the vendor bills/invoices and their related analytic distribution. They evolve when a new journal
entry linked to the analytic account is created. The :guilabel:`Achieved` amount reflects the
current result according to the expenses or income for the associated analytic account. In contrast,
the :guilabel:`Committed` amount displays what has already been purchased or sold, regardless of
whether it has been billed or invoiced.

Analytical accounts
-------------------

Odoo needs to know which costs or expenses are relevant to a specified budget, as the above general
accounts may be used for different projects. Go to :menuselection:`Accounting --> Configuration -->
Analytic Accounting: Analytic Accounts` and click :guilabel:`New` to add a new **Analytic Account**
called *Smith & Co*.
.. note::
For budgets in the :guilabel:`Open` status, when a purchase order created with the associated
analytic distribution exceeds the amount budgeted, the related purchase order line turns red.

The :guilabel:`Plan` field has to be completed. Plans group multiple analytic accounts; they
distribute costs and benefits to analyze business performance. **Analytic Plans** can be created or
configured by going to :menuselection:`Accounting --> Configuration --> Analytic Accounting:
Analytic Plans`.
To reveal the :guilabel:`Theoretical` amount or percentage, use the :icon:`oi-settings-adjust`
(:guilabel:`settings adjust`) icon in the far right of the budget top row. The
:guilabel:`Theoretical` represents the amount of money that could theoretically have been spent or
should have been received based on the date.
To open the reporting view, click :guilabel:`Details` and filter the budget lines and columns of
the pivot table.

When creating a new customer invoice and/or vendor bill, you have to refer to this analytic account.
.. image:: budget/budget.png
:alt: open budget with committed, achieved and theoretical amounts

.. image:: budget/analytic-accounts.png
:align: center
:alt: add analytic accounts in a new invoice or bill.
.. note::
Deletion of a budget is only allowed in the :guilabel:`Draft` and :guilabel:`Cancelled` stages.

Define the budget
-----------------
To view all the different budget lines directly from the :guilabel:`Budgets` view, select the
:guilabel:`Budget Name` and click :guilabel:`Budget Lines`.

Let’s set our targets. We specified that we expect to gain 1000 with this project, and we would like
not to spend more than 700. Go to :menuselection:`Accounting --> Management: Budgets` and click
:guilabel:`New` to create a new budget for *Smith & Co* project.
.. _accounting/reporting/analytic-budget/budget-generate:

First, fill in your :guilabel:`Budget Name`. Then, select the :guilabel:`Period` wherein the budget
is applicable. Next, add the :guilabel:`Budgetary Position` you want to track, define the related
:guilabel:`Analytic Account`, and add the :guilabel:`Planned Amount`.
Generate periodical budgets
---------------------------

.. image:: budget/define-the-budget.png
:align: center
:alt: budget lines display
The :guilabel:`Generate` option allows the creation of multiple budget periods. To do so, select the
budget and click :guilabel:`Generate` to open the :guilabel:`Generate Budget` window. Set the dates,
select the :guilabel:`Period` and the :guilabel:`Analytic Plans`, then click :guilabel:`Split`.

.. Note::
When recording a planned amount related to expenses, the amount must be negative.
.. image:: budget/generate-budgets.png
:alt: all the options to generate periodical budgets

Check your budget
-----------------
.. _accounting/reporting/analytic-budget/budget-reporting:

Go to :menuselection:`Accounting --> Management: Budgets` and find the *Smith & Co* Project to see
how it evolves according to the expenses or income for the related analytic account.
Reporting
=========

The :guilabel:`Practical Amount` evolves when a new journal entry related to your analytic account
and an account from your budgetary position is created.
To perform various reporting actions, go to :menuselection:`Accounting --> Reporting -->
Budget Report`, then:

The :guilabel:`Theoretical Amount` represents the amount of money you theoretically could have spent
or should have received based on the date. For example, suppose your budget is 1200 for 12 months
(January to December), and today is 31 of January. In that case, the theoretical amount will be 100
since this is the actual amount that could have been made.
- Track, analyze, and compare budget data.
- Filter and group Data using the :icon:`fa-plus-square` (:guilabel:`plus-square`) or
:icon:`fa-minus-square` (:guilabel:`minus-square`) icon.
- Drill down into the report to see more detail on the actual amounts and transactions.
- Export for further analysis or reporting needs.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Binary file not shown.

0 comments on commit 9b6025d

Please sign in to comment.