Skip to content

Commit

Permalink
Merge commit 'refs/pull/2207/head' of https://github.com/oca/sale-wor…
Browse files Browse the repository at this point in the history
…kflow into 15.0-2523
  • Loading branch information
docker-odoo committed May 28, 2023
2 parents 6e04f45 + 6b02572 commit ba6246f
Show file tree
Hide file tree
Showing 45 changed files with 2,483 additions and 0 deletions.
108 changes: 108 additions & 0 deletions sale_order_lot_selection/README.rst
@@ -0,0 +1,108 @@
========================
Sale Order Lot Selection
========================

.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
.. |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%2Fsale--workflow-lightgray.png?logo=github
:target: https://github.com/OCA/sale-workflow/tree/14.0/sale_order_lot_selection
:alt: OCA/sale-workflow
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/sale-workflow-14-0/sale-workflow-14-0-sale_order_lot_selection
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
:target: https://runbot.odoo-community.org/runbot/167/14.0
:alt: Try me on Runbot

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

This module allows you to select a lot number on sale order line.
This selected lot number will be the one delivered to the Customer.

**Table of contents**

.. contents::
:local:

Usage
=====

- Create/edit a product and set traceability by 'By Lots' option.
- Create a new lot number and assign product.
- Update quantity for that product and assign lot number.
- Go to Sales > Orders > Quotations.
- Create a new quotation and add recently above configured product.
- Select lot number and confirm it.
- Delivery order will reserve the lot when available

Known issues / Roadmap
======================

Block sale order validation on confirmation if the selected lot has been removed of this module
Indeed nobody seems to know what it had been implemented on early versions and it is really blocking other generic use case.
One may want to validate a sale order restricting it to a lot that will be produced for instance and does not exist yet.

This feature may be easyly put it back, in a separated module, if a use case requires it.
The removal of this feature was made on this commit : 3234b2ccccf1dffafbe0a8fa8efaaea44f2e47ef.

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

Bugs are tracked on `GitHub Issues <https://github.com/OCA/sale-workflow/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
`feedback <https://github.com/OCA/sale-workflow/issues/new?body=module:%20sale_order_lot_selection%0Aversion:%2014.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
~~~~~~~

* Agile Business Group

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

* Nicola Malcontenti <nicola.malcontenti@agilebg.com>
* Lorenzo Battistini <lorenzo.battistini@agilebg.com>
* Serpent Consulting Services Pvt. Ltd. <support@serpentcs.com>
* Bhavesh Odedra <bodedra@opensourceintegrators.com>
* François Honoré <francois.honore@acsone.eu>
* Florian da Costa <florian.dacosta@akretion.com>

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-bodedra| image:: https://github.com/bodedra.png?size=40px
:target: https://github.com/bodedra
:alt: bodedra

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

|maintainer-bodedra|

