Initial commit: OCA Technical packages (595 packages)

This commit is contained in:
Ernad Husremovic 2025-08-29 15:43:03 +02:00
commit 2cc02aac6e
24950 changed files with 2318079 additions and 0 deletions

View file

@ -0,0 +1,49 @@
# Excel Import/Export/Report Demo
Odoo addon: excel_import_export_demo
## Installation
```bash
pip install odoo-bringout-oca-server-tools-excel_import_export_demo
```
## Dependencies
This addon depends on:
- excel_import_export
- sale_management
- purchase
- crm
## Manifest Information
- **Name**: Excel Import/Export/Report Demo
- **Version**: 16.0.1.1.0
- **Category**: Tools
- **License**: AGPL-3
- **Installable**: True
## Source
Based on [OCA/server-tools](https://github.com/OCA/server-tools) branch 16.0, addon `excel_import_export_demo`.
## License
This package maintains the original AGPL-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 Excel_import_export_demo Module - excel_import_export_demo
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 excel_import_export_demo. 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,8 @@
# Dependencies
This addon depends on:
- [excel_import_export](../../odoo-bringout-oca-server-tools-excel_import_export)
- [sale_management](../../odoo-bringout-oca-ocb-sale_management)
- [purchase](../../odoo-bringout-oca-ocb-purchase)
- [crm](../../odoo-bringout-oca-ocb-crm)

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 excel_import_export_demo or install in UI.

View file

@ -0,0 +1,7 @@
# Install
```bash
pip install odoo-bringout-oca-server-tools-excel_import_export_demo"
# or
uv pip install odoo-bringout-oca-server-tools-excel_import_export_demo"
```

View file

@ -0,0 +1,11 @@
# Models
Detected core models and extensions in excel_import_export_demo.
```mermaid
classDiagram
```
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: excel_import_export_demo. Provides features documented in upstream Odoo 16 under this addon.
- Source: OCA/OCB 16.0, addon excel_import_export_demo
- 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 excel_import_export_demo
```

View file

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

View file

@ -0,0 +1,120 @@
===============================
Excel Import/Export/Report Demo
===============================
..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:5b14755bfe1fe3754bb28f1df6d7de5fad74c2b7ad73b8bb419ebf501b60985d
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fserver--tools-lightgray.png?logo=github
:target: https://github.com/OCA/server-tools/tree/16.0/excel_import_export_demo
:alt: OCA/server-tools
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/server-tools-16-0/server-tools-16-0-excel_import_export_demo
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
:target: https://runboat.odoo-community.org/builds?repo=OCA/server-tools&target_branch=16.0
:alt: Try me on Runboat
|badge1| |badge2| |badge3| |badge4| |badge5|
This module provide some example use case for excel_import_export
1. Import/Export Sales Order (import_export_sale_order)
2. Import New Sales Orders (import_sale_orders)
3. Sales Orders Report (report_sale_order)
4. Print Quoation / Order (.xlsx) (report_action/sale_order)
5. Run Partner List Report (report_action/partner_list)
**Table of contents**
.. contents::
:local:
Installation
============
To install this module, you need to install **excel_import_export**
Then, simply install **excel_import_export_demo**.
Usage
=====
**Example 1:** Export/Import Excel on existing document
To test this use case, go to any Sales Order and use Export Excel or Import Excel in action menu.
**Example 2:** Import Excel Files
To test this use case, go to Settings > Excel Import/Export > Sample Import Sales Order
**Example 3:** Create Excel Report
To test this use case, go to Settings > Excel Import/Export > Sample Sales Report
**Example 4:** Printout Excel on existing document, using report action
To test this use case, go to any Sales Order and click print "Quotation / Order (.xlsx)".
**Example 5:** Run Partner List Report, using report action
To test this use case, go to menu Sales > Reporting > Partner List Report
Bug Tracker
===========
Bugs are tracked on `GitHub Issues <https://github.com/OCA/server-tools/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
`feedback <https://github.com/OCA/server-tools/issues/new?body=module:%20excel_import_export_demo%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
Do not contact contributors directly about support or help with technical issues.
Credits
=======
Authors
~~~~~~~
* Ecosoft
Contributors
~~~~~~~~~~~~
* Kitti Upariphutthiphong. <kittiu@gmail.com> (http://ecosoft.co.th)
Maintainers
~~~~~~~~~~~
This module is maintained by the OCA.
.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org
OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.
.. |maintainer-kittiu| image:: https://github.com/kittiu.png?size=40px
:target: https://github.com/kittiu
:alt: kittiu
Current `maintainer <https://odoo-community.org/page/maintainer-role>`__:
|maintainer-kittiu|
This module is part of the `OCA/server-tools <https://github.com/OCA/server-tools/tree/16.0/excel_import_export_demo>`_ project on GitHub.
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

View file

@ -0,0 +1,8 @@
# Copyright 2019 Ecosoft Co., Ltd (http://ecosoft.co.th/)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html)
from . import import_export_sale_order
from . import report_sale_order
from . import report_crm_lead
from . import report_action
from .hooks import post_init_hook

View file

@ -0,0 +1,37 @@
# Copyright 2019 Ecosoft Co., Ltd (http://ecosoft.co.th/)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html)
{
"name": "Excel Import/Export/Report Demo",
"version": "16.0.1.1.0",
"author": "Ecosoft,Odoo Community Association (OCA)",
"license": "AGPL-3",
"website": "https://github.com/OCA/server-tools",
"category": "Tools",
"depends": ["excel_import_export", "sale_management", "purchase", "crm"],
"data": [
"import_export_sale_order/actions.xml",
"import_export_sale_order/templates.xml",
"import_export_purchase_order/actions.xml",
"import_export_purchase_order/templates.xml",
"report_sale_order/report_sale_order.xml",
"report_sale_order/templates.xml",
"report_sale_order/security/ir.model.access.csv",
"report_crm_lead/report_crm_lead.xml",
"report_crm_lead/templates.xml",
"report_crm_lead/security/ir.model.access.csv",
"import_sale_orders/menu_action.xml",
"import_sale_orders/templates.xml",
# Use report action
"report_action/sale_order/report.xml",
"report_action/sale_order/templates.xml",
"report_action/partner_list/report.xml",
"report_action/partner_list/templates.xml",
"report_action/partner_list/report_partner_list.xml",
"report_action/partner_list/security/ir.model.access.csv",
],
"post_init_hook": "post_init_hook",
"installable": True,
"development_status": "Beta",
"maintainers": ["kittiu"],
}

View file

@ -0,0 +1,11 @@
# Copyright 2024 Quartile (https://www.quartile.co)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl).
from odoo import SUPERUSER_ID, api
def post_init_hook(cr, registry):
env = api.Environment(cr, SUPERUSER_ID, {})
templates = env["xlsx.template"].search([("export_ids", "!=", False)])
for template in templates:
template.add_export_action()

View file

@ -0,0 +1,288 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * excel_import_export_demo
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \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: excel_import_export_demo
#: model:ir.actions.report,print_report_name:excel_import_export_demo.action_report_saleorder_excel
msgid ""
"(object.state in ('draft', 'sent') and 'Quotation - %s' % (object.name)) or "
"'Order - %s' % (object.name)"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__state
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__state
msgid ""
"* Choose: wizard show in user selection mode\n"
"* Get: wizard show results from user action"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__choose_template
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__choose_template
msgid "Allow Choose Template"
msgstr "Dozvoli odabir predloška"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__assigned_attachment_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__assigned_attachment_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__assigned_attachment_ids
msgid "Assigned Attachments"
msgstr "Dodijeljeni prilozi"
#. module: excel_import_export_demo
#: model_terms:ir.ui.view,arch_db:excel_import_export_demo.partner_list_wizard
msgid "Cancel"
msgstr "Otkaži"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__changeset_change_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__changeset_change_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__changeset_change_ids
msgid "Changeset Changes"
msgstr "Promjene skupa promjena"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__changeset_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__changeset_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__changeset_ids
msgid "Changesets"
msgstr "Skupovi promjena"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__count_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__count_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__count_changesets
msgid "Count Changesets"
msgstr "Broj skupova promjena"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__count_pending_changeset_changes
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__count_pending_changeset_changes
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__count_pending_changeset_changes
msgid "Count Pending Changeset Changes"
msgstr "Broj promjena skupova promjena na čekanju"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__count_pending_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__count_pending_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__count_pending_changesets
msgid "Count Pending Changesets"
msgstr "Broj skupova promjena na čekanju"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__create_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__create_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__create_uid
msgid "Created by"
msgstr "Kreirao"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__create_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__create_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__create_date
msgid "Created on"
msgstr "Kreirano"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__display_name
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__display_name
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__display_name
msgid "Display Name"
msgstr "Prikazani naziv"
#. module: excel_import_export_demo
#: model_terms:ir.ui.view,arch_db:excel_import_export_demo.partner_list_wizard
msgid "Execute"
msgstr "Izvrši"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__data
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__data
msgid "File"
msgstr "Datoteka"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__name
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__name
msgid "File Name"
msgstr "Ime fajla"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__id
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__id
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__id
msgid "ID"
msgstr "ID"
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_purchase_order_import_xlsx
#: model:ir.actions.act_window,name:excel_import_export_demo.action_sale_oder_import_xlsx
msgid "Import Excel"
msgstr "Uvoz Excel"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead____last_update
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list____last_update
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order____last_update
msgid "Last Modified on"
msgstr "Zadnje mijenjano"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__write_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__write_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__write_uid
msgid "Last Updated by"
msgstr "Zadnji ažurirao"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__write_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__write_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__write_date
msgid "Last Updated on"
msgstr "Zadnje ažurirano"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__partner_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__partner_id
msgid "Partner"
msgstr "Partner"
#. module: excel_import_export_demo
#: model:ir.actions.report,name:excel_import_export_demo.action_report_partner_excel
msgid "Partner List (.xlsx)"
msgstr "Lista partnera (.xlsx)"
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_report_partner_list
#: model:ir.ui.menu,name:excel_import_export_demo.menu_report_partner_list
msgid "Partner List Report"
msgstr "Izvještaj o listi partnera"
#. module: excel_import_export_demo
#: model:ir.actions.report,name:excel_import_export_demo.action_report_saleorder_excel
msgid "Quotation / Order (.xlsx)"
msgstr "Ponuda / Narudžba (.xlsx)"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__results
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__results
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__results
msgid "Results"
msgstr "Rezultati"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__revenue_by_country
msgid "Revenue By Country"
msgstr "Prihod po zemlji"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__revenue_by_team
msgid "Revenue By Team"
msgstr "Prihod po timu"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__team_id
msgid "Sales Team"
msgstr "Prodajni tim"
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_import_sale_order
#: model:ir.ui.menu,name:excel_import_export_demo.menu_import_sale_order
msgid "Sample Import Sale Order"
msgstr "Uzorni uvoz prodajne narudžbe"
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_report_crm_lead
#: model:ir.ui.menu,name:excel_import_export_demo.menu_report_crm_lead
msgid "Sample Lead Report"
msgstr "Uzorak izvještaja o potencijalnim klijentima"
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_report_sale_order
#: model:ir.ui.menu,name:excel_import_export_demo.menu_report_sale_order
msgid "Sample Sales Report"
msgstr "Uzorak prodajnog izvještaja"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__smart_search
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__smart_search
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__smart_search
msgid "Smart Search"
msgstr "Pametno pretraživanje"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__state
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__state
msgid "State"
msgstr "Status"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__template_id
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__template_id
msgid "Template"
msgstr "Prijedlog"
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__count_pending_changeset_changes
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__count_pending_changeset_changes
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__count_pending_changeset_changes
msgid "The number of pending changes of this record"
msgstr "Broj promjena na čekanju ovog zapisa"
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__count_pending_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__count_pending_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__count_pending_changesets
msgid "The number of pending changesets of this record"
msgstr "Broj skupa promjena na čekanju ovog zapisa"
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__count_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__count_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__count_changesets
msgid "The overall number of changesets of this record"
msgstr "Ukupan broj promjena ovog zapisa"
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__results
msgid "Use compute fields, so there is nothing store in database"
msgstr "Koristi računska polja, tako da nema ništa pohranjeno u bazi podataka"
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__results
msgid "Use compute fields, so there is nothing stored in database"
msgstr "Koristi računska polja, tako da nema ništa pohranjeno u bazi podataka"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__user_can_see_changeset
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__user_can_see_changeset
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__user_can_see_changeset
msgid "User Can See Changeset"
msgstr "Korisnik može vidjeti skup promjena"
#. module: excel_import_export_demo
#: model:ir.model,name:excel_import_export_demo.model_report_crm_lead
msgid "Wizard for report.crm.lead"
msgstr "Čarobnjak za report.crm.lead"
#. module: excel_import_export_demo
#: model:ir.model,name:excel_import_export_demo.model_report_partner_list
msgid "Wizard for report.partner.list"
msgstr "Čarobnjak za report.partner.list"
#. module: excel_import_export_demo
#: model:ir.model,name:excel_import_export_demo.model_report_sale_order
msgid "Wizard for report.sale.order"
msgstr "Čarobnjak za report.sale.order"

View file

@ -0,0 +1,289 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * excel_import_export_demo
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 14.0\n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
"Language: ca\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
#. module: excel_import_export_demo
#: model:ir.actions.report,print_report_name:excel_import_export_demo.action_report_saleorder_excel
msgid ""
"(object.state in ('draft', 'sent') and 'Quotation - %s' % (object.name)) or "
"'Order - %s' % (object.name)"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__state
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__state
msgid ""
"* Choose: wizard show in user selection mode\n"
"* Get: wizard show results from user action"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__choose_template
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__choose_template
msgid "Allow Choose Template"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__assigned_attachment_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__assigned_attachment_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__assigned_attachment_ids
msgid "Assigned Attachments"
msgstr ""
#. module: excel_import_export_demo
#: model_terms:ir.ui.view,arch_db:excel_import_export_demo.partner_list_wizard
msgid "Cancel"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__changeset_change_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__changeset_change_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__changeset_change_ids
msgid "Changeset Changes"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__changeset_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__changeset_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__changeset_ids
msgid "Changesets"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__count_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__count_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__count_changesets
msgid "Count Changesets"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__count_pending_changeset_changes
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__count_pending_changeset_changes
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__count_pending_changeset_changes
msgid "Count Pending Changeset Changes"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__count_pending_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__count_pending_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__count_pending_changesets
msgid "Count Pending Changesets"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__create_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__create_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__create_uid
msgid "Created by"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__create_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__create_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__create_date
msgid "Created on"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__display_name
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__display_name
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__display_name
msgid "Display Name"
msgstr ""
#. module: excel_import_export_demo
#: model_terms:ir.ui.view,arch_db:excel_import_export_demo.partner_list_wizard
msgid "Execute"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__data
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__data
msgid "File"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__name
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__name
msgid "File Name"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__id
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__id
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__id
msgid "ID"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_purchase_order_import_xlsx
#: model:ir.actions.act_window,name:excel_import_export_demo.action_sale_oder_import_xlsx
msgid "Import Excel"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead____last_update
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list____last_update
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order____last_update
msgid "Last Modified on"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__write_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__write_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__write_uid
msgid "Last Updated by"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__write_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__write_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__write_date
msgid "Last Updated on"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__partner_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__partner_id
msgid "Partner"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.actions.report,name:excel_import_export_demo.action_report_partner_excel
msgid "Partner List (.xlsx)"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_report_partner_list
#: model:ir.ui.menu,name:excel_import_export_demo.menu_report_partner_list
msgid "Partner List Report"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.actions.report,name:excel_import_export_demo.action_report_saleorder_excel
msgid "Quotation / Order (.xlsx)"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__results
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__results
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__results
msgid "Results"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__revenue_by_country
msgid "Revenue By Country"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__revenue_by_team
msgid "Revenue By Team"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__team_id
msgid "Sales Team"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_import_sale_order
#: model:ir.ui.menu,name:excel_import_export_demo.menu_import_sale_order
msgid "Sample Import Sale Order"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_report_crm_lead
#: model:ir.ui.menu,name:excel_import_export_demo.menu_report_crm_lead
msgid "Sample Lead Report"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_report_sale_order
#: model:ir.ui.menu,name:excel_import_export_demo.menu_report_sale_order
msgid "Sample Sales Report"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__smart_search
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__smart_search
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__smart_search
msgid "Smart Search"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__state
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__state
msgid "State"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__template_id
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__template_id
msgid "Template"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__count_pending_changeset_changes
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__count_pending_changeset_changes
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__count_pending_changeset_changes
msgid "The number of pending changes of this record"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__count_pending_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__count_pending_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__count_pending_changesets
msgid "The number of pending changesets of this record"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__count_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__count_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__count_changesets
msgid "The overall number of changesets of this record"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__results
msgid "Use compute fields, so there is nothing store in database"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__results
msgid "Use compute fields, so there is nothing stored in database"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__user_can_see_changeset
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__user_can_see_changeset
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__user_can_see_changeset
msgid "User Can See Changeset"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model,name:excel_import_export_demo.model_report_crm_lead
msgid "Wizard for report.crm.lead"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model,name:excel_import_export_demo.model_report_partner_list
msgid "Wizard for report.partner.list"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model,name:excel_import_export_demo.model_report_sale_order
msgid "Wizard for report.sale.order"
msgstr ""

View file

@ -0,0 +1,302 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * excel_import_export_demo
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2025-05-08 09:23+0000\n"
"Last-Translator: Angel Moya - PESOL <amoyapardo@gmail.com>\n"
"Language-Team: none\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 5.10.4\n"
#. module: excel_import_export_demo
#: model:ir.actions.report,print_report_name:excel_import_export_demo.action_report_saleorder_excel
msgid ""
"(object.state in ('draft', 'sent') and 'Quotation - %s' % (object.name)) or "
"'Order - %s' % (object.name)"
msgstr ""
"(object.state in ('draft', 'sent') and 'Presupuesto - %s' % (object.name)) "
"or 'Pedido - %s' % (object.name)"
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__state
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__state
msgid ""
"* Choose: wizard show in user selection mode\n"
"* Get: wizard show results from user action"
msgstr ""
"* Elegir: el asistente muestra el modo de selección del usuario\n"
"* Obtener: el asistente muestra los resultados de la acción del usuario"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__choose_template
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__choose_template
msgid "Allow Choose Template"
msgstr "Permitir Elegir Plantilla"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__assigned_attachment_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__assigned_attachment_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__assigned_attachment_ids
msgid "Assigned Attachments"
msgstr "Archivos Adjuntos Asignados"
#. module: excel_import_export_demo
#: model_terms:ir.ui.view,arch_db:excel_import_export_demo.partner_list_wizard
msgid "Cancel"
msgstr "Cancelar"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__changeset_change_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__changeset_change_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__changeset_change_ids
msgid "Changeset Changes"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__changeset_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__changeset_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__changeset_ids
msgid "Changesets"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__count_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__count_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__count_changesets
msgid "Count Changesets"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__count_pending_changeset_changes
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__count_pending_changeset_changes
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__count_pending_changeset_changes
msgid "Count Pending Changeset Changes"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__count_pending_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__count_pending_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__count_pending_changesets
msgid "Count Pending Changesets"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__create_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__create_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__create_uid
msgid "Created by"
msgstr "Creado por"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__create_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__create_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__create_date
msgid "Created on"
msgstr "Creado el"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__display_name
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__display_name
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__display_name
msgid "Display Name"
msgstr "Mostrar Nombre"
#. module: excel_import_export_demo
#: model_terms:ir.ui.view,arch_db:excel_import_export_demo.partner_list_wizard
msgid "Execute"
msgstr "Ejecutar"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__data
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__data
msgid "File"
msgstr "Archivo"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__name
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__name
msgid "File Name"
msgstr "Nombre del archivo"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__id
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__id
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__id
msgid "ID"
msgstr "ID (identificación)"
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_purchase_order_import_xlsx
#: model:ir.actions.act_window,name:excel_import_export_demo.action_sale_oder_import_xlsx
msgid "Import Excel"
msgstr "Importar Excel"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead____last_update
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list____last_update
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order____last_update
msgid "Last Modified on"
msgstr "Última Modificación el"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__write_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__write_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__write_uid
msgid "Last Updated by"
msgstr "Actualizado por Última vez por"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__write_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__write_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__write_date
msgid "Last Updated on"
msgstr "Última Actualización el"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__partner_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__partner_id
msgid "Partner"
msgstr "Socio"
#. module: excel_import_export_demo
#: model:ir.actions.report,name:excel_import_export_demo.action_report_partner_excel
msgid "Partner List (.xlsx)"
msgstr "Lista de socios (.xlsx)"
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_report_partner_list
#: model:ir.ui.menu,name:excel_import_export_demo.menu_report_partner_list
msgid "Partner List Report"
msgstr "Informe sobre la lista de socios"
#. module: excel_import_export_demo
#: model:ir.actions.report,name:excel_import_export_demo.action_report_saleorder_excel
msgid "Quotation / Order (.xlsx)"
msgstr "Presupuesto / Pedido (.xlsx)"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__results
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__results
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__results
msgid "Results"
msgstr "Resultados"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__revenue_by_country
msgid "Revenue By Country"
msgstr "Ingresos por país"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__revenue_by_team
msgid "Revenue By Team"
msgstr "Ingresos por equipo"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__team_id
msgid "Sales Team"
msgstr "Equipo de Ventas"
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_import_sale_order
#: model:ir.ui.menu,name:excel_import_export_demo.menu_import_sale_order
msgid "Sample Import Sale Order"
msgstr "Ejemplo de pedido de venta de importación"
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_report_crm_lead
#: model:ir.ui.menu,name:excel_import_export_demo.menu_report_crm_lead
msgid "Sample Lead Report"
msgstr "Ejemplo de informe sobre clientes potenciales"
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_report_sale_order
#: model:ir.ui.menu,name:excel_import_export_demo.menu_report_sale_order
msgid "Sample Sales Report"
msgstr "Ejemplo de informe de ventas"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__smart_search
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__smart_search
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__smart_search
msgid "Smart Search"
msgstr "Búsqueda inteligente"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__state
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__state
msgid "State"
msgstr "Estado"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__template_id
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__template_id
msgid "Template"
msgstr "Plantilla"
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__count_pending_changeset_changes
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__count_pending_changeset_changes
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__count_pending_changeset_changes
msgid "The number of pending changes of this record"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__count_pending_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__count_pending_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__count_pending_changesets
msgid "The number of pending changesets of this record"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__count_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__count_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__count_changesets
msgid "The overall number of changesets of this record"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__results
msgid "Use compute fields, so there is nothing store in database"
msgstr ""
"Utilizar campos de cálculo, por lo que no se almacena nada en la base de "
"datos"
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__results
msgid "Use compute fields, so there is nothing stored in database"
msgstr ""
"Utilizar campos de cálculo, por lo que no hay nada almacenado en la base de "
"datos"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__user_can_see_changeset
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__user_can_see_changeset
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__user_can_see_changeset
msgid "User Can See Changeset"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model,name:excel_import_export_demo.model_report_crm_lead
msgid "Wizard for report.crm.lead"
msgstr "Asistente para report.crm.lead"
#. module: excel_import_export_demo
#: model:ir.model,name:excel_import_export_demo.model_report_partner_list
msgid "Wizard for report.partner.list"
msgstr "Asistente para report.partner.list"
#. module: excel_import_export_demo
#: model:ir.model,name:excel_import_export_demo.model_report_sale_order
msgid "Wizard for report.sale.order"
msgstr "Asistente para report.sale.order"
#~ msgid "Export Excel"
#~ msgstr "Exportar Excel"

View file

@ -0,0 +1,288 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * excel_import_export_demo
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \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: excel_import_export_demo
#: model:ir.actions.report,print_report_name:excel_import_export_demo.action_report_saleorder_excel
msgid ""
"(object.state in ('draft', 'sent') and 'Quotation - %s' % (object.name)) or "
"'Order - %s' % (object.name)"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__state
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__state
msgid ""
"* Choose: wizard show in user selection mode\n"
"* Get: wizard show results from user action"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__choose_template
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__choose_template
msgid "Allow Choose Template"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__assigned_attachment_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__assigned_attachment_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__assigned_attachment_ids
msgid "Assigned Attachments"
msgstr ""
#. module: excel_import_export_demo
#: model_terms:ir.ui.view,arch_db:excel_import_export_demo.partner_list_wizard
msgid "Cancel"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__changeset_change_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__changeset_change_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__changeset_change_ids
msgid "Changeset Changes"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__changeset_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__changeset_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__changeset_ids
msgid "Changesets"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__count_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__count_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__count_changesets
msgid "Count Changesets"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__count_pending_changeset_changes
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__count_pending_changeset_changes
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__count_pending_changeset_changes
msgid "Count Pending Changeset Changes"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__count_pending_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__count_pending_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__count_pending_changesets
msgid "Count Pending Changesets"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__create_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__create_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__create_uid
msgid "Created by"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__create_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__create_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__create_date
msgid "Created on"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__display_name
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__display_name
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__display_name
msgid "Display Name"
msgstr ""
#. module: excel_import_export_demo
#: model_terms:ir.ui.view,arch_db:excel_import_export_demo.partner_list_wizard
msgid "Execute"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__data
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__data
msgid "File"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__name
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__name
msgid "File Name"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__id
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__id
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__id
msgid "ID"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_purchase_order_import_xlsx
#: model:ir.actions.act_window,name:excel_import_export_demo.action_sale_oder_import_xlsx
msgid "Import Excel"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead____last_update
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list____last_update
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order____last_update
msgid "Last Modified on"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__write_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__write_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__write_uid
msgid "Last Updated by"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__write_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__write_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__write_date
msgid "Last Updated on"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__partner_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__partner_id
msgid "Partner"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.actions.report,name:excel_import_export_demo.action_report_partner_excel
msgid "Partner List (.xlsx)"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_report_partner_list
#: model:ir.ui.menu,name:excel_import_export_demo.menu_report_partner_list
msgid "Partner List Report"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.actions.report,name:excel_import_export_demo.action_report_saleorder_excel
msgid "Quotation / Order (.xlsx)"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__results
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__results
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__results
msgid "Results"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__revenue_by_country
msgid "Revenue By Country"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__revenue_by_team
msgid "Revenue By Team"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__team_id
msgid "Sales Team"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_import_sale_order
#: model:ir.ui.menu,name:excel_import_export_demo.menu_import_sale_order
msgid "Sample Import Sale Order"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_report_crm_lead
#: model:ir.ui.menu,name:excel_import_export_demo.menu_report_crm_lead
msgid "Sample Lead Report"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_report_sale_order
#: model:ir.ui.menu,name:excel_import_export_demo.menu_report_sale_order
msgid "Sample Sales Report"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__smart_search
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__smart_search
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__smart_search
msgid "Smart Search"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__state
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__state
msgid "State"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__template_id
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__template_id
msgid "Template"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__count_pending_changeset_changes
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__count_pending_changeset_changes
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__count_pending_changeset_changes
msgid "The number of pending changes of this record"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__count_pending_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__count_pending_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__count_pending_changesets
msgid "The number of pending changesets of this record"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__count_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__count_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__count_changesets
msgid "The overall number of changesets of this record"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__results
msgid "Use compute fields, so there is nothing store in database"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__results
msgid "Use compute fields, so there is nothing stored in database"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__user_can_see_changeset
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__user_can_see_changeset
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__user_can_see_changeset
msgid "User Can See Changeset"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model,name:excel_import_export_demo.model_report_crm_lead
msgid "Wizard for report.crm.lead"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model,name:excel_import_export_demo.model_report_partner_list
msgid "Wizard for report.partner.list"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model,name:excel_import_export_demo.model_report_sale_order
msgid "Wizard for report.sale.order"
msgstr ""

View file

@ -0,0 +1,298 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * excel_import_export_demo
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2025-01-16 16:06+0000\n"
"Last-Translator: mymage <stefano.consolaro@mymage.it>\n"
"Language-Team: none\n"
"Language: it\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 5.6.2\n"
#. module: excel_import_export_demo
#: model:ir.actions.report,print_report_name:excel_import_export_demo.action_report_saleorder_excel
msgid ""
"(object.state in ('draft', 'sent') and 'Quotation - %s' % (object.name)) or "
"'Order - %s' % (object.name)"
msgstr ""
"(object.state in ('draft', 'sent') and 'Quotation - %s' % (object.name)) or "
"'Order - %s' % (object.name)"
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__state
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__state
msgid ""
"* Choose: wizard show in user selection mode\n"
"* Get: wizard show results from user action"
msgstr ""
"* Choose: wizard mostrato in modalità selezione utente\n"
"* Get: wizard mostra i risultati dall'azione dell'utente"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__choose_template
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__choose_template
msgid "Allow Choose Template"
msgstr "Consente selezione modello"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__assigned_attachment_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__assigned_attachment_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__assigned_attachment_ids
msgid "Assigned Attachments"
msgstr "Allegati assegnati"
#. module: excel_import_export_demo
#: model_terms:ir.ui.view,arch_db:excel_import_export_demo.partner_list_wizard
msgid "Cancel"
msgstr "Annulla"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__changeset_change_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__changeset_change_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__changeset_change_ids
msgid "Changeset Changes"
msgstr "Modifiche dell'insieme di modifiche"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__changeset_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__changeset_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__changeset_ids
msgid "Changesets"
msgstr "Insiemi di modifiche"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__count_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__count_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__count_changesets
msgid "Count Changesets"
msgstr "Conta insiemi di modifiche"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__count_pending_changeset_changes
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__count_pending_changeset_changes
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__count_pending_changeset_changes
msgid "Count Pending Changeset Changes"
msgstr "Conteggio modifiche dell'insieme di modifiche in attesa"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__count_pending_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__count_pending_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__count_pending_changesets
msgid "Count Pending Changesets"
msgstr "Conteggio insieme di modifiche in attesa"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__create_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__create_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__create_uid
msgid "Created by"
msgstr "Creato da"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__create_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__create_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__create_date
msgid "Created on"
msgstr "Creato il"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__display_name
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__display_name
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__display_name
msgid "Display Name"
msgstr "Nome visualizzato"
#. module: excel_import_export_demo
#: model_terms:ir.ui.view,arch_db:excel_import_export_demo.partner_list_wizard
msgid "Execute"
msgstr "Esegui"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__data
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__data
msgid "File"
msgstr "File"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__name
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__name
msgid "File Name"
msgstr "Nome file"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__id
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__id
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__id
msgid "ID"
msgstr "ID"
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_purchase_order_import_xlsx
#: model:ir.actions.act_window,name:excel_import_export_demo.action_sale_oder_import_xlsx
msgid "Import Excel"
msgstr "Importa Excel"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead____last_update
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list____last_update
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order____last_update
msgid "Last Modified on"
msgstr "Ultima modifica il"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__write_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__write_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__write_uid
msgid "Last Updated by"
msgstr "Ultimo aggiornamento di"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__write_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__write_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__write_date
msgid "Last Updated on"
msgstr "Ultimo aggiornamento il"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__partner_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__partner_id
msgid "Partner"
msgstr "Partner"
#. module: excel_import_export_demo
#: model:ir.actions.report,name:excel_import_export_demo.action_report_partner_excel
msgid "Partner List (.xlsx)"
msgstr "Elenco partner (.xlsx)"
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_report_partner_list
#: model:ir.ui.menu,name:excel_import_export_demo.menu_report_partner_list
msgid "Partner List Report"
msgstr "Resoconto lista partner"
#. module: excel_import_export_demo
#: model:ir.actions.report,name:excel_import_export_demo.action_report_saleorder_excel
msgid "Quotation / Order (.xlsx)"
msgstr "Preventivo / Ordine (.xlsx)"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__results
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__results
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__results
msgid "Results"
msgstr "Risultati"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__revenue_by_country
msgid "Revenue By Country"
msgstr "Ricavo per nazione"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__revenue_by_team
msgid "Revenue By Team"
msgstr "Ricavo per team"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__team_id
msgid "Sales Team"
msgstr "Team di vendita"
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_import_sale_order
#: model:ir.ui.menu,name:excel_import_export_demo.menu_import_sale_order
msgid "Sample Import Sale Order"
msgstr "Esempio importazione ordine di vendita"
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_report_crm_lead
#: model:ir.ui.menu,name:excel_import_export_demo.menu_report_crm_lead
msgid "Sample Lead Report"
msgstr "Esempio resoconto contatti"
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_report_sale_order
#: model:ir.ui.menu,name:excel_import_export_demo.menu_report_sale_order
msgid "Sample Sales Report"
msgstr "Esempio resoconto vendite"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__smart_search
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__smart_search
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__smart_search
msgid "Smart Search"
msgstr "Ricerca intelligente"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__state
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__state
msgid "State"
msgstr "Stato"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__template_id
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__template_id
msgid "Template"
msgstr "Modello"
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__count_pending_changeset_changes
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__count_pending_changeset_changes
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__count_pending_changeset_changes
msgid "The number of pending changes of this record"
msgstr "Numero di modifiche di questo record in attesa"
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__count_pending_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__count_pending_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__count_pending_changesets
msgid "The number of pending changesets of this record"
msgstr "Numero di insiemi di modifiche in attesa di questo record"
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__count_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__count_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__count_changesets
msgid "The overall number of changesets of this record"
msgstr "Numero totale di insiemi di modifiche di questo record"
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__results
msgid "Use compute fields, so there is nothing store in database"
msgstr "Usa campi calcolati, così non viene conservato nulla nel database"
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__results
msgid "Use compute fields, so there is nothing stored in database"
msgstr "Usa campi calcolati, così non viene conservato nulla nel database"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__user_can_see_changeset
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__user_can_see_changeset
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__user_can_see_changeset
msgid "User Can See Changeset"
msgstr "L'utente può vedere l'insieme delle modifiche"
#. module: excel_import_export_demo
#: model:ir.model,name:excel_import_export_demo.model_report_crm_lead
msgid "Wizard for report.crm.lead"
msgstr "Procedura guidata per report.crm.lead"
#. module: excel_import_export_demo
#: model:ir.model,name:excel_import_export_demo.model_report_partner_list
msgid "Wizard for report.partner.list"
msgstr "Procedura guidata per report.partner.list"
#. module: excel_import_export_demo
#: model:ir.model,name:excel_import_export_demo.model_report_sale_order
msgid "Wizard for report.sale.order"
msgstr "Procedura guidata per report.sale.order"
#~ msgid "Export Excel"
#~ msgstr "Esporta Excel"

View file

@ -0,0 +1,302 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * excel_import_export_demo
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 12.0\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2019-09-01 04:34+0000\n"
"Last-Translator: 黎伟杰 <674416404@qq.com>\n"
"Language-Team: none\n"
"Language: zh_CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 3.8\n"
#. module: excel_import_export_demo
#: model:ir.actions.report,print_report_name:excel_import_export_demo.action_report_saleorder_excel
msgid ""
"(object.state in ('draft', 'sent') and 'Quotation - %s' % (object.name)) or "
"'Order - %s' % (object.name)"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__state
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__state
msgid ""
"* Choose: wizard show in user selection mode\n"
"* Get: wizard show results from user action"
msgstr ""
"* 选择:用户选择模式下的向导显示\n"
"* 获取:向导显示用户操作的结果"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__choose_template
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__choose_template
msgid "Allow Choose Template"
msgstr "添加表单部分"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__assigned_attachment_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__assigned_attachment_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__assigned_attachment_ids
msgid "Assigned Attachments"
msgstr ""
#. module: excel_import_export_demo
#: model_terms:ir.ui.view,arch_db:excel_import_export_demo.partner_list_wizard
msgid "Cancel"
msgstr "取消"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__changeset_change_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__changeset_change_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__changeset_change_ids
msgid "Changeset Changes"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__changeset_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__changeset_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__changeset_ids
msgid "Changesets"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__count_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__count_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__count_changesets
msgid "Count Changesets"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__count_pending_changeset_changes
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__count_pending_changeset_changes
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__count_pending_changeset_changes
msgid "Count Pending Changeset Changes"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__count_pending_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__count_pending_changesets
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__count_pending_changesets
msgid "Count Pending Changesets"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__create_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__create_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__create_uid
msgid "Created by"
msgstr "创建者"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__create_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__create_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__create_date
msgid "Created on"
msgstr "创建时间"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__display_name
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__display_name
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__display_name
msgid "Display Name"
msgstr "显示名称"
#. module: excel_import_export_demo
#: model_terms:ir.ui.view,arch_db:excel_import_export_demo.partner_list_wizard
msgid "Execute"
msgstr "执行"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__data
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__data
msgid "File"
msgstr "文件"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__name
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__name
msgid "File Name"
msgstr "文件名"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__id
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__id
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__id
msgid "ID"
msgstr "ID"
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_purchase_order_import_xlsx
#: model:ir.actions.act_window,name:excel_import_export_demo.action_sale_oder_import_xlsx
msgid "Import Excel"
msgstr "导入Excel"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead____last_update
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list____last_update
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order____last_update
msgid "Last Modified on"
msgstr "最后修改时间"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__write_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__write_uid
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__write_uid
msgid "Last Updated by"
msgstr "最后更新者"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__write_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__write_date
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__write_date
msgid "Last Updated on"
msgstr "最后更新时间"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__partner_ids
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__partner_id
msgid "Partner"
msgstr "业务伙伴"
#. module: excel_import_export_demo
#: model:ir.actions.report,name:excel_import_export_demo.action_report_partner_excel
msgid "Partner List (.xlsx)"
msgstr "业务伙伴名单(.xlsx)"
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_report_partner_list
#: model:ir.ui.menu,name:excel_import_export_demo.menu_report_partner_list
msgid "Partner List Report"
msgstr "业务伙伴名单报告"
#. module: excel_import_export_demo
#: model:ir.actions.report,name:excel_import_export_demo.action_report_saleorder_excel
msgid "Quotation / Order (.xlsx)"
msgstr "报价单/订单 (.xlsx)"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__results
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__results
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__results
msgid "Results"
msgstr "结果"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__revenue_by_country
msgid "Revenue By Country"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__revenue_by_team
msgid "Revenue By Team"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__team_id
msgid "Sales Team"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_import_sale_order
#: model:ir.ui.menu,name:excel_import_export_demo.menu_import_sale_order
msgid "Sample Import Sale Order"
msgstr "导入销售订单样本"
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_report_crm_lead
#: model:ir.ui.menu,name:excel_import_export_demo.menu_report_crm_lead
msgid "Sample Lead Report"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.actions.act_window,name:excel_import_export_demo.action_report_sale_order
#: model:ir.ui.menu,name:excel_import_export_demo.menu_report_sale_order
msgid "Sample Sales Report"
msgstr "销售报告样本"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__smart_search
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__smart_search
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__smart_search
msgid "Smart Search"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__state
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__state
msgid "State"
msgstr "状态"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__template_id
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__template_id
msgid "Template"
msgstr "模板"
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__count_pending_changeset_changes
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__count_pending_changeset_changes
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__count_pending_changeset_changes
msgid "The number of pending changes of this record"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__count_pending_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__count_pending_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__count_pending_changesets
msgid "The number of pending changesets of this record"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_crm_lead__count_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__count_changesets
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__count_changesets
msgid "The overall number of changesets of this record"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_partner_list__results
msgid "Use compute fields, so there is nothing store in database"
msgstr "使用计算字段,因此数据库中没有任何存储"
#. module: excel_import_export_demo
#: model:ir.model.fields,help:excel_import_export_demo.field_report_sale_order__results
msgid "Use compute fields, so there is nothing stored in database"
msgstr "使用计算字段,因此数据库中没有任何内容"
#. module: excel_import_export_demo
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_crm_lead__user_can_see_changeset
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_partner_list__user_can_see_changeset
#: model:ir.model.fields,field_description:excel_import_export_demo.field_report_sale_order__user_can_see_changeset
msgid "User Can See Changeset"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model,name:excel_import_export_demo.model_report_crm_lead
msgid "Wizard for report.crm.lead"
msgstr ""
#. module: excel_import_export_demo
#: model:ir.model,name:excel_import_export_demo.model_report_partner_list
msgid "Wizard for report.partner.list"
msgstr "业务伙伴名单报告向导"
#. module: excel_import_export_demo
#: model:ir.model,name:excel_import_export_demo.model_report_sale_order
msgid "Wizard for report.sale.order"
msgstr "销售订单报告向导"
#~ msgid "Export Excel"
#~ msgstr "导出Excel"
#~ msgid "Choose"
#~ msgstr "选择"
#~ msgid "Get"
#~ msgstr "获取"

View file

@ -0,0 +1,26 @@
<?xml version="1.0" encoding="utf-8" ?>
<!--
Copyright 2019 Ecosoft Co., Ltd.
License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html).-->
<odoo>
<record id="action_purchase_order_import_xlsx" model="ir.actions.act_window">
<field name="name">Import Excel</field>
<field name="res_model">import.xlsx.wizard</field>
<field name="binding_view_types">form</field>
<field name="binding_model_id" ref="purchase.model_purchase_order" />
<field name="view_mode">form</field>
<field name="target">new</field>
<field name="context">
{
'template_domain': [('res_model', '=', 'purchase.order'),
('fname', '=', 'purchase_order.xlsx'),
('gname', '=', False)],
'template_context': {},
'template_import_states': [],
}
</field>
</record>
</odoo>

