Compare commits

..

8 Commits

Author SHA1 Message Date
Fabrice Henrion
0a9875e3b7 [IMP] Persistent notifications on Android 2025-08-03 18:53:29 +02:00
Thomas Becquevort (thbe)
e89b8a114c [FIX] developer: wrong import path for Form module in tests
Since f5e7c67892, Form is in odoo.tests and not in odoo.tests.common anymore

task-none

closes odoo/documentation#14199

X-original-commit: 08f66ab000
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Thomas Becquevort (thbe) <thbe@odoo.com>
2025-08-01 11:34:02 +00:00
Audrey (auva)
5357098a6b [FIX] database management: iOS app note
The iOS app can technically be udpdated, but might not be in the future.

closes odoo/documentation#14206

X-original-commit: 37ed68b2df
Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
2025-08-01 07:26:06 +00:00
Odoo's Mergebot
fa061c502d [IMP] Payroll: Updates to UAE Localization
Updating doc according to [this task](https://www.odoo.com/odoo/project.task/4941628).

closes odoo/documentation#14207

Forward-port-of: odoo/documentation#14109
Signed-off-by: Lara Martini (larm) <larm@odoo.com>
2025-07-31 21:36:17 +00:00
larm-odoo
210251a1ed [IMP] Payroll: Update UAE Localization
updated per MOAH review

removed extra space

X-original-commit: 39616844ba
2025-07-31 21:06:25 +00:00
larm-odoo
421445baf2 [IMP] Payroll: Update UAE Localization
X-original-commit: f99eeadca0
2025-07-31 21:06:25 +00:00
Bastien PIERRE
fa241f6994 [IMP] web: datetime new format and numeric attribute
closes odoo/documentation#14179

Related: odoo/odoo#218387
Related: odoo/enterprise#89968
Related: odoo/upgrade#8043
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2025-07-31 08:43:12 +00:00
guillaume gallant (guga)
1dfce01d8c [ADD] Project: add visibility and collaboration to project management page
task-4946930

closes odoo/documentation#14168

X-original-commit: 5bf999c002
Signed-off-by: Xavier Platteau (xpl) <xpl@odoo.com>
Signed-off-by: Audrey Vandromme (auva) <auva@odoo.com>
2025-07-30 18:50:37 +00:00
4 changed files with 84 additions and 16 deletions

View File

@@ -33,6 +33,10 @@ instructions to install a PWA depend on the platform and browser used.
The PWA can also be installed with **Samsung Internet**, **Edge**, and **Opera**.
In order to receive push notifications even when the PWA or Chrome are not opened, go to the
**App info** by long-pressing the PWA icon, allow the **Notifications** permission, disable the
**Manage app if unused** toggle, and enable the **App battery usage ‣ Allow background usage** toggle.
.. tab:: iOS
**Safari**: open the **Share** menu by tapping the square with an arrow pointing upwards icon,
@@ -62,6 +66,6 @@ The Odoo mobile apps are available for download on the `Google Play Store
<https://apps.apple.com/app/odoo/id1272543640>`_.
.. important::
The iOS app cannot be updated and will be deprecated at some point in the future.
The iOS app might not be updated and might be deprecated at some point in the future.
While the store apps support multi-accounts, they are not compatible with SSO authentication.

View File

@@ -84,8 +84,10 @@ found under the :guilabel:`Salary Information` tab:
- Do not tick this checkbox if the standard calculation is to be used. This computes the
compensation amount by dividing the monthly salary by **30** and then multiplying it by **21**.
- Tick this checkbox and directly set the actual :guilabel:`Daily Salary` so that it is
used in the end of service calculation.
- Tick this checkbox and directly set the actual :guilabel:`Daily Salary` so that it is used in
the end of service calculation.
- Tick this checkbox and directly set the actual :guilabel:`Daily Salary` so that it is used in
the end of service calculation.
Salary structures and salary rules
==================================
@@ -227,9 +229,8 @@ There are **3 cases** for the employee to have:
The SLI is not mandatory in Odoo but can be done from the setup of the :ref:`time off types
<time_off/time-off-types>`.
#. **50% paid sick leave:** Same as the fully paid one, but the employees are eligible for
**30 days** from this leave type. These 30 days are counted after the first **15** fully paid
days.
#. **50% paid sick leave:** Same as the fully paid one, but the employees are eligible for **30
days** from this leave type. These 30 days are counted after the first **15** fully paid days.
#. **0% paid sick leave:** Same as the fully paid one, but the employees are eligible for **45
days** from this leave type. These **45 days** are counted after the first **15/30**
fully/half-paid days.
@@ -238,8 +239,7 @@ There are **3 cases** for the employee to have:
As per the labor law of the United Arab Emirates, the 15, 30, 45 days are not specified as
working days or calendar days so this point will rely on the company policy.
The amount paid for the employee per sick leave day is counted as
follows:
The amount paid for the employee per sick leave day is counted as follows:
.. math::
:class: overflow-scroll
@@ -351,16 +351,36 @@ Two printout formats can be extracted from the payslip, it depends on the type o
a *Monthly* payslip or an *End of Service* Payslip. It is triggered if the employee for the payslip
is generated is archived during that month.
Master report
=============
Instant Pay structure
=====================
The *Master report* provides a detailed view of the amounts paid to employees for a specific period
based on the payslips that are generated for them during that period with payslip lines being set as
columns in an Excel report.
This structure is used when off-cycle payslips are required to make payments to employees for
special situations, such as one-time or advance salaries. Examples of one-time payments include:
It is mainly used to make the auditing process for the human resources department easier and faster.
- Commissions
- Bonuses
- Allowances
To access this report, go to :menuselection:`Payroll --> Reporting --> Master Report`.
Salary Advances
===============
Employees may request a portion of their salary before the end of the pay cycle. In such cases, the
payroll officer can issue a salary advance using the following steps:
#. Create an off-cycle payslip using the United Arab Emirates: Instant Pay structure.
#. Add another input of type Salary Advance and specify the amount to be paid to the employee.
#. Confirm the payslip and process the payment.
In the next cycle, when a payslip is generated for the employee using the `United Arab Emirates:
Regular Pay` structure, another input type, `Advance Recovery` is automatically added for the same
amount that was previously paid.
.. tip::
If the employee and payroll officer agree to recover the advance over two consecutive cycles, the
payroll officer can adjust the Advance Recovery amount on the first payslip. The remaining
balance is automatically added to the following cycle.
.. _payroll/l10n_ae/wps-reports:

View File

@@ -62,6 +62,50 @@ Additionally, you can mark the project as :guilabel:`Favorite`, allowing you to
Further settings are available under the :guilabel:`Settings` tab. Most of them are *only* available
depending on the activated apps.
Visibility and collaboration
----------------------------
Odoo allows you to set visibility settings for each project, enabling you to make your project
available to everyone in your organization or restrict access to certain internal or external users.
To do so, go to the project's :guilabel:`Settings` tab and choose the desired :guilabel:`Visibility`
option:
- :guilabel:`Invited internal users (private)`: Only users following the project and users with the
Project Administrator :doc:`access right </applications/general/users/access_rights>` can
access the project and its tasks.
- :guilabel:`All internal users`: All internal users can access the project and all of its tasks.
- :guilabel:`Invited portal users and all internal users (public)`: All internal users can access
the project and all of its tasks. When following a project, :doc:`portal users
</applications/general/users/portal>` only have access to the specific tasks they are following.
This option is selected by default.
Inviting external users
-----------------------
To invite external users, make sure that :guilabel:`Invited portal users and all internal users
(public)` is selected, then click :guilabel:`Share Project` at the top of the projects settings.
The following options are available:
- Copy and share the :guilabel:`Public Link` displayed at the top of the pop-up window. Anyone with
this link can access the project in read mode.
- Or click :guilabel:`Add a line`, select a :guilabel:`Collaborator`, choose the
:guilabel:`Access Mode`, and check the box to send an invitation to their email address.
There are three types of :guilabel:`Access Mode` for collaborators:
- :guilabel:`Read`: Collaborators can view tasks but cannot edit them.
- :guilabel:`Edit with limited access`: Collaborators can view and edit the tasks they follow.
- :guilabel:`Edit`: Collaborators can view and edit all tasks.
To revoke an invited collaborator's access, click :guilabel:`Share Project` at the top of the
projects settings, then click the :icon:`fa-trash-o` :guilabel:`(trash)` icon.
.. note::
Internal users without access to the project can still access a task if the URL has been shared
with them. For projects set as :guilabel:`Invited internal users (private)`, they must also
be a follower of the task.
Scheduling activities
=====================

View File

@@ -213,7 +213,7 @@ Here are a few things to take into consideration before writing a test
.. note:: Remember that ``onchange`` only applies in the Form views, not by changing the attributes
in python. This also applies in the tests. If you want to emulate a Form view, you can use
``odoo.tests.common.Form``.
``odoo.tests.Form``.
The tests should be in a ``tests`` folder at the root of your module. Each test file name
should start with `test_` and be imported in the ``__init__.py`` of the test folder. You shouldn't