Skip to content

Commit

Permalink
Merge PR #287 into 16.0
Browse files Browse the repository at this point in the history
Signed-off-by etobella
  • Loading branch information
OCA-git-bot committed Jan 25, 2024
2 parents 8481787 + b06de4b commit 8340634
Show file tree
Hide file tree
Showing 55 changed files with 3,446 additions and 0 deletions.
109 changes: 109 additions & 0 deletions account_invoice_production_lot/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,109 @@
=======================
Invoice Production Lots
=======================

.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! 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%2Faccount--invoice--reporting-lightgray.png?logo=github
:target: https://github.com/OCA/account-invoice-reporting/tree/15.0/account_invoice_production_lot
:alt: OCA/account-invoice-reporting
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/account-invoice-reporting-15-0/account-invoice-reporting-15-0-account_invoice_production_lot
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
:target: https://runbot.odoo-community.org/runbot/94/15.0
:alt: Try me on Runbot

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

This module shows, for each (customer) invoice line, the delivered production
lots that will be also displayed on the invoice report with their corresponding
delivered quantities in case the **Tracking** has been set to **By Lots**.

**Note:** As of v13.0, Odoo provides an option under *Settings* (**Inventory > Configuration > Settings > Traceability**) to **Display Lots & Serial Numbers on Invoices** which provides similar functionality. However, it has some limitations compared to this addon:
* It will only display the associated Lots / Serial Numbers in the generated *Invoice Report*, and not in an extra field in the Invoice view form.
* It will display all the Lots / Serial Numbers grouped together in an extra line in the Invoice Report. This module adds an extra field in each line with that information.

**Table of contents**

.. contents::
:local:

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

* Go to **Inventory > Configuration > Settings > Traceability**, and activate
option **Lots & Serial Numbers** in order to manage lots in your instance.
* Go to **Sales > Sales > Products** and select or create a storable product
(Product Type): check that the product has **Tracking** set to **By lots**
or to **By Unique Serial Number** (in the Inventory tab) and
**Invoicing Policy** set to **Delivered quantities** (in the Sales tab)

Usage
=====

* Create and validate a sale order
* Set *Lots/Serial Numbers* on the delivered lines by clicking on the button
*Register lots, packs, location*
* After creating the invoice, the *Lots/Serial Numbers* are displayed in the
*Production Lots* on the invoice line form and in *formatted note* field on
the invoice report, and, in case **Tracking** has been selected
to **By lots**, their corresponding delivered quantities will be displad as
well.

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

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

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

Credits
=======

Authors
~~~~~~~

* Agile Business Group
* Tecnativa

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

* Lorenzo Battistini <[email protected]>
* Alessio Gerace <[email protected]>
* Alex Comba <[email protected]>
* `Tecnativa <https://www.tecnativa.com>`__:

* Vicent Cubells
* Pedro M. Baeza
* Sergio Teruel

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.