View file

@ -0,0 +1,66 @@
<?xml version="1.0" encoding="utf-8" ?>
<!--
Copyright 2019 Ecosoft Co., Ltd.
License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html).-->
<odoo>
<record id="purchase_order_xlsx_template" model="xlsx.template">
<field name="res_model">purchase.order</field>
<field name="fname">purchase_order.xlsx</field>
<field name="name">Purchase Order Template (import/export)</field>
<field name="description">Sample Purchase Order Template for testing</field>
<field
name="import_action_id"
eval="ref('action_purchase_order_import_xlsx')"
/>
<field name="input_instruction">
{
'__EXPORT__': {
'purchase': {
'_HEAD_': {
'B1': 'partner_id.contact_address',
'F4': 'display_name',
'H4': 'date_order',
'B8': 'user_id.display_name',
'B10': 'company_id.name',
'B12': '${"%s, %s, %s" % (object.company_id.street, object.company_id.city, object.company_id.state_id.name)}',
'B15': 'company_id.phone',
'B17': 'company_id.email',
'E8': 'partner_id.name',
'E10': 'partner_id.parent_id.name',
'E15': 'partner_id.phone',
'E17': 'partner_id.email',
'H20': 'date_planned${value or ""}#{style=date}',
'I37': 'amount_untaxed#{style=number}',
'O38': 'amount_tax#{style=number}',
'I39': 'amount_total#{style=number}',
},
'order_line': {
'B22': 'product_id.default_code',
'C22': 'name',
'E22': 'product_qty${value or 0}#{style=number}',
'F22': 'product_uom.name',
'G22': 'price_unit${value or 0}#{style=number}',
'H22': 'taxes_id.name',
}
}
},
'__IMPORT__': {
'purchase': {
'order_line': {
'B22': 'product_id',
'C22': 'name',
'E22': 'product_qty',
'F22': 'product_uom',
'G22': 'price_unit',
'H22': 'taxes_id',
'I22': 'date_planned${time.strftime("%Y-%m-%d %H:%M:%S")}',
}
}
},
}
</field>
</record>
<function model="xlsx.template" name="load_xlsx_template">
<value eval="[ref('purchase_order_xlsx_template')]" />
</function>
</odoo>

