Skip to content

[IMP] Time Off: Updating Allocations #14181

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: 18.0
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
75 changes: 50 additions & 25 deletions content/applications/hr/time_off/allocations.rst
Original file line number Diff line number Diff line change
Expand Up @@ -26,15 +26,17 @@ Click :guilabel:`New` to allocate time off, and a blank :guilabel:`Allocation` f
After entering a name for the allocation on the first blank field of the form, enter the following
information:

- :guilabel:`Name`: Enter a name for the allocation, typically containing the type of time off, and
the period of time it is available (example: `Annual Vacation Time Off - 2025`).
- :guilabel:`Time Off Type`: Using the drop-down menu, select the type of time off that is being
allocated to the employees.
- :guilabel:`Allocation Type`: Select either :guilabel:`Regular Allocation` or :guilabel:`Accrual
Allocation`. If the allocation is **not** based on an :ref:`accrual plan
<time_off/accrual-plans>`, select :guilabel:`Regular Allocation`.
- :guilabel:`Allocation Type`: Select how the allocation is earned, either :guilabel:`Regular
Allocation` if the time off is given immediately, or :guilabel:`Accrual Allocation` if the time
off is earned through an :ref:`accrual plan <time_off/accrual-plans>`.
- :guilabel:`Accrual Plan`: If :guilabel:`Accrual Allocation` is selected for the
:guilabel:`Allocation Type`, the :guilabel:`Accrual Plan` field appears. Using the drop-down menu,
select the accrual plan with which the allocation is associated. An accrual plan **must** be
selected for an :guilabel:`Accrual Allocation`.
select the accrual plan the allocation is associated with. An accrual plan **must** be selected
for an :guilabel:`Accrual Allocation` type.
- :guilabel:`Validity Period/Start Date`: If :guilabel:`Regular Allocation` is selected for the
:guilabel:`Allocation Type`, this field is labeled :guilabel:`Validity Period`. If
:guilabel:`Accrual Allocation` is selected for the :guilabel:`Allocation Type`, this field is
Expand All @@ -45,8 +47,7 @@ information:
allocation, and click on the date to select it.

If the allocation expires, select the expiration date in the next date field. If the time off does
*not* expire, leave the second date field blank. :guilabel:`No Limit` appears in the field if no
date is selected.
*not* expire, leave the second date field blank.

If :guilabel:`Accrual Allocation` is selected for the :guilabel:`Allocation Type`, this second
field is labeled :guilabel:`Run until`.
Expand All @@ -62,20 +63,21 @@ information:
start of the accrual period*, monthly, on the first of the month.

On the allocation form, the :guilabel:`Allocation Type` is set to :guilabel:`Accrual
Allocation`, and the :guilabel:`Start Date` entered is `06/16/24`.
Allocation`, and the :guilabel:`Start Date` entered is `06/16/25`.

Odoo's **Time Off** app retroactively applies the allocation to the beginning of the time
period entered in the :guilabel:`Start Date`.

Therefore, this allocation accrues time from `06/01/24`, rather than `06/16/24`.
Therefore, this allocation accrues time from `06/01/25`, rather than `06/16/25`.

Additionally, if on the accrual form, the allocation references an accrual plan that grants
time *`At the end of the accrual period*, the allocation accrues time from `7/01/24` rather
than `6/18/24`.
time *At the end of the accrual period*, the allocation accrues time from `7/01/25` rather than
`6/18/25`.

- :guilabel:`Allocation`: Enter the amount of time that is being allocated to the employees. This
field displays the time in either :guilabel:`Hours` or :guilabel:`Days`, depending on how the
selected :ref:`Time Off Type <time_off/time-off-types>` is configured.
- :guilabel:`Employee`: Using the drop-down menu, select the employee being allocated the time off.
- :guilabel:`Add a reason...`: If any description or note is necessary to explain the time off
allocation, enter it in this field at the bottom of the form.

Expand All @@ -91,13 +93,13 @@ using the :guilabel:`Multiple Requests` feature.

To allocate time to multiple employees in a single allocation, navigate to :menuselection:`Time Off
app --> Management --> Allocations`. Then, click the :icon:`fa-gear` :guilabel:`(Actions)` icon in
the upper-left corner, then click :icon:`fa-users` :guilabel:`Multiple Requests`. This reveals a
:guilabel:`Multiple Requests` pop-up window.
the upper-left corner, then click :guilabel:`Multiple Requests`. This reveals a :guilabel:`Multiple
Requests` pop-up window.

