Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
8193582
[ADD] hr_timesheet_purchase_order: Add new module to create purchase …
May 23, 2022
e6127a3
Added translation using Weblate (Italian)
francesco-ooops Aug 22, 2022
fc025d6
Translated using Weblate (Italian)
mymage Jan 11, 2023
0af8c66
Update translation files
weblate Oct 9, 2023
3f89fc6
Translated using Weblate (Italian)
mymage Oct 10, 2023
577f8c1
[IMP] hr_timesheet_purchase_order: create PO automatically
dessanhemrayev Jul 6, 2023
207a2c3
[FIX] hr_timesheet_purchase_order: fields for recurrency moved to bil…
dessanhemrayev Feb 1, 2024
fd2c967
[FIX] hr_timesheet_purchase_order: when create PO doesn't work method…
dessanhemrayev Feb 5, 2024
b12dfdf
[FIX] hr_timesheet_purchase_order: fix minor bugs
dessanhemrayev Feb 7, 2024
c68a493
[FIX] hr_timesheet_purchase_order: change product description in PO
dessanhemrayev Feb 9, 2024
0cd1019
Update hr_timesheet_purchase_order/readme/USAGE.rst
dessanhemrayev Feb 12, 2024
96ac53d
[FIX] hr_timesheet_purchase_order: fix product description in PO
dessanhemrayev Feb 12, 2024
f2ea772
[FIX] hr_timesheet_purchase_order: add maintainers
dessanhemrayev Feb 16, 2024
cf27158
[FIX] hr_timesheet_purchase_order: refactoring of the code
dessanhemrayev Feb 17, 2024
af40d41
[FIX] hr_timesheet_purchase_order: Placed in a separate file constant…
dessanhemrayev Feb 18, 2024
aef6431
Translated using Weblate (Italian)
mymage Mar 15, 2024
6af7a24
[FIX] hr_timesheet_purchase_order: remove cetmixgitdrone from maintai…
dessanhemrayev Mar 15, 2024
d4b6d2e
Update translation files
weblate Mar 18, 2024
9cc8590
Translated using Weblate (Italian)
francesco-ooops Mar 19, 2024
1fab53c
[IMP] hr_timesheet_purchase_order: black, isort, prettier
bizzappdev Sep 9, 2025
aedd99b
[MIG] hr_timesheet_purchase_order: Migration to 15.0
bizzappdev Sep 9, 2025
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
117 changes: 117 additions & 0 deletions hr_timesheet_purchase_order/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
===========================
HR Timesheet Purchase Order
===========================

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:8ee916a67e3d61ac27f7e4f0a2499babf868024f27e3b2a9de46b7c7b7a869e8
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Ftimesheet-lightgray.png?logo=github
:target: https://github.com/OCA/timesheet/tree/15.0/hr_timesheet_purchase_order
:alt: OCA/timesheet
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/timesheet-15-0/timesheet-15-0-hr_timesheet_purchase_order
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
:target: https://runboat.odoo-community.org/builds?repo=OCA/timesheet&target_branch=15.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

============================================
Create purchase orders from timesheet sheets
============================================

This module allows you to create Purchase Orders based on the employee timesheet sheet, both manually and automatically. This can be useful for subcontrating and outsourcing.

**Table of contents**

.. contents::
:local:

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

General Settings > Timesheet > Timesheet Options: in field "Purchase Timesheet Product" select the product that will be used in PO to bill timesheet hours.

Usage
=====

Go to Employees app > select an employee > go to HR Settings tab and enable the "Generate POs from timesheet sheet" checkbox
Select the Billing partner which will be the vendor in the created POs
By enabling "Automatic PO generation from timesheet sheets" in Partner > Sales & Purchase tab, user can set the recurrence of PO generation and whether the RFQ report should be sent automatically after creation.

In the Timesheet Sheet form, use the Create Purchase Order button to create a new RFQ.