View file

@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8" ?>
<!--
Copyright 2019 Ecosoft Co., Ltd.
License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html).-->
<odoo>
<record id="action_sale_oder_import_xlsx" model="ir.actions.act_window">
<field name="name">Import Excel</field>
<field name="res_model">import.xlsx.wizard</field>
<field name="binding_view_types">form</field>
<field name="binding_model_id" ref="sale.model_sale_order" />
<field name="view_mode">form</field>
<field name="target">new</field>
<field name="context">
{
'template_domain': [('res_model', '=', 'sale.order'),
('fname', '=', 'sale_order.xlsx'),
('gname', '=', False)],
'template_context': {},
'template_import_states': [],
}
</field>
</record>
</odoo>

View file

@ -0,0 +1,50 @@
<?xml version="1.0" encoding="utf-8" ?>
<!--
Copyright 2019 Ecosoft Co., Ltd.
License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html).-->
<odoo>
<record id="sale_order_xlsx_template" model="xlsx.template">
<field name="res_model">sale.order</field>
<field name="fname">sale_order.xlsx</field>
<field name="name">Sale Order Template (import/export)</field>
<field name="description">Sample Sales Order Template for testing</field>
<field name="import_action_id" eval="ref('action_sale_oder_import_xlsx')" />
<field name="input_instruction">
{
'__EXPORT__': {
'sale_order': {
'_HEAD_': {
'B2': 'partner_id.display_name${value or ""}#{align=left;style=text}',
'B3': 'name${value or ""}#{align=left;style=text}',
},
'order_line': {
'A6': 'product_id.display_name${value or ""}#{style=text}',
'B6': 'name${value or ""}#{style=text}',
'C6': 'product_uom_qty${value or 0}#{style=number}',
'D6': 'product_uom.name${value or ""}#{style=text}',
'E6': 'price_unit${value or 0}#{style=number}',
'F6': 'tax_id${value and ",".join([x.display_name for x in value]) or ""}',
'G6': 'price_subtotal${value or 0}#{style=number}',
}
}
},
'__IMPORT__': {
'sale_order': {
'_NODEL_order_line': {
'A6': 'product_id',
'B6': 'name',
'C6': 'product_uom_qty',
'D6': 'product_uom',
'E6': 'price_unit',
'F6': 'tax_id',
}
}
},
# '__POST_IMPORT__': '${object.post_import_do_something()}',
}
</field>
</record>
<function model="xlsx.template" name="load_xlsx_template">
<value eval="[ref('sale_order_xlsx_template')]" />
</function>
</odoo>

