Initial commit: Project packages

This commit is contained in:
Ernad Husremovic 2025-08-29 15:20:52 +02:00
commit 89613c97b0
753 changed files with 496325 additions and 0 deletions

View file

@ -0,0 +1,47 @@
# Project Purchase
Odoo addon: project_purchase
## Installation
```bash
pip install odoo-bringout-oca-ocb-project_purchase
```
## Dependencies
This addon depends on:
- purchase
- project
## Manifest Information
- **Name**: Project Purchase
- **Version**: 1.0
- **Category**: Services/Project
- **License**: LGPL-3
- **Installable**: False
## Source
Based on [OCA/OCB](https://github.com/OCA/OCB) branch 16.0, addon `project_purchase`.
## License
This package maintains the original LGPL-3 license from the upstream Odoo project.
## Documentation
- Overview: doc/OVERVIEW.md
- Architecture: doc/ARCHITECTURE.md
- Models: doc/MODELS.md
- Controllers: doc/CONTROLLERS.md
- Wizards: doc/WIZARDS.md
- Reports: doc/REPORTS.md
- Security: doc/SECURITY.md
- Install: doc/INSTALL.md
- Usage: doc/USAGE.md
- Configuration: doc/CONFIGURATION.md
- Dependencies: doc/DEPENDENCIES.md
- Troubleshooting: doc/TROUBLESHOOTING.md
- FAQ: doc/FAQ.md

View file

@ -0,0 +1,32 @@
# Architecture
```mermaid
flowchart TD
U[Users] -->|HTTP| V[Views and QWeb Templates]
V --> C[Controllers]
V --> W[Wizards Transient Models]
C --> M[Models and ORM]
W --> M
M --> R[Reports]
DX[Data XML] --> M
S[Security ACLs and Groups] -. enforces .-> M
subgraph Project_purchase Module - project_purchase
direction LR
M:::layer
W:::layer
C:::layer
V:::layer
R:::layer
S:::layer
DX:::layer
end
classDef layer fill:#eef8ff,stroke:#6ea8fe,stroke-width:1px
```
Notes
- Views include tree/form/kanban templates and report templates.
- Controllers provide website/portal routes when present.
- Wizards are UI flows implemented with `models.TransientModel`.
- Data XML loads data/demo records; Security defines groups and access.

View file

@ -0,0 +1,3 @@
# Configuration
Refer to Odoo settings for project_purchase. Configure related models, access rights, and options as needed.

View file

@ -0,0 +1,3 @@
# Controllers
This module does not define custom HTTP controllers.

View file

@ -0,0 +1,6 @@
# Dependencies
This addon depends on:
- [purchase](../../odoo-bringout-oca-ocb-purchase)
- [project](../../odoo-bringout-oca-ocb-project)

View file

@ -0,0 +1,4 @@
# FAQ
- Q: Which Odoo version? A: 16.0 (OCA/OCB packaged).
- Q: How to enable? A: Start server with --addon project_purchase or install in UI.

View file

@ -0,0 +1,7 @@
# Install
```bash
pip install odoo-bringout-oca-ocb-project_purchase"
# or
uv pip install odoo-bringout-oca-ocb-project_purchase"
```

View file

@ -0,0 +1,13 @@
# Models
Detected core models and extensions in project_purchase.
```mermaid
classDiagram
class project_project
class purchase_order_line
```
Notes
- Classes show model technical names; fields omitted for brevity.
- Items listed under _inherit are extensions of existing models.

View file

@ -0,0 +1,6 @@
# Overview
Packaged Odoo addon: project_purchase. Provides features documented in upstream Odoo 16 under this addon.
- Source: OCA/OCB 16.0, addon project_purchase
- License: LGPL-3

View file

@ -0,0 +1,3 @@
# Reports
This module does not define custom reports.

View file

@ -0,0 +1,8 @@
# Security
This module does not define custom security rules or access controls beyond Odoo defaults.
Default Odoo security applies:
- Base user access through standard groups
- Model access inherited from dependencies
- No custom row-level security rules

View file

@ -0,0 +1,5 @@
# Troubleshooting
- Ensure Python and Odoo environment matches repo guidance.
- Check database connectivity and logs if startup fails.
- Validate that dependent addons listed in DEPENDENCIES.md are installed.

View file

@ -0,0 +1,7 @@
# Usage
Start Odoo including this addon (from repo root):
```bash
python3 scripts/nix_odoo_web_server.py --db-name mydb --addon project_purchase
```

View file

@ -0,0 +1,3 @@
# Wizards
This module does not include UI wizards.

View file

@ -0,0 +1,3 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from . import models

View file

@ -0,0 +1,15 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
{
'name': "Project Purchase",
'version': '1.0',
'summary': "Monitor purchase in project",
'category': 'Services/Project',
'depends': ['purchase', 'project'],
'demo': [
'data/project_purchase_demo.xml',
],
'auto_install': True,
'license': 'LGPL-3',
}

View file

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data noupdate="1">
<function model="purchase.order.line" name="write">
<value model="purchase.order.line" search="[('product_id', 'in', [ref('product.product_delivery_01'), ref('product.product_product_27')]), ('order_id', '=', ref('purchase.purchase_order_1'))]"/>
<value eval="{'analytic_distribution': {ref('analytic.analytic_our_super_product'): 100}}"/>
</function>
</data>
</odoo>

View file

@ -0,0 +1,54 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Language-Team: Afrikaans (https://app.transifex.com/odoo/teams/41243/af/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: af\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr ""

View file

@ -0,0 +1,54 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Language-Team: Amharic (https://app.transifex.com/odoo/teams/41243/am/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: am\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr ""

View file

@ -0,0 +1,59 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Martin Trigaux, 2022
# Malaz Abuidris <msea@odoo.com>, 2023
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Malaz Abuidris <msea@odoo.com>, 2023\n"
"Language-Team: Arabic (https://app.transifex.com/odoo/teams/41243/ar/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ar\n"
"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "عدد أوامر الشراء "
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "التكاليف الأخرى "
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "المشروع"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "عناصر أمر البيع "
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "بند أمر الشراء"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "أوامر الشراء"

View file

@ -0,0 +1,59 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Jumshud Sultanov <cumshud@gmail.com>, 2022
# erpgo translator <jumshud@erpgo.az>, 2023
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: erpgo translator <jumshud@erpgo.az>, 2023\n"
"Language-Team: Azerbaijani (https://app.transifex.com/odoo/teams/41243/az/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: az\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Layihə"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Satınalma Sifariş Xətti"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Satın Alma Sifarişi"

View file

@ -0,0 +1,54 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Language-Team: Belarusian (https://app.transifex.com/odoo/teams/41243/be/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: be\n"
"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr ""

View file

@ -0,0 +1,61 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# aleksandar ivanov, 2023
# Maria Boyadjieva <marabo2000@gmail.com>, 2023
# Martin Trigaux, 2023
# Elena Varbanova, 2024
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Elena Varbanova, 2024\n"
"Language-Team: Bulgarian (https://app.transifex.com/odoo/teams/41243/bg/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: bg\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "# Поръчки за покупка"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Проект"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "Артикули от поръчка за покупка"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Ред на поръчка за покупка"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Поръчки за покупки"

View file

@ -0,0 +1,54 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2024-02-06 13:32+0000\n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "# Nalozi u nabavi"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "Ostali troškovi"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Projekt"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "Stavke nabavnog naloga"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Stavka naloga nabave"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Nalozi u nabavi"

View file

@ -0,0 +1,62 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Quim - eccit <quim@eccit.com>, 2022
# Martin Trigaux, 2022
# Manel Fernandez Ramirez <manelfera@outlook.com>, 2022
# marcescu, 2022
# Ivan Espinola, 2023
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Ivan Espinola, 2023\n"
"Language-Team: Catalan (https://app.transifex.com/odoo/teams/41243/ca/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ca\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "# Ordres de compra"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "Altres costos"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Projecte"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "Elements de comanda de compra"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Línia de la comanda de compra"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Comandes de compra"

View file

@ -0,0 +1,61 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Jiří Podhorecký <jirka.p@volny.cz>, 2022
# Martin Trigaux, 2022
# karolína schusterová <karolina.schusterova@vdp.sk>, 2022
# Tereza Mokrá, 2024
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Tereza Mokrá, 2024\n"
"Language-Team: Czech (https://app.transifex.com/odoo/teams/41243/cs/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: cs\n"
"Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "Ostatní náklady"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Projekt"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "Položky objednávky"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Řádek objednávky"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Objednávky"

View file

@ -0,0 +1,58 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Martin Trigaux, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Martin Trigaux, 2022\n"
"Language-Team: Danish (https://app.transifex.com/odoo/teams/41243/da/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: da\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "Andre Omkostninger"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Projekt"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Indkøbsordrelinie"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Indkøbsordrer"

View file

@ -0,0 +1,59 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Martin Trigaux, 2022
# Larissa Manderfeld, 2023
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Larissa Manderfeld, 2023\n"
"Language-Team: German (https://app.transifex.com/odoo/teams/41243/de/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: de\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "# Bestellungen"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "Andere Kosten"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Projekt"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "Bestellpositionen"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Bestellzeile"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Bestellungen"

View file

@ -0,0 +1,60 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Martin Trigaux, 2022
# Pedro M. Baeza <pedro.baeza@tecnativa.com>, 2022
# Wil Odoo, 2024
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Wil Odoo, 2024\n"
"Language-Team: Spanish (https://app.transifex.com/odoo/teams/41243/es/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: es\n"
"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "# Pedidos de compra"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "Otros costes"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Proyecto"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "Elementos del pedido de compra"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Línea de pedido de compra"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Pedidos de compra"

View file

@ -0,0 +1,60 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Martin Trigaux, 2022
# Lucia Pacheco, 2022
# Fernanda Alvarez, 2023
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Fernanda Alvarez, 2023\n"
"Language-Team: Spanish (Mexico) (https://app.transifex.com/odoo/teams/41243/es_MX/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: es_MX\n"
"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "# Órdenes de compra"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "Otros gastos"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Proyecto"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "Artículos de la orden de compra"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Línea de orden de compra"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Órdenes de compra"

View file

@ -0,0 +1,60 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Eneli Õigus <enelioigus@gmail.com>, 2022
# JanaAvalah, 2022
# Triine Aavik <triine@avalah.ee>, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Triine Aavik <triine@avalah.ee>, 2022\n"
"Language-Team: Estonian (https://app.transifex.com/odoo/teams/41243/et/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: et\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "# Ostutellimused"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "Muud kulud"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Projekt"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "Ostutellimuse kaubad"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Ostutellimuse rida"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Ostutellimused"

View file

@ -0,0 +1,61 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Hamid Darabi, 2023
# Hamed Mohammadi <hamed@dehongi.com>, 2023
# Martin Trigaux, 2023
# Hanna Kheradroosta, 2023
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Hanna Kheradroosta, 2023\n"
"Language-Team: Persian (https://app.transifex.com/odoo/teams/41243/fa/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: fa\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "# سفارشات خرید"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "سایر هزینه ها"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "پروژه"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "سطر سفارش خرید"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "سفارشات خرید"

View file

@ -0,0 +1,61 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Tuomo Aura <tuomo.aura@web-veistamo.fi>, 2022
# Svante Suominen <svante.suominen@web-veistamo.fi>, 2022
# Martin Trigaux, 2022
# Ossi Mantylahti <ossi.mantylahti@obs-solutions.fi>, 2023
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Ossi Mantylahti <ossi.mantylahti@obs-solutions.fi>, 2023\n"
"Language-Team: Finnish (https://app.transifex.com/odoo/teams/41243/fi/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: fi\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "# Ostotilausta"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "Muut kustannukset"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Projektit"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "Ostotilauksen kohteet"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Ostotilausrivi"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Ostotilaukset"

View file

@ -0,0 +1,59 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Martin Trigaux, 2022
# Manon Rondou, 2024
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Manon Rondou, 2024\n"
"Language-Team: French (https://app.transifex.com/odoo/teams/41243/fr/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: fr\n"
"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "# Bons de commande"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "Autres coûts"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Projet"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "Articles du bon de commande"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Ligne de commande d'achat"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Bons de commande fournisseur"

View file

@ -0,0 +1,54 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Language-Team: Gujarati (https://app.transifex.com/odoo/teams/41243/gu/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: gu\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr ""

View file

@ -0,0 +1,63 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# ZVI BLONDER <ZVIBLONDER@gmail.com>, 2022
# Yihya Hugirat <hugirat@gmail.com>, 2022
# דודי מלכה <Dudimalka6@gmail.com>, 2022
# Roy Sayag, 2023
# Yoram Lavi, 2025
# or balmas, 2025
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: or balmas, 2025\n"
"Language-Team: Hebrew (https://app.transifex.com/odoo/teams/41243/he/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: he\n"
"Plural-Forms: nplurals=3; plural=(n == 1 && n % 1 == 0) ? 0 : (n == 2 && n % 1 == 0) ? 1: 2;\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "# הזמנות רכש"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "עלויות אחרות"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "פרויקט"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "פריטים בהזמנת רכש"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "שורת הזמנת רכש"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "הזמנות רכש"

View file

@ -0,0 +1,58 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Ujjawal Pathak, 2025
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Ujjawal Pathak, 2025\n"
"Language-Team: Hindi (https://app.transifex.com/odoo/teams/41243/hi/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: hi\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "परचेज़ ऑर्डर लाइन"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr ""

View file

@ -0,0 +1,60 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Vladimir Olujić <olujic.vladimir@storm.hr>, 2022
# Martin Trigaux, 2022
# Luka Carević <luka@uvid.hr>, 2024
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Luka Carević <luka@uvid.hr>, 2024\n"
"Language-Team: Croatian (https://app.transifex.com/odoo/teams/41243/hr/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: hr\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "# Nalozi u nabavi"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Projekt"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Stavka naloga nabave"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Nalozi u nabavi"

View file

@ -0,0 +1,59 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Ákos Nagy <akos.nagy@oregional.hu>, 2022
# Tamás Németh <ntomasz81@gmail.com>, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Tamás Németh <ntomasz81@gmail.com>, 2022\n"
"Language-Team: Hungarian (https://app.transifex.com/odoo/teams/41243/hu/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: hu\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Projekt"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Beszerzési rendelés tétel"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Beszerzési rendelések"

View file

@ -0,0 +1,54 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Language-Team: Armenian (https://app.transifex.com/odoo/teams/41243/hy/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: hy\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr ""

View file

@ -0,0 +1,59 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Martin Trigaux, 2022
# Abe Manyo, 2025
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Abe Manyo, 2025\n"
"Language-Team: Indonesian (https://app.transifex.com/odoo/teams/41243/id/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: id\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "# SPB"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "Ongkos Lain"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Project"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "Item SPB"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Baris Order Pembelian"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Order Pembelian"

View file

@ -0,0 +1,54 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Language-Team: Icelandic (https://app.transifex.com/odoo/teams/41243/is/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: is\n"
"Plural-Forms: nplurals=2; plural=(n % 10 != 1 || n % 100 == 11);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr ""

View file

@ -0,0 +1,59 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Martin Trigaux, 2022
# Sergio Zanchetta <primes2h@gmail.com>, 2023
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Sergio Zanchetta <primes2h@gmail.com>, 2023\n"
"Language-Team: Italian (https://app.transifex.com/odoo/teams/41243/it/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: it\n"
"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "N. ordini di acquisto"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "Altri costi"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Progetto"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "Voci ordine di acquisto"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Riga ordine di acquisto"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Ordini di acquisto"

View file

@ -0,0 +1,60 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Martin Trigaux, 2022
# Ryoko Tsuda <ryoko@quartile.co>, 2023
# Junko Augias, 2023
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Junko Augias, 2023\n"
"Language-Team: Japanese (https://app.transifex.com/odoo/teams/41243/ja/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ja\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "購買オーダ数"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "他の原価"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "プロジェクト"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "購買オーダ項目"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "購買オーダ明細"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "購買オーダ"

View file

@ -0,0 +1,59 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Sengtha Chay <sengtha@gmail.com>, 2023
# Lux Sok <sok.lux@gmail.com>, 2023
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Lux Sok <sok.lux@gmail.com>, 2023\n"
"Language-Team: Khmer (https://app.transifex.com/odoo/teams/41243/km/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: km\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "គំរោង"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "ការការម៉ង់ទិញតាមខ្សែបន្ទាប់"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "ការបញ្ជាទិញ"

View file

@ -0,0 +1,59 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Martin Trigaux, 2022
# Sarah Park, 2023
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Sarah Park, 2023\n"
"Language-Team: Korean (https://app.transifex.com/odoo/teams/41243/ko/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ko\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "# 발주서"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "기타 비용"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "프로젝트"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "구매발주서 항목"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "발주서 내역"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "발주서"

View file

@ -0,0 +1,59 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# ສີສຸວັນ ສັງບົວບຸລົມ <sisouvan@gmail.com>, 2023
# Amkha VAYAPHATH <amkha.nazou@gmail.com>, 2023
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Amkha VAYAPHATH <amkha.nazou@gmail.com>, 2023\n"
"Language-Team: Lao (https://app.transifex.com/odoo/teams/41243/lo/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: lo\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "ໂຄງການ"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "​ລາຍການການ​ສັ່ງ​ຊື້ທາງ​"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr ""

View file

@ -0,0 +1,60 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Jonas Zinkevicius <jozi@odoo.com>, 2022
# Linas Versada <linaskrisiukenas@gmail.com>, 2022
# Martin Trigaux, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Martin Trigaux, 2022\n"
"Language-Team: Lithuanian (https://app.transifex.com/odoo/teams/41243/lt/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: lt\n"
"Plural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 : n % 1 != 0 ? 2: 3);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "Pirkimo užsakymo nr."
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Projektas"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Pirkimo užsakymo eilutė "
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Pirkimų užsakymai"

View file

@ -0,0 +1,59 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Arnis Putniņš <arnis@allegro.lv>, 2022
# Konstantins Zabogonskis <inculin4ik@gmail.com>, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Konstantins Zabogonskis <inculin4ik@gmail.com>, 2022\n"
"Language-Team: Latvian (https://app.transifex.com/odoo/teams/41243/lv/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: lv\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Project"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Pasūtījuma rinda"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Pirkuma Pasūtījumi"

View file

@ -0,0 +1,58 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Niyas Raphy, 2023
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Niyas Raphy, 2023\n"
"Language-Team: Malayalam (https://app.transifex.com/odoo/teams/41243/ml/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ml\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "പ്രൊജക്റ്റ് "
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "പർച്ചേസ് ഓർഡർ ലൈൻ"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "പർച്ചേസ് ഓർഡർ"

View file

@ -0,0 +1,60 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Martin Trigaux, 2022
# Batmunkh Ganbat <batmunkh.g@bumanit.mn>, 2022
# hish, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: hish, 2022\n"
"Language-Team: Mongolian (https://app.transifex.com/odoo/teams/41243/mn/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: mn\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Төсөл"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Худалдан авалтын захиалгын мөр"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Худалдан авалт"

View file

@ -0,0 +1,58 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Mehjabin Farsana, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Mehjabin Farsana, 2022\n"
"Language-Team: Malay (https://app.transifex.com/odoo/teams/41243/ms/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ms\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Projek"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr ""

View file

@ -0,0 +1,58 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Martin Trigaux, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Martin Trigaux, 2022\n"
"Language-Team: Norwegian Bokmål (https://app.transifex.com/odoo/teams/41243/nb/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: nb\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Prosjekt"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Innkjøpsordrelinje"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Innkjøpsordrer"

View file

@ -0,0 +1,59 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Jolien De Paepe, 2022
# Martin Trigaux, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Martin Trigaux, 2022\n"
"Language-Team: Dutch (https://app.transifex.com/odoo/teams/41243/nl/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: nl\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "# Inkooporders"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "Andere kosten"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Project"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "Inkooporderitems"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Inkooporderregel"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Inkooporders"

View file

@ -0,0 +1,54 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Language-Team: Norwegian (https://app.transifex.com/odoo/teams/41243/no/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: no\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr ""

View file

@ -0,0 +1,61 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Maksym <ms@myodoo.pl>, 2022
# Piotr Szlązak <szlazakpiotr@gmail.com>, 2022
# Martin Trigaux, 2022
# Tadeusz Karpiński <tadeuszkarpinski@gmail.com>, 2023
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Tadeusz Karpiński <tadeuszkarpinski@gmail.com>, 2023\n"
"Language-Team: Polish (https://app.transifex.com/odoo/teams/41243/pl/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: pl\n"
"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "#Zamówienia zakupu"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "Inne koszty"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Projekt"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "Pozycje zamówienia zakupu"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Pozycja zamówienia zakupu"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Zamówienia Zakupu"

View file

@ -0,0 +1,54 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2024-02-06 13:32+0000\n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr ""

View file

@ -0,0 +1,59 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Manuela Silva <mmsrs@sky.com>, 2022
# Maitê Dietze, 2024
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Maitê Dietze, 2024\n"
"Language-Team: Portuguese (https://app.transifex.com/odoo/teams/41243/pt/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: pt\n"
"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "# Nota de encomenda"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Projeto"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Linha de Encomenda de Compra"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Nota de encomenda"

View file

@ -0,0 +1,60 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Martin Trigaux, 2022
# a75f12d3d37ea5bf159c4b3e85eb30e7_0fa6927, 2023
# Maitê Dietze, 2023
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Maitê Dietze, 2023\n"
"Language-Team: Portuguese (Brazil) (https://app.transifex.com/odoo/teams/41243/pt_BR/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: pt_BR\n"
"Plural-Forms: nplurals=3; plural=(n == 0 || n == 1) ? 0 : n != 0 && n % 1000000 == 0 ? 1 : 2;\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "Nº de pedidos de compra"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "Outros custos"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Projeto"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "Itens do pedido de compra"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Linha do pedido de compra"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Pedidos de compra"

View file

@ -0,0 +1,60 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Martin Trigaux, 2022
# Foldi Robert <foldirobert@nexterp.ro>, 2022
# Larisa_nexterp, 2025
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Larisa_nexterp, 2025\n"
"Language-Team: Romanian (https://app.transifex.com/odoo/teams/41243/ro/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ro\n"
"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "Alte costuri"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Proiect"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "Articole comandă de achiziție"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Linie comandă de achiziție"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Comenzi de achiziție"

View file

@ -0,0 +1,59 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Сергей Шебанин <sergey@shebanin.ru>, 2022
# Wil Odoo, 2024
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Wil Odoo, 2024\n"
"Language-Team: Russian (https://app.transifex.com/odoo/teams/41243/ru/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ru\n"
"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "# Заказы на покупку"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "Прочие расходы"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Проект"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "Пункты заказа на поставку"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Позиция заказа на поставку"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Заказы на поставку"

View file

@ -0,0 +1,58 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Martin Trigaux, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Martin Trigaux, 2022\n"
"Language-Team: Slovak (https://app.transifex.com/odoo/teams/41243/sk/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: sk\n"
"Plural-Forms: nplurals=4; plural=(n % 1 == 0 && n == 1 ? 0 : n % 1 == 0 && n >= 2 && n <= 4 ? 1 : n % 1 != 0 ? 2: 3);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Projekt"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Riadok nákupnej objednávky"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Nakupné objednávky"

View file

@ -0,0 +1,60 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Jasmina Macur <jasmina@hbs.si>, 2022
# Martin Trigaux, 2022
# Katja Deržič, 2024
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Katja Deržič, 2024\n"
"Language-Team: Slovenian (https://app.transifex.com/odoo/teams/41243/sl/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: sl\n"
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "Nabavni nalog"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "Ostali stroški"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Projekt"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "Postavke nabavnega naloga"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Postavka nabavnega naloga"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Nabavni nalogi"

View file

@ -0,0 +1,54 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Language-Team: Albanian (https://app.transifex.com/odoo/teams/41243/sq/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: sq\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr ""

View file

@ -0,0 +1,58 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Dragan Vukosavljevic <dragan.vukosavljevic@gmail.com>, 2023
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Dragan Vukosavljevic <dragan.vukosavljevic@gmail.com>, 2023\n"
"Language-Team: Serbian (https://app.transifex.com/odoo/teams/41243/sr/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: sr\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "# Zahteva za nabavku"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "Ostali troškovi"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Projekat"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "Stavke naloga za nabavku"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Linija naloga za nabavku"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Nalozi za nabavku"

View file

@ -0,0 +1,60 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Kim Asplund <kim.asplund@gmail.com>, 2022
# Martin Trigaux, 2022
# Lasse L, 2023
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Lasse L, 2023\n"
"Language-Team: Swedish (https://app.transifex.com/odoo/teams/41243/sv/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: sv\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "# Inköpsordrar"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "Övriga kostnader"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Projekt"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "Poster i inköpsorder"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Inköpsorderrad"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Inköpsordrar"

View file

@ -0,0 +1,54 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Language-Team: Swahili (https://app.transifex.com/odoo/teams/41243/sw/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: sw\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr ""

View file

@ -0,0 +1,54 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Language-Team: Tamil (https://app.transifex.com/odoo/teams/41243/ta/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ta\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr ""
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr ""
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr ""

View file

@ -0,0 +1,59 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Wichanon Jamwutthipreecha, 2022
# Rasareeyar Lappiam, 2023
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Rasareeyar Lappiam, 2023\n"
"Language-Team: Thai (https://app.transifex.com/odoo/teams/41243/th/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: th\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "# ใบสั่งซื้อ"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "ต้นทุนอื่น ๆ "
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "โปรเจกต์"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "รายการใบสั่งซื้อ"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "ไลน์คำสั่งซื้อ"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "คำสั่งซื้อ"

View file

@ -0,0 +1,61 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Murat Kaplan <muratk@projetgrup.com>, 2022
# Martin Trigaux, 2022
# Ediz Duman <neps1192@gmail.com>, 2022
# Tugay Hatıl <tugayh@projetgrup.com>, 2023
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Tugay Hatıl <tugayh@projetgrup.com>, 2023\n"
"Language-Team: Turkish (https://app.transifex.com/odoo/teams/41243/tr/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: tr\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "# Satınalma Siparişleri"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "Diğer Maliyetler"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Proje"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "Satınalma Sipariş Satırları"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Satınalma Sipariş Satırı"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Satınalma Siparişleri"

View file

@ -0,0 +1,59 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Martin Trigaux, 2022
# Alina Lisnenko <alina.lisnenko@erp.co.ua>, 2023
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Alina Lisnenko <alina.lisnenko@erp.co.ua>, 2023\n"
"Language-Team: Ukrainian (https://app.transifex.com/odoo/teams/41243/uk/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: uk\n"
"Plural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "К-сть замовлень на купівлю"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "Інші витрати"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Проект"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "Рядки замовлення на купівлю"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Рядок замовлення на купівлю"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Замовлення на купівлю"

View file

@ -0,0 +1,59 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Martin Trigaux, 2022
# Thi Huong Nguyen, 2023
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Thi Huong Nguyen, 2023\n"
"Language-Team: Vietnamese (https://app.transifex.com/odoo/teams/41243/vi/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: vi\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "# Đơn mua hàng"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "Other Costs"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "Dự án"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "Hạng mục đơn mua hàng"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "Chi tiết mua hàng"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "Đơn mua hàng"

View file

@ -0,0 +1,59 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Raymond Yu <cl_yu@hotmail.com>, 2022
# Martin Trigaux, 2022
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Martin Trigaux, 2022\n"
"Language-Team: Chinese (China) (https://app.transifex.com/odoo/teams/41243/zh_CN/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: zh_CN\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "# 采购订单"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "其他费用"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "项目"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "采购订单项目"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "采购订单明细"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "采购订单"

View file

@ -0,0 +1,59 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * project_purchase
#
# Translators:
# Martin Trigaux, 2022
# Tony Ng, 2023
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-02-06 13:32+0000\n"
"PO-Revision-Date: 2022-09-22 05:54+0000\n"
"Last-Translator: Tony Ng, 2023\n"
"Language-Team: Chinese (Taiwan) (https://app.transifex.com/odoo/teams/41243/zh_TW/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: zh_TW\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#. module: project_purchase
#: model:ir.model.fields,field_description:project_purchase.field_project_project__purchase_orders_count
msgid "# Purchase Orders"
msgstr "採購訂單數目"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Other Costs"
msgstr "其他費用"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_project_project
msgid "Project"
msgstr "專案"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Order Items"
msgstr "採購訂單項目"
#. module: project_purchase
#: model:ir.model,name:project_purchase.model_purchase_order_line
msgid "Purchase Order Line"
msgstr "採購訂單資料行"
#. module: project_purchase
#. odoo-python
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#: code:addons/project_purchase/models/project.py:0
#, python-format
msgid "Purchase Orders"
msgstr "採購訂單"

View file

@ -0,0 +1,4 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from . import project
from . import purchase_order_line

View file

@ -0,0 +1,212 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
import json
from odoo import api, fields, models, _, _lt
from odoo.osv import expression
from datetime import date
class Project(models.Model):
_inherit = "project.project"
purchase_orders_count = fields.Integer('# Purchase Orders', compute='_compute_purchase_orders_count', groups='purchase.group_purchase_user')
@api.depends('analytic_account_id')
def _compute_purchase_orders_count(self):
if not self.analytic_account_id:
self.purchase_orders_count = 0
return
query = self.env['purchase.order.line']._search([])
query.add_where('purchase_order_line.analytic_distribution ?| %s', [[str(account_id) for account_id in self.analytic_account_id.ids]])
query.order = None
query_string, query_param = query.select(
'jsonb_object_keys(purchase_order_line.analytic_distribution) as account_id',
'COUNT(DISTINCT(order_id)) as purchase_order_count',
)
query_string = f"{query_string} GROUP BY jsonb_object_keys(purchase_order_line.analytic_distribution)"
self._cr.execute(query_string, query_param)
data = {int(record.get('account_id')): record.get('purchase_order_count') for record in self._cr.dictfetchall()}
for project in self:
project.purchase_orders_count = data.get(project.analytic_account_id.id, 0)
# ----------------------------
# Actions
# ----------------------------
def action_open_project_purchase_orders(self):
query = self.env['purchase.order.line']._search([])
query.add_where('purchase_order_line.analytic_distribution ? %s', [str(self.analytic_account_id.id)])
query_string, query_param = query.select('order_id')
self._cr.execute(query_string, query_param)
purchase_order_ids = [pol.get('order_id') for pol in self._cr.dictfetchall()]
action_window = {
'name': _('Purchase Orders'),
'type': 'ir.actions.act_window',
'res_model': 'purchase.order',
'views': [[False, 'tree'], [False, 'form']],
'domain': [('id', 'in', purchase_order_ids)],
'context': {
'project_id': self.id,
}
}
if len(purchase_order_ids) == 1:
action_window['views'] = [[False, 'form']]
action_window['res_id'] = purchase_order_ids[0]
return action_window
def action_profitability_items(self, section_name, domain=None, res_id=False):
if section_name == 'purchase_order':
action = {
'name': _('Purchase Order Items'),
'type': 'ir.actions.act_window',
'res_model': 'purchase.order.line',
'views': [[False, 'tree'], [False, 'form']],
'domain': domain,
'context': {
'create': False,
'edit': False,
},
}
if res_id:
action['res_id'] = res_id
if 'views' in action:
action['views'] = [
(view_id, view_type)
for view_id, view_type in action['views']
if view_type == 'form'
] or [False, 'form']
action['view_mode'] = 'form'
return action
return super().action_profitability_items(section_name, domain, res_id)
# ----------------------------
# Project Updates
# ----------------------------
def _get_stat_buttons(self):
buttons = super(Project, self)._get_stat_buttons()
if self.user_has_groups('purchase.group_purchase_user'):
buttons.append({
'icon': 'credit-card',
'text': _lt('Purchase Orders'),
'number': self.purchase_orders_count,
'action_type': 'object',
'action': 'action_open_project_purchase_orders',
'show': self.purchase_orders_count > 0,
'sequence': 36,
})
return buttons
def _get_profitability_aal_domain(self):
return expression.AND([
super()._get_profitability_aal_domain(),
['|', ('move_line_id', '=', False), ('move_line_id.purchase_line_id', '=', False)],
])
def _get_profitability_labels(self):
labels = super()._get_profitability_labels()
labels['purchase_order'] = _lt('Purchase Orders')
labels['other_purchase_costs'] = _lt('Other Costs')
return labels
def _get_profitability_sequence_per_invoice_type(self):
sequence_per_invoice_type = super()._get_profitability_sequence_per_invoice_type()
sequence_per_invoice_type['purchase_order'] = 9
sequence_per_invoice_type['other_purchase_costs'] = 10
return sequence_per_invoice_type
def _get_profitability_items(self, with_action=True):
profitability_items = super()._get_profitability_items(with_action)
if self.analytic_account_id:
query = self.env['purchase.order.line'].sudo()._search([
('state', 'in', ['purchase', 'done']),
'|',
('qty_invoiced', '>', 0),
'|', ('qty_to_invoice', '>', 0), ('product_qty', '>', 0),
])
query.add_where('purchase_order_line.analytic_distribution ? %s', [str(self.analytic_account_id.id)])
query_string, query_param = query.select('"purchase_order_line".id', 'qty_invoiced', 'qty_to_invoice', 'product_qty', 'price_subtotal', 'purchase_order_line.currency_id', '"purchase_order_line".analytic_distribution')
self._cr.execute(query_string, query_param)
purchase_order_line_read = [{
**pol,
'invoice_lines': self.env['purchase.order.line'].browse(pol['id']).sudo().invoice_lines, # One2Many cannot be queried, they are not columns
} for pol in self._cr.dictfetchall()]
purchase_order_line_invoice_line_ids = self._get_already_included_profitability_invoice_line_ids()
if purchase_order_line_read:
# Get conversion rate from currencies to currency of the project
currency_ids = {pol['currency_id'] for pol in purchase_order_line_read + [{'currency_id': self.currency_id.id}]}
rates = self.env['res.currency'].browse(list(currency_ids))._get_rates(self.company_id, date.today())
conversion_rates = {cid: rates[self.currency_id.id] / rate_from for cid, rate_from in rates.items()}
amount_invoiced = amount_to_invoice = 0.0
purchase_order_line_ids = []
for pol_read in purchase_order_line_read:
purchase_order_line_invoice_line_ids.extend(pol_read['invoice_lines'].ids)
price_subtotal = self.currency_id.round(pol_read['price_subtotal'] * conversion_rates[pol_read['currency_id']])
price_subtotal_unit = price_subtotal / pol_read['product_qty'] if pol_read['product_qty'] else 0.0
analytic_contribution = pol_read['analytic_distribution'][str(self.analytic_account_id.id)] / 100.
amount_invoiced -= price_subtotal_unit * pol_read['qty_invoiced'] * analytic_contribution if pol_read['qty_invoiced'] > 0 else 0.0
if pol_read['qty_to_invoice'] > 0:
amount_to_invoice -= price_subtotal_unit * pol_read['qty_to_invoice'] * analytic_contribution
else:
amount_to_invoice -= price_subtotal_unit * (pol_read['product_qty'] - pol_read['qty_invoiced']) * analytic_contribution
purchase_order_line_ids.append(pol_read['id'])
costs = profitability_items['costs']
section_id = 'purchase_order'
purchase_order_costs = {'id': section_id, 'sequence': self._get_profitability_sequence_per_invoice_type()[section_id], 'billed': amount_invoiced, 'to_bill': amount_to_invoice}
if with_action and purchase_order_line_ids and self.user_has_groups('purchase.group_purchase_user'):
args = [section_id, [('id', 'in', purchase_order_line_ids)]]
if len(purchase_order_line_ids) == 1:
args.append(purchase_order_line_ids[0])
action = {'name': 'action_profitability_items', 'type': 'object', 'args': json.dumps(args)}
purchase_order_costs['action'] = action
costs['data'].append(purchase_order_costs)
costs['total']['billed'] += amount_invoiced
costs['total']['to_bill'] += amount_to_invoice
# calculate the cost of bills without a purchase order
query = self.env['account.move.line'].sudo()._search([
('move_id.move_type', 'in', ['in_invoice', 'in_refund']),
('parent_state', 'in', ['draft', 'posted']),
('id', 'not in', purchase_order_line_invoice_line_ids),
])
query.add_where('account_move_line.analytic_distribution ? %s', [str(self.analytic_account_id.id)])
# account_move_line__move_id is the alias of the joined table account_move in the query
# we can use it, because of the "move_id.move_type" clause in the domain of the query, which generates the join
# this is faster than a search_read followed by a browse on the move_id to retrieve the move_type of each account.move.line
query_string, query_param = query.select('balance', 'parent_state', 'account_move_line.company_currency_id', 'account_move_line.analytic_distribution', 'account_move_line__move_id.move_type')
self._cr.execute(query_string, query_param)
bills_move_line_read = self._cr.dictfetchall()
if bills_move_line_read:
# Get conversion rate from currencies to currency of the project
currency_ids = {bml['company_currency_id'] for bml in bills_move_line_read + [{'company_currency_id': self.currency_id.id}]}
rates = self.env['res.currency'].browse(list(currency_ids))._get_rates(self.company_id, date.today())
conversion_rates = {cid: rates[self.currency_id.id] / rate_from for cid, rate_from in rates.items()}
amount_invoiced = amount_to_invoice = 0.0
for moves_read in bills_move_line_read:
line_balance = self.currency_id.round(moves_read['balance'] * conversion_rates[moves_read['company_currency_id']])
analytic_contribution = moves_read['analytic_distribution'][str(self.analytic_account_id.id)] / 100.
if moves_read['parent_state'] == 'draft':
amount_to_invoice -= line_balance * analytic_contribution
else: # moves_read['parent_state'] == 'posted'
amount_invoiced -= line_balance * analytic_contribution
# don't display the section if the final values are both 0 (bill -> vendor credit)
if amount_invoiced != 0 or amount_to_invoice != 0:
costs = profitability_items['costs']
section_id = 'other_purchase_costs'
bills_costs = {
'id': section_id,
'sequence': self._get_profitability_sequence_per_invoice_type()[section_id],
'billed': amount_invoiced,
'to_bill': amount_to_invoice,
}
costs['data'].append(bills_costs)
costs['total']['billed'] += amount_invoiced
costs['total']['to_bill'] += amount_to_invoice
return profitability_items

View file

@ -0,0 +1,14 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from odoo import models
class PurchaseOrderLine(models.Model):
_inherit = 'purchase.order.line'
def _compute_analytic_distribution(self):
super()._compute_analytic_distribution()
for line in self:
if line._context.get('project_id'):
line.analytic_distribution = {line.env['project.project'].browse(line._context['project_id']).analytic_account_id.id: 100}

View file

@ -0,0 +1,4 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from . import test_project_profitability

View file

@ -0,0 +1,454 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
from datetime import datetime, timedelta
from odoo import Command
from odoo.tests import tagged
from odoo.tools import float_round, float_compare
from odoo.addons.project.tests.test_project_profitability import TestProjectProfitabilityCommon
from odoo.addons.purchase.tests.test_purchase_invoice import TestPurchaseToInvoiceCommon
@tagged('-at_install', 'post_install')
class TestProjectPurchaseProfitability(TestProjectProfitabilityCommon, TestPurchaseToInvoiceCommon):
def test_bills_without_purchase_order_are_accounted_in_profitability(self):
"""
A bill that has an AAL on one of its line should be taken into account
for the profitability of the project.
The contribution of the line should only be dependent
on the project's analytic account % that was set on the line
"""
# a custom analytic contribution (number between 1 -> 100 included)
analytic_distribution = 42
analytic_contribution = analytic_distribution / 100.
price_precision = self.env['decimal.precision'].precision_get('Product Price')
# create a bill_1 with the AAL
bill_1 = self.env['account.move'].create({
"name": "Bill_1 name",
"move_type": "in_invoice",
"state": "draft",
"partner_id": self.partner.id,
"invoice_date": datetime.today(),
"invoice_line_ids": [Command.create({
"analytic_distribution": {self.analytic_account.id: analytic_distribution},
"product_id": self.product_a.id,
"quantity": 1,
"product_uom_id": self.product_a.uom_id.id,
"price_unit": self.product_a.standard_price,
"currency_id": self.env.company.currency_id.id,
})],
})
# the bill_1 is in draft, therefor it should have the cost "to_bill" same as the -product_price (untaxed)
self.assertDictEqual(
self.project._get_profitability_items(False)['costs'],
{
'data': [{
'id': 'other_purchase_costs',
'sequence': self.project._get_profitability_sequence_per_invoice_type()['other_purchase_costs'],
'to_bill': -self.product_a.standard_price * analytic_contribution,
'billed': 0.0,
}],
'total': {'to_bill': -self.product_a.standard_price * analytic_contribution, 'billed': 0.0},
},
)
# post bill_1
bill_1.action_post()
# we posted the bill_1, therefore the cost "billed" should be -product_price, to_bill should be back to 0
self.assertDictEqual(
self.project._get_profitability_items(False)['costs'],
{
'data': [{
'id': 'other_purchase_costs',
'sequence': self.project._get_profitability_sequence_per_invoice_type()['other_purchase_costs'],
'to_bill': 0.0,
'billed': -self.product_a.standard_price * analytic_contribution,
}],
'total': {'to_bill': 0.0, 'billed': -self.product_a.standard_price * analytic_contribution},
},
)
# create another bill, with 3 lines, 2 diff products, the second line has 2 as quantity, the third line has a negative price
bill_2 = self.env['account.move'].create({
"name": "I have 2 lines",
"move_type": "in_invoice",
"state": "draft",
"partner_id": self.partner.id,
"invoice_date": datetime.today(),
"invoice_line_ids": [Command.create({
"analytic_distribution": {self.analytic_account.id: analytic_distribution},
"product_id": self.product_a.id,
"quantity": 1,
"product_uom_id": self.product_a.uom_id.id,
"price_unit": self.product_a.standard_price,
"currency_id": self.env.company.currency_id.id,
}), Command.create({
"analytic_distribution": {self.analytic_account.id: analytic_distribution},
"product_id": self.product_b.id,
"quantity": 2,
"product_uom_id": self.product_b.uom_id.id,
"price_unit": self.product_b.standard_price,
"currency_id": self.env.company.currency_id.id,
}), Command.create({
"analytic_distribution": {self.analytic_account.id: analytic_distribution},
"product_id": self.service_deliver.id,
"quantity": 1,
"product_uom_id": self.service_deliver.uom_id.id,
"price_unit": -self.service_deliver.standard_price,
"currency_id": self.env.company.currency_id.id,
})],
})
# bill_2 is not posted, therefor its cost should be "to_billed" = - sum of all product_price * qty for each line
self.assertDictEqual(
self.project._get_profitability_items(False)['costs'],
{
'data': [{
'id': 'other_purchase_costs',
'sequence': self.project._get_profitability_sequence_per_invoice_type()['other_purchase_costs'],
'to_bill': -(self.product_a.standard_price +
2 * self.product_b.standard_price -
self.service_deliver.standard_price) * analytic_contribution,
'billed': -self.product_a.standard_price * analytic_contribution,
}],
'total': {
'to_bill': -(self.product_a.standard_price +
2 * self.product_b.standard_price -
self.service_deliver.standard_price) * analytic_contribution,
'billed': -self.product_a.standard_price * analytic_contribution,
},
},
)
# post bill_2
bill_2.action_post()
# bill_2 is posted, therefor its cost should be counting in "billed", with the cost of bill_1
self.assertDictEqual(
self.project._get_profitability_items(False)['costs'],
{
'data': [{
'id': 'other_purchase_costs',
'sequence': self.project._get_profitability_sequence_per_invoice_type()['other_purchase_costs'],
'to_bill': 0.0,
'billed': -(2 * self.product_a.standard_price +
2 * self.product_b.standard_price -
self.service_deliver.standard_price) * analytic_contribution,
}],
'total': {
'to_bill': 0.0,
'billed': -(2 * self.product_a.standard_price +
2 * self.product_b.standard_price -
self.service_deliver.standard_price) * analytic_contribution,
},
},
)
# create a new purchase order
purchase_order = self.env['purchase.order'].create({
"name": "A purchase order",
"partner_id": self.partner_a.id,
"order_line": [Command.create({
"analytic_distribution": {self.analytic_account.id: analytic_distribution},
"product_id": self.product_order.id,
"product_qty": 1,
"price_unit": self.product_order.standard_price,
"currency_id": self.env.company.currency_id.id,
})],
})
purchase_order.button_confirm()
purchase_order.order_line.flush_recordset()
# we should have a new section "purchase_order", the total should be updated,
# but the "other_purchase_costs" shouldn't change, as we don't takes into
# account bills from purchase orders, as those are already taken into calculations
# from the purchase orders (in "purchase_order" section)
self.assertDictEqual(
self.project._get_profitability_items(False)['costs'],
{
'data': [{
'id': 'purchase_order',
'sequence': self.project._get_profitability_sequence_per_invoice_type()['purchase_order'],
'to_bill': -self.product_order.standard_price * analytic_contribution,
'billed': 0.0,
}, {
'id': 'other_purchase_costs',
'sequence': self.project._get_profitability_sequence_per_invoice_type()['other_purchase_costs'],
'to_bill': 0.0,
'billed': float_round(-(2 * self.product_a.standard_price +
2 * self.product_b.standard_price -
self.service_deliver.standard_price) * analytic_contribution, precision_digits=price_precision),
}],
'total': {
'to_bill': -self.product_order.standard_price * analytic_contribution,
'billed': float_round(-(2 * self.product_a.standard_price +
2 * self.product_b.standard_price -
self.service_deliver.standard_price) * analytic_contribution, precision_digits=price_precision),
},
},
)
purchase_order.action_create_invoice()
purchase_bill = purchase_order.invoice_ids # get the bill from the purchase
purchase_bill.invoice_date = datetime.today()
purchase_bill.action_post()
# now the bill has been posted, its costs should be accounted in the "billed" part
# of the purchase_order section, but should touch in the other_purchase_costs
self.assertDictEqual(
self.project._get_profitability_items(False)['costs'],
{
'data': [{
'id': 'purchase_order',
'sequence': self.project._get_profitability_sequence_per_invoice_type()['purchase_order'],
'to_bill': 0.0,
'billed': -self.product_order.standard_price * analytic_contribution,
}, {
'id': 'other_purchase_costs',
'sequence': self.project._get_profitability_sequence_per_invoice_type()['other_purchase_costs'],
'to_bill': 0.0,
'billed': float_round(-(2 * self.product_a.standard_price +
2 * self.product_b.standard_price -
self.service_deliver.standard_price) * analytic_contribution, precision_digits=price_precision),
}],
'total': {
'to_bill': 0.0,
'billed': float_round(-(2 * self.product_a.standard_price +
2 * self.product_b.standard_price -
self.service_deliver.standard_price +
self.product_order.standard_price) * analytic_contribution, precision_digits=price_precision),
},
},
)
def test_account_analytic_distribution_ratio(self):
"""
When adding multiple account analytics on a purchase line, and one of those
is from a project (for ex: project created on confirmed SO),
then in the profitability only the corresponding ratio of the analytic distribution
for that project analytic account should be taken into account.
(for ex: if there are 2 accounts on 1 line, one is 60% project analytic account, 40% some other,
then the profitability should only reflect 60% of the cost of the line, not 100%)
"""
# define the ratios for the analytic account of the line
analytic_ratios = {
"project_ratio": 60,
"other_ratio": 40,
}
self.assertEqual(sum(ratio for ratio in analytic_ratios.values()), 100)
# create another analytic_account that is not really relevant
other_analytic_account = self.env['account.analytic.account'].create({
'name': 'Not important',
'code': 'KO-1234',
'plan_id': self.analytic_plan.id,
})
# create a new purchase order
purchase_order = self.env['purchase.order'].create({
"name": "A purchase order",
"partner_id": self.partner_a.id,
"order_line": [Command.create({
"analytic_distribution": {
# this is the analytic_account that is linked to the project
self.analytic_account.id: analytic_ratios["project_ratio"],
other_analytic_account.id: analytic_ratios["other_ratio"],
},
"product_id": self.product_order.id,
"product_qty": 1,
"price_unit": self.product_order.standard_price,
"currency_id": self.env.company.currency_id.id,
})],
})
purchase_order.button_confirm()
purchase_order.order_line.flush_recordset()
self.assertDictEqual(
self.project._get_profitability_items(False)['costs'],
{
'data': [{
'id': 'purchase_order',
'sequence': self.project._get_profitability_sequence_per_invoice_type()['purchase_order'],
'to_bill': -(self.product_order.standard_price * (analytic_ratios["project_ratio"] / 100)),
'billed': 0.0,
}],
'total': {
'to_bill': -(self.product_order.standard_price * (analytic_ratios["project_ratio"] / 100)),
'billed': 0.0,
},
},
)
purchase_order.action_create_invoice()
purchase_bill = purchase_order.invoice_ids # get the bill from the purchase
purchase_bill.invoice_date = datetime.today()
purchase_bill.action_post()
self.assertDictEqual(
self.project._get_profitability_items(False)['costs'],
{
'data': [{
'id': 'purchase_order',
'sequence': self.project._get_profitability_sequence_per_invoice_type()['purchase_order'],
'to_bill': 0.0,
'billed': -(self.product_order.standard_price * (analytic_ratios["project_ratio"] / 100)),
}],
'total': {
'to_bill': 0.0,
'billed': -(self.product_order.standard_price * (analytic_ratios["project_ratio"] / 100)),
},
},
)
def test_analytic_distribution_with_included_tax(self):
"""When calculating the profitability of a project, included taxes should not be calculated"""
included_tax = self.env['account.tax'].create({
'name': 'included tax',
'amount': '15.0',
'amount_type': 'percent',
'type_tax_use': 'purchase',
'price_include': True
})
# create a purchase.order with the project account in analytic_distribution
purchase_order = self.env['purchase.order'].create({
'name': "A purchase order",
'partner_id': self.partner_a.id,
'order_line': [Command.create({
'analytic_distribution': {self.analytic_account.id: 100},
'product_id': self.product_order.id,
'product_qty': 2, # plural value to check if the price is multiplied more than once
'taxes_id': [included_tax.id], # set the included tax
'price_unit': self.product_order.standard_price,
'currency_id': self.env.company.currency_id.id,
})],
})
purchase_order.button_confirm()
purchase_order.order_line.flush_recordset()
# the profitability should not take taxes into account
self.assertDictEqual(
self.project._get_profitability_items(False)['costs'],
{
'data': [{
'id': 'purchase_order',
'sequence': self.project._get_profitability_sequence_per_invoice_type()['purchase_order'],
'to_bill': -(purchase_order.amount_untaxed),
'billed': 0.0,
}],
'total': {
'to_bill': -(purchase_order.amount_untaxed),
'billed': 0.0,
},
},
)
purchase_order.action_create_invoice()
purchase_bill = purchase_order.invoice_ids # get the bill from the purchase
purchase_bill.invoice_date = datetime.today()
purchase_bill.action_post()
# same here, taxes should not be calculated in the profitability
self.assertDictEqual(
self.project._get_profitability_items(False)['costs'],
{
'data': [{
'id': 'purchase_order',
'sequence': self.project._get_profitability_sequence_per_invoice_type()['purchase_order'],
'to_bill': 0.0,
'billed': -(purchase_bill.amount_untaxed),
}],
'total': {
'to_bill': 0.0,
'billed': -(purchase_bill.amount_untaxed),
},
},
)
def test_analytic_distribution_with_mismatched_uom(self):
"""When changing the unit of measure, the profitability should still match the price_subtotal of the order line"""
# create a purchase.order with the project account in analytic_distribution
purchase_order = self.env['purchase.order'].create({
'name': "A purchase order",
'partner_id': self.partner_a.id,
'order_line': [Command.create({
'analytic_distribution': {self.analytic_account.id: 100},
'product_id': self.product_order.id,
'product_qty': 1,
'price_unit': self.product_order.standard_price,
'currency_id': self.env.company.currency_id.id,
})],
})
purchase_order.button_confirm()
# changing the uom to a higher number
purchase_order.order_line.product_uom = self.env.ref("uom.product_uom_dozen")
purchase_order.order_line.flush_recordset()
self.assertDictEqual(
self.project._get_profitability_items(False)['costs'],
{
'data': [{
'id': 'purchase_order',
'sequence': self.project._get_profitability_sequence_per_invoice_type()['purchase_order'],
'to_bill': -(purchase_order.amount_untaxed),
'billed': 0.0,
}],
'total': {
'to_bill': -(purchase_order.amount_untaxed),
'billed': 0.0,
},
},
)
def test_profitability_foreign_currency_rate_on_bill_date(self):
"""Test that project profitability uses the correct currency rate (on bill date) for vendor bills in foreign currency."""
CurrencyRate = self.env['res.currency.rate']
company = self.env.company
# Pick a foreign currency different from company currency
foreign_currency = self.env['res.currency'].search([('id', '!=', company.currency_id.id)], limit=1)
if not foreign_currency:
foreign_currency = self.env['res.currency'].create({'name': 'USD', 'symbol': '$', 'rounding': 0.01, 'decimal_places': 2})
# Set two rates: yesterday and today
today = datetime.today().date()
yesterday = today - timedelta(days=1)
rate_today = 1.9
rate_yesterday = 2.0
CurrencyRate.create({
'currency_id': foreign_currency.id,
'rate': rate_yesterday,
'name': yesterday,
'company_id': company.id,
})
CurrencyRate.create({
'currency_id': foreign_currency.id,
'rate': rate_today,
'name': today,
'company_id': company.id,
})
# Create a vendor bill in foreign currency, dated yesterday, with analytic distribution to the project
price_unit = 150
bill = self.env['account.move'].create({
"name": "Bill Foreign Currency",
"move_type": "in_invoice",
"state": "draft",
"partner_id": self.partner.id,
"invoice_date": yesterday,
"currency_id": foreign_currency.id,
"invoice_line_ids": [Command.create({
"analytic_distribution": {self.analytic_account.id: 100},
"product_id": self.product_a.id,
"quantity": 1,
"product_uom_id": self.product_a.uom_id.id,
"price_unit": price_unit,
})],
})
# Compute expected value: balance is in company currency, so should be price_unit / rate_yesterday (since bill is in foreign currency)
expected_cost = -(price_unit / rate_yesterday)
# Check profitability before posting (should be in 'to_bill')
costs = self.project._get_profitability_items(False)['costs']
self.assertEqual(len(costs['data']), 1)
actual_to_bill = costs['data'][0]['to_bill']
self.assertTrue(
float_compare(actual_to_bill, expected_cost, precision_digits=2) == 0,
f"Expected to_bill {expected_cost}, got {actual_to_bill}"
)
# Post the bill and check 'billed'
bill.action_post()
costs = self.project._get_profitability_items(False)['costs']
actual_billed = costs['data'][0]['billed']
self.assertTrue(
float_compare(actual_billed, expected_cost, precision_digits=2) == 0,
f"Expected billed {expected_cost}, got {actual_billed}"
)

View file

@ -0,0 +1,43 @@
[project]
name = "odoo-bringout-oca-ocb-project_purchase"
version = "16.0.0"
description = "Project Purchase - Monitor purchase in project"
authors = [
{ name = "Ernad Husremovic", email = "hernad@bring.out.ba" }
]
dependencies = [
"odoo-bringout-oca-ocb-purchase>=16.0.0",
"odoo-bringout-oca-ocb-project>=16.0.0",
"requests>=2.25.1"
]
readme = "README.md"
requires-python = ">= 3.11"
classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Topic :: Office/Business",
]
[project.urls]
homepage = "https://github.com/bringout/0"
repository = "https://github.com/bringout/0"
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.metadata]
allow-direct-references = true
[tool.hatch.build.targets.wheel]
packages = ["project_purchase"]
[tool.rye]
managed = true
dev-dependencies = [
"pytest>=8.4.1",
]