A server action to create POs is also available in tree view.

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OCA/timesheet/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 <https://github.com/OCA/timesheet/issues/new?body=module:%20hr_timesheet_purchase_order%0Aversion:%2015.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

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

Credits
=======

Authors
~~~~~~~

* Ooops
* Cetmix

Contributors
~~~~~~~~~~~~

* Ooops404 <https://ooops404.com>
* Cetmix <https://cetmix.com>

Other credits
~~~~~~~~~~~~~

* Odoo Community Association: `Icon <https://github.com/OCA/maintainer-tools/blob/master/template/module/static/description/icon.svg>`_.

Maintainers
~~~~~~~~~~~

This module is maintained by the OCA.

.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org

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.

.. |maintainer-dessanhemrayev| image:: https://github.com/dessanhemrayev.png?size=40px
:target: https://github.com/dessanhemrayev
:alt: dessanhemrayev
.. |maintainer-aleuffre| image:: https://github.com/aleuffre.png?size=40px
:target: https://github.com/aleuffre
:alt: aleuffre
.. |maintainer-renda-dev| image:: https://github.com/renda-dev.png?size=40px
:target: https://github.com/renda-dev
:alt: renda-dev

Current `maintainers <https://odoo-community.org/page/maintainer-role>`__:

|maintainer-dessanhemrayev| |maintainer-aleuffre| |maintainer-renda-dev|

This module is part of the `OCA/timesheet <https://github.com/OCA/timesheet/tree/15.0/hr_timesheet_purchase_order>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
1 change: 1 addition & 0 deletions hr_timesheet_purchase_order/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from . import models
32 changes: 32 additions & 0 deletions hr_timesheet_purchase_order/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# Copyright (C) 2024 Cetmix OÜ
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).

{
"name": "HR Timesheet Purchase Order",
"version": "15.0.1.0.0",
"summary": "HR Timesheet Purchase Order",
"author": "Ooops, Cetmix, Odoo Community Association (OCA)",
"license": "AGPL-3",
"category": "Human Resources",
"website": "https://github.com/OCA/timesheet",
"depends": [
"hr_timesheet_sheet",
"purchase",
],
"maintainers": ["dessanhemrayev", "aleuffre", "renda-dev"],
"external_dependencies": {},
"demo": [],
"data": [
"security/ir.model.access.csv",
"data/ir_actions_server.xml",
"data/hr_timesheet_cron.xml",
"views/hr_employee_view.xml",
"views/res_partner_view.xml",
"views/hr_timesheet_sheet_view.xml",
"views/purchase_order_view.xml",
"views/res_config_settings_view.xml",
],
"qweb": [],
"installable": True,
"application": False,
}
11 changes: 11 additions & 0 deletions hr_timesheet_purchase_order/data/hr_timesheet_cron.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo noupdate="1">
<record id="ir_cron_auto_generate_po" model="ir.cron">
<field name="name">HR Timesheet : Auto generate Purchase Order</field>
<field name="model_id" ref="model_hr_timesheet_recurrence" />
<field name="state">code</field>
<field name="code">model._cron_generate_auto_po()</field>
<field name="interval_type">days</field>
<field name="numbercall">-1</field>
</record>
</odoo>
22 changes: 22 additions & 0 deletions hr_timesheet_purchase_order/data/ir_actions_server.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>

<record
id="ir_actions_server_action_create_purchase_order"
model="ir.actions.server"
>
<field name="name">Create Purchase Order</field>
<field name="model_id" ref="model_hr_timesheet_sheet" />
<field name="binding_model_id" ref="model_hr_timesheet_sheet" />
<field
name="groups_id"
eval="[(6, 0, [ref('hr_timesheet.group_timesheet_manager')])]"
/>
<field name="binding_view_types">list</field>
<field name="state">code</field>
<field name="code">
action = records.action_create_purchase_order()
</field>
</record>

</odoo>
Loading