View file

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8" ?>
<!--
Copyright 2019 Ecosoft Co., Ltd.
License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html).-->
<odoo>
<record id="action_import_sale_order" model="ir.actions.act_window">
<field name="name">Sample Import Sale Order</field>
<field name="res_model">import.xlsx.wizard</field>
<field name="binding_view_types">form</field>
<field name="view_mode">form</field>
<field name="target">new</field>
<field name="context">{
'template_domain': [('res_model', '=', 'sale.order'),
('fname', '=', 'import_sale_order.xlsx'),
('gname', '=', False)], }
</field>
</record>
<menuitem
id="menu_import_sale_order"
parent="excel_import_export.menu_excel_import_export"
action="action_import_sale_order"
sequence="30"
/>
</odoo>

View file

@ -0,0 +1,35 @@
<?xml version="1.0" encoding="utf-8" ?>
<!--
Copyright 2019 Ecosoft Co., Ltd.
License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html).-->
<odoo>
<record id="import_sale_order_xlsx_template" model="xlsx.template">
<field name="res_model">sale.order</field>
<field name="fname">import_sale_order.xlsx</field>
<field name="name">Import Sale Order Template</field>
<field name="description">Sample Import Sales Order Tempalte for testing</field>
<field name="redirect_action" ref="sale.action_orders" />
<field name="input_instruction">
{
'__IMPORT__': {
'sale_order': {
'_HEAD_': {
'B2': 'partner_id',
},
'order_line': {
'A6': 'product_id',
'B6': 'name',
'C6': 'product_uom_qty',
'D6': 'product_uom',
'E6': 'price_unit',
'F6': 'tax_id',
}
}
},
}
</field>
</record>
<function model="xlsx.template" name="load_xlsx_template">
<value eval="[ref('import_sale_order_xlsx_template')]" />
</function>
</odoo>

