diff --git a/pos_order_to_sale_order/README.rst b/pos_order_to_sale_order/README.rst new file mode 100644 index 0000000000..5d4f074db6 --- /dev/null +++ b/pos_order_to_sale_order/README.rst @@ -0,0 +1,146 @@ +======================= +PoS Order To Sale Order +======================= + +.. + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! This file is generated by oca-gen-addon-readme !! + !! changes will be overwritten. !! + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! source digest: sha256:b8870739e5a7351994e5c53ec2e388234897590dbc0e89e9108cbd126c30e020 + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +.. |badge1| image:: https://img.shields.io/badge/maturity-Production%2FStable-green.png + :target: https://odoo-community.org/page/development-status + :alt: Production/Stable +.. |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%2Fpos-lightgray.png?logo=github + :target: https://github.com/OCA/pos/tree/15.0/pos_order_to_sale_order + :alt: OCA/pos +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/pos-15-0/pos-15-0-pos_order_to_sale_order + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png + :target: https://runboat.odoo-community.org/builds?repo=OCA/pos&target_branch=15.0 + :alt: Try me on Runboat + +|badge1| |badge2| |badge3| |badge4| |badge5| + +This module extends the functionality of point of sale to allow sale orders +creation from the Point of Sale. + +In the POS UI, button has been added to create a sale order and discard +the current POS order. + +This module is usefull in many cases, for exemple : + +* take orders with a very simple interface + +* if you have some customers that come every day in your shop, but want to + have a unique invoice at the end of the month. With that module, you can + create a sale order and deliver products every time to keep your stock value + correct, and to create a unique invoice, when you want. + +**Technical Notes** + +* Some hooks are defined in the JS file, to define custom behaviour after + having created the sale order. + +* Some prepare functions are available in the ``sale.order`` model and + ``sale.order.line`` models to overload the creation of the sale order. + +**Table of contents** + +.. contents:: + :local: + +Configuration +============= + +* Go to Point Of Sale / Configuration / Point of Sale +* Check the box 'Create Sale Orders' +* Select the desired default behaviour + +.. figure:: https://raw.githubusercontent.com/OCA/pos/15.0/pos_order_to_sale_order/static/description/pos_config_form.png + :width: 800 px + +Usage +===== + +* Open your Point of sale +* create a new order and select products +* select a customer + +* then, click on the "Create Sale Order" button + +.. figure:: https://raw.githubusercontent.com/OCA/pos/15.0/pos_order_to_sale_order/static/description/pos_frontend_order.png + :width: 800 px + +Three options are available: + +* **Create a draft Order** + A new sale order in a draft mode will be created that can be changed later. + +* **Create a Confirmed Order** + A new sale order will be created and confirmed. + +* **Create Delivered Picking** (by default) + A new sale order will be created and confirmed. the associated picking + will be marked as delivered. + +.. figure:: https://raw.githubusercontent.com/OCA/pos/15.0/pos_order_to_sale_order/static/description/pos_frontend_buttons.png + :width: 800 px + +Bug Tracker +=========== + +Bugs are tracked on `GitHub Issues `_. +In case of trouble, please check there if your issue has already been reported. +If you spotted it first, help us to smash it by providing a detailed and welcomed +`feedback `_. + +Do not contact contributors directly about support or help with technical issues. + +Credits +======= + +Authors +~~~~~~~ + +* GRAP + +Contributors +~~~~~~~~~~~~ + +* Sylvain LE GAL (https://www.twitter.com/legalsylvain) + +* `Aures Tic `_: + + * Jose Zambudio + +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-legalsylvain| image:: https://github.com/legalsylvain.png?size=40px + :target: https://github.com/legalsylvain + :alt: legalsylvain + +Current `maintainer `__: + +|maintainer-legalsylvain| + +This module is part of the `OCA/pos `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/pos_order_to_sale_order/__init__.py b/pos_order_to_sale_order/__init__.py new file mode 100644 index 0000000000..0650744f6b --- /dev/null +++ b/pos_order_to_sale_order/__init__.py @@ -0,0 +1 @@ +from . import models diff --git a/pos_order_to_sale_order/__manifest__.py b/pos_order_to_sale_order/__manifest__.py new file mode 100644 index 0000000000..9adeb982cf --- /dev/null +++ b/pos_order_to_sale_order/__manifest__.py @@ -0,0 +1,24 @@ +# Copyright (C) 2017 - Today: GRAP (http://www.grap.coop) +# @author: Sylvain LE GAL (https://twitter.com/legalsylvain) +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +{ + "name": "PoS Order To Sale Order", + "version": "15.0.1.0.0", + "author": "GRAP,Odoo Community Association (OCA)", + "category": "Point Of Sale", + "license": "AGPL-3", + "depends": ["point_of_sale", "sale"], + "maintainers": ["legalsylvain"], + "development_status": "Production/Stable", + "website": "https://github.com/OCA/pos", + "data": ["views/view_pos_config.xml"], + "assets": { + "web.assets_qweb": ["pos_order_to_sale_order/static/src/xml/**/*.xml"], + "point_of_sale.assets": [ + "pos_order_to_sale_order/static/src/**/*.js", + "pos_order_to_sale_order/static/src/css/pos.css", + ], + }, + "installable": True, +} diff --git a/pos_order_to_sale_order/i18n/ca.po b/pos_order_to_sale_order/i18n/ca.po new file mode 100644 index 0000000000..711417e5c8 --- /dev/null +++ b/pos_order_to_sale_order/i18n/ca.po @@ -0,0 +1,150 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * pos_order_to_sale_order +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 14.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2023-10-09 06:09+0000\n" +"Last-Translator: Eugeni Chafer \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" +"X-Generator: Weblate 4.17\n" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Confirmed Sale Order" +msgstr "Crear una comanda confirmada" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_confirmed_sale_order +msgid "Create Confirmed Sale Orders" +msgstr "Crear comandes confirmades" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Delivered Sale Order" +msgstr "Crear una venda entregada" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_delivered_sale_order +msgid "Create Delivered Sale Orders" +msgstr "Crear vendes entregades" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Draft Sale Order" +msgstr "Crear un pressupost" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_draft_sale_order +msgid "Create Draft Sale Orders" +msgstr "Crear pressupostos" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderButton.xml:0 +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Order" +msgstr "Crear comanda" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_sale_order +msgid "Create Sale Orders" +msgstr "Crear comandes" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Discard" +msgstr "Descartar" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__display_name +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order__display_name +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order_line__display_name +msgid "Display Name" +msgstr "Mostrar nom" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__id +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order__id +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order_line__id +msgid "ID" +msgstr "ID" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,help:pos_order_to_sale_order.field_pos_config__iface_create_confirmed_sale_order +msgid "" +"If checked, the cashier will have the possibility to create a confirmed Sale " +"Order, based on the current draft PoS Order." +msgstr "" +"Si està activat, el caixer podrà crear una venda confirmada, a partir de la " +"comanda actual del punt de venda." + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,help:pos_order_to_sale_order.field_pos_config__iface_create_delivered_sale_order +msgid "" +"If checked, the cashier will have the possibility to create a confirmed sale " +"Order, based on the current draft PoS Order.\n" +" the according picking will be marked as delivered. Only invoices process " +"will be possible." +msgstr "" +"Si està activat, el caixer podrà crear una venda confirmada basada en " +"l'actual operació del punt de venda\n" +"L'albarà es marcarà com a entregat. Ja només es podrà facturar." + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,help:pos_order_to_sale_order.field_pos_config__iface_create_draft_sale_order +msgid "" +"If checked, the cashier will have the possibility to create a draft Sale " +"Order, based on the current draft PoS Order." +msgstr "" +"Si està activat, el caixer podrà crear un pressupost, basat en la comanda " +"actual del punt de venda." + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config____last_update +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order____last_update +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order_line____last_update +msgid "Last Modified on" +msgstr "Darrera modificació el" + +#. module: pos_order_to_sale_order +#: code:addons/pos_order_to_sale_order/models/sale_order.py:0 +#, python-format +msgid "Point of Sale %s" +msgstr "Punt de venda %s" + +#. module: pos_order_to_sale_order +#: model:ir.model,name:pos_order_to_sale_order.model_pos_config +msgid "Point of Sale Configuration" +msgstr "Configuració del punt de venda" + +#. module: pos_order_to_sale_order +#: model_terms:ir.ui.view,arch_db:pos_order_to_sale_order.view_pos_config_form +msgid "Sale Order Creations" +msgstr "Creació de comandes de venda" + +#. module: pos_order_to_sale_order +#: model:ir.model,name:pos_order_to_sale_order.model_sale_order +msgid "Sales Order" +msgstr "Comandes de venda" + +#. module: pos_order_to_sale_order +#: model:ir.model,name:pos_order_to_sale_order.model_sale_order_line +msgid "Sales Order Line" +msgstr "Línia de comandes de venda" diff --git a/pos_order_to_sale_order/i18n/ca_ES.po b/pos_order_to_sale_order/i18n/ca_ES.po new file mode 100644 index 0000000000..74e870777a --- /dev/null +++ b/pos_order_to_sale_order/i18n/ca_ES.po @@ -0,0 +1,141 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * pos_order_to_sale_order +# +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_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" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Confirmed Sale Order" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_confirmed_sale_order +msgid "Create Confirmed Sale Orders" +msgstr "" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Delivered Sale Order" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_delivered_sale_order +msgid "Create Delivered Sale Orders" +msgstr "" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Draft Sale Order" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_draft_sale_order +msgid "Create Draft Sale Orders" +msgstr "" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderButton.xml:0 +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Order" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_sale_order +msgid "Create Sale Orders" +msgstr "" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Discard" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__display_name +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order__display_name +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order_line__display_name +msgid "Display Name" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__id +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order__id +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order_line__id +msgid "ID" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,help:pos_order_to_sale_order.field_pos_config__iface_create_confirmed_sale_order +msgid "" +"If checked, the cashier will have the possibility to create a confirmed Sale " +"Order, based on the current draft PoS Order." +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,help:pos_order_to_sale_order.field_pos_config__iface_create_delivered_sale_order +msgid "" +"If checked, the cashier will have the possibility to create a confirmed sale " +"Order, based on the current draft PoS Order.\n" +" the according picking will be marked as delivered. Only invoices process " +"will be possible." +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,help:pos_order_to_sale_order.field_pos_config__iface_create_draft_sale_order +msgid "" +"If checked, the cashier will have the possibility to create a draft Sale " +"Order, based on the current draft PoS Order." +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config____last_update +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order____last_update +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order_line____last_update +msgid "Last Modified on" +msgstr "" + +#. module: pos_order_to_sale_order +#: code:addons/pos_order_to_sale_order/models/sale_order.py:0 +#, python-format +msgid "Point of Sale %s" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model,name:pos_order_to_sale_order.model_pos_config +msgid "Point of Sale Configuration" +msgstr "" + +#. module: pos_order_to_sale_order +#: model_terms:ir.ui.view,arch_db:pos_order_to_sale_order.view_pos_config_form +msgid "Sale Order Creations" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model,name:pos_order_to_sale_order.model_sale_order +msgid "Sales Order" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model,name:pos_order_to_sale_order.model_sale_order_line +msgid "Sales Order Line" +msgstr "" diff --git a/pos_order_to_sale_order/i18n/es.po b/pos_order_to_sale_order/i18n/es.po new file mode 100644 index 0000000000..a156196e55 --- /dev/null +++ b/pos_order_to_sale_order/i18n/es.po @@ -0,0 +1,190 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * pos_order_to_sale_order +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 12.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2020-07-27 11:19+0000\n" +"Last-Translator: Daniel Martinez Vila \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 3.10\n" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Confirmed Sale Order" +msgstr "Crear pedido de venta confirmado" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_confirmed_sale_order +msgid "Create Confirmed Sale Orders" +msgstr "Crear pedidos de venta confirmados" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Delivered Sale Order" +msgstr "Crear pedido de venta entregado" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_delivered_sale_order +msgid "Create Delivered Sale Orders" +msgstr "Crear pedidos de venta entregados" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Draft Sale Order" +msgstr "Crear borrador de orden de venta" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_draft_sale_order +msgid "Create Draft Sale Orders" +msgstr "Crear borradores de pedidos de venta" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderButton.xml:0 +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Order" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_sale_order +msgid "Create Sale Orders" +msgstr "Crear pedidos de venta" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Discard" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__display_name +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order__display_name +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order_line__display_name +msgid "Display Name" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__id +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order__id +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order_line__id +msgid "ID" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,help:pos_order_to_sale_order.field_pos_config__iface_create_confirmed_sale_order +msgid "" +"If checked, the cashier will have the possibility to create a confirmed Sale " +"Order, based on the current draft PoS Order." +msgstr "" +"Si se marca, el cajero tendrá la posibilidad de crear un pedido de venta " +"confirmada, basada en el borrador actual de la orden de compra." + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,help:pos_order_to_sale_order.field_pos_config__iface_create_delivered_sale_order +msgid "" +"If checked, the cashier will have the possibility to create a confirmed sale " +"Order, based on the current draft PoS Order.\n" +" the according picking will be marked as delivered. Only invoices process " +"will be possible." +msgstr "" +"Si se marca, el cajero tendrá la posibilidad de crear una orden de venta " +"confirmada, basada en el borrador actual de la orden de compra. La selección " +"correspondiente se marcará como entregada. Solo el proceso de facturas será " +"posible." + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,help:pos_order_to_sale_order.field_pos_config__iface_create_draft_sale_order +msgid "" +"If checked, the cashier will have the possibility to create a draft Sale " +"Order, based on the current draft PoS Order." +msgstr "" +"Si se marca, el cajero tendrá la posibilidad de crear un borrador de un " +"pedido de venta, basado en el borrador actual de la orden de compra." + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config____last_update +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order____last_update +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order_line____last_update +msgid "Last Modified on" +msgstr "" + +#. module: pos_order_to_sale_order +#: code:addons/pos_order_to_sale_order/models/sale_order.py:0 +#, python-format +msgid "Point of Sale %s" +msgstr "Punto de venta %s" + +#. module: pos_order_to_sale_order +#: model:ir.model,name:pos_order_to_sale_order.model_pos_config +msgid "Point of Sale Configuration" +msgstr "Configuración del punto de venta" + +#. module: pos_order_to_sale_order +#: model_terms:ir.ui.view,arch_db:pos_order_to_sale_order.view_pos_config_form +msgid "Sale Order Creations" +msgstr "Creaciones de pedidos de venta" + +#. module: pos_order_to_sale_order +#: model:ir.model,name:pos_order_to_sale_order.model_sale_order +msgid "Sales Order" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model,name:pos_order_to_sale_order.model_sale_order_line +msgid "Sales Order Line" +msgstr "Línea de pedido de venta" + +#, python-format +#~ msgid "Back" +#~ msgstr "Volver" + +#, python-format +#~ msgid "Check your internet connection and try again." +#~ msgstr "Verifique su conexión a Internet e intente nuevamente." + +#, python-format +#~ msgid "Create Sale Order" +#~ msgstr "Crear pedido de venta" + +#, python-format +#~ msgid "Create Sale Order and discard the current PoS Order?" +#~ msgstr "¿Crear pedido de venta y descartar la orden de compra actual?" + +#, python-format +#~ msgid "No customer defined" +#~ msgstr "Ningún cliente definido" + +#~ msgid "Sale Order" +#~ msgstr "Pedido de Venta" + +#, python-format +#~ msgid "The order could not be sent" +#~ msgstr "No se pudo enviar el pedido" + +#, python-format +#~ msgid "" +#~ "This operation will permanently discard the current PoS Order and create " +#~ "a Sale Order, based on the current order lines." +#~ msgstr "" +#~ "Esta operación descartará permanentemente el pedido PdV actual y creará " +#~ "un pedido de venta, basado en las líneas de pedido actuales." + +#, python-format +#~ msgid "You should select a customer in order to create a Sale Order." +#~ msgstr "Debe seleccionar un cliente para crear un pedido de venta." diff --git a/pos_order_to_sale_order/i18n/fr.po b/pos_order_to_sale_order/i18n/fr.po new file mode 100644 index 0000000000..91ed06ca63 --- /dev/null +++ b/pos_order_to_sale_order/i18n/fr.po @@ -0,0 +1,190 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * pos_order_to_sale_order +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 12.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-01-19 23:40+0000\n" +"PO-Revision-Date: 2020-01-19 23:40+0000\n" +"Last-Translator: <>\n" +"Language-Team: \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Confirmed Sale Order" +msgstr "Créer une vente confirmée" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_confirmed_sale_order +msgid "Create Confirmed Sale Orders" +msgstr "Créer des ventes confirmées" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Delivered Sale Order" +msgstr "Créer une vente livrée" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_delivered_sale_order +msgid "Create Delivered Sale Orders" +msgstr "Créer des ventes livrées" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Draft Sale Order" +msgstr "Créer un devis" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_draft_sale_order +msgid "Create Draft Sale Orders" +msgstr "Créer des devis" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderButton.xml:0 +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Order" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_sale_order +msgid "Create Sale Orders" +msgstr "Créer des ventes" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Discard" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__display_name +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order__display_name +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order_line__display_name +msgid "Display Name" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__id +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order__id +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order_line__id +msgid "ID" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,help:pos_order_to_sale_order.field_pos_config__iface_create_confirmed_sale_order +msgid "" +"If checked, the cashier will have the possibility to create a confirmed Sale " +"Order, based on the current draft PoS Order." +msgstr "" +"En cochant la case, le caissier aura la possibilité de créer une vente " +"confirmée, à partir du ticket de caisse en cours." + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,help:pos_order_to_sale_order.field_pos_config__iface_create_delivered_sale_order +msgid "" +"If checked, the cashier will have the possibility to create a confirmed sale " +"Order, based on the current draft PoS Order.\n" +" the according picking will be marked as delivered. Only invoices process " +"will be possible." +msgstr "" +"En cochant la case, le caissier aura la possibilité de créer une vente " +"confirmée, à partir du ticket de caisse en cours.\n" +" Le bon de livraison correspondant sera marqué comme livré. Seul le " +"processus de facturation sera possible." + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,help:pos_order_to_sale_order.field_pos_config__iface_create_draft_sale_order +msgid "" +"If checked, the cashier will have the possibility to create a draft Sale " +"Order, based on the current draft PoS Order." +msgstr "" +"En cochant la case, le caissier aura la possibilité de créer une vente en " +"brouillon, à partir du ticket de caisse en cours." + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config____last_update +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order____last_update +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order_line____last_update +msgid "Last Modified on" +msgstr "" + +#. module: pos_order_to_sale_order +#: code:addons/pos_order_to_sale_order/models/sale_order.py:0 +#, python-format +msgid "Point of Sale %s" +msgstr "Point de vente %s" + +#. module: pos_order_to_sale_order +#: model:ir.model,name:pos_order_to_sale_order.model_pos_config +msgid "Point of Sale Configuration" +msgstr "Paramétrage du point de vente" + +#. module: pos_order_to_sale_order +#: model_terms:ir.ui.view,arch_db:pos_order_to_sale_order.view_pos_config_form +msgid "Sale Order Creations" +msgstr "Créations de Vente" + +#. module: pos_order_to_sale_order +#: model:ir.model,name:pos_order_to_sale_order.model_sale_order +msgid "Sales Order" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model,name:pos_order_to_sale_order.model_sale_order_line +msgid "Sales Order Line" +msgstr "Ligne de bons de commande" + +#, python-format +#~ msgid "Back" +#~ msgstr "Retour" + +#, python-format +#~ msgid "Check your internet connection and try again." +#~ msgstr "Veuillez vérifier votre connexion internet et essayer de nouveau." + +#, python-format +#~ msgid "Create Sale Order" +#~ msgstr "Créer une vente" + +#, python-format +#~ msgid "Create Sale Order and discard the current PoS Order?" +#~ msgstr "Créer une vente, et supprimer le ticket de caisse en cours ?" + +#, python-format +#~ msgid "No customer defined" +#~ msgstr "Pas de client défini" + +#~ msgid "Sale Order" +#~ msgstr "Bon de commande" + +#, python-format +#~ msgid "The order could not be sent" +#~ msgstr "La commande n'a pas pu être envoyée" + +#, python-format +#~ msgid "" +#~ "This operation will permanently discard the current PoS Order and create " +#~ "a Sale Order, based on the current order lines." +#~ msgstr "" +#~ "Cette opération va supprimer définitivement le ticket de caisse en cours, " +#~ "et créer une vente, en se basant sur les lignes du ticket en cours." + +#, python-format +#~ msgid "You should select a customer in order to create a Sale Order." +#~ msgstr "Vous devez sélectionner un client, afin de créer une vente." diff --git a/pos_order_to_sale_order/i18n/it.po b/pos_order_to_sale_order/i18n/it.po new file mode 100644 index 0000000000..94af109bbb --- /dev/null +++ b/pos_order_to_sale_order/i18n/it.po @@ -0,0 +1,191 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * pos_order_to_sale_order +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 13.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2023-10-13 14:36+0000\n" +"Last-Translator: mymage \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 4.17\n" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Confirmed Sale Order" +msgstr "Crea ordine di vendita confermato" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_confirmed_sale_order +msgid "Create Confirmed Sale Orders" +msgstr "Crea ordini di vendita confermati" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Delivered Sale Order" +msgstr "Crea ordine di vendita consegnato" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_delivered_sale_order +msgid "Create Delivered Sale Orders" +msgstr "Crea ordini di vendita consegnati" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Draft Sale Order" +msgstr "Crea ordine di vendita bozza" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_draft_sale_order +msgid "Create Draft Sale Orders" +msgstr "Crea bozze ordini di vendita" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderButton.xml:0 +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Order" +msgstr "Crea ordine" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_sale_order +msgid "Create Sale Orders" +msgstr "Crea ordini di vendita" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Discard" +msgstr "Abbandona" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__display_name +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order__display_name +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order_line__display_name +msgid "Display Name" +msgstr "Nome visualizzato" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__id +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order__id +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order_line__id +msgid "ID" +msgstr "ID" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,help:pos_order_to_sale_order.field_pos_config__iface_create_confirmed_sale_order +msgid "" +"If checked, the cashier will have the possibility to create a confirmed Sale " +"Order, based on the current draft PoS Order." +msgstr "" +"Se impostato, il cassiere avrà la possibilità di creare un ordine di vendita " +"confermato, in base all'attuale bozza di ordine POS." + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,help:pos_order_to_sale_order.field_pos_config__iface_create_delivered_sale_order +msgid "" +"If checked, the cashier will have the possibility to create a confirmed sale " +"Order, based on the current draft PoS Order.\n" +" the according picking will be marked as delivered. Only invoices process " +"will be possible." +msgstr "" +"Se impostato, il cassiere avrà la possibilità di creare un ordine di vendita " +"confermato, in base all'attuale bozza di ordine POS.\n" +"Il prelievo associato verrà impostato a consegnato. Sarà possibile solo " +"fatturare." + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,help:pos_order_to_sale_order.field_pos_config__iface_create_draft_sale_order +msgid "" +"If checked, the cashier will have the possibility to create a draft Sale " +"Order, based on the current draft PoS Order." +msgstr "" +"Se impostato, il cassiere avrà la possibilità di creare una bozza di ordine " +"di vendita, in base alla bozza attuale di ordine POS." + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config____last_update +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order____last_update +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order_line____last_update +msgid "Last Modified on" +msgstr "Ultima modifica il" + +#. module: pos_order_to_sale_order +#: code:addons/pos_order_to_sale_order/models/sale_order.py:0 +#, python-format +msgid "Point of Sale %s" +msgstr "Punto vendita %s" + +#. module: pos_order_to_sale_order +#: model:ir.model,name:pos_order_to_sale_order.model_pos_config +msgid "Point of Sale Configuration" +msgstr "Configurazione punto vendita" + +#. module: pos_order_to_sale_order +#: model_terms:ir.ui.view,arch_db:pos_order_to_sale_order.view_pos_config_form +msgid "Sale Order Creations" +msgstr "Creazione ordine di vendita" + +#. module: pos_order_to_sale_order +#: model:ir.model,name:pos_order_to_sale_order.model_sale_order +msgid "Sales Order" +msgstr "Ordine di vendita" + +#. module: pos_order_to_sale_order +#: model:ir.model,name:pos_order_to_sale_order.model_sale_order_line +msgid "Sales Order Line" +msgstr "Riga ordine di vendita" + +#, python-format +#~ msgid "Back" +#~ msgstr "Indietro" + +#, python-format +#~ msgid "Check your internet connection and try again." +#~ msgstr "Controllare la connessione di rete e riprovare." + +#, python-format +#~ msgid "Create Sale Order" +#~ msgstr "Crea ordine di vendita" + +#, python-format +#~ msgid "Create Sale Order and discard the current PoS Order?" +#~ msgstr "Creare ordine di vendita ed eliminare il presente ordine POS?" + +#, python-format +#~ msgid "No customer defined" +#~ msgstr "Cliente non definito" + +#, python-format +#~ msgid "Order" +#~ msgstr "Ordine" + +#, python-format +#~ msgid "The order could not be sent" +#~ msgstr "L'ordine non può essere spedito" + +#, python-format +#~ msgid "" +#~ "This operation will permanently discard the current PoS Order and create " +#~ "a Sale Order, based on the current order lines." +#~ msgstr "" +#~ "Questa operazione annullerà definitivamente l'ordine POS attuale e creerà " +#~ "un ordine di vendita, in base alle attuali righe ordine." + +#, python-format +#~ msgid "You should select a customer in order to create a Sale Order." +#~ msgstr "Bisogna selezionare un cliente per creare un ordine di vendita." diff --git a/pos_order_to_sale_order/i18n/pos_order_to_sale_order.pot b/pos_order_to_sale_order/i18n/pos_order_to_sale_order.pot new file mode 100644 index 0000000000..059f9b343b --- /dev/null +++ b/pos_order_to_sale_order/i18n/pos_order_to_sale_order.pot @@ -0,0 +1,138 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * pos_order_to_sale_order +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 14.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: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Confirmed Sale Order" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_confirmed_sale_order +msgid "Create Confirmed Sale Orders" +msgstr "" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Delivered Sale Order" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_delivered_sale_order +msgid "Create Delivered Sale Orders" +msgstr "" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Draft Sale Order" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_draft_sale_order +msgid "Create Draft Sale Orders" +msgstr "" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderButton.xml:0 +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Order" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_sale_order +msgid "Create Sale Orders" +msgstr "" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Discard" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__display_name +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order__display_name +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order_line__display_name +msgid "Display Name" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__id +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order__id +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order_line__id +msgid "ID" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,help:pos_order_to_sale_order.field_pos_config__iface_create_confirmed_sale_order +msgid "" +"If checked, the cashier will have the possibility to create a confirmed Sale" +" Order, based on the current draft PoS Order." +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,help:pos_order_to_sale_order.field_pos_config__iface_create_delivered_sale_order +msgid "" +"If checked, the cashier will have the possibility to create a confirmed sale Order, based on the current draft PoS Order.\n" +" the according picking will be marked as delivered. Only invoices process will be possible." +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,help:pos_order_to_sale_order.field_pos_config__iface_create_draft_sale_order +msgid "" +"If checked, the cashier will have the possibility to create a draft Sale " +"Order, based on the current draft PoS Order." +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config____last_update +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order____last_update +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order_line____last_update +msgid "Last Modified on" +msgstr "" + +#. module: pos_order_to_sale_order +#: code:addons/pos_order_to_sale_order/models/sale_order.py:0 +#, python-format +msgid "Point of Sale %s" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model,name:pos_order_to_sale_order.model_pos_config +msgid "Point of Sale Configuration" +msgstr "" + +#. module: pos_order_to_sale_order +#: model_terms:ir.ui.view,arch_db:pos_order_to_sale_order.view_pos_config_form +msgid "Sale Order Creations" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model,name:pos_order_to_sale_order.model_sale_order +msgid "Sales Order" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model,name:pos_order_to_sale_order.model_sale_order_line +msgid "Sales Order Line" +msgstr "" diff --git a/pos_order_to_sale_order/i18n/pt_BR.po b/pos_order_to_sale_order/i18n/pt_BR.po new file mode 100644 index 0000000000..2aa906f222 --- /dev/null +++ b/pos_order_to_sale_order/i18n/pt_BR.po @@ -0,0 +1,190 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * pos_order_to_sale_order +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 12.0\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2020-08-05 16:59+0000\n" +"Last-Translator: Augusto D. Lisbôa \n" +"Language-Team: none\n" +"Language: pt_BR\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 3.10\n" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Confirmed Sale Order" +msgstr "Criar ordem de venda confirmada" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_confirmed_sale_order +msgid "Create Confirmed Sale Orders" +msgstr "Criar Ordem de Venda confirmada" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Delivered Sale Order" +msgstr "Criar Ordem de Venda Entregue" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_delivered_sale_order +msgid "Create Delivered Sale Orders" +msgstr "Criar Ordem de Venda entregue" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Draft Sale Order" +msgstr "Criar Cotação" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_draft_sale_order +msgid "Create Draft Sale Orders" +msgstr "Criar Cotação" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderButton.xml:0 +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Create Order" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__iface_create_sale_order +msgid "Create Sale Orders" +msgstr "Criar Ordem de Venda" + +#. module: pos_order_to_sale_order +#. openerp-web +#: code:addons/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml:0 +#, python-format +msgid "Discard" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__display_name +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order__display_name +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order_line__display_name +msgid "Display Name" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config__id +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order__id +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order_line__id +msgid "ID" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,help:pos_order_to_sale_order.field_pos_config__iface_create_confirmed_sale_order +msgid "" +"If checked, the cashier will have the possibility to create a confirmed Sale " +"Order, based on the current draft PoS Order." +msgstr "" +"Se marcado, o caixa terá a possibilidade de criar um pedido de venda " +"confirmado, com base no atual rascunho do pedido do PDV." + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,help:pos_order_to_sale_order.field_pos_config__iface_create_delivered_sale_order +msgid "" +"If checked, the cashier will have the possibility to create a confirmed sale " +"Order, based on the current draft PoS Order.\n" +" the according picking will be marked as delivered. Only invoices process " +"will be possible." +msgstr "" +"Se marcado, o caixa terá a possibilidade de criar um pedido de venda " +"confirmado, com base no rascunho do pedido de PDV atual. O picking " +"correspondente será marcado como entregue. Somente o processo de faturas " +"será possível." + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,help:pos_order_to_sale_order.field_pos_config__iface_create_draft_sale_order +msgid "" +"If checked, the cashier will have the possibility to create a draft Sale " +"Order, based on the current draft PoS Order." +msgstr "" +"Se marcado, o caixa terá a possibilidade de criar um rascunho de pedido de " +"venda, com base no rascunho atual de pedido de PDV." + +#. module: pos_order_to_sale_order +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_pos_config____last_update +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order____last_update +#: model:ir.model.fields,field_description:pos_order_to_sale_order.field_sale_order_line____last_update +msgid "Last Modified on" +msgstr "" + +#. module: pos_order_to_sale_order +#: code:addons/pos_order_to_sale_order/models/sale_order.py:0 +#, python-format +msgid "Point of Sale %s" +msgstr "Ponto de Venda %s" + +#. module: pos_order_to_sale_order +#: model:ir.model,name:pos_order_to_sale_order.model_pos_config +msgid "Point of Sale Configuration" +msgstr "Configuração de Ponto de Venda" + +#. module: pos_order_to_sale_order +#: model_terms:ir.ui.view,arch_db:pos_order_to_sale_order.view_pos_config_form +msgid "Sale Order Creations" +msgstr "Criar Ordem de Venda" + +#. module: pos_order_to_sale_order +#: model:ir.model,name:pos_order_to_sale_order.model_sale_order +msgid "Sales Order" +msgstr "" + +#. module: pos_order_to_sale_order +#: model:ir.model,name:pos_order_to_sale_order.model_sale_order_line +msgid "Sales Order Line" +msgstr "Linha da Ordem de Venda" + +#, python-format +#~ msgid "Back" +#~ msgstr "Voltar" + +#, python-format +#~ msgid "Check your internet connection and try again." +#~ msgstr "Verifique sua conexão com a internet e tente novamente." + +#, python-format +#~ msgid "Create Sale Order" +#~ msgstr "Criar Ordem de Venda" + +#, python-format +#~ msgid "Create Sale Order and discard the current PoS Order?" +#~ msgstr "Criar Pedido de Venda e descartar o Pedido de PDV atual?" + +#, python-format +#~ msgid "No customer defined" +#~ msgstr "Defina um Cliente" + +#~ msgid "Sale Order" +#~ msgstr "Ordem de Venda" + +#, python-format +#~ msgid "The order could not be sent" +#~ msgstr "A ordem não pôde ser enviada" + +#, python-format +#~ msgid "" +#~ "This operation will permanently discard the current PoS Order and create " +#~ "a Sale Order, based on the current order lines." +#~ msgstr "" +#~ "Esta operação descartará permanentemente o Pedido PDV atual e criará um " +#~ "Pedido de Venda, com base nas linhas de pedidos atuais." + +#, python-format +#~ msgid "You should select a customer in order to create a Sale Order." +#~ msgstr "Você deve selecionar um cliente para criar um Pedido de Venda." diff --git a/pos_order_to_sale_order/models/__init__.py b/pos_order_to_sale_order/models/__init__.py new file mode 100644 index 0000000000..1109a47e08 --- /dev/null +++ b/pos_order_to_sale_order/models/__init__.py @@ -0,0 +1,3 @@ +from . import sale_order +from . import sale_order_line +from . import pos_config diff --git a/pos_order_to_sale_order/models/pos_config.py b/pos_order_to_sale_order/models/pos_config.py new file mode 100644 index 0000000000..e617e3d35d --- /dev/null +++ b/pos_order_to_sale_order/models/pos_config.py @@ -0,0 +1,53 @@ +# Copyright (C) 2017 - Today: GRAP (http://www.grap.coop) +# @author: Sylvain LE GAL (https://twitter.com/legalsylvain) +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +from odoo import api, fields, models + + +class PosConfig(models.Model): + _inherit = "pos.config" + + iface_create_sale_order = fields.Boolean( + string="Create Sale Orders", + compute="_compute_iface_create_sale_order", + store=True, + ) + + iface_create_draft_sale_order = fields.Boolean( + string="Create Draft Sale Orders", + default=True, + help="If checked, the cashier will have the possibility to create" + " a draft Sale Order, based on the current draft PoS Order.", + ) + + iface_create_confirmed_sale_order = fields.Boolean( + string="Create Confirmed Sale Orders", + default=True, + help="If checked, the cashier will have the possibility to create" + " a confirmed Sale Order, based on the current draft PoS Order.", + ) + + iface_create_delivered_sale_order = fields.Boolean( + string="Create Delivered Sale Orders", + default=True, + help="If checked, the cashier will have the possibility to create" + " a confirmed sale Order, based on the current draft PoS Order.\n" + " the according picking will be marked as delivered. Only invoices" + " process will be possible.", + ) + + @api.depends( + "iface_create_draft_sale_order", + "iface_create_confirmed_sale_order", + "iface_create_delivered_sale_order", + ) + def _compute_iface_create_sale_order(self): + for config in self: + config.iface_create_sale_order = any( + [ + config.iface_create_draft_sale_order, + config.iface_create_confirmed_sale_order, + config.iface_create_delivered_sale_order, + ] + ) diff --git a/pos_order_to_sale_order/models/sale_order.py b/pos_order_to_sale_order/models/sale_order.py new file mode 100644 index 0000000000..7ec5c52aaf --- /dev/null +++ b/pos_order_to_sale_order/models/sale_order.py @@ -0,0 +1,61 @@ +# Copyright (C) 2017 - Today: GRAP (http://www.grap.coop) +# @author: Sylvain LE GAL (https://twitter.com/legalsylvain) +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +from odoo import _, api, models + + +class SaleOrder(models.Model): + _inherit = "sale.order" + + @api.model + def _prepare_from_pos(self, order_data): + PosSession = self.env["pos.session"] + session = PosSession.browse(order_data["pos_session_id"]) + return { + "partner_id": order_data["partner_id"], + "origin": _("Point of Sale %s") % (session.name), + "client_order_ref": order_data["name"], + "user_id": order_data["user_id"], + "pricelist_id": order_data["pricelist_id"], + "fiscal_position_id": order_data["fiscal_position_id"], + } + + @api.model + def create_order_from_pos(self, order_data, action): + SaleOrderLine = self.env["sale.order.line"] + + # Create Draft Sale order + order_vals = self._prepare_from_pos(order_data) + sale_order = self.create(order_vals.copy()) + sale_order.onchange_partner_id() + # we rewrite data, because onchange could alter some + # custom data (like pricelist) + sale_order.write(order_vals) + + # create Sale order lines + for order_line_data in order_data["lines"]: + # Create Sale order lines + order_line_vals = SaleOrderLine._prepare_from_pos( + sale_order, order_line_data[2] + ) + sale_order_line = SaleOrderLine.create(order_line_vals.copy()) + sale_order_line.product_id_change() + # we rewrite data, because onchange could alter some + # data (like quantity, or price) + sale_order_line.write(order_line_vals) + + # Confirm Sale Order + if action in ["confirmed", "delivered"]: + sale_order.action_confirm() + + # mark picking as delivered + if action == "delivered": + # Mark all moves are delivered + for move in sale_order.mapped("picking_ids.move_ids_without_package"): + move.quantity_done = move.product_uom_qty + sale_order.mapped("picking_ids").button_validate() + + return { + "sale_order_id": sale_order.id, + } diff --git a/pos_order_to_sale_order/models/sale_order_line.py b/pos_order_to_sale_order/models/sale_order_line.py new file mode 100644 index 0000000000..aa65e6c40a --- /dev/null +++ b/pos_order_to_sale_order/models/sale_order_line.py @@ -0,0 +1,23 @@ +# Copyright (C) 2017 - Today: GRAP (http://www.grap.coop) +# @author: Sylvain LE GAL (https://twitter.com/legalsylvain) +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +from odoo import api, models + + +class SaleOrderLine(models.Model): + _inherit = "sale.order.line" + + @api.model + def _prepare_from_pos(self, sale_order, order_line_data): + ProductProduct = self.env["product.product"] + product = ProductProduct.browse(order_line_data["product_id"]) + return { + "order_id": sale_order.id, + "product_id": order_line_data["product_id"], + "name": product.name, + "product_uom_qty": order_line_data["qty"], + "discount": order_line_data["discount"], + "price_unit": order_line_data["price_unit"], + "tax_id": order_line_data["tax_ids"], + } diff --git a/pos_order_to_sale_order/readme/CONFIGURE.rst b/pos_order_to_sale_order/readme/CONFIGURE.rst new file mode 100644 index 0000000000..1b4c3c63bf --- /dev/null +++ b/pos_order_to_sale_order/readme/CONFIGURE.rst @@ -0,0 +1,6 @@ +* Go to Point Of Sale / Configuration / Point of Sale +* Check the box 'Create Sale Orders' +* Select the desired default behaviour + +.. figure:: ../static/description/pos_config_form.png + :width: 800 px diff --git a/pos_order_to_sale_order/readme/CONTRIBUTORS.rst b/pos_order_to_sale_order/readme/CONTRIBUTORS.rst new file mode 100644 index 0000000000..e05591be36 --- /dev/null +++ b/pos_order_to_sale_order/readme/CONTRIBUTORS.rst @@ -0,0 +1,5 @@ +* Sylvain LE GAL (https://www.twitter.com/legalsylvain) + +* `Aures Tic `_: + + * Jose Zambudio diff --git a/pos_order_to_sale_order/readme/DESCRIPTION.rst b/pos_order_to_sale_order/readme/DESCRIPTION.rst new file mode 100644 index 0000000000..aca0573c68 --- /dev/null +++ b/pos_order_to_sale_order/readme/DESCRIPTION.rst @@ -0,0 +1,22 @@ +This module extends the functionality of point of sale to allow sale orders +creation from the Point of Sale. + +In the POS UI, button has been added to create a sale order and discard +the current POS order. + +This module is usefull in many cases, for exemple : + +* take orders with a very simple interface + +* if you have some customers that come every day in your shop, but want to + have a unique invoice at the end of the month. With that module, you can + create a sale order and deliver products every time to keep your stock value + correct, and to create a unique invoice, when you want. + +**Technical Notes** + +* Some hooks are defined in the JS file, to define custom behaviour after + having created the sale order. + +* Some prepare functions are available in the ``sale.order`` model and + ``sale.order.line`` models to overload the creation of the sale order. diff --git a/pos_order_to_sale_order/readme/USAGE.rst b/pos_order_to_sale_order/readme/USAGE.rst new file mode 100644 index 0000000000..ef015587f7 --- /dev/null +++ b/pos_order_to_sale_order/readme/USAGE.rst @@ -0,0 +1,23 @@ +* Open your Point of sale +* create a new order and select products +* select a customer + +* then, click on the "Create Sale Order" button + +.. figure:: ../static/description/pos_frontend_order.png + :width: 800 px + +Three options are available: + +* **Create a draft Order** + A new sale order in a draft mode will be created that can be changed later. + +* **Create a Confirmed Order** + A new sale order will be created and confirmed. + +* **Create Delivered Picking** (by default) + A new sale order will be created and confirmed. the associated picking + will be marked as delivered. + +.. figure:: ../static/description/pos_frontend_buttons.png + :width: 800 px diff --git a/pos_order_to_sale_order/static/description/icon.png b/pos_order_to_sale_order/static/description/icon.png new file mode 100644 index 0000000000..d547d9cb33 Binary files /dev/null and b/pos_order_to_sale_order/static/description/icon.png differ diff --git a/pos_order_to_sale_order/static/description/index.html b/pos_order_to_sale_order/static/description/index.html new file mode 100644 index 0000000000..7864fa7fdf --- /dev/null +++ b/pos_order_to_sale_order/static/description/index.html @@ -0,0 +1,487 @@ + + + + + + +Codestin Search App + + + +
+