This module is part of the `OCA/account-invoice-reporting <https://github.com/OCA/account-invoice-reporting/tree/15.0/account_invoice_production_lot>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
3 changes: 3 additions & 0 deletions account_invoice_production_lot/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).

from . import models
20 changes: 20 additions & 0 deletions account_invoice_production_lot/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Copyright 2011 Domsense s.r.l. <http://www.domsense.com>
# Copyright 2013 Lorenzo Battistini <[email protected]>
# Copyright 2017 Tecnativa - Vicent Cubells
# Copyright 2017-2018 Tecnativa - Pedro M. Baeza
# Copyright 2020 Tecnativa - João Marques
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).

{
"name": "Invoice Production Lots",
"version": "16.0.1.0.0",
"author": "Agile Business Group," "Tecnativa," "Odoo Community Association (OCA)",
"summary": "Display delivered serial numbers in invoice",
"website": "https://github.com/OCA/account-invoice-reporting",
"license": "AGPL-3",
"category": "Accounting & Finance",
"depends": ["account", "stock_picking_invoice_link", "sale_management"],
"data": ["views/account_invoice_views.xml", "report/report_invoice.xml"],
"demo": ["demo/sale.xml"],
"installable": True,
}
85 changes: 85 additions & 0 deletions account_invoice_production_lot/demo/sale.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<record id="location_opening" model="stock.location">
<field name="name">opening</field>
<field name="usage">inventory</field>
</record>
<record id="product_icecream_b" model="product.product">
<field name="name">Ice Cream B</field>
<field name="property_stock_inventory" ref="location_opening" />
<field name="categ_id" ref="product.product_category_1" />
<field name="standard_price">70.0</field>
<field name="list_price">100.0</field>
<field name="detailed_type">product</field>
<field name="cost_method">average</field>
<field name="valuation">real_time</field>
<field
name="description"
>Ice cream can be mass-produced and thus is widely available in developed parts of the world. Ice cream can be purchased in large cartons (vats and squrounds) from supermarkets and grocery stores, in smaller quantities from ice cream shops, convenience stores, and milk bars, and in individual servings from small carts or vans at public events.</field>
<field name="default_code">001</field>
</record>
<record id="lot_icecream_0" model="stock.lot">
<field name="name">Lot0 for Ice cream</field>
<field name="product_id" ref="product_icecream_b" />
<field name="company_id" ref="base.main_company" />
</record>
<record id="lot_icecream_1" model="stock.lot">
<field name="name">Lot1 for Ice cream</field>
<field name="product_id" ref="product_icecream_b" />
<field name="company_id" ref="base.main_company" />
</record>
<record id="sale_order_0" model="sale.order">
<field name="partner_id" ref="base.res_partner_2" />
<field name="partner_invoice_id" ref="base.res_partner_2" />
<field name="partner_shipping_id" ref="base.res_partner_2" />
<field name="user_id" ref="base.user_admin" />
<field
name="date_order"
eval="(DateTime.today() - relativedelta(months=1)).strftime('%Y-%m-%d %H:%M')"
/>
</record>
<record id="sale_order_line_0" model="sale.order.line">
<field name="order_id" ref="sale_order_0" />
<field name="name">Ice Cream B</field>
<field name="product_id" ref="product_icecream_b" />
<field name="product_uom_qty">1.0</field>
<field name="product_uom" ref="uom.product_uom_unit" />
<field name="price_unit">100.00</field>
</record>
<record id="sale_order_1" model="sale.order">
<field name="partner_id" ref="base.res_partner_4" />
<field name="partner_invoice_id" ref="base.res_partner_address_13" />
<field name="partner_shipping_id" ref="base.res_partner_address_13" />
<field name="user_id" ref="base.user_admin" />
<field
name="date_order"
eval="(DateTime.today() - relativedelta(months=1)).strftime('%Y-%m-%d %H:%M')"
/>
</record>
<record id="sale_order_line_1" model="sale.order.line">
<field name="order_id" ref="sale_order_1" />
<field name="name">Ice Cream B</field>
<field name="product_id" ref="product_icecream_b" />
<field name="product_uom_qty">2.0</field>
<field name="product_uom" ref="uom.product_uom_unit" />
<field name="price_unit">100.00</field>
</record>
<record id="sale_order_2" model="sale.order">
<field name="partner_id" ref="base.res_partner_4" />
<field name="partner_invoice_id" ref="base.res_partner_4" />
<field name="partner_shipping_id" ref="base.res_partner_4" />
<field name="user_id" ref="base.user_admin" />
<field
name="date_order"
eval="(DateTime.today() - relativedelta(months=1)).strftime('%Y-%m-%d %H:%M')"
/>
</record>
<record id="sale_order_line_2" model="sale.order.line">
<field name="order_id" ref="sale_order_2" />
<field name="name">Ice Cream B</field>
<field name="product_id" ref="product_icecream_b" />
<field name="product_uom_qty">1.0</field>
<field name="product_uom" ref="uom.product_uom_unit" />
<field name="price_unit">100.00</field>
</record>
</odoo>
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * account_invoice_production_lot
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 15.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: account_invoice_production_lot
#: model_terms:ir.ui.view,arch_db:account_invoice_production_lot.account_invoice_production_lot_report
msgid "<b class=\"font-italic\">Serial numbers</b>"
msgstr ""

#. module: account_invoice_production_lot
#: model:product.product,name:account_invoice_production_lot.product_icecream_b
#: model:product.template,name:account_invoice_production_lot.product_icecream_b_product_template
msgid "Ice Cream B"
msgstr ""

#. module: account_invoice_production_lot
#: model_terms:product.product,description:account_invoice_production_lot.product_icecream_b
#: model_terms:product.template,description:account_invoice_production_lot.product_icecream_b_product_template
msgid ""
"Ice cream can be mass-produced and thus is widely available in developed "
"parts of the world. Ice cream can be purchased in large cartons (vats and "
"squrounds) from supermarkets and grocery stores, in smaller quantities from "
"ice cream shops, convenience stores, and milk bars, and in individual "
"servings from small carts or vans at public events."
msgstr ""

#. module: account_invoice_production_lot
#: model:ir.model,name:account_invoice_production_lot.model_account_move_line
msgid "Journal Item"
msgstr ""

#. module: account_invoice_production_lot
#: model:ir.model.fields,field_description:account_invoice_production_lot.field_account_move_line__prod_lot_ids
#: model_terms:ir.ui.view,arch_db:account_invoice_production_lot.view_move_form
msgid "Production Lots"
msgstr ""

#. module: account_invoice_production_lot
#: model_terms:ir.ui.view,arch_db:account_invoice_production_lot.account_invoice_production_lot_report
msgid "S/N:"
msgstr ""

#. module: account_invoice_production_lot
#: model:product.product,uom_name:account_invoice_production_lot.product_icecream_b
#: model:product.template,uom_name:account_invoice_production_lot.product_icecream_b_product_template
msgid "Units"
msgstr ""
64 changes: 64 additions & 0 deletions account_invoice_production_lot/i18n/ar.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * account_invoice_production_lot
#
# Translators:
# OCA Transbot <[email protected]>, 2018
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-05-10 14:32+0000\n"
"PO-Revision-Date: 2018-05-10 14:32+0000\n"
"Last-Translator: OCA Transbot <[email protected]>, 2018\n"
"Language-Team: Arabic (https://www.transifex.com/oca/teams/23907/ar/)\n"
"Language: ar\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
"&& n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n"

#. module: account_invoice_production_lot
#: model_terms:ir.ui.view,arch_db:account_invoice_production_lot.account_invoice_production_lot_report
msgid "<b class=\"font-italic\">Serial numbers</b>"
msgstr ""

#. module: account_invoice_production_lot
#: model:product.product,name:account_invoice_production_lot.product_icecream_b
#: model:product.template,name:account_invoice_production_lot.product_icecream_b_product_template
msgid "Ice Cream B"
msgstr ""

#. module: account_invoice_production_lot
#: model_terms:product.product,description:account_invoice_production_lot.product_icecream_b
#: model_terms:product.template,description:account_invoice_production_lot.product_icecream_b_product_template
msgid ""
"Ice cream can be mass-produced and thus is widely available in developed "
"parts of the world. Ice cream can be purchased in large cartons (vats and "
"squrounds) from supermarkets and grocery stores, in smaller quantities from "
"ice cream shops, convenience stores, and milk bars, and in individual "
"servings from small carts or vans at public events."
msgstr ""

#. module: account_invoice_production_lot
#: model:ir.model,name:account_invoice_production_lot.model_account_move_line
msgid "Journal Item"
msgstr ""

#. module: account_invoice_production_lot
#: model:ir.model.fields,field_description:account_invoice_production_lot.field_account_move_line__prod_lot_ids
#: model_terms:ir.ui.view,arch_db:account_invoice_production_lot.view_move_form
msgid "Production Lots"
msgstr ""

#. module: account_invoice_production_lot
#: model_terms:ir.ui.view,arch_db:account_invoice_production_lot.account_invoice_production_lot_report
msgid "S/N:"
msgstr ""

#. module: account_invoice_production_lot
#: model:product.product,uom_name:account_invoice_production_lot.product_icecream_b
#: model:product.template,uom_name:account_invoice_production_lot.product_icecream_b_product_template
msgid "Units"
msgstr ""
Loading

0 comments on commit 8340634

Please sign in to comment.