View file

@ -0,0 +1 @@
* Kitti Upariphutthiphong. <kittiu@gmail.com> (http://ecosoft.co.th)

View file

@ -0,0 +1,7 @@
This module provide some example use case for excel_import_export
1. Import/Export Sales Order (import_export_sale_order)
2. Import New Sales Orders (import_sale_orders)
3. Sales Orders Report (report_sale_order)
4. Print Quoation / Order (.xlsx) (report_action/sale_order)
5. Run Partner List Report (report_action/partner_list)

View file

@ -0,0 +1,3 @@
To install this module, you need to install **excel_import_export**
Then, simply install **excel_import_export_demo**.

View file

@ -0,0 +1,19 @@
**Example 1:** Export/Import Excel on existing document
To test this use case, go to any Sales Order and use Export Excel or Import Excel in action menu.
**Example 2:** Import Excel Files
To test this use case, go to Settings > Excel Import/Export > Sample Import Sales Order
**Example 3:** Create Excel Report
To test this use case, go to Settings > Excel Import/Export > Sample Sales Report
**Example 4:** Printout Excel on existing document, using report action
To test this use case, go to any Sales Order and click print "Quotation / Order (.xlsx)".
**Example 5:** Run Partner List Report, using report action
To test this use case, go to menu Sales > Reporting > Partner List Report

View file

@ -0,0 +1,4 @@
# Copyright 2019 Ecosoft Co., Ltd (http://ecosoft.co.th/)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html)
from . import partner_list

View file

@ -0,0 +1,4 @@
# Copyright 2019 Ecosoft Co., Ltd (http://ecosoft.co.th/)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html)
from . import report_partner_list

View file

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<record id="action_report_partner_excel" model="ir.actions.report">
<field name="name">Partner List (.xlsx)</field>
<field name="model">report.partner.list</field>
<field name="report_type">excel</field>
<field name="report_name">partner_list.xlsx</field>
<field name="report_file">partner_list</field>
</record>
</odoo>

View file

@ -0,0 +1,26 @@
# Copyright 2019 Ecosoft Co., Ltd (http://ecosoft.co.th/)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html)
from odoo import fields, models
class ReportPartnerList(models.TransientModel):
_name = "report.partner.list"
_description = "Wizard for report.partner.list"
partner_ids = fields.Many2many(comodel_name="res.partner")
results = fields.Many2many(
"res.partner",
compute="_compute_results",
help="Use compute fields, so there is nothing store in database",
)
def _compute_results(self):
"""On the wizard, result will be computed and added to results line
before export to excel by report_excel action
"""
self.ensure_one()
domain = []
if self.partner_ids:
domain.append(("id", "in", self.partner_ids.ids))
self.results = self.env["res.partner"].search(domain, order="id")

View file

@ -0,0 +1,40 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<record id="partner_list_wizard" model="ir.ui.view">
<field name="name">partner.list.wizard</field>
<field name="model">report.partner.list</field>
<field name="arch" type="xml">
<form>
<group>
<group>
<field name="partner_ids" widget="many2many_tags" />
</group>
<group>
</group>
</group>
<footer>
<button
name='%(excel_import_export_demo.action_report_partner_excel)d'
type='action'
string='Execute'
class='oe_highlight'
/>
<button special='cancel' string='Cancel' />
</footer>
</form>
</field>
</record>
<record id='action_report_partner_list' model='ir.actions.act_window'>
<field name='name'>Partner List Report</field>
<field name='res_model'>report.partner.list</field>
<field name='binding_view_types'>form</field>
<field name='view_mode'>form</field>
<field name='target'>new</field>
</record>
<menuitem
id="menu_report_partner_list"
parent="sale.sale_menu_root"
action="action_report_partner_list"
name="Partner List Report"
/>
</odoo>

View file

@ -0,0 +1,2 @@
"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
access_report_partner_list,access_report_partner_list,model_report_partner_list,base.group_user,1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_report_partner_list access_report_partner_list model_report_partner_list base.group_user 1 1 1 1

View file

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<record id="partner_list_xlsx_template" model="xlsx.template">
<field name="res_model">report.partner.list</field>
<field name="fname">partner_list.xlsx</field>
<field name="name">Partner List Report Template</field>
<field
name="description"
>Sample Partner List Report Template for testing</field>
<field name="input_instruction">
{
'__EXPORT__': {
1: {
'results': {
'A4': 'id',
'B4': 'name${value or ""}#{style=text}',
'C4': 'phone${value or ""}#{style=text}',
'D4': 'email${value or ""}#{style=text}',
}
}
},
}
</field>
</record>
<function model="xlsx.template" name="load_xlsx_template">
<value eval="[ref('partner_list_xlsx_template')]" />
</function>
</odoo>

View file

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<record id="action_report_saleorder_excel" model="ir.actions.report">
<field name="name">Quotation / Order (.xlsx)</field>
<field name="model">sale.order</field>
<field name="report_type">excel</field>
<field name="report_name">sale_order_form.xlsx</field>
<field name="report_file">sale_order</field>
<field name="binding_model_id" ref="sale.model_sale_order" />
<field name="binding_type">report</field>
<field
name="print_report_name"
>(object.state in ('draft', 'sent') and 'Quotation - %s' % (object.name)) or 'Order - %s' % (object.name)</field>
</record>
</odoo>

View file

@ -0,0 +1,33 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<record id="sale_order_excel_template" model="xlsx.template">
<field name="res_model">sale.order</field>
<field name="fname">sale_order_form.xlsx</field>
<field name="name">Sale Order Template</field>
<field name="description">Sample Sales Order Template for testing</field>
<field name="input_instruction">
{
'__EXPORT__': {
'sale_order': {
'_HEAD_': {
'B2': 'partner_id.display_name${value or ""}#{align=left;style=text}',
'B3': 'name${value or ""}#{align=left;style=text}',
},
'order_line': {
'A6': 'product_id.display_name${value or ""}#{style=text}',
'B6': 'name${value or ""}#{style=text}',
'C6': 'product_uom_qty${value or 0}#{style=number}',
'D6': 'product_uom.name${value or ""}#{style=text}',
'E6': 'price_unit${value or 0}#{style=number}',
'F6': 'tax_id${value and ",".join([x.display_name for x in value]) or ""}',
'G6': 'price_subtotal${value or 0}#{style=number}@{sum}',
}
}
},
}
</field>
</record>
<function model="xlsx.template" name="load_xlsx_template">
<value eval="[ref('sale_order_excel_template')]" />
</function>
</odoo>

View file

@ -0,0 +1,4 @@
# Copyright 2019 Ecosoft Co., Ltd (http://ecosoft.co.th/)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html)
from . import report_crm_lead

View file

@ -0,0 +1,65 @@
# Copyright 2019 Ecosoft Co., Ltd (http://ecosoft.co.th/)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html)
from odoo import fields, models
class ReportCRMLead(models.TransientModel):
_name = "report.crm.lead"
_description = "Wizard for report.crm.lead"
_inherit = "xlsx.report"
# Search Criteria
team_id = fields.Many2one("crm.team", string="Sales Team")
# Report Result, crm.lead
results = fields.Many2many(
"crm.lead",
compute="_compute_results",
)
revenue_by_country = fields.Many2many(
"crm.lead",
compute="_compute_revenue_by_country",
)
revenue_by_team = fields.Many2many(
"crm.lead",
compute="_compute_revenue_by_team",
)
def _compute_results(self):
self.ensure_one()
domain = []
if self.team_id:
domain += [("team_id", "=", self.team_id.id)]
self.results = self.env["crm.lead"].search(domain)
def _compute_revenue_by_country(self):
self.ensure_one()
domain = []
if self.team_id:
domain += [("team_id", "=", self.team_id.id)]
results = self.env["crm.lead"].read_group(
domain,
["country_id", "expected_revenue"],
["country_id"],
orderby="country_id",
)
for row in results:
self.revenue_by_country += self.env["crm.lead"].new(
{
"country_id": row["country_id"],
"expected_revenue": row["expected_revenue"],
}
)
def _compute_revenue_by_team(self):
self.ensure_one()
domain = []
if self.team_id:
domain += [("team_id", "=", self.team_id.id)]
results = self.env["crm.lead"].read_group(
domain, ["team_id", "expected_revenue"], ["team_id"], orderby="team_id"
)
for row in results:
self.revenue_by_team += self.env["crm.lead"].new(
{"team_id": row["team_id"], "expected_revenue": row["expected_revenue"]}
)

View file

@ -0,0 +1,39 @@
<?xml version="1.0" encoding="utf-8" ?>
<!--
Copyright 2019 Ecosoft Co., Ltd.
License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html).-->
<odoo>
<record id="report_crm_lead" model="ir.ui.view">
<field name="name">report.crm.lead</field>
<field name="model">report.crm.lead</field>
<field name="inherit_id" ref="excel_import_export.xlsx_report_view" />
<field name="mode">primary</field>
<field name="arch" type="xml">
<xpath expr="//group[@name='criteria']" position="inside">
<group>
<field name="team_id" />
</group>
<group>
</group>
</xpath>
</field>
</record>
<record id="action_report_crm_lead" model="ir.actions.act_window">
<field name="name">Sample Lead Report</field>
<field name="res_model">report.crm.lead</field>
<field name="binding_view_types">form</field>
<field name="view_mode">form</field>
<field name="target">new</field>
<field name="context">
{'template_domain': [('res_model', '=', 'report.crm.lead'),
('fname', '=', 'report_crm_lead.xlsx'),
('gname', '=', False)]}
</field>
</record>
<menuitem
id="menu_report_crm_lead"
parent="excel_import_export.menu_excel_import_export"
action="action_report_crm_lead"
sequence="20"
/>
</odoo>