PoS Order To Sale Order

+ + +

Production/Stable License: AGPL-3 OCA/pos Translate me on Weblate Try me on Runboat

+

This module extends the functionality of point of sale to allow sale orders +creation from the Point of Sale.

+

In the POS UI, button has been added to create a sale order and discard +the current POS order.

+

This module is usefull in many cases, for exemple :

+
    +
  • take orders with a very simple interface
  • +
  • if you have some customers that come every day in your shop, but want to +have a unique invoice at the end of the month. With that module, you can +create a sale order and deliver products every time to keep your stock value +correct, and to create a unique invoice, when you want.
  • +
+

Technical Notes

+
    +
  • Some hooks are defined in the JS file, to define custom behaviour after +having created the sale order.
  • +
  • Some prepare functions are available in the sale.order model and +sale.order.line models to overload the creation of the sale order.
  • +
+

Table of contents

+ +
+

Configuration

+
    +
  • Go to Point Of Sale / Configuration / Point of Sale
  • +
  • Check the box ‘Create Sale Orders’
  • +
  • Select the desired default behaviour
  • +
+
+https://raw.githubusercontent.com/OCA/pos/15.0/pos_order_to_sale_order/static/description/pos_config_form.png +
+
+
+

Usage

+
    +
  • Open your Point of sale
  • +
  • create a new order and select products
  • +
  • select a customer
  • +
  • then, click on the “Create Sale Order” button
  • +
