first commit
This commit is contained in:
2
modules/account_invoice_secondary_unit/__init__.py
Normal file
2
modules/account_invoice_secondary_unit/__init__.py
Normal file
@@ -0,0 +1,2 @@
|
||||
# This file is part of Tryton. The COPYRIGHT file at the top level of
|
||||
# this repository contains the full copyright notices and license terms.
|
||||
Binary file not shown.
Binary file not shown.
129
modules/account_invoice_secondary_unit/account.py
Normal file
129
modules/account_invoice_secondary_unit/account.py
Normal file
@@ -0,0 +1,129 @@
|
||||
# This file is part of Tryton. The COPYRIGHT file at the top level of
|
||||
# this repository contains the full copyright notices and license terms.
|
||||
from trytond.model import fields
|
||||
from trytond.modules.product import price_digits, round_price
|
||||
from trytond.pool import Pool, PoolMeta
|
||||
from trytond.pyson import Eval
|
||||
|
||||
|
||||
class InvoiceLine(metaclass=PoolMeta):
|
||||
__name__ = 'account.invoice.line'
|
||||
|
||||
secondary_quantity = fields.Function(
|
||||
fields.Float(
|
||||
"Secondary Quantity", digits='secondary_unit',
|
||||
states={
|
||||
'invisible': ((Eval('type') != 'line')
|
||||
| ~Eval('secondary_unit')),
|
||||
'readonly': Eval('invoice_state') != 'draft',
|
||||
}),
|
||||
'on_change_with_secondary_quantity', setter='set_secondary')
|
||||
secondary_unit = fields.Many2One(
|
||||
'product.uom', "Secondary Unit", ondelete='RESTRICT',
|
||||
domain=[
|
||||
('category', '=', Eval('product_secondary_uom_category', -1)),
|
||||
],
|
||||
states={
|
||||
'invisible': ((Eval('type') != 'line')
|
||||
| ~Eval('product_secondary_uom_category')),
|
||||
'readonly': Eval('invoice_state') != 'draft',
|
||||
})
|
||||
secondary_unit_price = fields.Function(
|
||||
fields.Numeric(
|
||||
"Secondary Unit Price", digits=price_digits,
|
||||
states={
|
||||
'invisible': ((Eval('type') != 'line')
|
||||
| ~Eval('secondary_unit')),
|
||||
'readonly': Eval('invoice_state') != 'draft',
|
||||
}),
|
||||
'on_change_with_secondary_unit_price', setter='set_secondary')
|
||||
|
||||
product_secondary_uom_category = fields.Function(
|
||||
fields.Many2One(
|
||||
'product.uom.category', "Product Secondary UoM Category",
|
||||
help="The category of secondary Unit of Measure for the product."),
|
||||
'get_product_secondary_uom_category')
|
||||
|
||||
@fields.depends('quantity', 'unit', 'secondary_unit', 'origin')
|
||||
def on_change_with_secondary_quantity(self, name=None):
|
||||
pool = Pool()
|
||||
Uom = pool.get('product.uom')
|
||||
if (self.quantity and self.unit and self.secondary_unit
|
||||
and (self.secondary_uom_factor or self.secondary_uom_rate)):
|
||||
return Uom.compute_qty(
|
||||
self.unit, self.quantity,
|
||||
self.secondary_unit, round=True,
|
||||
factor=self.secondary_uom_factor, rate=self.secondary_uom_rate)
|
||||
else:
|
||||
return None
|
||||
|
||||
@fields.depends('secondary_quantity', 'secondary_unit', 'unit', 'origin',
|
||||
methods=['on_change_with_amount'])
|
||||
def on_change_secondary_quantity(self):
|
||||
pool = Pool()
|
||||
Uom = pool.get('product.uom')
|
||||
if (self.secondary_quantity and self.secondary_unit and self.unit
|
||||
and (self.secondary_uom_factor or self.secondary_uom_rate)):
|
||||
self.quantity = Uom.compute_qty(
|
||||
self.secondary_unit, self.secondary_quantity,
|
||||
self.unit, round=True,
|
||||
factor=self.secondary_uom_rate, rate=self.secondary_uom_factor)
|
||||
self.amount = self.on_change_with_amount()
|
||||
|
||||
@fields.depends('unit_price', 'unit', 'secondary_unit', 'origin')
|
||||
def on_change_with_secondary_unit_price(self, name=None):
|
||||
pool = Pool()
|
||||
Uom = pool.get('product.uom')
|
||||
if (self.unit_price is not None and self.unit and self.secondary_unit
|
||||
and (self.secondary_uom_factor or self.secondary_uom_rate)):
|
||||
unit_price = Uom.compute_price(
|
||||
self.unit, self.unit_price, self.secondary_unit,
|
||||
factor=self.secondary_uom_factor, rate=self.secondary_uom_rate
|
||||
)
|
||||
return round_price(unit_price)
|
||||
else:
|
||||
return None
|
||||
|
||||
@fields.depends('secondary_unit_price', 'secondary_unit', 'unit', 'origin',
|
||||
methods=['on_change_with_amount'])
|
||||
def on_change_secondary_unit_price(self, name=None):
|
||||
pool = Pool()
|
||||
Uom = pool.get('product.uom')
|
||||
if (self.secondary_unit_price is not None
|
||||
and self.secondary_unit and self.unit
|
||||
and (self.secondary_uom_factor or self.secondary_uom_rate)):
|
||||
self.unit_price = Uom.compute_price(
|
||||
self.secondary_unit, self.secondary_unit_price, self.unit,
|
||||
factor=self.secondary_uom_rate, rate=self.secondary_uom_factor
|
||||
)
|
||||
self.unit_price = round_price(self.unit_price)
|
||||
self.amount = self.on_change_with_amount()
|
||||
|
||||
@fields.depends(methods=[
|
||||
'on_change_secondary_quantity', 'on_change_secondary_unit_price'])
|
||||
def on_change_secondary_unit(self):
|
||||
self.on_change_secondary_quantity()
|
||||
self.on_change_secondary_unit_price()
|
||||
|
||||
def get_product_secondary_uom_category(self, name):
|
||||
if isinstance(self.origin, self.__class__):
|
||||
return self.origin.product_secondary_uom_category
|
||||
|
||||
@classmethod
|
||||
def set_secondary(cls, lines, name, value):
|
||||
pass
|
||||
|
||||
@property
|
||||
def secondary_uom_factor(self):
|
||||
if isinstance(self.origin, self.__class__):
|
||||
return self.origin.secondary_uom_factor
|
||||
|
||||
@property
|
||||
def secondary_uom_rate(self):
|
||||
if isinstance(self.origin, self.__class__):
|
||||
return self.origin.secondary_uom_rate
|
||||
|
||||
def _credit(self):
|
||||
line = super()._credit()
|
||||
line.secondary_unit = self.secondary_unit
|
||||
return line
|
||||
12
modules/account_invoice_secondary_unit/account.xml
Normal file
12
modules/account_invoice_secondary_unit/account.xml
Normal file
@@ -0,0 +1,12 @@
|
||||
<?xml version="1.0"?>
|
||||
<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
|
||||
this repository contains the full copyright notices and license terms. -->
|
||||
<tryton>
|
||||
<data>
|
||||
<record model="ir.ui.view" id="invoice_line_view_form">
|
||||
<field name="model">account.invoice.line</field>
|
||||
<field name="inherit" ref="account_invoice.invoice_line_view_form"/>
|
||||
<field name="name">account_invoice_line_form</field>
|
||||
</record>
|
||||
</data>
|
||||
</tryton>
|
||||
35
modules/account_invoice_secondary_unit/locale/bg.po
Normal file
35
modules/account_invoice_secondary_unit/locale/bg.po
Normal file
@@ -0,0 +1,35 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr ""
|
||||
35
modules/account_invoice_secondary_unit/locale/ca.po
Normal file
35
modules/account_invoice_secondary_unit/locale/ca.po
Normal file
@@ -0,0 +1,35 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr "Categoria de la UdM secundaria del producte"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr "Quantitat secundaria"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr "Unitat secundaria"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr "Preu unitari secundari"
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr "La categoria de la unitat de mesura secundaria del producte."
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr "Quantitat:"
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr "Preu unitari:"
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr "Unitat:"
|
||||
35
modules/account_invoice_secondary_unit/locale/cs.po
Normal file
35
modules/account_invoice_secondary_unit/locale/cs.po
Normal file
@@ -0,0 +1,35 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr ""
|
||||
35
modules/account_invoice_secondary_unit/locale/de.po
Normal file
35
modules/account_invoice_secondary_unit/locale/de.po
Normal file
@@ -0,0 +1,35 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr "Artikel Zweitmaßeinheitenkategorie"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr "Zweitmenge"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr "Zweitmaßeinheit"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr "Zweiteinzelpreis"
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr "Die Kategorie für die Zweitmaßeinheit des Artikels."
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr "Menge:"
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr "Einzelpreis:"
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr "Einheit:"
|
||||
35
modules/account_invoice_secondary_unit/locale/es.po
Normal file
35
modules/account_invoice_secondary_unit/locale/es.po
Normal file
@@ -0,0 +1,35 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr "Categoría de la UdM secundaria del producto"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr "Cantidad secundaria"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr "Unidad secundaria"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr "Precio unitario secundario"
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr "La categoria de la unidad de medida secundaria del producto."
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr "Cantidad:"
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr "Precio unitario:"
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr "Unidad:"
|
||||
35
modules/account_invoice_secondary_unit/locale/es_419.po
Normal file
35
modules/account_invoice_secondary_unit/locale/es_419.po
Normal file
@@ -0,0 +1,35 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr ""
|
||||
35
modules/account_invoice_secondary_unit/locale/et.po
Normal file
35
modules/account_invoice_secondary_unit/locale/et.po
Normal file
@@ -0,0 +1,35 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr ""
|
||||
35
modules/account_invoice_secondary_unit/locale/fa.po
Normal file
35
modules/account_invoice_secondary_unit/locale/fa.po
Normal file
@@ -0,0 +1,35 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr ""
|
||||
35
modules/account_invoice_secondary_unit/locale/fi.po
Normal file
35
modules/account_invoice_secondary_unit/locale/fi.po
Normal file
@@ -0,0 +1,35 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr ""
|
||||
35
modules/account_invoice_secondary_unit/locale/fr.po
Normal file
35
modules/account_invoice_secondary_unit/locale/fr.po
Normal file
@@ -0,0 +1,35 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr "Catégorie d'UDM secondaire du produit"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr "Quantité secondaire"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr "Unité secondaire"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr "Prix unitaire secondaire"
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr "La catégorie d'unité de mesure secondaire pour le produit."
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr "Quantité :"
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr "Prix unitaire :"
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr "Unité :"
|
||||
35
modules/account_invoice_secondary_unit/locale/hu.po
Normal file
35
modules/account_invoice_secondary_unit/locale/hu.po
Normal file
@@ -0,0 +1,35 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr ""
|
||||
35
modules/account_invoice_secondary_unit/locale/id.po
Normal file
35
modules/account_invoice_secondary_unit/locale/id.po
Normal file
@@ -0,0 +1,35 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr ""
|
||||
36
modules/account_invoice_secondary_unit/locale/it.po
Normal file
36
modules/account_invoice_secondary_unit/locale/it.po
Normal file
@@ -0,0 +1,36 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr "Categoria UdM secondaria prodotto"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr "Quantità secondaria"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr "Unità secondaria"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr "Prezzo unitario secondario"
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr "Quantità:"
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr "Prezzo unitario:"
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr "Unità:"
|
||||
35
modules/account_invoice_secondary_unit/locale/lo.po
Normal file
35
modules/account_invoice_secondary_unit/locale/lo.po
Normal file
@@ -0,0 +1,35 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr ""
|
||||
36
modules/account_invoice_secondary_unit/locale/lt.po
Normal file
36
modules/account_invoice_secondary_unit/locale/lt.po
Normal file
@@ -0,0 +1,36 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr "Prekės antrojo matavimo vieneto kategorija"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr "Antrasis kiekis"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr "Antrasis vienetas"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr "Antrojo vieneto kaina"
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr "Kiekis:"
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr "Vieneto kaina:"
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr "Vienetas:"
|
||||
35
modules/account_invoice_secondary_unit/locale/nl.po
Normal file
35
modules/account_invoice_secondary_unit/locale/nl.po
Normal file
@@ -0,0 +1,35 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr "Product secundaire maateenheid categorie"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr "Secundaire hoeveelheid"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr "Secundaire eenheid"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr "secundaire eenheidsprijs"
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr "De categorie van de secundaire maateenheid van het product."
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr "Hoeveelheid:"
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr "Eenheid prijs:"
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr "Eenheid:"
|
||||
35
modules/account_invoice_secondary_unit/locale/pl.po
Normal file
35
modules/account_invoice_secondary_unit/locale/pl.po
Normal file
@@ -0,0 +1,35 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr ""
|
||||
35
modules/account_invoice_secondary_unit/locale/pt.po
Normal file
35
modules/account_invoice_secondary_unit/locale/pt.po
Normal file
@@ -0,0 +1,35 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr ""
|
||||
35
modules/account_invoice_secondary_unit/locale/ro.po
Normal file
35
modules/account_invoice_secondary_unit/locale/ro.po
Normal file
@@ -0,0 +1,35 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr "Categorie Secundara UM pentru Produs"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr "Cantitate Secundara"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr "Unitate Secundara"
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr "Preţ Unitate Secundara"
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr "Categoria Unitatii de Masura pentru produs."
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr "Cantitate:"
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr "Preţ Unitate:"
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr "Unitate:"
|
||||
35
modules/account_invoice_secondary_unit/locale/ru.po
Normal file
35
modules/account_invoice_secondary_unit/locale/ru.po
Normal file
@@ -0,0 +1,35 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr ""
|
||||
35
modules/account_invoice_secondary_unit/locale/sl.po
Normal file
35
modules/account_invoice_secondary_unit/locale/sl.po
Normal file
@@ -0,0 +1,35 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr ""
|
||||
35
modules/account_invoice_secondary_unit/locale/tr.po
Normal file
35
modules/account_invoice_secondary_unit/locale/tr.po
Normal file
@@ -0,0 +1,35 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr ""
|
||||
35
modules/account_invoice_secondary_unit/locale/uk.po
Normal file
35
modules/account_invoice_secondary_unit/locale/uk.po
Normal file
@@ -0,0 +1,35 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr ""
|
||||
35
modules/account_invoice_secondary_unit/locale/zh_CN.po
Normal file
35
modules/account_invoice_secondary_unit/locale/zh_CN.po
Normal file
@@ -0,0 +1,35 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "Product Secondary UoM Category"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_quantity:"
|
||||
msgid "Secondary Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit:"
|
||||
msgid "Secondary Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:account.invoice.line,secondary_unit_price:"
|
||||
msgid "Secondary Unit Price"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:account.invoice.line,product_secondary_uom_category:"
|
||||
msgid "The category of secondary Unit of Measure for the product."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Quantity:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit Price:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:account.invoice.line:"
|
||||
msgid "Unit:"
|
||||
msgstr ""
|
||||
2
modules/account_invoice_secondary_unit/tests/__init__.py
Normal file
2
modules/account_invoice_secondary_unit/tests/__init__.py
Normal file
@@ -0,0 +1,2 @@
|
||||
# This file is part of Tryton. The COPYRIGHT file at the top level of
|
||||
# this repository contains the full copyright notices and license terms.
|
||||
Binary file not shown.
Binary file not shown.
12
modules/account_invoice_secondary_unit/tests/test_module.py
Normal file
12
modules/account_invoice_secondary_unit/tests/test_module.py
Normal file
@@ -0,0 +1,12 @@
|
||||
# This file is part of Tryton. The COPYRIGHT file at the top level of
|
||||
# this repository contains the full copyright notices and license terms.
|
||||
|
||||
from trytond.tests.test_tryton import ModuleTestCase
|
||||
|
||||
|
||||
class AccountInvoiceSecondaryUnitTestCase(ModuleTestCase):
|
||||
'Test Account Invoice Secondary Unit module'
|
||||
module = 'account_invoice_secondary_unit'
|
||||
|
||||
|
||||
del ModuleTestCase
|
||||
12
modules/account_invoice_secondary_unit/tryton.cfg
Normal file
12
modules/account_invoice_secondary_unit/tryton.cfg
Normal file
@@ -0,0 +1,12 @@
|
||||
[tryton]
|
||||
version=7.8.0
|
||||
depends:
|
||||
account_invoice
|
||||
ir
|
||||
product
|
||||
xml:
|
||||
account.xml
|
||||
|
||||
[register]
|
||||
model:
|
||||
account.InvoiceLine
|
||||
@@ -0,0 +1,15 @@
|
||||
<?xml version="1.0"?>
|
||||
<!-- This file is part of Tryton. The COPYRIGHT file at the top level of
|
||||
this repository contains the full copyright notices and license terms. -->
|
||||
<data>
|
||||
<xpath expr="//field[@name='amount']" position="after">
|
||||
<separator name="secondary_unit" colspan="4"/>
|
||||
<label name="secondary_quantity" string="Quantity:"/>
|
||||
<field name="secondary_quantity"/>
|
||||
<label name="secondary_unit" string="Unit:"/>
|
||||
<field name="secondary_unit"/>
|
||||
<label name="secondary_unit_price" string="Unit Price:"/>
|
||||
<field name="secondary_unit_price"/>
|
||||
<newline/>
|
||||
</xpath>
|
||||
</data>
|
||||
Reference in New Issue
Block a user