This module is part of the `OCA/sale-workflow <https://github.com/OCA/sale-workflow/tree/14.0/sale_order_lot_selection>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
1 change: 1 addition & 0 deletions sale_order_lot_selection/__init__.py
@@ -0,0 +1 @@
from . import models
13 changes: 13 additions & 0 deletions sale_order_lot_selection/__manifest__.py
@@ -0,0 +1,13 @@
{
"name": "Sale Order Lot Selection",
"version": "15.0.1.0.0",
"category": "Sales Management",
"author": "Odoo Community Association (OCA), Agile Business Group",
"website": "https://github.com/OCA/sale-workflow",
"license": "AGPL-3",
"depends": ["sale_stock", "stock_restrict_lot"],
"data": ["view/sale_view.xml"],
"demo": ["demo/sale_demo.xml"],
"maintainers": ["bodedra"],
"installable": True,
}
28 changes: 28 additions & 0 deletions sale_order_lot_selection/demo/sale_demo.xml
@@ -0,0 +1,28 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>

<record id="lot_cable" model="stock.production.lot">
<field name="product_id" ref="stock.product_cable_management_box" />
<field name="name">cbl mng</field>
<field name="company_id" ref="base.main_company" />
</record>

<record id="sale1" model="sale.order">
<field name="partner_id" ref="base.res_partner_1" />
<field name="user_id" ref="base.user_admin" />
</record>

<record id="sol1" model="sale.order.line">
<field name="order_id" ref="sale_order_lot_selection.sale1" />
<field name="product_id" ref="stock.product_cable_management_box" />
<field name="product_uom_qty">1</field>
<field name="lot_id" ref="sale_order_lot_selection.lot_cable" />
</record>
<record id="sol2" model="sale.order.line">
<field name="order_id" ref="sale_order_lot_selection.sale1" />
<field name="product_id" ref="stock.product_cable_management_box" />
<field name="product_uom_qty">1</field>
<field name="lot_id" ref="sale_order_lot_selection.lot_cable" />
</record>

</odoo>
53 changes: 53 additions & 0 deletions sale_order_lot_selection/i18n/ca.po
@@ -0,0 +1,53 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * sale_order_lot_selection
#
# Translators:
# OCA Transbot <transbot@odoo-community.org>, 2016
# Carles Antoli <carlesantoli@hotmail.com>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 9.0c\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-01-17 16:49+0000\n"
"PO-Revision-Date: 2021-01-20 12:44+0000\n"
"Last-Translator: Daniel Martinez Vila <daniel.martinez@qubiq.es>\n"
"Language-Team: Catalan (https://www.transifex.com/oca/teams/23907/ca/)\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.3.2\n"

#. module: sale_order_lot_selection
#: code:addons/sale_order_lot_selection/models/sale_order.py:0
#, python-format
msgid "Can't reserve products for lot %s"
msgstr "No es poden reservar productes per al lot %s"

#. module: sale_order_lot_selection
#: code:addons/sale_order_lot_selection/models/sale_order.py:0
#, python-format
msgid "Can't retrieve lot on stock"
msgstr "No es pot recuperar el lot en estoc"

#. module: sale_order_lot_selection
#: model:ir.model.fields,field_description:sale_order_lot_selection.field_sale_order_line__lot_id
msgid "Lot"
msgstr "Lot"

#. module: sale_order_lot_selection
#: model:ir.model,name:sale_order_lot_selection.model_sale_order
msgid "Sales Order"
msgstr "Comandes de Venda"

#. module: sale_order_lot_selection
#: model:ir.model,name:sale_order_lot_selection.model_sale_order_line
msgid "Sales Order Line"
msgstr "Línia de comanda de vendes"

#. module: sale_order_lot_selection
#: model:ir.model,name:sale_order_lot_selection.model_stock_move
msgid "Stock Move"
msgstr "Moure l'estoc"
56 changes: 56 additions & 0 deletions sale_order_lot_selection/i18n/de.po
@@ -0,0 +1,56 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * sale_order_lot_selection
#
# Translators:
msgid ""
msgstr ""
"Project-Id-Version: sale-workflow (8.0)\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-02-26 09:59+0000\n"
"PO-Revision-Date: 2021-07-09 15:48+0000\n"
"Last-Translator: Maria Sparenberg <maria.sparenberg@gmx.net>\n"
"Language-Team: German (http://www.transifex.com/oca/OCA-sale-workflow-8-0/"
"language/de/)\n"
"Language: de\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.3.2\n"

#. module: sale_order_lot_selection
#: code:addons/sale_order_lot_selection/models/sale_order.py:0
#, python-format
msgid "Can't reserve products for lot %s"
msgstr ""
"Es können keine Produkt mit der Charge / Seriennummer %s reserviert werden."

#. module: sale_order_lot_selection
#: code:addons/sale_order_lot_selection/models/sale_order.py:0
#, python-format
msgid "Can't retrieve lot on stock"
msgstr ""

#. module: sale_order_lot_selection
#: model:ir.model.fields,field_description:sale_order_lot_selection.field_sale_order_line__lot_id
msgid "Lot"
msgstr "Charge / Seriennummer"

#. module: sale_order_lot_selection
#: model:ir.model,name:sale_order_lot_selection.model_sale_order
msgid "Sales Order"
msgstr "Verkaufsauftrag"

#. module: sale_order_lot_selection
#: model:ir.model,name:sale_order_lot_selection.model_sale_order_line
msgid "Sales Order Line"
msgstr "Auftragsposition"

#. module: sale_order_lot_selection
#: model:ir.model,name:sale_order_lot_selection.model_stock_move
msgid "Stock Move"
msgstr "Lagerbuchung"

#~ msgid "Procurement Group"
#~ msgstr "Beschaffungsgruppe"
53 changes: 53 additions & 0 deletions sale_order_lot_selection/i18n/el_GR.po
@@ -0,0 +1,53 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * sale_order_lot_selection
#
# Translators:
# Kostas Goutoudis <goutoudis@gmail.com>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 9.0c\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-09-29 03:03+0000\n"
"PO-Revision-Date: 2016-09-29 03:03+0000\n"
"Last-Translator: Kostas Goutoudis <goutoudis@gmail.com>, 2016\n"
"Language-Team: Greek (Greece) (https://www.transifex.com/oca/teams/23907/"
"el_GR/)\n"
"Language: el_GR\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: sale_order_lot_selection
#: code:addons/sale_order_lot_selection/models/sale_order.py:0
#, python-format
msgid "Can't reserve products for lot %s"
msgstr ""

#. module: sale_order_lot_selection
#: code:addons/sale_order_lot_selection/models/sale_order.py:0
#, python-format
msgid "Can't retrieve lot on stock"
msgstr ""

#. module: sale_order_lot_selection
#: model:ir.model.fields,field_description:sale_order_lot_selection.field_sale_order_line__lot_id
msgid "Lot"
msgstr ""

#. module: sale_order_lot_selection
#: model:ir.model,name:sale_order_lot_selection.model_sale_order
#, fuzzy
msgid "Sales Order"
msgstr "Εντολή Πώλησης"

#. module: sale_order_lot_selection
#: model:ir.model,name:sale_order_lot_selection.model_sale_order_line
msgid "Sales Order Line"
msgstr ""

#. module: sale_order_lot_selection
#: model:ir.model,name:sale_order_lot_selection.model_stock_move
msgid "Stock Move"
msgstr ""
57 changes: 57 additions & 0 deletions sale_order_lot_selection/i18n/en.po
@@ -0,0 +1,57 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * sale_order_lot_selection
#
# Translators:
msgid ""
msgstr ""
"Project-Id-Version: sale-workflow (8.0)\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-03-12 01:52+0000\n"
"PO-Revision-Date: 2016-02-26 10:01+0000\n"
"Last-Translator: OCA Transbot <transbot@odoo-community.org>\n"
"Language-Team: English (http://www.transifex.com/oca/OCA-sale-workflow-8-0/"
"language/en/)\n"
"Language: en\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: sale_order_lot_selection
#: code:addons/sale_order_lot_selection/model/sale.py:67
#: code:addons/sale_order_lot_selection/model/sale.py:73
#, python-format
msgid "Can't reserve products for lot %s"
msgstr "Can't reserve products for lot %s"

#. module: sale_order_lot_selection
#: code:addons/sale_order_lot_selection/model/sale.py:56
#, python-format
msgid "Can't retrieve lot on stock"
msgstr "Can't retrieve lot on stock"

#. module: sale_order_lot_selection
#: model:ir.model.fields,field_description:sale_order_lot_selection.field_sale_order_line_lot_id
msgid "Lot"
msgstr "Lot"

#. module: sale_order_lot_selection
#: model:ir.model,name:sale_order_lot_selection.model_procurement_group
msgid "Procurement Group"
msgstr "Procurement Group"

#. module: sale_order_lot_selection
#: model:ir.model,name:sale_order_lot_selection.model_sale_order
msgid "Sales Order"
msgstr "Sales Order"

#. module: sale_order_lot_selection
#: model:ir.model,name:sale_order_lot_selection.model_sale_order_line
msgid "Sales Order Line"
msgstr "Sales Order Line"

#. module: sale_order_lot_selection
#: model:ir.model,name:sale_order_lot_selection.model_stock_move
msgid "Stock Move"
msgstr "Stock Move"

0 comments on commit ba6246f

Please sign in to comment.