+
+https://raw.githubusercontent.com/OCA/pos/15.0/pos_order_to_sale_order/static/description/pos_frontend_order.png +
+

Three options are available:

+
    +
  • Create a draft Order +A new sale order in a draft mode will be created that can be changed later.
  • +
  • Create a Confirmed Order +A new sale order will be created and confirmed.
  • +
  • Create Delivered Picking (by default) +A new sale order will be created and confirmed. the associated picking +will be marked as delivered.
  • +
+
+https://raw.githubusercontent.com/OCA/pos/15.0/pos_order_to_sale_order/static/description/pos_frontend_buttons.png +
+
+
+

Bug Tracker

+

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

+

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

+
+
+

Credits

+
+

Authors

+
    +
  • GRAP
  • +
+
+
+

Contributors

+ +
+
+

Maintainers

+

This module is maintained by the OCA.

+Odoo Community Association +

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

+

Current maintainer:

+

legalsylvain

+

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

+

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

+
+
+
+ + diff --git a/pos_order_to_sale_order/static/description/pos_config_form.png b/pos_order_to_sale_order/static/description/pos_config_form.png new file mode 100644 index 0000000000..c108942fb8 Binary files /dev/null and b/pos_order_to_sale_order/static/description/pos_config_form.png differ diff --git a/pos_order_to_sale_order/static/description/pos_frontend_buttons.png b/pos_order_to_sale_order/static/description/pos_frontend_buttons.png new file mode 100644 index 0000000000..fa0d9f086b Binary files /dev/null and b/pos_order_to_sale_order/static/description/pos_frontend_buttons.png differ diff --git a/pos_order_to_sale_order/static/description/pos_frontend_order.png b/pos_order_to_sale_order/static/description/pos_frontend_order.png new file mode 100644 index 0000000000..fdbe05a8af Binary files /dev/null and b/pos_order_to_sale_order/static/description/pos_frontend_order.png differ diff --git a/pos_order_to_sale_order/static/src/css/pos.css b/pos_order_to_sale_order/static/src/css/pos.css new file mode 100644 index 0000000000..780ab0c445 --- /dev/null +++ b/pos_order_to_sale_order/static/src/css/pos.css @@ -0,0 +1,19 @@ +.pos .popup-create-sale-order table { + width: 100%; +} + +.pos .popup-create-sale-order .button.button-sale-order { + width: 100%; + margin-right: 0px; + text-align: left; +} + +.pos .popup-create-sale-order .button.button-sale-order .icon-containers { + margin-left: 10px; + width: 80px; + display: inline-block; +} + +.pos .popup-create-sale-order .button.button-sale-order span { + margin-left: 10px; +} diff --git a/pos_order_to_sale_order/static/src/js/CreateOrderButton.js b/pos_order_to_sale_order/static/src/js/CreateOrderButton.js new file mode 100644 index 0000000000..1dbe338609 --- /dev/null +++ b/pos_order_to_sale_order/static/src/js/CreateOrderButton.js @@ -0,0 +1,28 @@ +odoo.define("point_of_sale.CreateOrderButton", function (require) { + "use strict"; + + const PosComponent = require("point_of_sale.PosComponent"); + const ProductScreen = require("point_of_sale.ProductScreen"); + const Registries = require("point_of_sale.Registries"); + + class CreateOrderButton extends PosComponent { + async onClick() { + await this.showPopup("CreateOrderPopup"); + } + } + + CreateOrderButton.template = "CreateOrderButton"; + + ProductScreen.addControlButton({ + component: CreateOrderButton, + condition: function () { + return ( + this.env.pos.config.iface_create_sale_order && + this.env.pos.get_order().get_client() && + this.env.pos.get_order().get_orderlines().length !== 0 + ); + }, + }); + + Registries.Component.add(CreateOrderButton); +}); diff --git a/pos_order_to_sale_order/static/src/js/CreateOrderPopup.js b/pos_order_to_sale_order/static/src/js/CreateOrderPopup.js new file mode 100644 index 0000000000..d8b169763f --- /dev/null +++ b/pos_order_to_sale_order/static/src/js/CreateOrderPopup.js @@ -0,0 +1,52 @@ +odoo.define("point_of_sale.CreateOrderPopup", function (require) { + "use strict"; + + const AbstractAwaitablePopup = require("point_of_sale.AbstractAwaitablePopup"); + const Registries = require("point_of_sale.Registries"); + const framework = require("web.framework"); + + class CreateOrderPopup extends AbstractAwaitablePopup { + setup() { + super.setup(); + this.createOrderClicked = false; + } + + async createDraftSaleOrder() { + await this._createSaleOrder("draft"); + } + + async createConfirmedSaleOrder() { + await this._createSaleOrder("confirmed"); + } + + async createDeliveredSaleOrder() { + await this._createSaleOrder("delivered"); + } + + async _createSaleOrder(order_state) { + var current_order = this.env.pos.get_order(); + + framework.blockUI(); + + await this.rpc({ + model: "sale.order", + method: "create_order_from_pos", + args: [current_order.export_as_JSON(), order_state], + }) + .catch(function (error) { + throw error; + }) + .finally(function () { + framework.unblockUI(); + current_order.destroy(); + }); + + return await super.confirm(); + } + } + + CreateOrderPopup.template = "CreateOrderPopup"; + Registries.Component.add(CreateOrderPopup); + + return CreateOrderPopup; +}); diff --git a/pos_order_to_sale_order/static/src/xml/CreateOrderButton.xml b/pos_order_to_sale_order/static/src/xml/CreateOrderButton.xml new file mode 100644 index 0000000000..dd1beae5de --- /dev/null +++ b/pos_order_to_sale_order/static/src/xml/CreateOrderButton.xml @@ -0,0 +1,12 @@ + + + + + + + + Create Order + + + + diff --git a/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml b/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml new file mode 100644 index 0000000000..bc3d869d1a --- /dev/null +++ b/pos_order_to_sale_order/static/src/xml/CreateOrderPopup.xml @@ -0,0 +1,72 @@ + + + + + + + + diff --git a/pos_order_to_sale_order/views/view_pos_config.xml b/pos_order_to_sale_order/views/view_pos_config.xml new file mode 100644 index 0000000000..acc572cf89 --- /dev/null +++ b/pos_order_to_sale_order/views/view_pos_config.xml @@ -0,0 +1,43 @@ + + + + + pos.config + + + + + +

Sale Order Creations

+
+
+
+ +
+
+
+
+ +
+
+ +
+
+
+
+ +
+
+ +
+
+
+
+
+
+
+
+
diff --git a/setup/pos_order_to_sale_order/odoo/addons/pos_order_to_sale_order b/setup/pos_order_to_sale_order/odoo/addons/pos_order_to_sale_order new file mode 120000 index 0000000000..d1d913fb6a --- /dev/null +++ b/setup/pos_order_to_sale_order/odoo/addons/pos_order_to_sale_order @@ -0,0 +1 @@ +../../../../pos_order_to_sale_order \ No newline at end of file diff --git a/setup/pos_order_to_sale_order/setup.py b/setup/pos_order_to_sale_order/setup.py new file mode 100644 index 0000000000..28c57bb640 --- /dev/null +++ b/setup/pos_order_to_sale_order/setup.py @@ -0,0 +1,6 @@ +import setuptools + +setuptools.setup( + setup_requires=['setuptools-odoo'], + odoo_addon=True, +)