This form is identical to the :guilabel:`Allocation` form, with an additional :guilabel:`Mode`
field. The :guilabel:`Mode` field determines how multiple employees are selected.
This form is identical to the :ref:`Allocation form <time_off/allocation-form>`, with an additional
:guilabel:`Mode` field. The :guilabel:`Mode` field determines how multiple employees are selected.

Using the drop-down menu, select one of the following :guilabel:`Modes`:
Using the drop-down menu, select a :guilabel:`Mode` from one of the following options:

- :guilabel:`By Employee`: This option allows for the selection of multiple individual employees
that are unrelated in terms of department, company, or tags. Selecting this reveals an
Expand Down Expand Up @@ -126,9 +128,31 @@ desired.
Fill out the remainder of the :ref:`Multiple Requests form <time_off/allocation-form>`, then click
:guilabel:`Create Allocations` when done.

.. image:: allocations/multiple-requests.png
:alt: An allocation request form filled out for sick time for all employees within the sales
department.
.. example::
A company hosts an annual picnic, including a raffle. There are five raffle prizes for a free
vacation day, which must be redeemed by the end of the year. The winners of this raffle all have
the tag `Raffle Winner - 2025 Employee Picnic Prize` added to their employee profiles.

The time off officer creates multiple allocations, and configures the :ref:`Multiple Requests
form <time_off/allocation-form>` as follows:

The name for the allocation is :guilabel:`Vacation Day - Raffle Prize - 2025 Picnic`. The
:guilabel:`Mode` is set to :guilabel:`By Employee Tag`, and the :guilabel:`Tag` identified is
:guilabel:`Raffle Winner - 2025 Employee Picnic Prize`.

The :guilabel:`Time Off Type` is set to :guilabel:`Vacation Time Off`, with the
:guilabel:`Allocation Type` set to :guilabel:`Regular Allocaiton`, since the time off is given up
front, and is not *earned*.

The :guilabel:`Validity Period` is set to :guilabel:`07/18/2025` :icon:`oi-arrow-right`
:guilabel:`12/31/2025`, since the compnay picnic was that day, and the earned vacation day
expires at the end of the year.

The :guilabel:`Allocation` is set to :guilabel:`1.00 Days`, and `A bonus vacation day won at the
annual Company Picnic.` appears in the details at the bottom.

.. image:: allocations/multiple-requests.png
:alt: An allocation request form filled out for a bonus vacation day for raffle winners.

.. _time_off/request-allocation:

Expand All @@ -146,13 +170,15 @@ list view. Both buttons open a new allocation request form.
.. note::
Both options open a new allocation request form, but when requested from the
:guilabel:`Dashboard`, the form appears in a pop-up window, and the *Validity Period* field does
**not** appear. When requested from the :guilabel:`My Allocations` list view, the screen
navigates to a new allocation request page, instead of presenting a pop-up window.
**not** appear.

When requested from the :guilabel:`My Allocations` list view, the screen navigates to a new
allocation request page, instead of presenting a pop-up window.

Enter the following information on the new allocation request form:

- :guilabel:`Time Off Type`: Select the type of time off being requested for the allocation from the
drop-down menu. After a selection is made, the title updates with the time off type.
- :guilabel:`Time Off Type`: Using the drop-down menu, select the type of time off being requested
for the allocation. After a selection is made, the title updates with the time off type.
- :guilabel:`Validity Period`: By default, the current date populates this field, and it is **not**
able to be modified. This field **only** appears when requesting an allocation from the
:guilabel:`My Allocations` view (:menuselection:`Time Off --> My Time --> My Allocations`).
Expand All @@ -167,8 +193,7 @@ If the request was created from the :guilabel:`Dashboard`, click the :guilabel:`
on the :guilabel:`New Allocation` pop-up window to save the information and submit the request.

If the form was completed from the :guilabel:`My Allocations` list view, the information is
automatically saved as it is entered. However, the form can be saved manually at any time by
clicking the :icon:`fa-cloud-upload` :guilabel:`(cloud upload)` icon.
automatically saved as it is entered.

.. image:: allocations/allocation-request.png
:alt: An allocation request form filled out for an employee requesting an additional week of
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified content/applications/hr/time_off/allocations/new-allocation.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.