View file

@ -0,0 +1,2 @@
"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
access_report_crm_lead,access_report_crm_lead,model_report_crm_lead,base.group_user,1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_report_crm_lead access_report_crm_lead model_report_crm_lead base.group_user 1 1 1 1

View file

@ -0,0 +1,45 @@
<?xml version="1.0" encoding="utf-8" ?>
<!--
Copyright 2019 Ecosoft Co., Ltd.
License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html).-->
<odoo>
<record id="report_crm_lead_template" model="xlsx.template">
<field name="res_model">report.crm.lead</field>
<field name="fname">report_crm_lead.xlsx</field>
<field name="name">Report CRM Lead Template</field>
<field name="description">Sample Report Sales Order Tempalte for testing</field>
<field name="input_instruction">
{
'__EXPORT__': {
'crm_lead': {
'results': {
'A4': 'name',
'B4': 'partner_id.name',
'C4': 'country_id.name',
'D4': 'activity_date_deadline${value or ""}#{style=date}',
'E4': 'activity_summary',
'F4': 'stage_id.name',
'G4': 'expected_revenue${value or 0}#{style=number}',
'H4': 'team_id.name',
},
},
'revenue_by_country': {
'revenue_by_country': {
'A3': 'country_id.name',
'B3': 'expected_revenue${value or 0}#{style=number}'
},
},
'revenue_by_team': {
'revenue_by_team': {
'A3': 'team_id.name',
'B3': 'expected_revenue${value or 0}#{style=number}'
},
},
},
}
</field>
</record>
<function model="xlsx.template" name="load_xlsx_template">
<value eval="[ref('report_crm_lead_template')]" />
</function>
</odoo>

View file

@ -0,0 +1,4 @@
# Copyright 2019 Ecosoft Co., Ltd (http://ecosoft.co.th/)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html)
from . import report_sale_order

View file

@ -0,0 +1,30 @@
# Copyright 2019 Ecosoft Co., Ltd (http://ecosoft.co.th/)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html)
from odoo import fields, models
class ReportSaleOrder(models.TransientModel):
_name = "report.sale.order"
_description = "Wizard for report.sale.order"
_inherit = "xlsx.report"
# Search Criteria
partner_id = fields.Many2one("res.partner", string="Partner")
# Report Result, sale.order
results = fields.Many2many(
"sale.order",
compute="_compute_results",
help="Use compute fields, so there is nothing stored in database",
)
def _compute_results(self):
"""On the wizard, result will be computed and added to results line
before export to excel, by using xlsx.export
"""
self.ensure_one()
Result = self.env["sale.order"]
domain = []
if self.partner_id:
domain += [("partner_id", "=", self.partner_id.id)]
self.results = Result.search(domain)

View file

@ -0,0 +1,39 @@
<?xml version="1.0" encoding="utf-8" ?>
<!--
Copyright 2019 Ecosoft Co., Ltd.
License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html).-->
<odoo>
<record id="report_sale_order" model="ir.ui.view">
<field name="name">report.sale.order</field>
<field name="model">report.sale.order</field>
<field name="inherit_id" ref="excel_import_export.xlsx_report_view" />
<field name="mode">primary</field>
<field name="arch" type="xml">
<xpath expr="//group[@name='criteria']" position="inside">
<group>
<field name="partner_id" />
</group>
<group>
</group>
</xpath>
</field>
</record>
<record id="action_report_sale_order" model="ir.actions.act_window">
<field name="name">Sample Sales Report</field>
<field name="res_model">report.sale.order</field>
<field name="binding_view_types">form</field>
<field name="view_mode">form</field>
<field name="target">new</field>
<field name="context">
{'template_domain': [('res_model', '=', 'report.sale.order'),
('fname', '=', 'report_sale_order.xlsx'),
('gname', '=', False)]}
</field>
</record>
<menuitem
id="menu_report_sale_order"
parent="excel_import_export.menu_excel_import_export"
action="action_report_sale_order"
sequence="20"
/>
</odoo>

View file

@ -0,0 +1,2 @@
"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
access_report_sale_order,access_report_sale_order,model_report_sale_order,base.group_user,1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_report_sale_order access_report_sale_order model_report_sale_order base.group_user 1 1 1 1

View file

@ -0,0 +1,33 @@
<?xml version="1.0" encoding="utf-8" ?>
<!--
Copyright 2019 Ecosoft Co., Ltd.
License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl.html).-->
<odoo>
<record id="report_sale_order_template" model="xlsx.template">
<field name="res_model">report.sale.order</field>
<field name="fname">report_sale_order.xlsx</field>
<field name="name">Report Sale Order Template</field>
<field name="description">Sample Report Sales Order Tempalte for testing</field>
<field name="input_instruction">
{
'__EXPORT__': {
1: {
'_HEAD_': {
'B2': 'partner_id.display_name${value or ""}#{align=left;style=text}',
},
'_EXTEND_results': {
'A5': 'name${value or ""}#{style=text}',
'B5': 'date_order${value or ""}#{style=date}',
'C5': 'amount_untaxed${value or 0}#{style=number}@{sum}',
'D5': 'amount_tax${value or 0}#{style=number}@{sum}',
'E5': 'amount_total${value or 0}#{style=number}@{sum}',
},
},
},
}
</field>
</record>
<function model="xlsx.template" name="load_xlsx_template">
<value eval="[ref('report_sale_order_template')]" />
</function>
</odoo>

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

View file

