Toggle navigation

Sale Timesheet Rounded

Beta License: AGPL-3 OCA/timesheet Translate me on Weblate Try me on Runboat

Round timesheet lines amounts in sales based on project” settings.

A typical use case is: you work 5 minutes but you want to invoice 15 minutes.

With this module you can configure a rounding unit or factor on the project and all the lines tracked on this project’s tasks will show a rounded amount.

If you want you can override the value manually on each entry.

The delivered quantity on the sale order line - and by consequence on the invoice - will be computed using the rounded amount. Therefore, expense lines and other non-timesheet lines will be updated with a rounded amount that is equal to the amount.

WARNING: This module cannot be used with timesheet_grid without further adapation as an update of an existing timesheet line will NOT update the rounded amount. To achieve this, you need to override adjust_grid function to pass the force_compute context key.

Table of contents

Configuration

Go to a project and set the following fields according to your needs:

  • Timesheet rounding unit

Defines the rounding unit. For instance, if you want to round to 1 hour, you can set 1.0. If you want to round to 15 min set 0.25.

  • Timesheet rounding method

Options: «No» (default), «Closest», «Up», «Down».

Please refer to odoo.tools.float_utils.float_round to understand the difference.

  • Timesheet rounding factor (percentage)

When round unit is not defined you can round by a fixed %.

When using both a unit and a factor, the factor will be applied first:

result = round(amount * percentage, unit)

Known issues / Roadmap

  • improve test coverage

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.

Credits

Authors

  • Camptocamp

Contributors

Maintainers

This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

This module is part of the OCA/timesheet project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.