@ -0,0 +1,452 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="generator" content="Docutils: https://docutils.sourceforge.io/" />
<title>Excel Import/Export/Report Demo</title>
<style type="text/css">
/*
:Author: David Goodger (goodger@python.org)
:Id: $Id: html4css1.css 9511 2024-01-13 09:50:07Z milde $
:Copyright: This stylesheet has been placed in the public domain.
Default cascading style sheet for the HTML output of Docutils.
Despite the name, some widely supported CSS2 features are used.
See https://docutils.sourceforge.io/docs/howto/html-stylesheets.html for how to
customize this style sheet.
*/
/* used to remove borders from tables and images */
.borderless, table.borderless td, table.borderless th {
border: 0 }
table.borderless td, table.borderless th {
/* Override padding for "table.docutils td" with "! important".
The right padding separates the table cells. */
padding: 0 0.5em 0 0 ! important }
.first {
/* Override more specific margin styles with "! important". */
margin-top: 0 ! important }
.last, .with-subtitle {
margin-bottom: 0 ! important }
.hidden {
display: none }
.subscript {
vertical-align: sub;
font-size: smaller }
.superscript {
vertical-align: super;
font-size: smaller }
a.toc-backref {
text-decoration: none ;
color: black }
blockquote.epigraph {
margin: 2em 5em ; }
dl.docutils dd {
margin-bottom: 0.5em }
object[type="image/svg+xml"], object[type="application/x-shockwave-flash"] {
overflow: hidden;
}
/* Uncomment (and remove this text!) to get bold-faced definition list terms
dl.docutils dt {
font-weight: bold }
*/
div.abstract {
margin: 2em 5em }
div.abstract p.topic-title {
font-weight: bold ;
text-align: center }
div.admonition, div.attention, div.caution, div.danger, div.error,
div.hint, div.important, div.note, div.tip, div.warning {
margin: 2em ;
border: medium outset ;
padding: 1em }
div.admonition p.admonition-title, div.hint p.admonition-title,
div.important p.admonition-title, div.note p.admonition-title,
div.tip p.admonition-title {
font-weight: bold ;
font-family: sans-serif }
div.attention p.admonition-title, div.caution p.admonition-title,
div.danger p.admonition-title, div.error p.admonition-title,
div.warning p.admonition-title, .code .error {
color: red ;
font-weight: bold ;
font-family: sans-serif }
/* Uncomment (and remove this text!) to get reduced vertical space in
compound paragraphs.
div.compound .compound-first, div.compound .compound-middle {
margin-bottom: 0.5em }
div.compound .compound-last, div.compound .compound-middle {
margin-top: 0.5em }
*/
div.dedication {
margin: 2em 5em ;
text-align: center ;
font-style: italic }
div.dedication p.topic-title {
font-weight: bold ;
font-style: normal }
div.figure {
margin-left: 2em ;
margin-right: 2em }
div.footer, div.header {
clear: both;
font-size: smaller }
div.line-block {
display: block ;
margin-top: 1em ;
margin-bottom: 1em }
div.line-block div.line-block {
margin-top: 0 ;
margin-bottom: 0 ;
margin-left: 1.5em }
div.sidebar {
margin: 0 0 0.5em 1em ;
border: medium outset ;
padding: 1em ;
background-color: #ffffee ;
width: 40% ;
float: right ;
clear: right }
div.sidebar p.rubric {
font-family: sans-serif ;
font-size: medium }
div.system-messages {
margin: 5em }
div.system-messages h1 {
color: red }
div.system-message {
border: medium outset ;
padding: 1em }
div.system-message p.system-message-title {
color: red ;
font-weight: bold }
div.topic {
margin: 2em }
h1.section-subtitle, h2.section-subtitle, h3.section-subtitle,
h4.section-subtitle, h5.section-subtitle, h6.section-subtitle {
margin-top: 0.4em }
h1.title {
text-align: center }
h2.subtitle {
text-align: center }
hr.docutils {
width: 75% }
img.align-left, .figure.align-left, object.align-left, table.align-left {
clear: left ;
float: left ;
margin-right: 1em }
img.align-right, .figure.align-right, object.align-right, table.align-right {
clear: right ;
float: right ;
margin-left: 1em }
img.align-center, .figure.align-center, object.align-center {
display: block;
margin-left: auto;
margin-right: auto;
}
table.align-center {
margin-left: auto;
margin-right: auto;
}
.align-left {
text-align: left }
.align-center {
clear: both ;
text-align: center }
.align-right {
text-align: right }
/* reset inner alignment in figures */
div.align-right {
text-align: inherit }
/* div.align-center * { */
/* text-align: left } */
.align-top {
vertical-align: top }
.align-middle {
vertical-align: middle }
.align-bottom {
vertical-align: bottom }
ol.simple, ul.simple {
margin-bottom: 1em }
ol.arabic {
list-style: decimal }
ol.loweralpha {
list-style: lower-alpha }
ol.upperalpha {
list-style: upper-alpha }
ol.lowerroman {
list-style: lower-roman }
ol.upperroman {
list-style: upper-roman }
p.attribution {
text-align: right ;
margin-left: 50% }
p.caption {
font-style: italic }
p.credits {
font-style: italic ;
font-size: smaller }
p.label {
white-space: nowrap }
p.rubric {
font-weight: bold ;
font-size: larger ;
color: maroon ;
text-align: center }
p.sidebar-title {
font-family: sans-serif ;
font-weight: bold ;
font-size: larger }
p.sidebar-subtitle {
font-family: sans-serif ;
font-weight: bold }
p.topic-title {
font-weight: bold }
pre.address {
margin-bottom: 0 ;
margin-top: 0 ;
font: inherit }
pre.literal-block, pre.doctest-block, pre.math, pre.code {
margin-left: 2em ;
margin-right: 2em }
pre.code .ln { color: gray; } /* line numbers */
pre.code, code { background-color: #eeeeee }
pre.code .comment, code .comment { color: #5C6576 }
pre.code .keyword, code .keyword { color: #3B0D06; font-weight: bold }
pre.code .literal.string, code .literal.string { color: #0C5404 }
pre.code .name.builtin, code .name.builtin { color: #352B84 }
pre.code .deleted, code .deleted { background-color: #DEB0A1}
pre.code .inserted, code .inserted { background-color: #A3D289}
span.classifier {
font-family: sans-serif ;
font-style: oblique }
span.classifier-delimiter {
font-family: sans-serif ;
font-weight: bold }
span.interpreted {
font-family: sans-serif }
span.option {
white-space: nowrap }
span.pre {
white-space: pre }
span.problematic, pre.problematic {
color: red }
span.section-subtitle {
/* font-size relative to parent (h1..h6 element) */
font-size: 80% }
table.citation {
border-left: solid 1px gray;
margin-left: 1px }
table.docinfo {
margin: 2em 4em }
table.docutils {
margin-top: 0.5em ;
margin-bottom: 0.5em }
table.footnote {
border-left: solid 1px black;
margin-left: 1px }
table.docutils td, table.docutils th,
table.docinfo td, table.docinfo th {
padding-left: 0.5em ;
padding-right: 0.5em ;
vertical-align: top }
table.docutils th.field-name, table.docinfo th.docinfo-name {
font-weight: bold ;
text-align: left ;
white-space: nowrap ;
padding-left: 0 }
/* "booktabs" style (no vertical lines) */
table.docutils.booktabs {
border: 0px;
border-top: 2px solid;
border-bottom: 2px solid;
border-collapse: collapse;
}
table.docutils.booktabs * {
border: 0px;
}
table.docutils.booktabs th {
border-bottom: thin solid;
text-align: left;
}
h1 tt.docutils, h2 tt.docutils, h3 tt.docutils,
h4 tt.docutils, h5 tt.docutils, h6 tt.docutils {
font-size: 100% }
ul.auto-toc {
list-style-type: none }
</style>
</head>
<body>
<div class="document" id="excel-import-export-report-demo">
<h1 class="title">Excel Import/Export/Report Demo</h1>
<!-- !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:5b14755bfe1fe3754bb28f1df6d7de5fad74c2b7ad73b8bb419ebf501b60985d
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<p><a class="reference external image-reference" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external image-reference" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external image-reference" href="https://github.com/OCA/server-tools/tree/16.0/excel_import_export_demo"><img alt="OCA/server-tools" src="https://img.shields.io/badge/github-OCA%2Fserver--tools-lightgray.png?logo=github" /></a> <a class="reference external image-reference" href="https://translation.odoo-community.org/projects/server-tools-16-0/server-tools-16-0-excel_import_export_demo"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external image-reference" href="https://runboat.odoo-community.org/builds?repo=OCA/server-tools&amp;target_branch=16.0"><img alt="Try me on Runboat" src="https://img.shields.io/badge/runboat-Try%20me-875A7B.png" /></a></p>
<p>This module provide some example use case for excel_import_export</p>
<ol class="arabic simple">
<li>Import/Export Sales Order (import_export_sale_order)</li>
<li>Import New Sales Orders (import_sale_orders)</li>
<li>Sales Orders Report (report_sale_order)</li>
<li>Print Quoation / Order (.xlsx) (report_action/sale_order)</li>
<li>Run Partner List Report (report_action/partner_list)</li>
</ol>
<p><strong>Table of contents</strong></p>
<div class="contents local topic" id="contents">
<ul class="simple">
<li><a class="reference internal" href="#installation" id="toc-entry-1">Installation</a></li>
<li><a class="reference internal" href="#usage" id="toc-entry-2">Usage</a></li>
<li><a class="reference internal" href="#bug-tracker" id="toc-entry-3">Bug Tracker</a></li>
<li><a class="reference internal" href="#credits" id="toc-entry-4">Credits</a><ul>
<li><a class="reference internal" href="#authors" id="toc-entry-5">Authors</a></li>
<li><a class="reference internal" href="#contributors" id="toc-entry-6">Contributors</a></li>
<li><a class="reference internal" href="#maintainers" id="toc-entry-7">Maintainers</a></li>
</ul>
</li>
</ul>
</div>
<div class="section" id="installation">
<h1><a class="toc-backref" href="#toc-entry-1">Installation</a></h1>
<p>To install this module, you need to install <strong>excel_import_export</strong></p>
<p>Then, simply install <strong>excel_import_export_demo</strong>.</p>
</div>
<div class="section" id="usage">
<h1><a class="toc-backref" href="#toc-entry-2">Usage</a></h1>
<p><strong>Example 1:</strong> Export/Import Excel on existing document</p>
<p>To test this use case, go to any Sales Order and use Export Excel or Import Excel in action menu.</p>
<p><strong>Example 2:</strong> Import Excel Files</p>
<p>To test this use case, go to Settings &gt; Excel Import/Export &gt; Sample Import Sales Order</p>
<p><strong>Example 3:</strong> Create Excel Report</p>
<p>To test this use case, go to Settings &gt; Excel Import/Export &gt; Sample Sales Report</p>
<p><strong>Example 4:</strong> Printout Excel on existing document, using report action</p>
<p>To test this use case, go to any Sales Order and click print “Quotation / Order (.xlsx)”.</p>
<p><strong>Example 5:</strong> Run Partner List Report, using report action</p>
<p>To test this use case, go to menu Sales &gt; Reporting &gt; Partner List Report</p>
</div>
<div class="section" id="bug-tracker">
<h1><a class="toc-backref" href="#toc-entry-3">Bug Tracker</a></h1>
<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/server-tools/issues">GitHub Issues</a>.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
<a class="reference external" href="https://github.com/OCA/server-tools/issues/new?body=module:%20excel_import_export_demo%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
<p>Do not contact contributors directly about support or help with technical issues.</p>
</div>
<div class="section" id="credits">
<h1><a class="toc-backref" href="#toc-entry-4">Credits</a></h1>
<div class="section" id="authors">
<h2><a class="toc-backref" href="#toc-entry-5">Authors</a></h2>
<ul class="simple">
<li>Ecosoft</li>
</ul>
</div>
<div class="section" id="contributors">
<h2><a class="toc-backref" href="#toc-entry-6">Contributors</a></h2>
<ul class="simple">
<li>Kitti Upariphutthiphong. &lt;<a class="reference external" href="mailto:kittiu&#64;gmail.com">kittiu&#64;gmail.com</a>&gt; (<a class="reference external" href="http://ecosoft.co.th">http://ecosoft.co.th</a>)</li>
</ul>
</div>
<div class="section" id="maintainers">
<h2><a class="toc-backref" href="#toc-entry-7">Maintainers</a></h2>
<p>This module is maintained by the OCA.</p>
<a class="reference external image-reference" href="https://odoo-community.org">
<img alt="Odoo Community Association" src="https://odoo-community.org/logo.png" />
</a>
<p>OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.</p>
<p>Current <a class="reference external" href="https://odoo-community.org/page/maintainer-role">maintainer</a>:</p>
<p><a class="reference external image-reference" href="https://github.com/kittiu"><img alt="kittiu" src="https://github.com/kittiu.png?size=40px" /></a></p>
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/server-tools/tree/16.0/excel_import_export_demo">OCA/server-tools</a> project on GitHub.</p>
<p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
</div>
</div>
</div>
</body>
</html>

View file

@ -0,0 +1,5 @@
# Copyright 2019 Ecosoft Co., Ltd (http://ecosoft.co.th/)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html)
from . import test_xlsx_template
from . import test_xlsx_import_export
from . import test_xlsx_report

View file

@ -0,0 +1,135 @@
# Copyright 2019 Ecosoft Co., Ltd (http://ecosoft.co.th/)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html)
from odoo.tests.common import SingleTransactionCase
class TestExcelImportExport(SingleTransactionCase):
@classmethod
def setUpClass(cls):
super(TestExcelImportExport, cls).setUpClass()
@classmethod
def setUpXLSXTemplate(cls):
cls.template_obj = cls.env["xlsx.template"]
# Create xlsx.template using input_instruction
input_instruction = {
"__EXPORT__": {
"sale_order": {
"_HEAD_": {
"B2": 'partner_id.display_name${value or ""}'
"#{align=left;style=text}",
"B3": 'name${value or ""}#{align=left;style=text}',
},
"order_line": {
"A6": 'product_id.display_name${value or ""}' "#{style=text}",
"B6": 'name${value or ""}#{style=text}',
"C6": "product_uom_qty${value or 0}#{style=number}",
"D6": 'product_uom.name${value or ""}#{style=text}',
"E6": "price_unit${value or 0}#{style=number}",
"F6": 'tax_id${value and ","'
'.join([x.display_name for x in value]) or ""}',
"G6": "price_subtotal${value or 0}#{style=number}",
},
}
},
"__IMPORT__": {
"sale_order": {
"order_line": {
"A6": "product_id",
"B6": "name",
"C6": "product_uom_qty",
"D6": "product_uom",
"E6": "price_unit",
"F6": "tax_id",
}
}
},
# '__POST_IMPORT__': '${object.post_import_do_something()}',
}
vals = {
"res_model": "sale.order",
"fname": "sale_order.xlsx",
"name": "Sale Order Template",
"description": "Sample Sales Order Template for testing",
"input_instruction": str(input_instruction),
}
cls.sample_template = cls.template_obj.create(vals)
@classmethod
def setUpSaleOrder(cls):
cls.setUpPrepSaleOrder()
# Create a Sales Order
product_line = {
"name": cls.product_order.name,
"product_id": cls.product_order.id,
"product_uom_qty": 2,
"product_uom": cls.product_order.uom_id.id,
"price_unit": cls.product_order.list_price,
"tax_id": False,
}
cls.sale_order = cls.env["sale.order"].create(
{
"partner_id": cls.partner.id,
"order_line": [(0, 0, product_line), (0, 0, product_line)],
}
)
@classmethod
def setUpManySaleOrder(cls):
cls.setUpPrepSaleOrder()
# Create a Sales Order
product_line = {
"name": cls.product_order.name,
"product_id": cls.product_order.id,
"product_uom_qty": 2,
"product_uom": cls.product_order.uom_id.id,
"price_unit": cls.product_order.list_price,
"tax_id": False,
}
for _i in range(10):
cls.env["sale.order"].create(
{
"partner_id": cls.partner.id,
"order_line": [(0, 0, product_line), (0, 0, product_line)],
}
)
@classmethod
def setUpPrepSaleOrder(cls):
categ_ids = cls.env["res.partner.category"].search([]).ids
cls.partner = cls.env["res.partner"].create(
{"name": "Test Partner", "category_id": [(6, 0, categ_ids)]}
)
# Create a Product
cls.account_income_product = cls.env["account.account"].create(
{
"code": "PROD111",
"name": "Income - Test Account",
"account_type": "expense_direct_cost",
}
)
# Create category
cls.product_category = cls.env["product.category"].create(
{
"name": "Product Category with Income account",
"property_account_income_categ_id": cls.account_income_product.id,
}
)
# Products
uom_unit = cls.env.ref("uom.product_uom_unit")
cls.product_order = cls.env["product.product"].create(
{
"name": "Test Product",
"standard_price": 235.0,
"list_price": 280.0,
"type": "consu",
"uom_id": uom_unit.id,
"uom_po_id": uom_unit.id,
"invoice_policy": "order",
"expense_policy": "no",
"default_code": "PROD_ORDER",
"service_type": "manual",
"taxes_id": False,
"categ_id": cls.product_category.id,
}
)

View file

@ -0,0 +1,78 @@
# Copyright 2019 Ecosoft Co., Ltd (http://ecosoft.co.th/)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html)
from odoo.tests.common import Form
from .test_common import TestExcelImportExport
class TestXLSXImportExport(TestExcelImportExport):
@classmethod
def setUpClass(cls):
super(TestExcelImportExport, cls).setUpClass()
def test_xlsx_export_import(self):
"""Test Export Excel from Sales Order"""
# Create Sales Order
self.setUpSaleOrder()
# ----------- EXPORT ---------------
ctx = {
"active_model": "sale.order",
"active_ids": [self.sale_order.id],
"template_domain": [
("res_model", "=", "sale.order"),
("fname", "=", "sale_order.xlsx"),
("gname", "=", False),
],
}
f = Form(self.env["export.xlsx.wizard"].with_context(**ctx))
export_wizard = f.save()
# Test whether it loads correct template
self.assertEqual(
export_wizard.template_id,
self.env.ref("excel_import_export_demo.sale_order_xlsx_template"),
)
# Export excel
export_wizard.action_export()
self.assertTrue(export_wizard.data)
self.export_file = export_wizard.data
# ----------- IMPORT ---------------
ctx = {
"active_model": "sale.order",
"active_id": self.sale_order.id,
"template_domain": [
("res_model", "=", "sale.order"),
("fname", "=", "sale_order.xlsx"),
("gname", "=", False),
],
"template_context": {"state": "draft"},
}
with Form(self.env["import.xlsx.wizard"].with_context(**ctx)) as f:
f.import_file = self.export_file
import_wizard = f.save()
# Test sample template
import_wizard.get_import_sample()
self.assertTrue(import_wizard.datas)
# Test whether it loads correct template
self.assertEqual(
import_wizard.template_id,
self.env.ref("excel_import_export_demo.sale_order_xlsx_template"),
)
# Import Excel
import_wizard.action_import()
def test_add_remove_export_import_action(self):
"""On the template itself, test add / remove action"""
template = self.env.ref("excel_import_export_demo.sale_order_xlsx_template")
self.assertTrue(template.import_action_id)
self.assertTrue(template.export_action_id)
# Remove actions
template.remove_export_action()
template.remove_import_action()
self.assertFalse(template.import_action_id)
self.assertFalse(template.export_action_id)
# Add actions back again
template.add_export_action()
template.add_import_action()
self.assertTrue(template.import_action_id)
self.assertTrue(template.export_action_id)

View file

@ -0,0 +1,34 @@
# Copyright 2019 Ecosoft Co., Ltd (http://ecosoft.co.th/)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html)
from odoo.tests.common import Form
from .test_common import TestExcelImportExport
class TestXLSXReport(TestExcelImportExport):
@classmethod
def setUpClass(cls):
super(TestXLSXReport, cls).setUpClass()
def test_xlsx_report(self):
"""Test Report from Sales Order"""
# Create Many Sales Orders
self.setUpManySaleOrder()
ctx = {
"template_domain": [
("res_model", "=", "report.sale.order"),
("fname", "=", "report_sale_order.xlsx"),
("gname", "=", False),
]
}
with Form(self.env["report.sale.order"].with_context(**ctx)) as f:
f.partner_id = self.partner
report_wizard = f.save()
# Test whether it loads correct template
self.assertEqual(
report_wizard.template_id,
self.env.ref("excel_import_export_demo." "report_sale_order_template"),
)
# Report excel
report_wizard.report_xlsx()
self.assertTrue(report_wizard.data)

View file

@ -0,0 +1,91 @@
# Copyright 2019 Ecosoft Co., Ltd (http://ecosoft.co.th/)
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html)
from ast import literal_eval
from odoo.exceptions import UserError
from odoo.tests.common import Form
from .test_common import TestExcelImportExport
class TestXLSXTemplate(TestExcelImportExport):
@classmethod
def setUpClass(cls):
super(TestExcelImportExport, cls).setUpClass()
def test_xlsx_template(self):
"""Test XLSX Template input and output instruction"""
self.setUpXLSXTemplate()
instruction_dict = literal_eval(self.sample_template.instruction)
self.assertDictEqual(
instruction_dict,
{
"__EXPORT__": {
"sale_order": {
"_HEAD_": {
"B2": 'partner_id.display_name${value or ""}'
"#{align=left;style=text}#??",
"B3": 'name${value or ""}' "#{align=left;style=text}#??",
},
"order_line": {
"A6": 'product_id.display_name${value or ""}'
"#{style=text}#??",
"B6": 'name${value or ""}#{style=text}#??',
"C6": "product_uom_qty${value or 0}" "#{style=number}#??",
"D6": 'product_uom.name${value or ""}' "#{style=text}#??",
"E6": "price_unit${value or 0}#{style=number}#??",
"F6": 'tax_id${value and ",".join([x.display_name '
'for x in value]) or ""}#{}#??',
"G6": "price_subtotal${value or 0}" "#{style=number}#??",
},
}
},
"__IMPORT__": {
"sale_order": {
"order_line": {
"A6": "product_id",
"B6": "name",
"C6": "product_uom_qty",
"D6": "product_uom",
"E6": "price_unit",
"F6": "tax_id",
}
}
},
"__POST_IMPORT__": False,
},
)
# Finally load excel file into this new template
self.assertFalse(self.sample_template.datas) # Not yet loaded
self.template_obj.load_xlsx_template(
[self.sample_template.id], addon="excel_import_export_demo"
)
self.assertTrue(self.sample_template.datas) # Loaded successfully
def test_xlsx_template_easy_reporting(self):
"""Test XLSX template using easy reporting option"""
sale_model = self.env["ir.model"].search([("model", "=", "sale.order")])
# Create the template
with Form(self.env["xlsx.template"]) as f:
f.name = "Test Easy Reporting"
f.use_report_wizard = True
f.result_model_id = sale_model
template = f.save()
self.assertEqual(template.res_model, "report.xlsx.wizard")
self.assertFalse(template.redirect_action, False)
self.assertTrue(template.result_field)
self.assertFalse(template.report_menu_id)
self.assertEqual(len(template.export_ids), 3)
with self.assertRaises(UserError):
template.add_report_menu()
template.fname = "test.xlsx"
# Add the menu
template.add_report_menu()
self.assertTrue(template.report_menu_id)
res = template.report_menu_id.action.read()[0]
ctx = literal_eval(res["context"])
f = Form(self.env[res["res_model"]].with_context(**ctx))
report_wizard = f.save()
res = report_wizard.action_report()
# Finally reture the report action
self.assertEqual(res["type"], "ir.actions.report")

View file

@ -0,0 +1,45 @@
[project]
name = "odoo-bringout-oca-server-tools-excel_import_export_demo"
version = "16.0.0"
description = "Excel Import/Export/Report Demo - Odoo addon"
authors = [
{ name = "Ernad Husremovic", email = "hernad@bring.out.ba" }
]
dependencies = [
"odoo-bringout-oca-server-tools-excel_import_export>=16.0.0",
"odoo-bringout-oca-server-tools-sale_management>=16.0.0",
"odoo-bringout-oca-ocb-purchase>=16.0.0",
"odoo-bringout-oca-ocb-crm>=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 = ["excel_import_export_demo"]
[tool.rye]
managed = true
dev-dependencies = [
"pytest>=8.4.1",
]