first commit
This commit is contained in:
11
modules/stock_lot/__init__.py
Normal file
11
modules/stock_lot/__init__.py
Normal file
@@ -0,0 +1,11 @@
|
||||
# This file is part of Tryton. The COPYRIGHT file at the top level of
|
||||
# this repository contains the full copyright notices and license terms.
|
||||
|
||||
__all__ = ['LotMixin']
|
||||
|
||||
|
||||
def __getattr__(name):
|
||||
if name == 'LotMixin':
|
||||
from .stock import LotMixin
|
||||
return LotMixin
|
||||
raise AttributeError(f"module {__name__!r} has no attribute {name!r}")
|
||||
BIN
modules/stock_lot/__pycache__/__init__.cpython-311.pyc
Normal file
BIN
modules/stock_lot/__pycache__/__init__.cpython-311.pyc
Normal file
Binary file not shown.
BIN
modules/stock_lot/__pycache__/product.cpython-311.pyc
Normal file
BIN
modules/stock_lot/__pycache__/product.cpython-311.pyc
Normal file
Binary file not shown.
BIN
modules/stock_lot/__pycache__/stock.cpython-311.pyc
Normal file
BIN
modules/stock_lot/__pycache__/stock.cpython-311.pyc
Normal file
Binary file not shown.
18
modules/stock_lot/ir.xml
Normal file
18
modules/stock_lot/ir.xml
Normal file
@@ -0,0 +1,18 @@
|
||||
<?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.sequence.type" id="sequence_type_stock_lot">
|
||||
<field name="name">Stock Lot</field>
|
||||
</record>
|
||||
<record model="ir.sequence.type-res.group" id="sequence_type_stock_lot_group_admin">
|
||||
<field name="sequence_type" ref="sequence_type_stock_lot"/>
|
||||
<field name="group" ref="res.group_admin"/>
|
||||
</record>
|
||||
<record model="ir.sequence.type-res.group" id="sequence_type_stock_lot_group_product_admin">
|
||||
<field name="sequence_type" ref="sequence_type_stock_lot"/>
|
||||
<field name="group" ref="product.group_product_admin"/>
|
||||
</record>
|
||||
</data>
|
||||
</tryton>
|
||||
477
modules/stock_lot/locale/bg.po
Normal file
477
modules/stock_lot/locale/bg.po
Normal file
@@ -0,0 +1,477 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "Въведете партида"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "Въведете партида"
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "Въведете партида"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "Въведете партида"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Партида"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Партида"
|
||||
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Планирано количество"
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Номер"
|
||||
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Продукт"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Количество"
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr "Записано на"
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr "Местоположение"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Партида"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr "Продукт"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Количество"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr "Местоположение"
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Планирано количество"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Партида"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr "Продукт"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Количество"
|
||||
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Партида"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr "Продукт"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Количество"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr "Количество"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Номер"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Продукт"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Количество"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr "Вътрешно количество"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr "Местоположение"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Партида"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr "Период"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Продукт"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "Вида местонахождение за което е необходима партидата"
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "Вида местонахождение за което е необходима партидата"
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr "Планирано количество"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr "Вид наличност на партида"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Наличност на партида"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Наличност на партида"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr "Наличност на партида"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr "Планирано количество"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr "Местоположение"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Customer"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Lost and Found"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Storage"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Supplier"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Customer"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Lost and Found"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Storage"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Supplier"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr "Партида"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr "Партиди"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
426
modules/stock_lot/locale/ca.po
Normal file
426
modules/stock_lot/locale/ca.po
Normal file
@@ -0,0 +1,426 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr "Seqüència de lot per defecte"
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr "Seqüència de lot per defecte"
|
||||
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "Lot obligatori"
|
||||
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "Seqüència del lot"
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "Lot obligatori"
|
||||
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "Seqüència del lot"
|
||||
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr "UdM per defecte"
|
||||
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Quantitat prevista"
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr "Té seqüència"
|
||||
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Número"
|
||||
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Producte"
|
||||
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Quantitat"
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr "Empresa"
|
||||
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr "Data"
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr "Document"
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr "Traçabilitat descendent"
|
||||
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr "Des de la ubicació"
|
||||
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr "Producte"
|
||||
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Quantitat"
|
||||
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr "A la ubicació"
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr "Unitat"
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr "Traçabilitat ascendent"
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr "A data"
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr "A data"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr "UdM per defecte"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Quantitat prevista"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr "Producte"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Quantitat"
|
||||
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr "Duplica número de lot"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr "Producte"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Quantitat"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr "Quantitat restant"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr "Unitat"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr "Té seqüència"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Número"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr "Pare"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Producte"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Quantitat"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr "Unitat"
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr "Precàlculs de lot"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr "Quantitat interna"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr "Ubicació"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr "Període"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Producte"
|
||||
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "El tipus d'ubicació per la qual el lot és obligatori."
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr "La seqüència utilitzada per numerar automàticament els lots."
|
||||
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "El tipus d'ubicació per la qual el lot és obligatori."
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr "La seqüència utilitzada per numerar automàticament els lots."
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr "La unitat de mesura per defecte."
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
"Permet calcular les quantitats previstes per a aquesta data.\n"
|
||||
"* Un valor buit és un data infinita en el futur.\n"
|
||||
"* Una data en el passat proporcionarà valors històrics."
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr "La unitat de mesura per defecte."
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr "El nombre de vegades que s’ha de duplicar el lot."
|
||||
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr "Llista d'ubicacions d'existències"
|
||||
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr "Arbre d'ubicacions d'existències"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr "Traçabilitat descendent"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr "Traçabilitat ascendent"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr "Afgeix lots"
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr "No podeu canviar el producte d'un lot que te moviments d'existències."
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr "Per moure el producte \"%(product)s\" heu d'especificar-n'he el lot."
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr ""
|
||||
"La quantitat total \"%(lot_quantity)s\" dels lots ha de ser inferior o igual"
|
||||
" a la quantitat \"%(move_quantity)s\" del moviment."
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr "Heu de seleccionar un lot en comptes d'un producte per \"%(product)s\"."
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr "Traçabilitat descendent"
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr "Traçabilitat ascendent"
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr "Duplica lot"
|
||||
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr "Afegir lots"
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr "Usuari a les empreses"
|
||||
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr "Configuració de les seqüències de lots per defecte"
|
||||
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr "Traçabilitat lots"
|
||||
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr "Context lotes per ubicació"
|
||||
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr "Lots per ubicació"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr "Inici afegir lots en els moviments d'existències"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr "Lot inici afegir lots en els moviments d'existències"
|
||||
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr "Període d'existències precalculat per lot"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Client"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Perdut i trobat"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Producció"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Intern"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Proveïdor"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Client"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Perdut i trobat"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Producció"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Intern"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Proveïdor"
|
||||
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr "Restant:"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr "vegades"
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr "Afegeix"
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr "Cancel·la"
|
||||
458
modules/stock_lot/locale/cs.po
Normal file
458
modules/stock_lot/locale/cs.po
Normal file
@@ -0,0 +1,458 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Customer"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Lost and Found"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Storage"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Supplier"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Customer"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Lost and Found"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Storage"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Supplier"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
436
modules/stock_lot/locale/de.po
Normal file
436
modules/stock_lot/locale/de.po
Normal file
@@ -0,0 +1,436 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr "Standard Nummernkreis Charge"
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr "Standard Nummernkreis Charge"
|
||||
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "Charge erforderlich für Lagerort"
|
||||
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "Nummernkreis Charge"
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "Charge erforderlich für Lagerort"
|
||||
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "Nummernkreis Charge"
|
||||
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Charge"
|
||||
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Charge"
|
||||
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr "Standardmaßeinheit"
|
||||
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Voraussichtliche Menge"
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr "Hat Nummernkreis"
|
||||
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Nummer"
|
||||
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Artikel"
|
||||
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Menge"
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr "Unternehmen"
|
||||
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr "Datum"
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr "Dokument"
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr "Retrograde Rückverfolgung"
|
||||
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr "Von Lagerort"
|
||||
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Charge"
|
||||
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr "Artikel"
|
||||
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Menge"
|
||||
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr "Zu Lagerort"
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr "Einheit"
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr "Progressive Rückverfolgung"
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr "Ermittlungsdatum"
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr "Ermittlungsdatum"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr "Standardmaßeinheit"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Voraussichtliche Menge"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Charge"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr "Artikel"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Menge"
|
||||
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Charge"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr "Chargennummer Duplizieren"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr "Chargen"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr "Artikel"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Menge"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr "Verbleibende Menge"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr "Einheit"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr "Hat Nummernkreis"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Nummer"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr "Übergeordnet"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Artikel"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Menge"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr "Einheit"
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr "Caches Charge"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr "Interne Menge"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr "Ort"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Charge"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr "Lagerbuchungszeitraum"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Artikel"
|
||||
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "Typ des Lagerorts, für den eine Chargen-Nummer erforderlich ist."
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
"Der Nummernkreis der zur automatischen Nummerierung der Chargen verwendet "
|
||||
"wird."
|
||||
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "Typ des Lagerorts, für den eine Chargen-Nummer erforderlich ist."
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
"Der Nummernkreis der zur automatischen Nummerierung der Chargen verwendet "
|
||||
"wird."
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr "Die Standardmaßeinheit."
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
"Den erwarteten Lagerbestand für dieses Datum ermitteln.\n"
|
||||
"* Ein leerer Wert bedeutet ein unendliches Datum in der Zukunft.\n"
|
||||
"* Ein Wert in der Vergangenheit berechnet historische Werte."
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr "Die Standardmaßeinheit."
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr "Wie oft die Charge dupliziert werden muss."
|
||||
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr "Lagerbestand je Lagerort"
|
||||
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr "Lagerbestand (Strukturansicht)"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Chargen"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Chargen"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr "Retrograde Rückverfolgung"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr "Progressive Rückverfolgung"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Chargen"
|
||||
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr "Chargen Hinzufügen"
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr ""
|
||||
"Der Artikel einer Charge, für die es Warenbewegungen gibt, kann nicht "
|
||||
"geändert werden."
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr ""
|
||||
"Damit der Artikel \"%(product)s\" umgelagert werden kann, muss eine Charge "
|
||||
"angegeben werden."
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr ""
|
||||
"Die Gesamtmenge \"%(lot_quantity)s\" der Chargen muss kleiner oder gleich "
|
||||
"der Menge \"%(move_quantity)s\" der Warenbewegung sein."
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr ""
|
||||
"Für \"%(product)s\" muss eine Charge ausgewählt werden anstatt einem "
|
||||
"Artikel."
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr "Retrograde Rückverfolgung"
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr "Progressive Rückverfolgung"
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr "Charge Duplizieren"
|
||||
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr "Chargen Hinzufügen"
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr "Benutzer in Unternehmen"
|
||||
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Lager Charge"
|
||||
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Chargen"
|
||||
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr "Artikel Einstellungen Charge Standardnummernkreis"
|
||||
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Lager Charge"
|
||||
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr "Lager Chargenverfolgung"
|
||||
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr "Lager Chargen je Lagerort Kontext"
|
||||
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr "Lager Chargen pro Lagerort"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr "Lager Warenbewegung Chargen hinzufügen Start"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr "Lager Warenbewegung Charge hinzufügen Start Charge"
|
||||
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr "Lagerbuchungszeitraum Cache Charge"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Kunde"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Inventurdifferenz"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Produktion"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Lager"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Lieferant"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Kunde"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Inventurdifferenz"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Produktion"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Lager"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Lieferant"
|
||||
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr "Charge"
|
||||
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr "Chargen"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr "Verbleibend:"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr "mal"
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr "Hinzufügen"
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr "Abbrechen"
|
||||
428
modules/stock_lot/locale/es.po
Normal file
428
modules/stock_lot/locale/es.po
Normal file
@@ -0,0 +1,428 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr "Secuencia de lote por defecto"
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr "Secuencia de lote por defecto"
|
||||
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "Lote obligatorio"
|
||||
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "Secuencia de lote"
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "Lote obligatorio"
|
||||
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "Secuencia de lote"
|
||||
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lote"
|
||||
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lote"
|
||||
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr "UdM por defecto"
|
||||
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Cantidad prevista"
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr "Tiene secuencia"
|
||||
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Número"
|
||||
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Producto"
|
||||
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Cantidad"
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr "Empresa"
|
||||
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr "Fecha"
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr "Documento"
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr "Trazabilidad descendente"
|
||||
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr "Desde ubicación"
|
||||
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lote"
|
||||
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr "Producto"
|
||||
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Cantidad"
|
||||
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr "A ubicación"
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr "Unidad"
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr "Trazabilidad ascendente"
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr "A la fecha"
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr "A la fecha"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr "UdM por defecto"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Cantidad prevista"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lote"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr "Producto"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Cantidad"
|
||||
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lote"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr "Duplicar número de lote"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr "Lotes"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr "Producto"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Cantidad"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr "Cantidad restante"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr "Unidad"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr "Tiene secuencia"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Número"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr "Padre"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Producto"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Cantidad"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr "Unidad"
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr "Lote precalculado"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr "Cantidad interna"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr "Ubicación"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lote"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr "Periodo"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Producto"
|
||||
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "El tipo de ubicación en la que el lote es obligatorio."
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr "La secuencia usada para numerar automáticamente los lotes."
|
||||
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "El tipo de ubicación en la que el lote es obligatorio."
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr "La secuencia usada para numerar automáticamente los lotes."
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr "La unidad de medida por defecto."
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
"Permite calcular las cantidades previstas para esta fecha.\n"
|
||||
"* Un valor vacío es una fecha infinita en el futuro.\n"
|
||||
"* Una fecha en el pasado proporcionará valores históricos."
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr "La unidad de medida por defecto."
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr "El número de veces que el lote debe ser duplicado."
|
||||
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr "Lista de ubicaciones de existencias"
|
||||
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr "Árbol de ubicaciones de existencias"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lotes"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lotes"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr "Trazabilidad descendente"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr "Trazabilidad ascendente"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lotes"
|
||||
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr "Añadir lotes"
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr ""
|
||||
"No puede cambiar el producto de un lote que ya tiene movimientos de "
|
||||
"existencias."
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr "Para mover el producto \"%(product)s\" debe especificar su lote."
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr ""
|
||||
"La cantidad total \"%(lot_quantity)s\" de los lotes debe ser menor o igual "
|
||||
"que la cantidad \"%(move_quantity)s\" del movimiento."
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr "Debe seleccionar un lote en lugar de un producto en \"%(product)s\"."
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr "Trazabilidad descendente"
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr "Trazabilidad ascendente"
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr "Duplicar lote"
|
||||
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr "Añadir lotes"
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr "Usuario en las empresas"
|
||||
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Lote"
|
||||
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lotes"
|
||||
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr "Configuración de las secuencias de lotes por defecto"
|
||||
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Lote"
|
||||
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr "Trazabilidad lotes"
|
||||
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr "Contexto lotes por ubicación"
|
||||
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr "Lotes por ubicación"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr "Inicio añadir lotes en movimientos de existencias"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr "Lote inicio añadir lotes en movimientos de existencias"
|
||||
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr "Periodo de existencias precalculado por lote"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Cliente"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Perdido y encontrado"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Producción"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Interno"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Proveedor"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Cliente"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Perdido y encontrado"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Producción"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Interno"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Proveedor"
|
||||
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr "Lote"
|
||||
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr "Lotes"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr "Restante:"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr "veces"
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr "Añadir"
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr "Cancelar"
|
||||
432
modules/stock_lot/locale/es_419.po
Normal file
432
modules/stock_lot/locale/es_419.po
Normal file
@@ -0,0 +1,432 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "Lote requerido"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "Lote requerido"
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "Lote requerido"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "Lote requerido"
|
||||
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "El tipo de ubicación para la cual el lote es requerido"
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "El tipo de ubicación para la cual el lote es requerido"
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr "Lote de stock"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr "Tipo de lote de stock"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Lote de stock"
|
||||
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Lote de stock"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr "Lote de stock"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr "Lote de stock"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr "Lote de stock"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
462
modules/stock_lot/locale/et.po
Normal file
462
modules/stock_lot/locale/et.po
Normal file
@@ -0,0 +1,462 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "Partii nõutav"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "Partii nõutav"
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "Partii nõutav"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "Partii nõutav"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Partii"
|
||||
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Partii"
|
||||
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Prognoositav kogus"
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Number"
|
||||
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Toode"
|
||||
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Kogus"
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr "Kuupäeval"
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr "Asukoht"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Partii"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr "Toode"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Kogus"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr "Asukoht"
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr "Kuupäeval"
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr "Kuupäeval"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Prognoositav kogus"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Partii"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr "Toode"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Kogus"
|
||||
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Partii"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr "Partiid"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr "Toode"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Kogus"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr "Kogus"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Number"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Toode"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Kogus"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr "Sisemine kogus"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr "Asukoht"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Partii"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr "Periood"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Toode"
|
||||
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr "Prognoositav kogus"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr "Partiitunnuse tüüp"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Partiid"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Partiid"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Partiid"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr "Partiid"
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr "Partiid"
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Partii laos"
|
||||
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Partiid"
|
||||
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Partii laos"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr "Partii laos"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr "Prognoositav kogus"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr "Asukoht"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Klient"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Kaotatud ja leitud"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Tootmine"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Laokoht"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Hankija"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Klient"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Kaotatud ja leitud"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Tootmine"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Laokoht"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Hankija"
|
||||
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr "Partii"
|
||||
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr "Partiid"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
472
modules/stock_lot/locale/fa.po
Normal file
472
modules/stock_lot/locale/fa.po
Normal file
@@ -0,0 +1,472 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "قطعه مورد نیاز"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "قطعه مورد نیاز"
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "قطعه مورد نیاز"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "قطعه مورد نیاز"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "قطعه"
|
||||
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "قطعه"
|
||||
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "مقدار پیش بینی شده"
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "شماره"
|
||||
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "محصول"
|
||||
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "مقدار/تعداد"
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr "در تاریخ"
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr "مکان"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "قطعه"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr "محصول"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "مقدار/تعداد"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr "مکان"
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr "در تاریخ"
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr "در تاریخ"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "مقدار پیش بینی شده"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "قطعه"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr "محصول"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "مقدار/تعداد"
|
||||
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "قطعه"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr "قطعهها"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr "محصول"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "مقدار/تعداد"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr "مقدار/تعداد"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "شماره"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "محصول"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "مقدار/تعداد"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr "مخازن قطعه"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr "مقدار داخلی"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr "مکان"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "قطعه"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr "دوره زمانی"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "محصول"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "نوع مکانی که نیازمند قطعه میباشد"
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "نوع مکانی که نیازمند قطعه میباشد"
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
"اجازه می دهد مقادیرموجودی مورد انتظار را برای این تاریخ محاسبه کنید.\n"
|
||||
"* مقدار خالی یک تاریخ درآینده نامحدود است.\n"
|
||||
"* یک تاریخ در گذشته ارزش های تاریخی را فراهم می کند."
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr "مقدار پیش بینی شده"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr "نوع قطعه موجود"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "قطعهها"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr "قطعهها"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr "قطعهها"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr "قطعهها"
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr ""
|
||||
"شما نمیتوانید محصول زیادی از یک جنس را تغییر دهید که جابجایی اجناس داشته "
|
||||
"باشد."
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr ""
|
||||
"برای جابجایی محصول :\"%(product)s\" شما باید یک قطعه از جنس را ارائه کنید."
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr ""
|
||||
"شما باید یک مقدار جنس را به جای یک محصول برای \"%(product)s\" انتخاب کنید."
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr "قطعهها"
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr "قطعه موجود"
|
||||
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "قطعهها"
|
||||
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr "قطعه موجود"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr "قطعه موجود"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr "مقدار پیش بینی شده"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr "قطعه بواسطه مکان"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr "موجودی دوره انبار در هر قطعه"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "مشتری"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "گمشده ها و یافته ها"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "تهیه کننده"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "مخزن"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "تأمین کننده"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "مشتری"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "گمشده ها و یافته ها"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "تهیه کننده"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "مخزن"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "تأمین کننده"
|
||||
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr "قطعه"
|
||||
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr "قطعهها"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
456
modules/stock_lot/locale/fi.po
Normal file
456
modules/stock_lot/locale/fi.po
Normal file
@@ -0,0 +1,456 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Customer"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Lost and Found"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Storage"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Supplier"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Customer"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Lost and Found"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Storage"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Supplier"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
429
modules/stock_lot/locale/fr.po
Normal file
429
modules/stock_lot/locale/fr.po
Normal file
@@ -0,0 +1,429 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr "Séquence de lot par défaut"
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr "Séquence de lot par défaut"
|
||||
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "Lot requis"
|
||||
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "Séquence de lot"
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "Lot requis"
|
||||
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "Séquence de lot"
|
||||
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr "UDM par défaut"
|
||||
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Quantité prévisionnelle"
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr "A une séquence"
|
||||
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Numéro"
|
||||
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produit"
|
||||
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Quantité"
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr "Société"
|
||||
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr "Date"
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr "Document"
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr "Traces descendantes"
|
||||
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr "Emplacement d'origine"
|
||||
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produit"
|
||||
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Quantité"
|
||||
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr "Emplacement de destination"
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr "Unité"
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr "Traces ascendantes"
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr "À la date"
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr "À la date"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr "UDM par défaut"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Quantité prévisionnelle"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produit"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Quantité"
|
||||
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr "Dupliquer le numéro de lot"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produit"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Quantité"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr "Quantité restante"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr "Unité"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr "A une séquence"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Numéro"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr "Parent"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produit"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Quantité"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr "Unité"
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr "Caches de lot"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr "Quantité interne"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr "Emplacement"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr "Période"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produit"
|
||||
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "Le type d'emplacement pour lequel un lot est requis."
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr "La séquence utilisée pour numéroter automatiquement les lots."
|
||||
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "Le type d'emplacement pour lequel un lot est requis."
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr "La séquence utilisée pour numéroter automatiquement les lots."
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr "L'unité de mesure par défaut."
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
"Permet de calculer les quantités de stock attendues pour cette date.\n"
|
||||
"* Une valeur vide est une date infinie dans le futur.\n"
|
||||
"* Une date dans le passé fournira les valeurs historiques."
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr "L'unité de mesure par défaut."
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr "Le nombre de fois que le lot doit être dupliqué."
|
||||
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr "Liste des emplacements des stocks"
|
||||
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr "Arbre des emplacements des stocks"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr "Traces descendantes"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr "Traces ascendantes"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr "Ajouter des lots"
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr ""
|
||||
"Vous ne pouvez pas changer le produit d'un lot qui a des mouvements de "
|
||||
"stock."
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr "Pour déplacer le produit « %(product)s », vous devez fournir un lot."
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr ""
|
||||
"La quantité totale « %(lot_quantity)s » des lots doit être inférieure ou "
|
||||
"égale à la quantité « %(move_quantity)s » du mouvement."
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr ""
|
||||
"Vous devez sélectionner un lot au lieu d'un produit pour « %(product)s »."
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr "Traces descendantes"
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr "Traces ascendantes"
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr "Dupliquer le lot"
|
||||
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr "Ajouter des lots"
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr "Utilisateur dans les sociétés"
|
||||
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr "Configuration produit Séquence de lots par défaut"
|
||||
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Lot de stock"
|
||||
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr "Trace de lot de stock"
|
||||
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr "Contexte de lot de stock par emplacements"
|
||||
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr "Lots de stock par emplacements"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr "Mouvement de stock Ajouter des lots Début"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr "Mouvement de stock Ajouter des lots Démarrage lot"
|
||||
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr "Cache de lot de période de stock"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Client"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Pertes et surplus"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Magasin"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Fournisseur"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Client"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Pertes et surplus"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Magasin"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Fournisseur"
|
||||
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr "Restant :"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr "fois"
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr "Ajouter"
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr "Annuler"
|
||||
469
modules/stock_lot/locale/hu.po
Normal file
469
modules/stock_lot/locale/hu.po
Normal file
@@ -0,0 +1,469 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "Charge szükséges a raktárhelyhez "
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "Charge szükséges a raktárhelyhez "
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "Charge szükséges a raktárhelyhez"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "Charge szükséges a raktárhelyhez "
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Charge"
|
||||
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Charge"
|
||||
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Előrelátható mennyiség"
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Szám"
|
||||
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Termék"
|
||||
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Mennyiség"
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr "Utolsó módosítás dátuma"
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr "Hely"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Charge"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr "Termék"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Mennyiség"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr "Hely"
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Előrelátható mennyiség"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Charge"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr "Termék"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Mennyiség"
|
||||
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Charge"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr "Termék"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Mennyiség"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr "Mennyiség"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Szám"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Termék"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Mennyiség"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr "Caches Charge"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr "Belső mennyiség"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr "Hely"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Charge"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr "Raktár időszak"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Termék"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "Raktárhely típusa, melyhez szükséges Charge szám"
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "Raktárhely típusa, melyhez szükséges Charge szám"
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr "Előrelátható mennyiség"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr "Raktár Charge típus"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Raktár Charge"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Raktár Charge"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr "Raktár Charge"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr "Előrelátható mennyiség"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr "Hely"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr "Raktár Cache időszak Chargenként"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Customer"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Lost and Found"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Storage"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Supplier"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Customer"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Lost and Found"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Storage"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Supplier"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr "Charge"
|
||||
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr "Chargen"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
430
modules/stock_lot/locale/id.po
Normal file
430
modules/stock_lot/locale/id.po
Normal file
@@ -0,0 +1,430 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Nomor"
|
||||
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produk"
|
||||
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr "Perusahaan"
|
||||
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr "Tanggal"
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr "Dokumen"
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr "Lokasi"
|
||||
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produk"
|
||||
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Kuantitas"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr "Lokasi"
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr "Pada Tanggal"
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr "Pada Tanggal"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produk"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produk"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Kuantitas"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Nomor"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr "Induk"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produk"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr "Lokasi"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr "Periode"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produk"
|
||||
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr "Lokasi"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr "Lokasi"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Lokasi"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr "Lokasi"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr "Lokasi"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr "Lokasi"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Pelanggan"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Produksi"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Pemasok"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Pelanggan"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Produksi"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Pemasok"
|
||||
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
451
modules/stock_lot/locale/it.po
Normal file
451
modules/stock_lot/locale/it.po
Normal file
@@ -0,0 +1,451 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lotto"
|
||||
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lotto"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr "UdM predefinita"
|
||||
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Quantità prevista"
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Numero"
|
||||
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Prodotto"
|
||||
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Quantità"
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr "Utente scrittura"
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr "Luogo"
|
||||
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lotto"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr "Prodotto"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Quantità"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr "Luogo"
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr "UdM predefinita"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Quantità prevista"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lotto"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr "Prodotto"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Quantità"
|
||||
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lotto"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr "Lotti"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr "Prodotto"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Quantità"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr "Quantità"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Numero"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Prodotto"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Quantità"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr "Luogo"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lotto"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr "Periodo"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Prodotto"
|
||||
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr "Quantità prevista"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr "Quantità prevista"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lotti"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lotti"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lotti"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lotti"
|
||||
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Quantità prevista"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr "Quantità prevista"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr "Quantità prevista"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr "Luogo"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Cliente"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Perso e ritrovato"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Deposito"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Fornitore"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Cliente"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Perso e ritrovato"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Deposito"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Fornitore"
|
||||
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr "Lotto"
|
||||
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr "Lotti"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
470
modules/stock_lot/locale/lo.po
Normal file
470
modules/stock_lot/locale/lo.po
Normal file
@@ -0,0 +1,470 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "ເລກທີ"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "ຜະລິດຕະພັນ"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "ຈຳນວນ"
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr "ວັນທີບັນທຶກ"
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr "ບ່ອນຢູ່"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr "ຜະລິດຕະພັນ"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "ຈຳນວນ"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr "ບ່ອນຢູ່"
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "ຈຳນວນພາຍໃນ"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr "ຜະລິດຕະພັນ"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "ຈຳນວນ"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr "ຜະລິດຕະພັນ"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "ຈຳນວນ"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr "ຈຳນວນ"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "ເລກທີ"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "ຜະລິດຕະພັນ"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "ຈຳນວນ"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr "ຈຳນວນພາຍໃນ"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr "ບ່ອນຢູ່"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr "ໄລຍະ"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "ຜະລິດຕະພັນ"
|
||||
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr "ບ່ອນຢູ່"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr "ບ່ອນຢູ່"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr "ບ່ອນຢູ່"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr "ບ່ອນຢູ່"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr "ບ່ອນຢູ່"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr "ບ່ອນຢູ່"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Customer"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "ລໍຮັບຈ່າຍ"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "ຜະລິດຕະພັນ"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "ຫ້ອງເກັບມ້ຽນຢາ"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "ຜູ້ສະໜອງ"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Customer"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "ລໍຮັບຈ່າຍ"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "ຜະລິດຕະພັນ"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "ຫ້ອງເກັບມ້ຽນຢາ"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "ຜູ້ສະໜອງ"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
459
modules/stock_lot/locale/lt.po
Normal file
459
modules/stock_lot/locale/lt.po
Normal file
@@ -0,0 +1,459 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lo"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lo"
|
||||
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr "Pakeitimo data"
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lo"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lo"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lo"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr "Lo"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lo"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lo"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lo"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lo"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lo"
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lo"
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lo"
|
||||
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Customer"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Lost and Found"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Storage"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Supplier"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Customer"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Lost and Found"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Storage"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Supplier"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr "Lo"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr "Lo"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
429
modules/stock_lot/locale/nl.po
Normal file
429
modules/stock_lot/locale/nl.po
Normal file
@@ -0,0 +1,429 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr "Standaard Batch Reeks"
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr "Standaard Batch Reeks"
|
||||
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "Batch Vereist"
|
||||
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "Batch Reeks"
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "Batch Vereist"
|
||||
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "Batch Reeks"
|
||||
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Batch"
|
||||
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Batch"
|
||||
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr "Standaard maateenheid"
|
||||
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Verwachte hoeveelheid"
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr "Heeft Reeks"
|
||||
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Nummer"
|
||||
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Product"
|
||||
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Hoeveelheid"
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr "Bedrijf"
|
||||
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr "Datum"
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr "Document"
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr "Neerwaartse tracering"
|
||||
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr "Van locatie"
|
||||
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Batch"
|
||||
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr "Product"
|
||||
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Hoeveelheid"
|
||||
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr "Naar locatie"
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr "Eenheid"
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr "Opwaartse tracering"
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr "Op datum"
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr "Op datum"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr "Standaard maateenheid"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Verwachte hoeveelheid"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Batch"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr "Product"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Hoeveelheid"
|
||||
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Batch"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr "Dupliceer batchnummer"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr "Batches"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr "Product"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Hoeveelheid"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr "Resterende hoeveelheid"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr "Eenheid"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr "Heeft reeks"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Nummer"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr "Bovenliggend"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Product"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Hoeveelheid"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr "Eenheid"
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr "Batch Caches"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr "Interne hoeveelheid"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr "Plaats"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Batch"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr "Periode"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Product"
|
||||
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "Het soort locatie waarvoor een batch vereist is."
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr "De reeks die wordt gebruikt om batches automatisch te nummeren."
|
||||
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "Het soort locatie waarvoor een batch vereist is."
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr "De reeks die wordt gebruikt om batches automatisch te nummeren."
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr "De standaard maateenheid."
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
"Sta toe de verwachte voorraadhoeveelheden voor deze datum te berekenen.\n"
|
||||
"* Een lege waarde is een oneindige datum in de toekomst.\n"
|
||||
"* Een datum in het verleden levert historische waarden op."
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr "De standaard maateenheid."
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr "Het aantal keren dat de batch gedupliceerd moet worden."
|
||||
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr "Lijst met hoeveelheden per voorraadlocatie"
|
||||
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr "Voorraad locaties boom"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Batches"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Batches"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr "Neerwaartse tracering"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr "Opwaartse tracering"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Batches"
|
||||
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr "Batches toevoegen"
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr ""
|
||||
"U kunt het product van een batch die voorraadbewegingen heeft niet wijzigen."
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr "Om product \"%(product)s\" te verplaatsen, moet u een batch opgeven."
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr ""
|
||||
"De totale hoeveelheid \"%(lot_quantity)s\" van de batches moet kleiner of "
|
||||
"gelijk zijn aan de hoeveelheid \"%(move_quantity)s\" van de "
|
||||
"voorraadbeweging."
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr ""
|
||||
"U moet een batch selecteren in plaats van een product voor \"%(product)s\"."
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr "Neerwaartse tracering"
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr "Opwaartse tracering"
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr "Dupliceer batch"
|
||||
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr "Batches toevoegen"
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr "Gebruiker in bedrijven"
|
||||
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Voorraad batch"
|
||||
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Batches"
|
||||
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr "Product configuratie standaard batch reeks"
|
||||
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Voorraad batch"
|
||||
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr "Voorraad batch traceren"
|
||||
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr "Voorraad batches per locatie context"
|
||||
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr "Voorraad batches per locatie"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr "Voorraad boeking voeg batches toe start"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr "Voorraad boeking voeg batches toe start batch"
|
||||
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr "Voorraad periode batch cache"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Klant"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Voorraad verschil"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Productie"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Magazijn"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Leverancier"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Klant"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Voorraad verschil"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Productie"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Magazijn"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Leverancier"
|
||||
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr "Batch"
|
||||
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr "Batches"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr "Overig:"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr "keer"
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr "Toevoegen"
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr "Annuleer"
|
||||
464
modules/stock_lot/locale/pl.po
Normal file
464
modules/stock_lot/locale/pl.po
Normal file
@@ -0,0 +1,464 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Numer"
|
||||
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produkt"
|
||||
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Ilość"
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr "Na dzień"
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr "Lokalizacja"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produkt"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Ilość"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr "Lokalizacja"
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr "Na dzień"
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr "Na dzień"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Ilość"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produkt"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Ilość"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produkt"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Ilość"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr "Ilość"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Numer"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produkt"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Ilość"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr "Lokalizacja"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr "Okres"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produkt"
|
||||
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr "Lista lokalizacji magazynowych"
|
||||
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr "Struktura lokalizacji magazynowych"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Lista lokalizacji magazynowych"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr "Struktura lokalizacji magazynowych"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr "Lista lokalizacji magazynowych"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr "Lokalizacja"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Customer"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Lost and Found"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Storage"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Supplier"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Customer"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Lost and Found"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Storage"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Supplier"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
471
modules/stock_lot/locale/pt.po
Normal file
471
modules/stock_lot/locale/pt.po
Normal file
@@ -0,0 +1,471 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "Lote Obrigatório"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "Lote Obrigatório"
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "Lote Obrigatório"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "Lote Obrigatório"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lote"
|
||||
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lote"
|
||||
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Quantidade prevista"
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Número"
|
||||
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produto"
|
||||
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Quantidade"
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr "Na Data"
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr "Localização"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lote"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produto"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Quantidade"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr "Localização"
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr "Na Data"
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr "Na Data"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Quantidade prevista"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lote"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produto"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Quantidade"
|
||||
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lote"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produto"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Quantidade"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr "Quantidade"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Número"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produto"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Quantidade"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr "Lotes pré-calculados"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr "Quantidade interna"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr "Localização"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lote"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr "Período"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produto"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "O tipo de localização para a qual o lote é obrigatório"
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "O tipo de localização para a qual o lote é obrigatório"
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
"Permite o cálculo esperado das quantidades do estoque para esta data.\n"
|
||||
"* Um valor vazio é uma data infinita no futuro.\n"
|
||||
"* Uma data no passado mostrará valores históricos."
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr "Quantidade prevista"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr "Tipo do lote de estoque"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Lote de estoque"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Lote de estoque"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr "Lote de estoque"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr "Quantidade prevista"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr "Lote Localização"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr "Período de estoque pré-calculado por lote"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Customer"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Lost and Found"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Storage"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Supplier"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Customer"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Lost and Found"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Storage"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Supplier"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr "Lote"
|
||||
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr "Lotes"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
431
modules/stock_lot/locale/ro.po
Normal file
431
modules/stock_lot/locale/ro.po
Normal file
@@ -0,0 +1,431 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produs"
|
||||
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produs"
|
||||
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produs"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produs"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produs"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr "Perioadă"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Produs"
|
||||
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr "Locaţii Lista Cantităţi"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr "Arbore Cantitate Locaţii"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Locaţii Lista Cantităţi"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr "Arbore Cantitate Locaţii"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr "Locaţii Lista Cantităţi"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr "Locaţii Lista Cantităţi"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
472
modules/stock_lot/locale/ru.po
Normal file
472
modules/stock_lot/locale/ru.po
Normal file
@@ -0,0 +1,472 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Прогноз количества"
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Номер"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Товарно материальные ценности (ТМЦ)"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Кол-во"
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr "Дата изменения"
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr "Местоположение"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr "Товарно материальные ценности (ТМЦ)"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Кол-во"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr "Местоположение"
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Прогноз количества"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr "Товарно материальные ценности (ТМЦ)"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Кол-во"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr "Товарно материальные ценности (ТМЦ)"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Кол-во"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr "Кол-во"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Номер"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Товарно материальные ценности (ТМЦ)"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Кол-во"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr "Внутреннее количество"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr "Местоположение"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr "Период"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Товарно материальные ценности (ТМЦ)"
|
||||
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr "Прогноз количества"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr "Прогноз количества"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Прогноз количества"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr "Прогноз количества"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr "Прогноз количества"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr "Местоположение"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Заказчик"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Утраченный и обретенный"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Производство"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Хранилище"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Поставщик"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Заказчик"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Утраченный и обретенный"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Производство"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Хранилище"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Поставщик"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
471
modules/stock_lot/locale/sl.po
Normal file
471
modules/stock_lot/locale/sl.po
Normal file
@@ -0,0 +1,471 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "Serija obvezna"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "Serija obvezna"
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "Serija obvezna"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "Serija obvezna"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Serija"
|
||||
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Serija"
|
||||
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Predvidena količina"
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Številka"
|
||||
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Izdelek"
|
||||
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Količina"
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr "Na dan"
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr "Lokacija"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Serija"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr "Izdelek"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Količina"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr "Lokacija"
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr "Na dan"
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr "Na dan"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "Predvidena količina"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Serija"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr "Izdelek"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Količina"
|
||||
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Serija"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr "Izdelek"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Količina"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr "Količina"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "Številka"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Izdelek"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "Količina"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr "Predpomnjene serije"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr "Notranja količina"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr "Lokacija"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Serija"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr "Obdobje"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Izdelek"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "Vrsta lokacije, za katero je serija obvezna"
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "Vrsta lokacije, za katero je serija obvezna"
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
"Omogoča izračun predvidenih zalog na ta dan.\n"
|
||||
"* Prazno polje pomeni neskončno v prihodnost.\n"
|
||||
"* Pretekli datum daje zgodovino zaloge."
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr "Predvidena količina"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr "Tip serije"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Serija"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Serija"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr "Serija"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr "Predvidena količina"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr "Serija po lokaciji"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr "Predpomnjena obdobja po serijah"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Customer"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Lost and Found"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Storage"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Supplier"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Customer"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Lost and Found"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Storage"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Supplier"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr "Serija"
|
||||
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr "Serije"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
456
modules/stock_lot/locale/tr.po
Normal file
456
modules/stock_lot/locale/tr.po
Normal file
@@ -0,0 +1,456 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr "Production"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Customer"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Lost and Found"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Storage"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Supplier"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "Customer"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "Lost and Found"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "Production"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "Storage"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "Supplier"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr "Lot"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr "Lots"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
421
modules/stock_lot/locale/uk.po
Normal file
421
modules/stock_lot/locale/uk.po
Normal file
@@ -0,0 +1,421 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr ""
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr ""
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
436
modules/stock_lot/locale/zh_CN.po
Normal file
436
modules/stock_lot/locale/zh_CN.po
Normal file
@@ -0,0 +1,436 @@
|
||||
#
|
||||
msgid ""
|
||||
msgstr "Content-Type: text/plain; charset=utf-8\n"
|
||||
|
||||
msgctxt "field:product.configuration,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr "默认批次序列"
|
||||
|
||||
msgctxt ""
|
||||
"field:product.configuration.default_lot_sequence,default_lot_sequence:"
|
||||
msgid "Default Lot Sequence"
|
||||
msgstr "默认批次序列"
|
||||
|
||||
msgctxt "field:product.product,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "需要批次"
|
||||
|
||||
msgctxt "field:product.product,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "批次序列"
|
||||
|
||||
msgctxt "field:product.template,lot_required:"
|
||||
msgid "Lot Required"
|
||||
msgstr "需要批次"
|
||||
|
||||
msgctxt "field:product.template,lot_sequence:"
|
||||
msgid "Lot Sequence"
|
||||
msgstr "批次序列"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.inventory.count.quantity,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "批次"
|
||||
|
||||
msgctxt "field:stock.inventory.line,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "批次"
|
||||
|
||||
msgctxt "field:stock.lot,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr "默认计量单位"
|
||||
|
||||
msgctxt "field:stock.lot,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "预期数量"
|
||||
|
||||
msgctxt "field:stock.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr "具有序列"
|
||||
|
||||
msgctxt "field:stock.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "批次号"
|
||||
|
||||
msgctxt "field:stock.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "产品"
|
||||
|
||||
msgctxt "field:stock.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "数量"
|
||||
|
||||
msgctxt "field:stock.lot.trace,company:"
|
||||
msgid "Company"
|
||||
msgstr "公司"
|
||||
|
||||
msgctxt "field:stock.lot.trace,date:"
|
||||
msgid "Date"
|
||||
msgstr "日期"
|
||||
|
||||
msgctxt "field:stock.lot.trace,document:"
|
||||
msgid "Document"
|
||||
msgstr "文档"
|
||||
|
||||
msgctxt "field:stock.lot.trace,downward_traces:"
|
||||
msgid "Downward Traces"
|
||||
msgstr "向下追踪"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,from_location:"
|
||||
msgid "From Location"
|
||||
msgstr "库位"
|
||||
|
||||
msgctxt "field:stock.lot.trace,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "批次"
|
||||
|
||||
msgctxt "field:stock.lot.trace,product:"
|
||||
msgid "Product"
|
||||
msgstr "产品"
|
||||
|
||||
msgctxt "field:stock.lot.trace,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "数量"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "field:stock.lot.trace,to_location:"
|
||||
msgid "To Location"
|
||||
msgstr "库位"
|
||||
|
||||
msgctxt "field:stock.lot.trace,unit:"
|
||||
msgid "Unit"
|
||||
msgstr "单位"
|
||||
|
||||
msgctxt "field:stock.lot.trace,upward_traces:"
|
||||
msgid "Upward Traces"
|
||||
msgstr "向上追踪"
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,forecast_date:"
|
||||
msgid "At Date"
|
||||
msgstr "日期"
|
||||
|
||||
msgctxt "field:stock.lots_by_location.context,stock_date_end:"
|
||||
msgid "At Date"
|
||||
msgstr "日期"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,default_uom:"
|
||||
msgid "Default UoM"
|
||||
msgstr "默认计量单位"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,forecast_quantity:"
|
||||
msgid "Forecast Quantity"
|
||||
msgstr "预期数量"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "批次"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,product:"
|
||||
msgid "Product"
|
||||
msgstr "产品"
|
||||
|
||||
msgctxt "field:stock.lots_by_locations,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "数量"
|
||||
|
||||
msgctxt "field:stock.move,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "批次"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "Duplicate Lot Number"
|
||||
msgstr "重复批次号"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,lots:"
|
||||
msgid "Lots"
|
||||
msgstr "批次"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,product:"
|
||||
msgid "Product"
|
||||
msgstr "产品"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "数量"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,quantity_remaining:"
|
||||
msgid "Quantity Remaining"
|
||||
msgstr "剩余数量"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start,unit:"
|
||||
msgid "Unit"
|
||||
msgstr "单位"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,has_sequence:"
|
||||
msgid "Has Sequence"
|
||||
msgstr "具有序列"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,number:"
|
||||
msgid "Number"
|
||||
msgstr "批次号"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,parent:"
|
||||
msgid "Parent"
|
||||
msgstr "上级"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "产品"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity:"
|
||||
msgid "Quantity"
|
||||
msgstr "数量"
|
||||
|
||||
msgctxt "field:stock.move.add.lots.start.lot,quantity_unit:"
|
||||
msgid "Unit"
|
||||
msgstr "单位"
|
||||
|
||||
msgctxt "field:stock.period,lot_caches:"
|
||||
msgid "Lot Caches"
|
||||
msgstr "批次缓存"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,internal_quantity:"
|
||||
msgid "Internal Quantity"
|
||||
msgstr "内部数量"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,location:"
|
||||
msgid "Location"
|
||||
msgstr "库位"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,lot:"
|
||||
msgid "Lot"
|
||||
msgstr "批次"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,period:"
|
||||
msgid "Period"
|
||||
msgstr "周期"
|
||||
|
||||
msgctxt "field:stock.period.cache.lot,product:"
|
||||
msgid "Product"
|
||||
msgstr "产品"
|
||||
|
||||
msgctxt "help:product.product,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "批次需要的库位类型。"
|
||||
|
||||
msgctxt "help:product.product,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr "序列号,用于自动生成数字批次号。"
|
||||
|
||||
msgctxt "help:product.template,lot_required:"
|
||||
msgid "The type of location for which lot is required."
|
||||
msgstr "批次需要的库位类型。"
|
||||
|
||||
msgctxt "help:product.template,lot_sequence:"
|
||||
msgid "The sequence used to automatically number lots."
|
||||
msgstr "序列号,用于自动生成数字批次号。"
|
||||
|
||||
msgctxt "help:stock.lot,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr "默认计量单位。"
|
||||
|
||||
msgctxt "help:stock.lots_by_location.context,forecast_date:"
|
||||
msgid ""
|
||||
"Allow to compute expected stock quantities for this date.\n"
|
||||
"* An empty value is an infinite date in the future.\n"
|
||||
"* A date in the past will provide historical values."
|
||||
msgstr ""
|
||||
"允许计算当前日期对应的预期库存数量。\n"
|
||||
"* 空值是未来的无限日期。\n"
|
||||
"* 过去的日期将提供历史值。"
|
||||
|
||||
msgctxt "help:stock.lots_by_locations,default_uom:"
|
||||
msgid "The default Unit of Measure."
|
||||
msgstr "默认计量单位。"
|
||||
|
||||
msgctxt "help:stock.move.add.lots.start,duplicate_lot_number:"
|
||||
msgid "The number of times the lot must be duplicated."
|
||||
msgstr "批次需要复制的次数。"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_list"
|
||||
msgid "Stock Locations List"
|
||||
msgstr "库位明细数量"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_location_quantity_tree"
|
||||
msgid "Stock Locations Tree"
|
||||
msgstr "库位树数量"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "批次"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_form_product_relate"
|
||||
msgid "Lots"
|
||||
msgstr "批次"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_downward_relate"
|
||||
msgid "Downward Traces"
|
||||
msgstr "向下追踪"
|
||||
|
||||
msgctxt "model:ir.action,name:act_lot_trace_upward_relate"
|
||||
msgid "Upward Traces"
|
||||
msgstr "向上追踪"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:ir.action,name:act_lots_by_locations_relate"
|
||||
msgid "Lots"
|
||||
msgstr "批次"
|
||||
|
||||
msgctxt "model:ir.action,name:wizard_move_add_lots"
|
||||
msgid "Add Lots"
|
||||
msgstr "增加批次"
|
||||
|
||||
msgctxt "model:ir.message,text:msg_change_product"
|
||||
msgid "You cannot change the product of a stock lot which has stock moves."
|
||||
msgstr "如果一个库存批次包含库存移动,那么这个批次对应的产品无法更改。"
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_lot_required"
|
||||
msgid "To move product \"%(product)s\" you must provide a stock lot."
|
||||
msgstr "移动产品 \"%(product)s\" 之前须提供一个库存批次。"
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_move_add_lot_quantity"
|
||||
msgid ""
|
||||
"The total quantity \"%(lot_quantity)s\" of the lots must be less than or "
|
||||
"equal to the quantity \"%(move_quantity)s\" of the move."
|
||||
msgstr "批次的总数量 \"%(lot_quantity)s\" 必须小于或等于移动的数量 \"%(move_quantity)s\"。"
|
||||
|
||||
#, python-format
|
||||
msgctxt "model:ir.message,text:msg_only_lot"
|
||||
msgid "You must select a stock lot instead of a product for \"%(product)s\"."
|
||||
msgstr "必须为 \"%(product)s\" 选择库存批次而不是产品。"
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_downward_traces_button"
|
||||
msgid "Downward Traces"
|
||||
msgstr "向下追踪"
|
||||
|
||||
msgctxt "model:ir.model.button,string:lot_upward_traces_button"
|
||||
msgid "Upward Traces"
|
||||
msgstr "向上追踪"
|
||||
|
||||
msgctxt ""
|
||||
"model:ir.model.button,string:move_add_lots_start_duplicate_lot_button"
|
||||
msgid "Duplicate Lot"
|
||||
msgstr "重复批次"
|
||||
|
||||
msgctxt "model:ir.model.button,string:move_add_lots_wizard_button"
|
||||
msgid "Add Lots"
|
||||
msgstr "增加批次"
|
||||
|
||||
msgctxt "model:ir.rule.group,name:rule_group_lot_trace_companies"
|
||||
msgid "User in companies"
|
||||
msgstr "公司中的用户"
|
||||
|
||||
msgctxt "model:ir.sequence.type,name:sequence_type_stock_lot"
|
||||
msgid "Stock Lot"
|
||||
msgstr "库存批次"
|
||||
|
||||
msgctxt "model:ir.ui.menu,name:menu_lot_form"
|
||||
msgid "Lots"
|
||||
msgstr "批次"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:product.configuration.default_lot_sequence,string:"
|
||||
msgid "Product Configuration Default Lot Sequence"
|
||||
msgstr "产品设置-默认批次序列"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot,string:"
|
||||
msgid "Stock Lot"
|
||||
msgstr "库存批次"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lot.trace,string:"
|
||||
msgid "Stock Lot Trace"
|
||||
msgstr "库存批次"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_location.context,string:"
|
||||
msgid "Stock Lots By Location Context"
|
||||
msgstr "库位明细数量"
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.lots_by_locations,string:"
|
||||
msgid "Stock Lots By Locations"
|
||||
msgstr "按库位划分的批次"
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start,string:"
|
||||
msgid "Stock Move Add Lots Start"
|
||||
msgstr ""
|
||||
|
||||
msgctxt "model:stock.move.add.lots.start.lot,string:"
|
||||
msgid "Stock Move Add Lots Start Lot"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgctxt "model:stock.period.cache.lot,string:"
|
||||
msgid "Stock Period Cache Lot"
|
||||
msgstr "每个批次的库存期缓存"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "客户"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "失物招领区"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "产品"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "存储区"
|
||||
|
||||
msgctxt "selection:product.product,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "供应商"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Customer"
|
||||
msgstr "客户"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Lost and Found"
|
||||
msgstr "失物招领区"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Production"
|
||||
msgstr "产品"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Storage"
|
||||
msgstr "存储区"
|
||||
|
||||
msgctxt "selection:product.template,lot_required:"
|
||||
msgid "Supplier"
|
||||
msgstr "供应商"
|
||||
|
||||
msgctxt "selection:stock.inventory.count.search,search:"
|
||||
msgid "Lot"
|
||||
msgstr "批次"
|
||||
|
||||
msgctxt "view:product.template:"
|
||||
msgid "Lots"
|
||||
msgstr "批次"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "Remaining:"
|
||||
msgstr "剩余:"
|
||||
|
||||
msgctxt "view:stock.move.add.lots.start:"
|
||||
msgid "times"
|
||||
msgstr "次"
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,add:"
|
||||
msgid "Add"
|
||||
msgstr "增加"
|
||||
|
||||
msgctxt "wizard_button:stock.move.add.lots,start,end:"
|
||||
msgid "Cancel"
|
||||
msgstr "取消"
|
||||
19
modules/stock_lot/message.xml
Normal file
19
modules/stock_lot/message.xml
Normal file
@@ -0,0 +1,19 @@
|
||||
<?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 grouped="1">
|
||||
<record model="ir.message" id="msg_change_product">
|
||||
<field name="text">You cannot change the product of a stock lot which has stock moves.</field>
|
||||
</record>
|
||||
<record model="ir.message" id="msg_lot_required">
|
||||
<field name="text">To move product "%(product)s" you must provide a stock lot.</field>
|
||||
</record>
|
||||
<record model="ir.message" id="msg_only_lot">
|
||||
<field name="text">You must select a stock lot instead of a product for "%(product)s".</field>
|
||||
</record>
|
||||
<record model="ir.message" id="msg_move_add_lot_quantity">
|
||||
<field name="text">The total quantity "%(lot_quantity)s" of the lots must be less than or equal to the quantity "%(move_quantity)s" of the move.</field>
|
||||
</record>
|
||||
</data>
|
||||
</tryton>
|
||||
83
modules/stock_lot/product.py
Normal file
83
modules/stock_lot/product.py
Normal file
@@ -0,0 +1,83 @@
|
||||
# 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 ModelSQL, ValueMixin, fields
|
||||
from trytond.pool import Pool, PoolMeta
|
||||
from trytond.pyson import Eval, Id
|
||||
|
||||
|
||||
class Configuration(metaclass=PoolMeta):
|
||||
__name__ = 'product.configuration'
|
||||
|
||||
default_lot_sequence = fields.MultiValue(
|
||||
fields.Many2One(
|
||||
'ir.sequence', "Default Lot Sequence",
|
||||
domain=[
|
||||
('sequence_type', '=',
|
||||
Id('stock_lot', 'sequence_type_stock_lot')),
|
||||
('company', '=', None),
|
||||
]))
|
||||
|
||||
|
||||
class ConfigurationDefaultLotSequence(ModelSQL, ValueMixin):
|
||||
__name__ = 'product.configuration.default_lot_sequence'
|
||||
default_lot_sequence = fields.Many2One(
|
||||
'ir.sequence', "Default Lot Sequence",
|
||||
domain=[
|
||||
('sequence_type', '=',
|
||||
Id('stock_lot', 'sequence_type_stock_lot')),
|
||||
('company', '=', None),
|
||||
])
|
||||
|
||||
|
||||
class Template(metaclass=PoolMeta):
|
||||
__name__ = 'product.template'
|
||||
|
||||
lot_required = fields.MultiSelection([
|
||||
('supplier', "Supplier"),
|
||||
('customer', "Customer"),
|
||||
('lost_found', "Lost and Found"),
|
||||
('storage', "Storage"),
|
||||
('production', "Production"),
|
||||
], "Lot Required",
|
||||
help='The type of location for which lot is required.',
|
||||
states={
|
||||
'invisible': ~Eval('type').in_(['goods', 'assets']),
|
||||
})
|
||||
lot_sequence = fields.Many2One(
|
||||
'ir.sequence', "Lot Sequence",
|
||||
domain=[
|
||||
('sequence_type', '=', Id('stock_lot', 'sequence_type_stock_lot')),
|
||||
('company', '=', None),
|
||||
],
|
||||
states={
|
||||
'invisible': ~Eval('type').in_(['goods', 'assets']),
|
||||
},
|
||||
help="The sequence used to automatically number lots.")
|
||||
|
||||
@classmethod
|
||||
def default_lot_sequence(cls, **pattern):
|
||||
pool = Pool()
|
||||
Configuration = pool.get('product.configuration')
|
||||
sequence = Configuration(1).get_multivalue(
|
||||
'default_lot_sequence', **pattern)
|
||||
return sequence.id if sequence else None
|
||||
|
||||
|
||||
class Product(metaclass=PoolMeta):
|
||||
__name__ = 'product.product'
|
||||
|
||||
def lot_is_required(self, from_, to):
|
||||
'Is product lot required for move with "from_" and "to" location ?'
|
||||
return any(l.type in (self.lot_required or []) for l in [from_, to])
|
||||
|
||||
def create_lot(self):
|
||||
pool = Pool()
|
||||
Lot = pool.get('stock.lot')
|
||||
if self.lot_sequence:
|
||||
lot = Lot(product=self)
|
||||
try:
|
||||
lot.on_change_product()
|
||||
except AttributeError:
|
||||
pass
|
||||
return lot
|
||||
18
modules/stock_lot/product.xml
Normal file
18
modules/stock_lot/product.xml
Normal file
@@ -0,0 +1,18 @@
|
||||
<?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="product_configuration_view_form">
|
||||
<field name="model">product.configuration</field>
|
||||
<field name="inherit" ref="product.product_configuration_view_form"/>
|
||||
<field name="name">product_configuration_form</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="template_view_form">
|
||||
<field name="model">product.template</field>
|
||||
<field name="inherit" ref="product.template_view_form"/>
|
||||
<field name="name">template_form</field>
|
||||
</record>
|
||||
</data>
|
||||
</tryton>
|
||||
928
modules/stock_lot/stock.py
Normal file
928
modules/stock_lot/stock.py
Normal file
@@ -0,0 +1,928 @@
|
||||
# This file is part of Tryton. The COPYRIGHT file at the top level of
|
||||
# this repository contains the full copyright notices and license terms.
|
||||
import datetime
|
||||
from collections import defaultdict
|
||||
from copy import copy
|
||||
|
||||
from sql import Cast, Column, Null
|
||||
from sql.conditionals import Case
|
||||
from sql.functions import CharLength
|
||||
from sql.operators import Concat
|
||||
|
||||
from trytond.i18n import gettext
|
||||
from trytond.model import (
|
||||
DeactivableMixin, Index, Model, ModelSQL, ModelView, fields)
|
||||
from trytond.model.exceptions import (
|
||||
AccessError, RequiredValidationError, ValidationError)
|
||||
from trytond.modules.stock import StockMixin
|
||||
from trytond.modules.stock.exceptions import ShipmentCheckQuantityWarning
|
||||
from trytond.pool import Pool, PoolMeta
|
||||
from trytond.pyson import Bool, Eval, If, Len
|
||||
from trytond.tools import grouped_slice
|
||||
from trytond.transaction import Transaction
|
||||
from trytond.wizard import Button, StateTransition, StateView, Wizard
|
||||
|
||||
|
||||
class LotMixin:
|
||||
__slots__ = ()
|
||||
number = fields.Char(
|
||||
"Number", required=True,
|
||||
states={
|
||||
'required': ~Eval('has_sequence') | (Eval('id', -1) >= 0),
|
||||
})
|
||||
product = fields.Many2One('product.product', 'Product', required=True)
|
||||
has_sequence = fields.Function(
|
||||
fields.Boolean("Has Sequence"), 'on_change_with_has_sequence')
|
||||
|
||||
@classmethod
|
||||
def __setup__(cls):
|
||||
cls.number.search_unaccented = False
|
||||
super().__setup__()
|
||||
|
||||
@fields.depends('product')
|
||||
def on_change_with_has_sequence(self, name=None):
|
||||
if self.product:
|
||||
return bool(self.product.lot_sequence)
|
||||
|
||||
|
||||
class Lot(DeactivableMixin, ModelSQL, ModelView, LotMixin, StockMixin):
|
||||
__name__ = 'stock.lot'
|
||||
_rec_name = 'number'
|
||||
|
||||
quantity = fields.Function(
|
||||
fields.Float("Quantity", digits='default_uom'),
|
||||
'get_quantity', searcher='search_quantity')
|
||||
forecast_quantity = fields.Function(
|
||||
fields.Float("Forecast Quantity", digits='default_uom'),
|
||||
'get_quantity', searcher='search_quantity')
|
||||
default_uom = fields.Function(
|
||||
fields.Many2One(
|
||||
'product.uom', "Default UoM",
|
||||
help="The default Unit of Measure."),
|
||||
'on_change_with_default_uom', searcher='search_default_uom')
|
||||
|
||||
@classmethod
|
||||
def __setup__(cls):
|
||||
super().__setup__()
|
||||
cls._modify_no_move = [
|
||||
('product', None, 'stock_lot.msg_change_product'),
|
||||
]
|
||||
cls._buttons.update({
|
||||
'upward_traces': {},
|
||||
'downward_traces': {},
|
||||
})
|
||||
|
||||
@classmethod
|
||||
def order_number(cls, tables):
|
||||
table, _ = tables[None]
|
||||
return [CharLength(table.number), table.number]
|
||||
|
||||
@classmethod
|
||||
def get_quantity(cls, lots, name):
|
||||
location_ids = Transaction().context.get('locations')
|
||||
product_ids = list(set(l.product.id for l in lots))
|
||||
quantities = {}
|
||||
for product_ids in grouped_slice(product_ids):
|
||||
quantities.update(cls._get_quantity(lots, name, location_ids,
|
||||
grouping=('product', 'lot',),
|
||||
grouping_filter=(list(product_ids),)))
|
||||
return quantities
|
||||
|
||||
@classmethod
|
||||
def search_quantity(cls, name, domain=None):
|
||||
location_ids = Transaction().context.get('locations')
|
||||
return cls._search_quantity(name, location_ids, domain,
|
||||
grouping=('product', 'lot'))
|
||||
|
||||
@fields.depends('product')
|
||||
def on_change_with_default_uom(self, name=None):
|
||||
return self.product.default_uom if self.product else None
|
||||
|
||||
@classmethod
|
||||
def search_default_uom(cls, name, clause):
|
||||
nested = clause[0][len(name):]
|
||||
return [('product.' + name + nested, *clause[1:])]
|
||||
|
||||
@classmethod
|
||||
def copy(cls, lots, default=None):
|
||||
default = default.copy() if default else {}
|
||||
has_sequence = {l.id: l.has_sequence for l in lots}
|
||||
default.setdefault(
|
||||
'number', lambda o: None if has_sequence[o['id']] else o['number'])
|
||||
return super().copy(lots, default=default)
|
||||
|
||||
@classmethod
|
||||
def preprocess_values(cls, mode, values):
|
||||
pool = Pool()
|
||||
Product = pool.get('product.product')
|
||||
values = super().preprocess_values(mode, values)
|
||||
if mode == 'create' and not values.get('number'):
|
||||
product_id = values.get('product')
|
||||
if product_id is not None:
|
||||
product = Product(product_id)
|
||||
if product.lot_sequence:
|
||||
values['number'] = product.lot_sequence.get()
|
||||
return values
|
||||
|
||||
@classmethod
|
||||
def check_modification(cls, mode, lots, values=None, external=False):
|
||||
pool = Pool()
|
||||
Move = pool.get('stock.move')
|
||||
transaction = Transaction()
|
||||
|
||||
def find_moves(cls, state=None):
|
||||
for sub_records in grouped_slice(lots):
|
||||
domain = [
|
||||
('lot', 'in', [r.id for r in sub_records])
|
||||
]
|
||||
if state:
|
||||
domain.append(('state', '=', state))
|
||||
moves = Move.search(domain, limit=1, order=[])
|
||||
if moves:
|
||||
return True
|
||||
return False
|
||||
|
||||
super().check_modification(
|
||||
mode, lots, values=values, external=external)
|
||||
if mode == 'write':
|
||||
if transaction.user and transaction.check_access:
|
||||
for field, state, error in cls._modify_no_move:
|
||||
if field in values:
|
||||
if find_moves(state):
|
||||
raise AccessError(gettext(error))
|
||||
# No moves
|
||||
break
|
||||
|
||||
@classmethod
|
||||
@ModelView.button_action('stock_lot.act_lot_trace_upward_relate')
|
||||
def upward_traces(cls, lots):
|
||||
pass
|
||||
|
||||
@classmethod
|
||||
@ModelView.button_action('stock_lot.act_lot_trace_downward_relate')
|
||||
def downward_traces(cls, lots):
|
||||
pass
|
||||
|
||||
|
||||
class LotTrace(ModelSQL, ModelView):
|
||||
__name__ = 'stock.lot.trace'
|
||||
product = fields.Many2One(
|
||||
'product.product', "Product",
|
||||
context={
|
||||
'company': Eval('company', -1),
|
||||
},
|
||||
depends=['company'])
|
||||
lot = fields.Many2One('stock.lot', "Lot")
|
||||
|
||||
from_location = fields.Many2One('stock.location', "From Location")
|
||||
to_location = fields.Many2One('stock.location', "To Location")
|
||||
|
||||
quantity = fields.Float("Quantity", digits='unit')
|
||||
unit = fields.Many2One('product.uom', "Unit")
|
||||
|
||||
company = fields.Many2One('company.company', "Company")
|
||||
date = fields.Date("Date")
|
||||
document = fields.Reference("Document", 'get_documents')
|
||||
|
||||
upward_traces = fields.Function(
|
||||
fields.Many2Many(
|
||||
'stock.lot.trace', None, None, "Upward Traces"),
|
||||
'get_upward_traces')
|
||||
downward_traces = fields.Function(
|
||||
fields.Many2Many(
|
||||
'stock.lot.trace', None, None, "Downward Traces"),
|
||||
'get_downward_traces')
|
||||
|
||||
@classmethod
|
||||
def __setup__(cls):
|
||||
super().__setup__()
|
||||
cls._order.insert(0, ('date', None))
|
||||
|
||||
@classmethod
|
||||
def table_query(cls):
|
||||
from_item, tables = cls._joins()
|
||||
query = from_item.select(
|
||||
*cls._columns(tables),
|
||||
where=cls._where(tables))
|
||||
return query
|
||||
|
||||
@classmethod
|
||||
def _joins(cls):
|
||||
pool = Pool()
|
||||
Move = pool.get('stock.move')
|
||||
InventoryLine = pool.get('stock.inventory.line')
|
||||
|
||||
move = Move.__table__()
|
||||
inventory_line = InventoryLine.__table__()
|
||||
tables = {}
|
||||
tables['move'] = move
|
||||
tables['inventory_line'] = inventory_line
|
||||
|
||||
inventory_line_id = Move.origin.sql_id(move.origin, Move)
|
||||
from_item = (move.join(inventory_line, type_='LEFT',
|
||||
condition=(move.origin.like(InventoryLine.__name__ + '%')
|
||||
& (inventory_line.id == inventory_line_id))))
|
||||
return from_item, tables
|
||||
|
||||
@classmethod
|
||||
def _where(cls, tables):
|
||||
move = tables['move']
|
||||
return (move.lot != Null) & (move.state == 'done')
|
||||
|
||||
@classmethod
|
||||
def _columns(cls, tables):
|
||||
move = tables['move']
|
||||
return [
|
||||
move.id.as_('id'),
|
||||
move.product.as_('product'),
|
||||
move.lot.as_('lot'),
|
||||
move.from_location.as_('from_location'),
|
||||
move.to_location.as_('to_location'),
|
||||
move.quantity.as_('quantity'),
|
||||
move.unit.as_('unit'),
|
||||
move.company.as_('company'),
|
||||
move.effective_date.as_('date'),
|
||||
cls.get_document(tables).as_('document'),
|
||||
]
|
||||
|
||||
def get_rec_name(self, name):
|
||||
return self.document.rec_name if self.document else str(self.id)
|
||||
|
||||
@classmethod
|
||||
def get_documents(cls):
|
||||
pool = Pool()
|
||||
Model = pool.get('ir.model')
|
||||
Move = pool.get('stock.move')
|
||||
return Move.get_shipment() + [
|
||||
('stock.inventory', Model.get_name('stock.inventory'))]
|
||||
|
||||
@classmethod
|
||||
def get_document(cls, tables):
|
||||
move = tables['move']
|
||||
inventory_line = tables['inventory_line']
|
||||
sql_type = cls.document.sql_type().base
|
||||
return Case(
|
||||
((inventory_line.id != Null),
|
||||
Concat('stock.inventory,',
|
||||
Cast(inventory_line.inventory, sql_type))),
|
||||
else_=move.shipment)
|
||||
|
||||
@classmethod
|
||||
def _is_trace_move(cls, move):
|
||||
return move.state == 'done' and move.lot
|
||||
|
||||
@classmethod
|
||||
def _trace_move_order_key(cls, move):
|
||||
return (move.effective_date, move.id)
|
||||
|
||||
def get_upward_traces(self, name):
|
||||
return list(map(int, sorted(filter(
|
||||
self._is_trace_move, self._get_upward_traces()),
|
||||
key=self._trace_move_order_key)))
|
||||
|
||||
def _get_upward_traces(self):
|
||||
pool = Pool()
|
||||
Move = pool.get('stock.move')
|
||||
return set(Move.search([
|
||||
('lot', '=', self.lot.id),
|
||||
('from_location', '=', self.to_location),
|
||||
('effective_date', '>=', self.date),
|
||||
]))
|
||||
|
||||
def get_downward_traces(self, name):
|
||||
return list(map(int, sorted(filter(
|
||||
self._is_trace_move, self._get_downward_traces()),
|
||||
key=self._trace_move_order_key, reverse=True)))
|
||||
|
||||
def _get_downward_traces(self):
|
||||
pool = Pool()
|
||||
Move = pool.get('stock.move')
|
||||
return set(Move.search([
|
||||
('lot', '=', self.lot.id),
|
||||
('to_location', '=', self.from_location),
|
||||
('effective_date', '<=', self.date),
|
||||
]))
|
||||
|
||||
|
||||
class LotByLocationContext(ModelView):
|
||||
__name__ = 'stock.lots_by_location.context'
|
||||
forecast_date = fields.Date(
|
||||
'At Date', help=('Allow to compute expected '
|
||||
'stock quantities for this date.\n'
|
||||
'* An empty value is an infinite date in the future.\n'
|
||||
'* A date in the past will provide historical values.'))
|
||||
stock_date_end = fields.Function(fields.Date('At Date'),
|
||||
'on_change_with_stock_date_end')
|
||||
|
||||
@staticmethod
|
||||
def default_forecast_date():
|
||||
Date = Pool().get('ir.date')
|
||||
return Date.today()
|
||||
|
||||
@fields.depends('forecast_date')
|
||||
def on_change_with_stock_date_end(self, name=None):
|
||||
if self.forecast_date is None:
|
||||
return datetime.date.max
|
||||
return self.forecast_date
|
||||
|
||||
|
||||
class LotsByLocations(ModelSQL, ModelView):
|
||||
__name__ = 'stock.lots_by_locations'
|
||||
|
||||
lot = fields.Many2One('stock.lot', "Lot")
|
||||
product = fields.Many2One('product.product', "Product")
|
||||
quantity = fields.Function(
|
||||
fields.Float("Quantity", digits='default_uom'),
|
||||
'get_lot', searcher='search_lot')
|
||||
forecast_quantity = fields.Function(
|
||||
fields.Float("Forecast Quantity", digits='default_uom'),
|
||||
'get_lot', searcher='search_lot')
|
||||
default_uom = fields.Function(
|
||||
fields.Many2One(
|
||||
'product.uom', "Default UoM",
|
||||
help="The default Unit of Measure."),
|
||||
'get_lot', searcher='search_lot')
|
||||
|
||||
@classmethod
|
||||
def __setup__(cls):
|
||||
super().__setup__()
|
||||
cls._order.insert(0, ('lot', 'ASC'))
|
||||
cls._order.insert(1, ('product', 'ASC'))
|
||||
|
||||
@classmethod
|
||||
def table_query(cls):
|
||||
pool = Pool()
|
||||
Lot = pool.get('stock.lot')
|
||||
lot = Lot.__table__()
|
||||
columns = []
|
||||
for fname, field in cls._fields.items():
|
||||
if not hasattr(field, 'set'):
|
||||
if (isinstance(field, fields.Many2One)
|
||||
and field.get_target() == Lot):
|
||||
column = Column(lot, 'id')
|
||||
else:
|
||||
column = Column(lot, fname)
|
||||
columns.append(column.as_(fname))
|
||||
return lot.select(*columns)
|
||||
|
||||
def get_rec_name(self, name):
|
||||
return self.lot.rec_name
|
||||
|
||||
@classmethod
|
||||
def search_rec_name(cls, name, clause):
|
||||
return [('lot.rec_name',) + tuple(clause[1:])]
|
||||
|
||||
def get_lot(self, name):
|
||||
value = getattr(self.lot, name)
|
||||
if isinstance(value, Model):
|
||||
value = value.id
|
||||
return value
|
||||
|
||||
@classmethod
|
||||
def search_lot(cls, name, clause):
|
||||
nested = clause[0][len(name):]
|
||||
return [('lot.' + name + nested, *clause[1:])]
|
||||
|
||||
|
||||
class Location(metaclass=PoolMeta):
|
||||
__name__ = 'stock.location'
|
||||
|
||||
@classmethod
|
||||
def _get_quantity_grouping(cls):
|
||||
pool = Pool()
|
||||
Lot = pool.get('stock.lot')
|
||||
context = Transaction().context
|
||||
grouping, grouping_filter, key = super()._get_quantity_grouping()
|
||||
if context.get('lot') is not None:
|
||||
try:
|
||||
lot, = Lot.search([('id', '=', context['lot'])])
|
||||
except ValueError:
|
||||
pass
|
||||
else:
|
||||
grouping = ('product', 'lot',)
|
||||
grouping_filter = ([lot.product.id], [lot.id])
|
||||
key = (lot.product.id, lot.id)
|
||||
return grouping, grouping_filter, key
|
||||
|
||||
|
||||
class Move(metaclass=PoolMeta):
|
||||
__name__ = 'stock.move'
|
||||
lot = fields.Many2One(
|
||||
'stock.lot', "Lot", ondelete='RESTRICT',
|
||||
domain=[
|
||||
('product', '=', Eval('product', -1)),
|
||||
],
|
||||
states={
|
||||
'readonly': Eval('state').in_(['cancelled', 'done']),
|
||||
},
|
||||
search_context={
|
||||
'locations': If(Eval('from_location'),
|
||||
[Eval('from_location', -1)], []),
|
||||
'stock_date_end': (
|
||||
If(Eval('effective_date'),
|
||||
Eval('effective_date', None),
|
||||
Eval('planned_date', None))),
|
||||
})
|
||||
|
||||
@classmethod
|
||||
def __setup__(cls):
|
||||
super().__setup__()
|
||||
cls._deny_modify_done_cancel.add('lot')
|
||||
cls._buttons.update({
|
||||
'add_lots_wizard': {
|
||||
'invisible': ~Eval('state').in_(['draft', 'assigned']),
|
||||
'readonly': Bool(Eval('lot')),
|
||||
'depends': ['lot', 'state'],
|
||||
},
|
||||
})
|
||||
|
||||
@classmethod
|
||||
@ModelView.button_action('stock_lot.wizard_move_add_lots')
|
||||
def add_lots_wizard(cls, moves):
|
||||
pass
|
||||
|
||||
def add_lot(self):
|
||||
if not self.lot and self.product:
|
||||
lot = self.product.create_lot()
|
||||
if lot:
|
||||
self.lot = lot
|
||||
|
||||
def check_lot(self):
|
||||
"Check if lot is required"
|
||||
if (self.internal_quantity
|
||||
and not self.lot
|
||||
and self.product.lot_is_required(
|
||||
self.from_location, self.to_location)):
|
||||
raise RequiredValidationError(
|
||||
gettext('stock_lot.msg_lot_required',
|
||||
product=self.product.rec_name))
|
||||
|
||||
@classmethod
|
||||
@ModelView.button
|
||||
def do(cls, moves):
|
||||
super().do(moves)
|
||||
for move in moves:
|
||||
move.check_lot()
|
||||
|
||||
@classmethod
|
||||
def assign_try(
|
||||
cls, moves, with_childs=True, grouping=('product',), pblc=None):
|
||||
if 'lot' not in grouping:
|
||||
moves_with_lot, moves_without_lot = [], []
|
||||
for move in moves:
|
||||
if move.lot:
|
||||
moves_with_lot.append(move)
|
||||
else:
|
||||
moves_without_lot.append(move)
|
||||
success = super().assign_try(
|
||||
moves_with_lot, with_childs=with_childs,
|
||||
grouping=grouping + ('lot',), pblc=pblc)
|
||||
success &= super().assign_try(
|
||||
moves_without_lot, with_childs=with_childs,
|
||||
grouping=grouping, pblc=pblc)
|
||||
else:
|
||||
success = super().assign_try(
|
||||
moves, with_childs=with_childs, grouping=grouping, pblc=pblc)
|
||||
return success
|
||||
|
||||
@fields.depends('product', 'lot')
|
||||
def on_change_product(self):
|
||||
try:
|
||||
super().on_change_product()
|
||||
except AttributeError:
|
||||
pass
|
||||
if self.lot and self.lot.product != self.product:
|
||||
self.lot = None
|
||||
|
||||
|
||||
class MoveAddLots(Wizard):
|
||||
__name__ = 'stock.move.add.lots'
|
||||
start = StateView('stock.move.add.lots.start',
|
||||
'stock_lot.move_add_lots_start_view_form', [
|
||||
Button("Cancel", 'end', 'tryton-cancel'),
|
||||
Button("Add", 'add', 'tryton-ok', default=True),
|
||||
])
|
||||
add = StateTransition()
|
||||
|
||||
def default_start(self, fields):
|
||||
default = {}
|
||||
if 'product' in fields:
|
||||
default['product'] = self.record.product.id
|
||||
if 'quantity' in fields:
|
||||
default['quantity'] = self.record.quantity
|
||||
if 'unit' in fields:
|
||||
default['unit'] = self.record.unit.id
|
||||
return default
|
||||
|
||||
def transition_add(self):
|
||||
pool = Pool()
|
||||
Lang = pool.get('ir.lang')
|
||||
Lot = pool.get('stock.lot')
|
||||
lang = Lang.get()
|
||||
quantity_remaining = self.start.on_change_with_quantity_remaining()
|
||||
if quantity_remaining < 0:
|
||||
digits = self.record.unit.digits
|
||||
move_quantity = self.record.quantity
|
||||
lot_quantity = self.record.quantity - quantity_remaining
|
||||
raise ValidationError(gettext(
|
||||
'stock_lot.msg_move_add_lot_quantity',
|
||||
lot_quantity=lang.format_number(lot_quantity, digits),
|
||||
move_quantity=lang.format_number(move_quantity, digits)))
|
||||
lots = []
|
||||
for line in self.start.lots:
|
||||
lot = line.get_lot(self.record)
|
||||
lots.append(lot)
|
||||
Lot.save(lots)
|
||||
if hasattr(self.model, 'split'):
|
||||
move = self.record
|
||||
for line, lot in zip(self.start.lots, lots):
|
||||
splits = move.split(line.quantity, self.record.unit, count=1)
|
||||
splits.remove(move)
|
||||
move.lot = lot
|
||||
move.save()
|
||||
if splits:
|
||||
move, = splits
|
||||
else:
|
||||
break
|
||||
else:
|
||||
if quantity_remaining:
|
||||
self.record.quantity = quantity_remaining
|
||||
self.record.save()
|
||||
for i, (line, lot) in enumerate(zip(self.start.lots, lots)):
|
||||
if not i and not quantity_remaining:
|
||||
self.record.quantity = line.quantity
|
||||
self.record.lot = lot
|
||||
self.record.save()
|
||||
else:
|
||||
with Transaction().set_context(_stock_move_split=True):
|
||||
self.model.copy([self.record], {
|
||||
'quantity': line.quantity,
|
||||
'lot': lot.id,
|
||||
})
|
||||
return 'end'
|
||||
|
||||
|
||||
class MoveAddLotsStart(ModelView):
|
||||
__name__ = 'stock.move.add.lots.start'
|
||||
|
||||
product = fields.Many2One('product.product', "Product", readonly=True)
|
||||
quantity = fields.Float("Quantity", digits='unit', readonly=True)
|
||||
unit = fields.Many2One('product.uom', "Unit", readonly=True)
|
||||
quantity_remaining = fields.Function(
|
||||
fields.Float("Quantity Remaining", digits='unit'),
|
||||
'on_change_with_quantity_remaining')
|
||||
|
||||
lots = fields.One2Many(
|
||||
'stock.move.add.lots.start.lot', 'parent', "Lots",
|
||||
domain=[
|
||||
('product', '=', Eval('product', -1)),
|
||||
],
|
||||
states={
|
||||
'readonly': ~Eval('quantity_remaining', 0),
|
||||
})
|
||||
|
||||
duplicate_lot_number = fields.Integer(
|
||||
"Duplicate Lot Number",
|
||||
states={
|
||||
'invisible': Len(Eval('lots')) != 1,
|
||||
},
|
||||
help="The number of times the lot must be duplicated.")
|
||||
|
||||
@classmethod
|
||||
def __setup__(cls):
|
||||
super().__setup__()
|
||||
cls._buttons.update(
|
||||
duplicate_lot={
|
||||
'invisible': Len(Eval('lots')) != 1,
|
||||
'readonly': (~Eval('duplicate_lot_number')
|
||||
| (Eval('duplicate_lot_number', 0) <= 0)),
|
||||
'depends': ['lots', 'duplicate_lot_number'],
|
||||
},
|
||||
)
|
||||
|
||||
@fields.depends('quantity', 'lots', 'unit')
|
||||
def on_change_with_quantity_remaining(self, name=None):
|
||||
if self.quantity is not None:
|
||||
quantity = self.quantity
|
||||
if self.lots:
|
||||
for lot in self.lots:
|
||||
quantity -= getattr(lot, 'quantity', 0) or 0
|
||||
if self.unit:
|
||||
quantity = self.unit.round(quantity)
|
||||
return quantity
|
||||
|
||||
@ModelView.button_change(
|
||||
'lots', 'duplicate_lot_number',
|
||||
methods=['on_change_with_quantity_remaining'])
|
||||
def duplicate_lot(self):
|
||||
lots = list(self.lots)
|
||||
if self.lots:
|
||||
template, = self.lots
|
||||
for i in range(self.duplicate_lot_number):
|
||||
lot = copy(template)
|
||||
lot._id = None
|
||||
lots.append(lot)
|
||||
self.lots = lots
|
||||
self.quantity_remaining = self.on_change_with_quantity_remaining()
|
||||
|
||||
|
||||
class MoveAddLotsStartLot(ModelView, LotMixin):
|
||||
__name__ = 'stock.move.add.lots.start.lot'
|
||||
|
||||
parent = fields.Many2One('stock.move.add.lots.start', "Parent")
|
||||
quantity = fields.Float("Quantity", digits='quantity_unit', required=True)
|
||||
quantity_unit = fields.Function(
|
||||
fields.Many2One('product.uom', "Unit"), 'on_change_with_quantity_unit')
|
||||
|
||||
@fields.depends(
|
||||
'parent', '_parent_parent.quantity_remaining')
|
||||
def on_change_parent(self):
|
||||
if (self.parent
|
||||
and self.parent.quantity_remaining is not None):
|
||||
self.quantity = self.parent.quantity_remaining
|
||||
|
||||
@fields.depends('parent', '_parent_parent.unit')
|
||||
def on_change_with_quantity_unit(self, name=None):
|
||||
if self.parent and self.parent.unit:
|
||||
return self.parent.unit.id
|
||||
|
||||
@fields.depends('number', 'product', methods=['_set_lot_values'])
|
||||
def on_change_number(self):
|
||||
pool = Pool()
|
||||
Lot = pool.get('stock.lot')
|
||||
if self.number and self.product:
|
||||
lots = Lot.search([
|
||||
('number', '=', self.number),
|
||||
('product', '=', self.product.id),
|
||||
])
|
||||
if len(lots) == 1:
|
||||
lot, = lots
|
||||
self._set_lot_values(lot)
|
||||
|
||||
def _set_lot_values(self, lot):
|
||||
pass
|
||||
|
||||
def get_lot(self, move):
|
||||
pool = Pool()
|
||||
Lot = pool.get('stock.lot')
|
||||
values = self._get_lot_values(move)
|
||||
lots = Lot.search(
|
||||
[(k, '=', v) for k, v in values.items()],
|
||||
limit=1)
|
||||
if lots:
|
||||
lot, = lots
|
||||
else:
|
||||
lot = Lot()
|
||||
for k, v in values.items():
|
||||
setattr(lot, k, v)
|
||||
return lot
|
||||
|
||||
def _get_lot_values(self, move):
|
||||
return {
|
||||
'number': self.number,
|
||||
'product': move.product,
|
||||
}
|
||||
|
||||
|
||||
class ShipmentCheckQuantity:
|
||||
"Check quantities per lot between source and target moves"
|
||||
__slots__ = ()
|
||||
|
||||
def check_quantity(self):
|
||||
pool = Pool()
|
||||
Warning = pool.get('res.user.warning')
|
||||
Lang = pool.get('ir.lang')
|
||||
lang = Lang.get()
|
||||
|
||||
super().check_quantity()
|
||||
|
||||
products_with_lot = set()
|
||||
source_qties = defaultdict(float)
|
||||
for move in self._check_quantity_source_moves:
|
||||
if move.lot:
|
||||
products_with_lot.add(move.product)
|
||||
source_qties[move.lot] += move.internal_quantity
|
||||
|
||||
target_qties = defaultdict(float)
|
||||
for move in self._check_quantity_target_moves:
|
||||
if move.lot:
|
||||
target_qties[move.lot] += move.internal_quantity
|
||||
|
||||
diffs = {}
|
||||
for lot, incoming_qty in target_qties.items():
|
||||
if (lot not in source_qties
|
||||
and lot.product not in products_with_lot):
|
||||
continue
|
||||
unit = lot.product.default_uom
|
||||
incoming_qty = unit.round(incoming_qty)
|
||||
inventory_qty = unit.round(source_qties.pop(lot, 0))
|
||||
diff = inventory_qty - incoming_qty
|
||||
if diff:
|
||||
diffs[lot] = diff
|
||||
|
||||
if diffs:
|
||||
warning_name = Warning.format(
|
||||
'check_quantity_lot', [self])
|
||||
if Warning.check(warning_name):
|
||||
quantities = []
|
||||
for lot, quantity in diffs.items():
|
||||
quantity = lang.format_number_symbol(
|
||||
quantity, lot.product.default_uom)
|
||||
quantities.append(f"{lot.rec_name}: {quantity}")
|
||||
raise ShipmentCheckQuantityWarning(warning_name,
|
||||
gettext(
|
||||
'stock.msg_shipment_check_quantity',
|
||||
shipment=self.rec_name,
|
||||
quantities=', '.join(quantities)))
|
||||
|
||||
|
||||
class ShipmentIn(ShipmentCheckQuantity, metaclass=PoolMeta):
|
||||
__name__ = 'stock.shipment.in'
|
||||
|
||||
def _get_inventory_move(self, incoming_move):
|
||||
move = super()._get_inventory_move(incoming_move)
|
||||
if move and incoming_move.lot:
|
||||
move.lot = incoming_move.lot
|
||||
return move
|
||||
|
||||
|
||||
class ShipmentOut(ShipmentCheckQuantity, metaclass=PoolMeta):
|
||||
__name__ = 'stock.shipment.out'
|
||||
|
||||
def _get_inventory_move(self, outgoing_move):
|
||||
move = super()._get_inventory_move(outgoing_move)
|
||||
if move and outgoing_move.lot:
|
||||
move.lot = outgoing_move.lot
|
||||
return move
|
||||
|
||||
def _sync_move_key(self, move):
|
||||
return super()._sync_move_key(move) + (('lot', move.lot),)
|
||||
|
||||
|
||||
class ShipmentOutReturn(ShipmentCheckQuantity, metaclass=PoolMeta):
|
||||
__name__ = 'stock.shipment.out.return'
|
||||
|
||||
def _get_inventory_move(self, incoming_move):
|
||||
move = super()._get_inventory_move(incoming_move)
|
||||
if move and incoming_move.lot:
|
||||
move.lot = incoming_move.lot
|
||||
return move
|
||||
|
||||
|
||||
class ShipmentInternal(ShipmentCheckQuantity, metaclass=PoolMeta):
|
||||
__name__ = 'stock.shipment.internal'
|
||||
|
||||
def _sync_move_key(self, move):
|
||||
return super()._sync_move_key(move) + (('lot', move.lot),)
|
||||
|
||||
|
||||
class ShipmentDrop(ShipmentCheckQuantity, metaclass=PoolMeta):
|
||||
__name__ = 'stock.shipment.drop'
|
||||
|
||||
def _sync_move_key(self, move):
|
||||
return super()._sync_move_key(move) + (('lot', move.lot),)
|
||||
|
||||
|
||||
class Period(metaclass=PoolMeta):
|
||||
__name__ = 'stock.period'
|
||||
lot_caches = fields.One2Many('stock.period.cache.lot', 'period',
|
||||
'Lot Caches', readonly=True)
|
||||
|
||||
@classmethod
|
||||
def groupings(cls):
|
||||
return super().groupings() + [('product', 'lot')]
|
||||
|
||||
@classmethod
|
||||
def get_cache(cls, grouping):
|
||||
pool = Pool()
|
||||
Cache = super().get_cache(grouping)
|
||||
if grouping == ('product', 'lot'):
|
||||
return pool.get('stock.period.cache.lot')
|
||||
return Cache
|
||||
|
||||
|
||||
class PeriodCacheLot(ModelSQL, ModelView):
|
||||
"It is used to store cached computation of stock quantities per lot"
|
||||
__name__ = 'stock.period.cache.lot'
|
||||
|
||||
period = fields.Many2One(
|
||||
'stock.period', "Period",
|
||||
required=True, readonly=True, ondelete='CASCADE')
|
||||
location = fields.Many2One(
|
||||
'stock.location', "Location",
|
||||
required=True, readonly=True, ondelete='CASCADE')
|
||||
product = fields.Many2One('product.product', 'Product', required=True,
|
||||
readonly=True, ondelete='CASCADE')
|
||||
lot = fields.Many2One('stock.lot', 'Lot', readonly=True,
|
||||
ondelete='CASCADE')
|
||||
internal_quantity = fields.Float('Internal Quantity', readonly=True)
|
||||
|
||||
@classmethod
|
||||
def __setup__(cls):
|
||||
super().__setup__()
|
||||
t = cls.__table__()
|
||||
cls._sql_indexes.update({
|
||||
Index(
|
||||
t,
|
||||
(t.period, Index.Range()),
|
||||
(t.product, Index.Range()),
|
||||
(t.lot, Index.Range()),
|
||||
include=[t.internal_quantity]),
|
||||
Index(
|
||||
t,
|
||||
(t.location, Index.Range())),
|
||||
})
|
||||
|
||||
|
||||
class Inventory(metaclass=PoolMeta):
|
||||
__name__ = 'stock.inventory'
|
||||
|
||||
@classmethod
|
||||
def grouping(cls):
|
||||
return super().grouping() + ('lot', )
|
||||
|
||||
|
||||
class InventoryLine(metaclass=PoolMeta):
|
||||
__name__ = 'stock.inventory.line'
|
||||
lot = fields.Many2One('stock.lot', 'Lot',
|
||||
domain=[
|
||||
('product', '=', Eval('product', -1)),
|
||||
],
|
||||
states={
|
||||
'readonly': Eval('inventory_state') != 'draft',
|
||||
})
|
||||
|
||||
@classmethod
|
||||
def __setup__(cls):
|
||||
super().__setup__()
|
||||
cls._order.insert(1, ('lot', 'ASC'))
|
||||
|
||||
def get_rec_name(self, name):
|
||||
rec_name = super().get_rec_name(name)
|
||||
if self.lot:
|
||||
rec_name += ' - %s' % self.lot.rec_name
|
||||
return rec_name
|
||||
|
||||
def get_move(self):
|
||||
move = super().get_move()
|
||||
if move:
|
||||
move.lot = self.lot
|
||||
return move
|
||||
|
||||
|
||||
class InventoryCount(metaclass=PoolMeta):
|
||||
__name__ = 'stock.inventory.count'
|
||||
|
||||
def default_quantity(self, fields):
|
||||
pool = Pool()
|
||||
Product = pool.get('product.product')
|
||||
InventoryLine = pool.get('stock.inventory.line')
|
||||
inventory = self.record
|
||||
if isinstance(self.search.search, Product):
|
||||
product = self.search.search
|
||||
if product.lot_is_required(
|
||||
inventory.location, inventory.location.lost_found_used):
|
||||
raise RequiredValidationError(
|
||||
gettext('stock_lot.msg_only_lot',
|
||||
product=product.rec_name))
|
||||
values = super().default_quantity(fields)
|
||||
line = InventoryLine(values['line'])
|
||||
values['lot'] = line.lot.id if line.lot else None
|
||||
return values
|
||||
|
||||
def get_line_domain(self, inventory):
|
||||
pool = Pool()
|
||||
Lot = pool.get('stock.lot')
|
||||
domain = super().get_line_domain(inventory)
|
||||
if isinstance(self.search.search, Lot):
|
||||
domain.append(('lot', '=', self.search.search.id))
|
||||
return domain
|
||||
|
||||
def get_line(self):
|
||||
pool = Pool()
|
||||
Lot = pool.get('stock.lot')
|
||||
|
||||
line = super().get_line()
|
||||
if isinstance(self.search.search, Lot):
|
||||
lot = self.search.search
|
||||
line.product = lot.product
|
||||
line.lot = lot
|
||||
return line
|
||||
|
||||
|
||||
class InventoryCountSearch(metaclass=PoolMeta):
|
||||
__name__ = 'stock.inventory.count.search'
|
||||
|
||||
@classmethod
|
||||
def __setup__(cls):
|
||||
super().__setup__()
|
||||
cls.search.selection.append(('stock.lot', "Lot"))
|
||||
|
||||
|
||||
class InventoryCountQuantity(ModelView):
|
||||
__name__ = 'stock.inventory.count.quantity'
|
||||
|
||||
lot = fields.Many2One('stock.lot', "Lot", readonly=True,
|
||||
states={
|
||||
'invisible': ~Eval('lot', None),
|
||||
})
|
||||
395
modules/stock_lot/stock.xml
Normal file
395
modules/stock_lot/stock.xml
Normal file
@@ -0,0 +1,395 @@
|
||||
<?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="lot_view_form">
|
||||
<field name="model">stock.lot</field>
|
||||
<field name="type">form</field>
|
||||
<field name="name">lot_form</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="lot_view_tree">
|
||||
<field name="model">stock.lot</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="name">lot_tree</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="lot_view_list_stock_move">
|
||||
<field name="model">stock.lot</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="priority" eval="20"/>
|
||||
<field name="name">lot_list_stock_move</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.action.act_window" id="act_lot_form">
|
||||
<field name="name">Lots</field>
|
||||
<field name="res_model">stock.lot</field>
|
||||
</record>
|
||||
<record model="ir.action.act_window.view" id="act_lot_form_view1">
|
||||
<field name="sequence" eval="10"/>
|
||||
<field name="view" ref="lot_view_tree"/>
|
||||
<field name="act_window" ref="act_lot_form"/>
|
||||
</record>
|
||||
<record model="ir.action.act_window.view" id="act_lot_form_view2">
|
||||
<field name="sequence" eval="20"/>
|
||||
<field name="view" ref="lot_view_form"/>
|
||||
<field name="act_window" ref="act_lot_form"/>
|
||||
</record>
|
||||
<menuitem
|
||||
parent="stock.menu_stock"
|
||||
action="act_lot_form"
|
||||
sequence="50"
|
||||
id="menu_lot_form"/>
|
||||
|
||||
<record model="ir.action.act_window" id="act_lot_form_product_relate">
|
||||
<field name="name">Lots</field>
|
||||
<field name="res_model">stock.lot</field>
|
||||
<field
|
||||
name="domain"
|
||||
eval="[If(Eval('active_ids', []) == [Eval('active_id')], (If(Eval('active_model') == 'product.template', 'product.template', 'product'), '=', Eval('active_id', -1)), (If(Eval('active_model') == 'product.template', 'product.template', 'product'), 'in', Eval('active_ids', [])))]"
|
||||
pyson="1"/>
|
||||
</record>
|
||||
<record model="ir.action.act_window.view" id="act_lot_form_product_relate_view1">
|
||||
<field name="sequence" eval="10"/>
|
||||
<field name="view" ref="lot_view_tree"/>
|
||||
<field name="act_window" ref="act_lot_form_product_relate"/>
|
||||
</record>
|
||||
<record model="ir.action.act_window.view" id="act_lot_form_product_relate_view2">
|
||||
<field name="sequence" eval="20"/>
|
||||
<field name="view" ref="lot_view_form"/>
|
||||
<field name="act_window" ref="act_lot_form_product_relate"/>
|
||||
</record>
|
||||
<record model="ir.action.keyword" id="act_lot_form_product_relate_keyword1">
|
||||
<field name="keyword">form_relate</field>
|
||||
<field name="model">product.product,-1</field>
|
||||
<field name="action" ref="act_lot_form_product_relate"/>
|
||||
</record>
|
||||
<record model="ir.action.keyword" id="act_lot_form_product_relate_keyword2">
|
||||
<field name="keyword">form_relate</field>
|
||||
<field name="model">product.template,-1</field>
|
||||
<field name="action" ref="act_lot_form_product_relate"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.model.access" id="access_lot">
|
||||
<field name="model">stock.lot</field>
|
||||
<field name="perm_read" eval="False"/>
|
||||
<field name="perm_write" eval="False"/>
|
||||
<field name="perm_create" eval="False"/>
|
||||
<field name="perm_delete" eval="False"/>
|
||||
</record>
|
||||
<record model="ir.model.access" id="access_lot_group_stock">
|
||||
<field name="model">stock.lot</field>
|
||||
<field name="group" ref="stock.group_stock"/>
|
||||
<field name="perm_read" eval="True"/>
|
||||
<field name="perm_write" eval="True"/>
|
||||
<field name="perm_create" eval="True"/>
|
||||
<field name="perm_delete" eval="True"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.model.button" id="lot_upward_traces_button">
|
||||
<field name="model">stock.lot</field>
|
||||
<field name="name">upward_traces</field>
|
||||
<field name="string">Upward Traces</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.model.button" id="lot_downward_traces_button">
|
||||
<field name="model">stock.lot</field>
|
||||
<field name="name">downward_traces</field>
|
||||
<field name="string">Downward Traces</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="lot_trace_view_tree_upward">
|
||||
<field name="model">stock.lot.trace</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="field_childs">upward_traces</field>
|
||||
<field name="name">lot_trace_tree</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="lot_trace_view_tree_downward">
|
||||
<field name="model">stock.lot.trace</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="field_childs">downward_traces</field>
|
||||
<field name="name">lot_trace_tree</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.action.act_window" id="act_lot_trace_upward_relate">
|
||||
<field name="name">Upward Traces</field>
|
||||
<field name="res_model">stock.lot.trace</field>
|
||||
<field
|
||||
name="domain"
|
||||
eval="[('lot', 'in', Eval('active_ids', []))]"
|
||||
pyson="1"/>
|
||||
<field
|
||||
name="order"
|
||||
eval="[('date', 'ASC'), ('id', 'ASC')]"
|
||||
pyson="1"/>
|
||||
</record>
|
||||
<record model="ir.action.act_window.view" id="act_lot_trace_upward_relate_view1">
|
||||
<field name="sequence" eval="10"/>
|
||||
<field name="view" ref="lot_trace_view_tree_upward"/>
|
||||
<field name="act_window" ref="act_lot_trace_upward_relate"/>
|
||||
</record>
|
||||
<record model="ir.action.keyword" id="act_lot_trace_upward_relate_keyword1">
|
||||
<field name="keyword">form_relate</field>
|
||||
<field name="model">stock.lot,-1</field>
|
||||
<field name="action" ref="act_lot_trace_upward_relate"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.action.act_window" id="act_lot_trace_downward_relate">
|
||||
<field name="name">Downward Traces</field>
|
||||
<field name="res_model">stock.lot.trace</field>
|
||||
<field
|
||||
name="domain"
|
||||
eval="[('lot', 'in', Eval('active_ids', []))]"
|
||||
pyson="1"/>
|
||||
<field
|
||||
name="order"
|
||||
eval="[('date', 'DESC'), ('id', 'DESC')]"
|
||||
pyson="1"/>
|
||||
</record>
|
||||
<record model="ir.action.act_window.view" id="act_lot_trace_downward_relate_view1">
|
||||
<field name="sequence" eval="10"/>
|
||||
<field name="view" ref="lot_trace_view_tree_downward"/>
|
||||
<field name="act_window" ref="act_lot_trace_downward_relate"/>
|
||||
</record>
|
||||
<record model="ir.action.keyword" id="act_lot_trace_downward_relate_keyword1">
|
||||
<field name="keyword">form_relate</field>
|
||||
<field name="model">stock.lot,-1</field>
|
||||
<field name="action" ref="act_lot_trace_downward_relate"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.rule.group" id="rule_group_lot_trace_companies">
|
||||
<field name="name">User in companies</field>
|
||||
<field name="model">stock.lot.trace</field>
|
||||
<field name="global_p" eval="True"/>
|
||||
</record>
|
||||
<record model="ir.rule" id="rule_lot_trace_companies">
|
||||
<field
|
||||
name="domain"
|
||||
eval="[('company', 'in', Eval('companies', []))]"
|
||||
pyson="1"/>
|
||||
<field name="rule_group" ref="rule_group_lot_trace_companies"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.model.access" id="access_lot_trace">
|
||||
<field name="model">stock.lot.trace</field>
|
||||
<field name="perm_read" eval="False"/>
|
||||
<field name="perm_write" eval="False"/>
|
||||
<field name="perm_create" eval="False"/>
|
||||
<field name="perm_delete" eval="False"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.model.access" id="access_lot_trace_group_stock">
|
||||
<field name="model">stock.lot.trace</field>
|
||||
<field name="group" ref="stock.group_stock"/>
|
||||
<field name="perm_read" eval="True"/>
|
||||
<field name="perm_write" eval="False"/>
|
||||
<field name="perm_create" eval="False"/>
|
||||
<field name="perm_delete" eval="False"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="lots_by_location_context_view_form">
|
||||
<field name="model">stock.lots_by_location.context</field>
|
||||
<field name="type">form</field>
|
||||
<field name="name">lot_by_location_context_form</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="lots_by_locations_view_list">
|
||||
<field name="model">stock.lots_by_locations</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="name">lots_by_locations_list</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.model.access" id="access_lots_by_locations">
|
||||
<field name="model">stock.lots_by_locations</field>
|
||||
<field name="perm_read" eval="False"/>
|
||||
<field name="perm_write" eval="False"/>
|
||||
<field name="perm_create" eval="False"/>
|
||||
<field name="perm_delete" eval="False"/>
|
||||
</record>
|
||||
<record model="ir.model.access" id="access_lots_by_locations_group_stock">
|
||||
<field name="model">stock.lots_by_locations</field>
|
||||
<field name="group" ref="stock.group_stock"/>
|
||||
<field name="perm_read" eval="True"/>
|
||||
<field name="perm_write" eval="False"/>
|
||||
<field name="perm_create" eval="False"/>
|
||||
<field name="perm_delete" eval="False"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.action.act_window" id="act_lots_by_locations_relate">
|
||||
<field name="name">Lots</field>
|
||||
<field name="res_model">stock.lots_by_locations</field>
|
||||
<field name="context" eval="{'locations': Eval('active_ids')}" pyson="1"/>
|
||||
<field name="domain"
|
||||
eval="['OR', ('quantity', '!=', 0.0), ('forecast_quantity', '!=', 0.0)]"
|
||||
pyson="1"/>
|
||||
<field name="context_model">stock.lots_by_location.context</field>
|
||||
</record>
|
||||
<record model="ir.action.act_window.view" id="act_lots_by_locations_relate_view1">
|
||||
<field name="sequence" eval="10"/>
|
||||
<field name="view" ref="lots_by_locations_view_list"/>
|
||||
<field name="act_window" ref="act_lots_by_locations_relate"/>
|
||||
</record>
|
||||
<record model="ir.action.keyword" id="act_lots_by_locations_relate_keyword1">
|
||||
<field name="keyword">tree_open</field>
|
||||
<field name="model">stock.location,-1</field>
|
||||
<field name="action" ref="act_lots_by_locations_relate"/>
|
||||
</record>
|
||||
<record model="ir.action.keyword" id="act_lots_by_locations_relate_keyword2">
|
||||
<field name="keyword">form_relate</field>
|
||||
<field name="model">stock.location,-1</field>
|
||||
<field name="action" ref="act_lots_by_locations_relate"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.action.act_window" id="act_location_quantity_tree">
|
||||
<field name="name">Stock Locations Tree</field>
|
||||
<field name="res_model">stock.location</field>
|
||||
<field name="domain" eval="[('parent', '=', None)]" pyson="1"/>
|
||||
<field
|
||||
name="context"
|
||||
eval="{'lot': Eval('active_id'), 'stock_skip_warehouse': False}"
|
||||
pyson="1"/>
|
||||
<field name="context_model">stock.lots_by_location.context</field>
|
||||
</record>
|
||||
<record model="ir.action.act_window.view" id="act_location_quantity_tree_view1">
|
||||
<field name="sequence" eval="10"/>
|
||||
<field name="view" ref="stock.location_quantity_view_tree"/>
|
||||
<field name="act_window" ref="act_location_quantity_tree"/>
|
||||
</record>
|
||||
<record model="ir.action.keyword" id="act_location_quantity_tree_keyword1">
|
||||
<field name="keyword">form_relate</field>
|
||||
<field name="model">stock.lot,-1</field>
|
||||
<field name="action" ref="act_location_quantity_tree"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.action.act_window" id="act_location_quantity_list">
|
||||
<field name="name">Stock Locations List</field>
|
||||
<field name="res_model">stock.location</field>
|
||||
<field name="search_value" eval="['OR', ('quantity', '!=', 0), ('forecast_quantity', '!=', 0)]" pyson="1"/>
|
||||
<field
|
||||
name="context"
|
||||
eval="{'lot': Eval('active_id'), 'with_childs': False, 'stock_skip_warehouse': False}"
|
||||
pyson="1"/>
|
||||
<field name="context_model">stock.lots_by_location.context</field>
|
||||
</record>
|
||||
<record model="ir.action.act_window.view" id="act_location_quantity_list_view">
|
||||
<field name="sequence" eval="10"/>
|
||||
<field name="view" ref="stock.location_quantity_view_list"/>
|
||||
<field name="act_window" ref="act_location_quantity_list"/>
|
||||
</record>
|
||||
<record model="ir.action.keyword" id="act_location_quantity_list_keyword1">
|
||||
<field name="keyword">form_relate</field>
|
||||
<field name="model">stock.lot,-1</field>
|
||||
<field name="action" ref="act_location_quantity_list"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="move_view_form">
|
||||
<field name="model">stock.move</field>
|
||||
<field name="inherit" ref="stock.move_view_form"/>
|
||||
<field name="name">move_form</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="move_view_tree">
|
||||
<field name="model">stock.move</field>
|
||||
<field name="inherit" ref="stock.move_view_tree"/>
|
||||
<field name="name">move_tree</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="move_view_list_shipment_in">
|
||||
<field name="model">stock.move</field>
|
||||
<field name="inherit" ref="stock.move_view_list_shipment_in"/>
|
||||
<field name="name">move_tree</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="move_view_list_shipment">
|
||||
<field name="model">stock.move</field>
|
||||
<field name="inherit" ref="stock.move_view_list_shipment"/>
|
||||
<field name="name">move_tree</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.model.button" id="move_add_lots_wizard_button">
|
||||
<field name="model">stock.move</field>
|
||||
<field name="name">add_lots_wizard</field>
|
||||
<field name="string">Add Lots</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.action.wizard" id="wizard_move_add_lots">
|
||||
<field name="name">Add Lots</field>
|
||||
<field name="wiz_name">stock.move.add.lots</field>
|
||||
<field name="model">stock.move</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="move_add_lots_start_view_form">
|
||||
<field name="model">stock.move.add.lots.start</field>
|
||||
<field name="type">form</field>
|
||||
<field name="name">stock_move_add_lots_start_form</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="move_add_lots_start_lot_view_list">
|
||||
<field name="model">stock.move.add.lots.start.lot</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="name">stock_move_add_lots_start_lot_list</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.model.button" id="move_add_lots_start_duplicate_lot_button">
|
||||
<field name="model">stock.move.add.lots.start</field>
|
||||
<field name="name">duplicate_lot</field>
|
||||
<field name="string">Duplicate Lot</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="period_cache_lot_view_form">
|
||||
<field name="model">stock.period.cache.lot</field>
|
||||
<field name="type">form</field>
|
||||
<field name="name">period_cache_lot_form</field>
|
||||
</record>
|
||||
<record model="ir.ui.view" id="period_cache_lot_view_list">
|
||||
<field name="model">stock.period.cache.lot</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="name">period_cache_lot_list</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.model.access" id="access_period_cache_lot">
|
||||
<field name="model">stock.period.cache.lot</field>
|
||||
<field name="perm_read" eval="False"/>
|
||||
<field name="perm_write" eval="False"/>
|
||||
<field name="perm_create" eval="False"/>
|
||||
<field name="perm_delete" eval="False"/>
|
||||
</record>
|
||||
<record model="ir.model.access" id="access_period_cache_lot_stock">
|
||||
<field name="model">stock.period.cache.lot</field>
|
||||
<field name="group" ref="stock.group_stock"/>
|
||||
<field name="perm_read" eval="True"/>
|
||||
<field name="perm_write" eval="False"/>
|
||||
<field name="perm_create" eval="False"/>
|
||||
<field name="perm_delete" eval="False"/>
|
||||
</record>
|
||||
<record model="ir.model.access" id="access_period_cache_lot_admin">
|
||||
<field name="model">stock.period.cache.lot</field>
|
||||
<field name="group" ref="stock.group_stock_admin"/>
|
||||
<field name="perm_read" eval="True"/>
|
||||
<field name="perm_write" eval="True"/>
|
||||
<field name="perm_create" eval="True"/>
|
||||
<field name="perm_delete" eval="True"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="inventory_line_view_form">
|
||||
<field name="model">stock.inventory.line</field>
|
||||
<field name="inherit" ref="stock.inventory_line_view_form"/>
|
||||
<field name="name">inventory_line_form</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="inventory_line_view_list">
|
||||
<field name="model">stock.inventory.line</field>
|
||||
<field name="inherit" ref="stock.inventory_line_view_list"/>
|
||||
<field name="name">inventory_line_list</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="inventory_count_quantity_view_form">
|
||||
<field name="model">stock.inventory.count.quantity</field>
|
||||
<field name="inherit" ref="stock.inventory_count_quantity_view_form"/>
|
||||
<field name="name">inventory_count_quantity_form</field>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</tryton>
|
||||
2
modules/stock_lot/tests/__init__.py
Normal file
2
modules/stock_lot/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.
|
||||
BIN
modules/stock_lot/tests/__pycache__/__init__.cpython-311.pyc
Normal file
BIN
modules/stock_lot/tests/__pycache__/__init__.cpython-311.pyc
Normal file
Binary file not shown.
BIN
modules/stock_lot/tests/__pycache__/test_module.cpython-311.pyc
Normal file
BIN
modules/stock_lot/tests/__pycache__/test_module.cpython-311.pyc
Normal file
Binary file not shown.
Binary file not shown.
116
modules/stock_lot/tests/scenario_stock_lot_assign_try.rst
Normal file
116
modules/stock_lot/tests/scenario_stock_lot_assign_try.rst
Normal file
@@ -0,0 +1,116 @@
|
||||
=================================
|
||||
Stock Lot Assign Request Scenario
|
||||
=================================
|
||||
|
||||
Imports::
|
||||
|
||||
>>> import datetime as dt
|
||||
>>> from decimal import Decimal
|
||||
|
||||
>>> from proteus import Model
|
||||
>>> from trytond.modules.company.tests.tools import create_company
|
||||
>>> from trytond.tests.tools import activate_modules
|
||||
|
||||
>>> today = dt.date.today()
|
||||
|
||||
Activate modules::
|
||||
|
||||
>>> config = activate_modules('stock_lot', create_company)
|
||||
|
||||
>>> Inventory = Model.get('stock.inventory')
|
||||
>>> Location = Model.get('stock.location')
|
||||
>>> Lot = Model.get('stock.lot')
|
||||
>>> Party = Model.get('party.party')
|
||||
>>> ProductTemplate = Model.get('product.template')
|
||||
>>> ProductUom = Model.get('product.uom')
|
||||
>>> ShipmentOut = Model.get('stock.shipment.out')
|
||||
|
||||
Create customer::
|
||||
|
||||
>>> customer = Party(name='Customer')
|
||||
>>> customer.save()
|
||||
|
||||
Create product::
|
||||
|
||||
>>> unit, = ProductUom.find([('name', '=', 'Unit')])
|
||||
|
||||
>>> template = ProductTemplate()
|
||||
>>> template.name = 'Product'
|
||||
>>> template.default_uom = unit
|
||||
>>> template.type = 'goods'
|
||||
>>> template.list_price = Decimal('20')
|
||||
>>> template.save()
|
||||
>>> product, = template.products
|
||||
|
||||
Create lot::
|
||||
|
||||
>>> lot = Lot()
|
||||
>>> lot.number = 'LOT'
|
||||
>>> lot.product = product
|
||||
>>> lot.save()
|
||||
|
||||
Get stock locations::
|
||||
|
||||
>>> warehouse_loc, = Location.find([('code', '=', 'WH')])
|
||||
>>> supplier_loc, = Location.find([('code', '=', 'SUP')])
|
||||
>>> customer_loc, = Location.find([('code', '=', 'CUS')])
|
||||
>>> output_loc, = Location.find([('code', '=', 'OUT')])
|
||||
>>> storage_loc, = Location.find([('code', '=', 'STO')])
|
||||
>>> zone1 = Location(name='Zone1')
|
||||
>>> zone1.parent = storage_loc
|
||||
>>> zone1.type = 'storage'
|
||||
>>> zone1.save()
|
||||
>>> zone2, = zone1.duplicate(default={'name': 'Zone2'})
|
||||
|
||||
Add product quantities on zones storage locations::
|
||||
|
||||
>>> inventory = Inventory()
|
||||
>>> inventory.location = zone1
|
||||
>>> inventory_line = inventory.lines.new(product=product)
|
||||
>>> inventory_line.quantity = 100.0
|
||||
>>> inventory_line.expected_quantity = 0.0
|
||||
>>> inventory.click('confirm')
|
||||
>>> inventory.state
|
||||
'done'
|
||||
>>> inventory = Inventory()
|
||||
>>> inventory.location = zone2
|
||||
>>> inventory_line = inventory.lines.new()
|
||||
>>> inventory_line.product = product
|
||||
>>> inventory_line.lot = lot
|
||||
>>> inventory_line.quantity = 100.0
|
||||
>>> inventory_line.expected_quantity = 0.0
|
||||
>>> inventory.click('confirm')
|
||||
>>> inventory.state
|
||||
'done'
|
||||
|
||||
Create shipment out::
|
||||
|
||||
>>> shipment = ShipmentOut()
|
||||
>>> shipment.planned_date = today
|
||||
>>> shipment.customer = customer
|
||||
>>> shipment.warehouse = warehouse_loc
|
||||
>>> move = shipment.outgoing_moves.new()
|
||||
>>> move.product = product
|
||||
>>> move.unit = unit
|
||||
>>> move.quantity = 10
|
||||
>>> move.from_location = output_loc
|
||||
>>> move.to_location = customer_loc
|
||||
>>> move.company = shipment.company
|
||||
>>> move.unit_price = Decimal('1')
|
||||
>>> move.currency = shipment.company.currency
|
||||
>>> shipment.click('wait')
|
||||
|
||||
Request specific lot in stock assignation::
|
||||
|
||||
>>> move, = shipment.inventory_moves
|
||||
>>> move.lot = lot
|
||||
>>> move.save()
|
||||
|
||||
Assign the shipment::
|
||||
|
||||
>>> shipment.click('assign_try')
|
||||
>>> shipment.state
|
||||
'assigned'
|
||||
>>> move, = shipment.inventory_moves
|
||||
>>> move.from_location.name
|
||||
'Zone2'
|
||||
@@ -0,0 +1,74 @@
|
||||
==================================
|
||||
Stock Lot Inventory Count Scenario
|
||||
==================================
|
||||
|
||||
Imports::
|
||||
|
||||
>>> from proteus import Model
|
||||
>>> from trytond.modules.company.tests.tools import create_company
|
||||
>>> from trytond.tests.tools import activate_modules, assertEqual
|
||||
|
||||
Activate modules::
|
||||
|
||||
>>> config = activate_modules('stock_lot', create_company)
|
||||
>>> config.skip_warning = True
|
||||
|
||||
>>> Inventory = Model.get('stock.inventory')
|
||||
>>> Location = Model.get('stock.location')
|
||||
>>> Lot = Model.get('stock.lot')
|
||||
>>> ProductTemplate = Model.get('product.template')
|
||||
>>> ProductUom = Model.get('product.uom')
|
||||
|
||||
Get stock location::
|
||||
|
||||
>>> storage_loc, = Location.find([('code', '=', 'STO')])
|
||||
|
||||
Create product and lot::
|
||||
|
||||
>>> unit, = ProductUom.find([('name', '=', 'Unit')])
|
||||
>>> template = ProductTemplate()
|
||||
>>> template.name = 'Product'
|
||||
>>> template.default_uom = unit
|
||||
>>> template.type = 'goods'
|
||||
>>> template.lot_required = ['storage']
|
||||
>>> template.save()
|
||||
>>> product, = template.products
|
||||
|
||||
>>> lot = Lot(number="0001", product=product)
|
||||
>>> lot.save()
|
||||
|
||||
Create an inventory::
|
||||
|
||||
>>> inventory = Inventory()
|
||||
>>> inventory.location = storage_loc
|
||||
>>> inventory.empty_quantity = 'keep'
|
||||
>>> inventory.save()
|
||||
|
||||
Count inventory::
|
||||
|
||||
>>> count = inventory.click('do_count')
|
||||
|
||||
>>> count.form.search = product
|
||||
>>> count.execute('quantity')
|
||||
Traceback (most recent call last):
|
||||
...
|
||||
RequiredValidationError: ...
|
||||
|
||||
>>> count.form.search = lot
|
||||
>>> count.execute('quantity')
|
||||
>>> assertEqual(count.form.product, product)
|
||||
>>> assertEqual(count.form.lot, lot)
|
||||
>>> count.form.quantity
|
||||
1.0
|
||||
>>> count.form.total_quantity
|
||||
1.0
|
||||
>>> count.execute('add')
|
||||
>>> count.execute('end')
|
||||
|
||||
Check inventory::
|
||||
|
||||
>>> line, = inventory.lines
|
||||
>>> assertEqual(line.product, product)
|
||||
>>> assertEqual(line.lot, lot)
|
||||
>>> line.quantity
|
||||
1.0
|
||||
107
modules/stock_lot/tests/scenario_stock_lot_move_add.rst
Normal file
107
modules/stock_lot/tests/scenario_stock_lot_move_add.rst
Normal file
@@ -0,0 +1,107 @@
|
||||
===========================
|
||||
Stock Lot Move Add Scenario
|
||||
===========================
|
||||
|
||||
Imports::
|
||||
|
||||
>>> from decimal import Decimal
|
||||
|
||||
>>> from proteus import Model
|
||||
>>> from trytond.modules.company.tests.tools import create_company
|
||||
>>> from trytond.modules.currency.tests.tools import get_currency
|
||||
>>> from trytond.tests.tools import activate_modules, assertEqual
|
||||
|
||||
Activate modules::
|
||||
|
||||
>>> modules = ['stock_lot']
|
||||
>>> if globals().get('stock_split', False):
|
||||
... modules.append('stock_split')
|
||||
>>> config = activate_modules(modules, create_company)
|
||||
|
||||
Create product::
|
||||
|
||||
>>> ProductUom = Model.get('product.uom')
|
||||
>>> ProductTemplate = Model.get('product.template')
|
||||
>>> unit, = ProductUom.find([('name', '=', 'Unit')])
|
||||
|
||||
>>> template = ProductTemplate()
|
||||
>>> template.name = 'Product'
|
||||
>>> template.default_uom = unit
|
||||
>>> template.type = 'goods'
|
||||
>>> template.list_price = Decimal('20')
|
||||
>>> template.save()
|
||||
>>> product, = template.products
|
||||
|
||||
Get stock locations::
|
||||
|
||||
>>> Location = Model.get('stock.location')
|
||||
>>> storage_loc, = Location.find([('code', '=', 'STO')])
|
||||
>>> customer_loc, = Location.find([('code', '=', 'CUS')])
|
||||
|
||||
Create a move::
|
||||
|
||||
>>> Move = Model.get('stock.move')
|
||||
>>> move = Move()
|
||||
>>> move.from_location = storage_loc
|
||||
>>> move.to_location = customer_loc
|
||||
>>> move.product = product
|
||||
>>> move.quantity = 10
|
||||
>>> move.unit_price = Decimal('20')
|
||||
>>> move.currency = get_currency()
|
||||
>>> move.save()
|
||||
|
||||
Create a lot::
|
||||
|
||||
>>> Lot = Model.get('stock.lot')
|
||||
>>> lot2 = Lot(number='02', product=product)
|
||||
>>> lot2.save()
|
||||
|
||||
Add few lots::
|
||||
|
||||
>>> add_lots = move.click('add_lots_wizard')
|
||||
>>> assertEqual(add_lots.form.product, product)
|
||||
>>> add_lots.form.quantity
|
||||
10.0
|
||||
>>> assertEqual(add_lots.form.unit, unit)
|
||||
>>> add_lots.form.quantity_remaining
|
||||
10.0
|
||||
|
||||
>>> lot = add_lots.form.lots.new()
|
||||
>>> lot.quantity
|
||||
10.0
|
||||
>>> lot.number = '01'
|
||||
>>> lot.quantity = 2
|
||||
>>> lot = add_lots.form.lots.new()
|
||||
>>> lot.quantity
|
||||
8.0
|
||||
>>> lot.number = '02'
|
||||
>>> lot.quantity = 1
|
||||
|
||||
>>> add_lots.execute('add')
|
||||
|
||||
Check moves::
|
||||
|
||||
>>> move, = Move.find([('lot.number', '=', '01')])
|
||||
>>> move.quantity
|
||||
2.0
|
||||
>>> move, = Move.find([('lot.number', '=', '02')])
|
||||
>>> move.quantity
|
||||
1.0
|
||||
>>> assertEqual(move.lot, lot2)
|
||||
>>> move, = Move.find([('lot', '=', None)])
|
||||
>>> move.quantity
|
||||
7.0
|
||||
|
||||
Add lot to remaining::
|
||||
|
||||
>>> add_lots = move.click('add_lots_wizard')
|
||||
>>> lot = add_lots.form.lots.new()
|
||||
>>> lot.number = '03'
|
||||
>>> add_lots.execute('add')
|
||||
|
||||
>>> len(Move.find([]))
|
||||
3
|
||||
>>> move.lot.number
|
||||
'03'
|
||||
>>> move.quantity
|
||||
7.0
|
||||
65
modules/stock_lot/tests/scenario_stock_lot_number.rst
Normal file
65
modules/stock_lot/tests/scenario_stock_lot_number.rst
Normal file
@@ -0,0 +1,65 @@
|
||||
=========================
|
||||
Stock Lot Number Scenario
|
||||
=========================
|
||||
|
||||
Imports::
|
||||
|
||||
>>> from proteus import Model
|
||||
>>> from trytond.tests.tools import activate_modules, assertEqual
|
||||
|
||||
Activate modules::
|
||||
|
||||
>>> config = activate_modules('stock_lot')
|
||||
|
||||
Create lot sequence::
|
||||
|
||||
>>> Sequence = Model.get('ir.sequence')
|
||||
>>> SequenceType = Model.get('ir.sequence.type')
|
||||
>>> sequence_type, = SequenceType.find(
|
||||
... [('name', '=', "Stock Lot")], limit=1)
|
||||
>>> sequence = Sequence(name="Lot", sequence_type=sequence_type)
|
||||
>>> sequence.save()
|
||||
|
||||
Set default sequence::
|
||||
|
||||
>>> Configuration = Model.get('product.configuration')
|
||||
>>> configuration = Configuration(1)
|
||||
>>> configuration.default_lot_sequence = sequence
|
||||
>>> configuration.save()
|
||||
|
||||
Create product::
|
||||
|
||||
>>> ProductUom = Model.get('product.uom')
|
||||
>>> ProductTemplate = Model.get('product.template')
|
||||
>>> unit, = ProductUom.find([('name', '=', 'Unit')])
|
||||
|
||||
>>> template = ProductTemplate()
|
||||
>>> assertEqual(template.lot_sequence, sequence)
|
||||
>>> template.name = 'Product'
|
||||
>>> template.default_uom = unit
|
||||
>>> template.type = 'goods'
|
||||
>>> template.save()
|
||||
>>> product, = template.products
|
||||
|
||||
Create lot without number::
|
||||
|
||||
>>> Lot = Model.get('stock.lot')
|
||||
>>> lot = Lot(product=product)
|
||||
>>> lot.save()
|
||||
|
||||
>>> lot.number
|
||||
'1'
|
||||
|
||||
Copy set a new number::
|
||||
|
||||
>>> lot2, = lot.duplicate()
|
||||
>>> lot2.number
|
||||
'2'
|
||||
|
||||
Copy without sequence keep same number::
|
||||
|
||||
>>> template.lot_sequence = None
|
||||
>>> template.save()
|
||||
>>> lot3, = lot.duplicate()
|
||||
>>> lot3.number
|
||||
'1'
|
||||
91
modules/stock_lot/tests/scenario_stock_lot_shipment_in.rst
Normal file
91
modules/stock_lot/tests/scenario_stock_lot_shipment_in.rst
Normal file
@@ -0,0 +1,91 @@
|
||||
==============================
|
||||
Stock Lot Shipment In Scenario
|
||||
==============================
|
||||
|
||||
Imports::
|
||||
|
||||
>>> from decimal import Decimal
|
||||
|
||||
>>> from proteus import Model
|
||||
>>> from trytond.modules.company.tests.tools import create_company
|
||||
>>> from trytond.tests.tools import activate_modules, assertEqual
|
||||
|
||||
Activate modules::
|
||||
|
||||
>>> config = activate_modules('stock_lot', create_company)
|
||||
|
||||
>>> Location = Model.get('stock.location')
|
||||
>>> Lot = Model.get('stock.lot')
|
||||
>>> Party = Model.get('party.party')
|
||||
>>> ProductTemplate = Model.get('product.template')
|
||||
>>> ProductUom = Model.get('product.uom')
|
||||
>>> ShipmentIn = Model.get('stock.shipment.in')
|
||||
|
||||
Create supplier::
|
||||
|
||||
>>> supplier = Party(name='Supplier')
|
||||
>>> supplier.save()
|
||||
|
||||
Create product::
|
||||
|
||||
>>> unit, = ProductUom.find([('name', '=', "Unit")])
|
||||
>>> template = ProductTemplate()
|
||||
>>> template.name = "Product"
|
||||
>>> template.default_uom = unit
|
||||
>>> template.type = 'goods'
|
||||
>>> template.list_price = Decimal('20')
|
||||
>>> template.save()
|
||||
>>> product, = template.products
|
||||
|
||||
Get stock locations::
|
||||
|
||||
>>> supplier_loc, = Location.find([('code', '=', 'SUP')])
|
||||
>>> input_loc, = Location.find([('code', '=', 'IN')])
|
||||
>>> storage_loc, = Location.find([('code', '=', 'STO')])
|
||||
|
||||
Set 2 lots::
|
||||
|
||||
>>> lot1 = Lot(number="1", product=product)
|
||||
>>> lot1.save()
|
||||
>>> lot2 = Lot(number="2", product=product)
|
||||
>>> lot2.save()
|
||||
|
||||
Create a shipment::
|
||||
|
||||
>>> shipment = ShipmentIn()
|
||||
>>> shipment.supplier = supplier
|
||||
>>> move = shipment.incoming_moves.new()
|
||||
>>> move.product = product
|
||||
>>> move.quantity = 10
|
||||
>>> move.from_location = supplier_loc
|
||||
>>> move.to_location = input_loc
|
||||
>>> move.unit_price = Decimal('5')
|
||||
>>> move.currency = shipment.company.currency
|
||||
>>> shipment.save()
|
||||
|
||||
Receive the shipment with one lot::
|
||||
|
||||
>>> incoming_move, = shipment.incoming_moves
|
||||
>>> incoming_move.lot = lot1
|
||||
>>> shipment.click('receive')
|
||||
>>> shipment.state
|
||||
'received'
|
||||
|
||||
Change lot and try to finish::
|
||||
|
||||
>>> incoming_move, = shipment.inventory_moves
|
||||
>>> assertEqual(incoming_move.lot, lot1)
|
||||
>>> incoming_move.lot = lot2
|
||||
>>> shipment.click('do')
|
||||
Traceback (most recent call last):
|
||||
...
|
||||
ShipmentCheckQuantityWarning: ...
|
||||
>>> incoming_move.reload()
|
||||
>>> incoming_move.lot = lot1
|
||||
>>> incoming_move.save()
|
||||
|
||||
Finish the shipment::
|
||||
|
||||
>>> shipment.click('do')
|
||||
>>> shipment.state
|
||||
'done'
|
||||
153
modules/stock_lot/tests/scenario_stock_lot_shipment_out.rst
Normal file
153
modules/stock_lot/tests/scenario_stock_lot_shipment_out.rst
Normal file
@@ -0,0 +1,153 @@
|
||||
===============================
|
||||
Stock Lot Shipment Out Scenario
|
||||
===============================
|
||||
|
||||
Imports::
|
||||
|
||||
>>> import datetime as dt
|
||||
>>> from decimal import Decimal
|
||||
|
||||
>>> from proteus import Model
|
||||
>>> from trytond.modules.company.tests.tools import create_company
|
||||
>>> from trytond.modules.currency.tests.tools import get_currency
|
||||
>>> from trytond.tests.tools import activate_modules, assertEqual
|
||||
|
||||
>>> today = dt.date.today()
|
||||
|
||||
Activate modules::
|
||||
|
||||
>>> config = activate_modules('stock_lot', create_company)
|
||||
|
||||
Create customer::
|
||||
|
||||
>>> Party = Model.get('party.party')
|
||||
>>> customer = Party(name='Customer')
|
||||
>>> customer.save()
|
||||
|
||||
Create product::
|
||||
|
||||
>>> ProductUom = Model.get('product.uom')
|
||||
>>> ProductTemplate = Model.get('product.template')
|
||||
>>> unit, = ProductUom.find([('name', '=', 'Unit')])
|
||||
|
||||
>>> template = ProductTemplate()
|
||||
>>> template.name = 'Product'
|
||||
>>> template.default_uom = unit
|
||||
>>> template.type = 'goods'
|
||||
>>> template.list_price = Decimal('20')
|
||||
>>> template.lot_required = ['storage']
|
||||
>>> template.save()
|
||||
>>> product, = template.products
|
||||
|
||||
Get stock locations::
|
||||
|
||||
>>> Location = Model.get('stock.location')
|
||||
>>> warehouse_loc, = Location.find([('code', '=', 'WH')])
|
||||
>>> supplier_loc, = Location.find([('code', '=', 'SUP')])
|
||||
>>> customer_loc, = Location.find([('code', '=', 'CUS')])
|
||||
>>> output_loc, = Location.find([('code', '=', 'OUT')])
|
||||
>>> storage_loc, = Location.find([('code', '=', 'STO')])
|
||||
|
||||
Create Shipment Out::
|
||||
|
||||
>>> ShipmentOut = Model.get('stock.shipment.out')
|
||||
>>> shipment_out = ShipmentOut()
|
||||
>>> shipment_out.planned_date = today
|
||||
>>> shipment_out.customer = customer
|
||||
>>> shipment_out.warehouse = warehouse_loc
|
||||
>>> move = shipment_out.outgoing_moves.new()
|
||||
>>> move.product = product
|
||||
>>> move.unit = unit
|
||||
>>> move.quantity = 10
|
||||
>>> move.from_location = output_loc
|
||||
>>> move.to_location = customer_loc
|
||||
>>> move.unit_price = Decimal('1')
|
||||
>>> move.currency = get_currency()
|
||||
>>> shipment_out.save()
|
||||
|
||||
Set the shipment state to waiting::
|
||||
|
||||
>>> shipment_out.click('wait')
|
||||
>>> len(shipment_out.outgoing_moves)
|
||||
1
|
||||
>>> len(shipment_out.inventory_moves)
|
||||
1
|
||||
|
||||
Split inventory move::
|
||||
|
||||
>>> move, = shipment_out.inventory_moves
|
||||
>>> move.quantity = 7
|
||||
>>> move.save()
|
||||
>>> with config.set_context(_stock_move_split=True):
|
||||
... _ = move.duplicate(default=dict(quantity=3))
|
||||
>>> shipment_out.reload()
|
||||
|
||||
Assign the shipment::
|
||||
|
||||
>>> shipment_out.click('assign_force')
|
||||
>>> shipment_out.state
|
||||
'assigned'
|
||||
>>> len(shipment_out.outgoing_moves)
|
||||
1
|
||||
|
||||
Check the inventory moves origin::
|
||||
|
||||
>>> outgoing_move, = shipment_out.outgoing_moves
|
||||
>>> for move in shipment_out.inventory_moves:
|
||||
... assertEqual(move.origin, outgoing_move)
|
||||
|
||||
Try to pick without lot::
|
||||
|
||||
>>> shipment_out.click('pick')
|
||||
Traceback (most recent call last):
|
||||
...
|
||||
RequiredValidationError: ...
|
||||
|
||||
Set 2 lots::
|
||||
|
||||
>>> Lot = Model.get('stock.lot')
|
||||
>>> for i, move in enumerate(shipment_out.inventory_moves, start=1):
|
||||
... lot = Lot(number='%05i' % i, product=move.product)
|
||||
... lot.save()
|
||||
... move.lot = lot
|
||||
>>> shipment_out.save()
|
||||
|
||||
Pick the shipment::
|
||||
|
||||
>>> shipment_out.click('pick')
|
||||
>>> shipment_out.state
|
||||
'picked'
|
||||
>>> len(shipment_out.outgoing_moves)
|
||||
3
|
||||
>>> sorted([m.quantity for m in shipment_out.outgoing_moves])
|
||||
[0.0, 3.0, 7.0]
|
||||
>>> lot_quantities = {}
|
||||
>>> for move in shipment_out.outgoing_moves:
|
||||
... number = move.lot.number if move.lot else ''
|
||||
... quantity = lot_quantities.setdefault(number, 0)
|
||||
... lot_quantities[number] += move.quantity
|
||||
>>> sorted(lot_quantities.items())
|
||||
[('', 0.0), ('00001', 7.0), ('00002', 3.0)]
|
||||
|
||||
Check the inventory moves have an outgoing move origin with the same lot::
|
||||
|
||||
>>> for move in shipment_out.inventory_moves:
|
||||
... assertEqual(move.lot, move.origin.lot)
|
||||
|
||||
Pack the shipment and return to pick::
|
||||
|
||||
>>> shipment_out.click('pack')
|
||||
>>> shipment_out.state
|
||||
'packed'
|
||||
>>> len(shipment_out.outgoing_moves)
|
||||
2
|
||||
>>> shipment_out.click('pick')
|
||||
>>> shipment_out.state
|
||||
'picked'
|
||||
>>> len(shipment_out.outgoing_moves)
|
||||
2
|
||||
|
||||
Check the inventory moves still have an outgoing move origin with the same lot::
|
||||
|
||||
>>> for move in shipment_out.inventory_moves:
|
||||
... assertEqual(move.lot, move.origin.lot)
|
||||
@@ -0,0 +1,133 @@
|
||||
====================================
|
||||
Stock Lot Shipment Internal Scenario
|
||||
====================================
|
||||
|
||||
Imports::
|
||||
|
||||
>>> import datetime as dt
|
||||
>>> from decimal import Decimal
|
||||
|
||||
>>> from proteus import Model
|
||||
>>> from trytond.modules.company.tests.tools import create_company
|
||||
>>> from trytond.tests.tools import activate_modules, assertEqual, assertTrue
|
||||
|
||||
>>> today = dt.date.today()
|
||||
>>> yesterday = today - dt.timedelta(days=1)
|
||||
>>> tomorrow = today + dt.timedelta(days=1)
|
||||
|
||||
Activate modules::
|
||||
|
||||
>>> config = activate_modules('stock_lot', create_company)
|
||||
|
||||
>>> LeadTime = Model.get('stock.location.lead_time')
|
||||
>>> Location = Model.get('stock.location')
|
||||
>>> Lot = Model.get('stock.lot')
|
||||
>>> ProductTemplate = Model.get('product.template')
|
||||
>>> ProductUom = Model.get('product.uom')
|
||||
>>> Shipment = Model.get('stock.shipment.internal')
|
||||
|
||||
Create product::
|
||||
|
||||
>>> unit, = ProductUom.find([('name', '=', 'Unit')])
|
||||
>>> template = ProductTemplate()
|
||||
>>> template.name = "Product"
|
||||
>>> template.default_uom = unit
|
||||
>>> template.type = 'goods'
|
||||
>>> template.list_price = Decimal('20')
|
||||
>>> template.save()
|
||||
>>> product, = template.products
|
||||
|
||||
Get stock locations::
|
||||
|
||||
>>> warehouse1, = Location.find([('type', '=', 'warehouse')])
|
||||
>>> warehouse2, = warehouse1.duplicate()
|
||||
|
||||
Add lead time between warehouses::
|
||||
|
||||
>>> lead_time = LeadTime()
|
||||
>>> lead_time.warehouse_from = warehouse1
|
||||
>>> lead_time.warehouse_to = warehouse2
|
||||
>>> lead_time.lead_time = dt.timedelta(1)
|
||||
>>> lead_time.save()
|
||||
|
||||
Create Internal Shipment with lead time::
|
||||
|
||||
>>> shipment = Shipment()
|
||||
>>> shipment.planned_date = tomorrow
|
||||
>>> shipment.from_location = warehouse1.storage_location
|
||||
>>> shipment.to_location = warehouse2.storage_location
|
||||
>>> assertTrue(shipment.transit_location)
|
||||
>>> assertEqual(shipment.planned_start_date, today)
|
||||
>>> move = shipment.moves.new()
|
||||
>>> move.product = product
|
||||
>>> move.quantity = 3
|
||||
>>> move.from_location = shipment.from_location
|
||||
>>> move.to_location = shipment.to_location
|
||||
>>> shipment.save()
|
||||
|
||||
Set the shipment state to waiting::
|
||||
|
||||
|
||||
>>> shipment.click('wait')
|
||||
>>> shipment.state
|
||||
'waiting'
|
||||
>>> len(shipment.outgoing_moves)
|
||||
1
|
||||
>>> len(shipment.incoming_moves)
|
||||
1
|
||||
|
||||
Split outgoing moves::
|
||||
|
||||
>>> move, = shipment.outgoing_moves
|
||||
>>> move.quantity = 1
|
||||
>>> move.save()
|
||||
>>> with config.set_context(_stock_move_split=True):
|
||||
... _ = move.duplicate(default=dict(quantity=2))
|
||||
>>> shipment.reload()
|
||||
|
||||
Assign the shipment::
|
||||
|
||||
>>> shipment.click('assign_force')
|
||||
>>> shipment.state
|
||||
'assigned'
|
||||
|
||||
>>> len(shipment.incoming_moves)
|
||||
1
|
||||
|
||||
Check the inventory moves origin::
|
||||
|
||||
>>> incoming_move, = shipment.incoming_moves
|
||||
>>> for move in shipment.outgoing_moves:
|
||||
... assertEqual(move.origin, incoming_move)
|
||||
|
||||
Set 2 lots::
|
||||
|
||||
>>> for i, move in enumerate(shipment.outgoing_moves, start=1):
|
||||
... lot = Lot(number='%05i' % i, product=move.product)
|
||||
... lot.save()
|
||||
... move.lot = lot
|
||||
>>> shipment.save()
|
||||
|
||||
Ship the shipment::
|
||||
|
||||
>>> shipment.effective_start_date = yesterday
|
||||
>>> shipment.click('pack')
|
||||
>>> shipment.click('ship')
|
||||
>>> shipment.state
|
||||
'shipped'
|
||||
>>> len(shipment.incoming_moves)
|
||||
3
|
||||
>>> sorted([m.quantity for m in shipment.incoming_moves])
|
||||
[0.0, 1.0, 2.0]
|
||||
>>> lot_quantities = {}
|
||||
>>> for move in shipment.incoming_moves:
|
||||
... number = move.lot.number if move.lot else ''
|
||||
... quantity = lot_quantities.setdefault(number, 0)
|
||||
... lot_quantities[number] += move.quantity
|
||||
>>> sorted(lot_quantities.items())
|
||||
[('', 0.0), ('00001', 1.0), ('00002', 2.0)]
|
||||
|
||||
Check the outgoing moves have an incoming move origin with the same lot::
|
||||
|
||||
>>> for move in shipment.outgoing_moves:
|
||||
... assertEqual(move.lot, move.origin.lot)
|
||||
80
modules/stock_lot/tests/scenario_stock_lot_trace.rst
Normal file
80
modules/stock_lot/tests/scenario_stock_lot_trace.rst
Normal file
@@ -0,0 +1,80 @@
|
||||
========================
|
||||
Stock Lot Trace Scenario
|
||||
========================
|
||||
|
||||
Imports::
|
||||
|
||||
>>> from decimal import Decimal
|
||||
|
||||
>>> from proteus import Model
|
||||
>>> from trytond.modules.company.tests.tools import create_company
|
||||
>>> from trytond.modules.currency.tests.tools import get_currency
|
||||
>>> from trytond.tests.tools import activate_modules
|
||||
|
||||
Activate modules::
|
||||
|
||||
>>> config = activate_modules('stock_lot', create_company)
|
||||
|
||||
>>> Location = Model.get('stock.location')
|
||||
>>> Lot = Model.get('stock.lot')
|
||||
>>> LotTrace = Model.get('stock.lot.trace')
|
||||
>>> Move = Model.get('stock.move')
|
||||
>>> ProductTemplate = Model.get('product.template')
|
||||
>>> UoM = Model.get('product.uom')
|
||||
|
||||
Create product::
|
||||
|
||||
>>> unit, = UoM.find([('name', '=', "Unit")])
|
||||
|
||||
>>> template = ProductTemplate(name="Product")
|
||||
>>> template.type = 'goods'
|
||||
>>> template.default_uom = unit
|
||||
>>> template.save()
|
||||
>>> product, = template.products
|
||||
|
||||
Create lot::
|
||||
|
||||
>>> lot = Lot(product=product, number="1")
|
||||
>>> lot.save()
|
||||
|
||||
Get locations::
|
||||
|
||||
>>> supplier_loc, = Location.find([('code', '=', 'SUP')])
|
||||
>>> storage_loc, = Location.find([('code', '=', 'STO')])
|
||||
>>> customer_loc, = Location.find([('code', '=', 'CUS')])
|
||||
|
||||
Make some moves::
|
||||
|
||||
>>> move_in = Move(product=product, lot=lot)
|
||||
>>> move_in.quantity = 10
|
||||
>>> move_in.from_location = supplier_loc
|
||||
>>> move_in.to_location = storage_loc
|
||||
>>> move_in.currency = get_currency()
|
||||
>>> move_in.unit_price = Decimal('0')
|
||||
>>> move_in.click('do')
|
||||
>>> move_in.state
|
||||
'done'
|
||||
|
||||
>>> move_out = Move(product=product, lot=lot)
|
||||
>>> move_out.quantity = 2
|
||||
>>> move_out.from_location = storage_loc
|
||||
>>> move_out.to_location = customer_loc
|
||||
>>> move_out.currency = get_currency()
|
||||
>>> move_out.unit_price = Decimal('0')
|
||||
>>> move_out.click('do')
|
||||
>>> move_out.state
|
||||
'done'
|
||||
|
||||
Check lot traces::
|
||||
|
||||
>>> trace = LotTrace(move_in.id)
|
||||
>>> trace.upward_traces == [LotTrace(move_out.id)]
|
||||
True
|
||||
>>> trace.downward_traces
|
||||
[]
|
||||
|
||||
>>> trace = LotTrace(move_out.id)
|
||||
>>> trace.upward_traces
|
||||
[]
|
||||
>>> trace.downward_traces == [LotTrace(move_in.id)]
|
||||
True
|
||||
313
modules/stock_lot/tests/test_module.py
Normal file
313
modules/stock_lot/tests/test_module.py
Normal file
@@ -0,0 +1,313 @@
|
||||
# This file is part of Tryton. The COPYRIGHT file at the top level of
|
||||
# this repository contains the full copyright notices and license terms.
|
||||
|
||||
import datetime as dt
|
||||
from decimal import Decimal
|
||||
|
||||
from trytond.modules.company.tests import (
|
||||
CompanyTestMixin, create_company, set_company)
|
||||
from trytond.pool import Pool
|
||||
from trytond.tests.test_tryton import ModuleTestCase, with_transaction
|
||||
from trytond.transaction import Transaction
|
||||
|
||||
|
||||
class StockLotTestCase(CompanyTestMixin, ModuleTestCase):
|
||||
'Test Stock Lot module'
|
||||
module = 'stock_lot'
|
||||
extras = ['stock_split']
|
||||
|
||||
@with_transaction()
|
||||
def test_products_by_location(self):
|
||||
'Test products_by_location'
|
||||
pool = Pool()
|
||||
Uom = pool.get('product.uom')
|
||||
Template = pool.get('product.template')
|
||||
Product = pool.get('product.product')
|
||||
Location = pool.get('stock.location')
|
||||
Move = pool.get('stock.move')
|
||||
Lot = pool.get('stock.lot')
|
||||
|
||||
kg, = Uom.search([('name', '=', 'Kilogram')])
|
||||
g, = Uom.search([('name', '=', 'Gram')])
|
||||
template, = Template.create([{
|
||||
'name': 'Test products_by_location',
|
||||
'type': 'goods',
|
||||
'default_uom': kg.id,
|
||||
}])
|
||||
product, = Product.create([{
|
||||
'template': template.id,
|
||||
}])
|
||||
supplier, = Location.search([('code', '=', 'SUP')])
|
||||
customer, = Location.search([('code', '=', 'CUS')])
|
||||
storage, = Location.search([('code', '=', 'STO')])
|
||||
company = create_company()
|
||||
currency = company.currency
|
||||
with set_company(company):
|
||||
lot1, lot2 = Lot.create([{
|
||||
'number': '1',
|
||||
'product': product.id,
|
||||
}, {
|
||||
'number': '2',
|
||||
'product': product.id,
|
||||
}])
|
||||
|
||||
moves = Move.create([{
|
||||
'product': product.id,
|
||||
'lot': lot1.id,
|
||||
'unit': kg.id,
|
||||
'quantity': 5,
|
||||
'from_location': supplier.id,
|
||||
'to_location': storage.id,
|
||||
'company': company.id,
|
||||
'unit_price': Decimal('1'),
|
||||
'currency': currency.id,
|
||||
}, {
|
||||
'product': product.id,
|
||||
'lot': lot2.id,
|
||||
'unit': kg.id,
|
||||
'quantity': 10,
|
||||
'from_location': supplier.id,
|
||||
'to_location': storage.id,
|
||||
'company': company.id,
|
||||
'unit_price': Decimal('1'),
|
||||
'currency': currency.id,
|
||||
}, {
|
||||
'product': product.id,
|
||||
'lot': lot2.id,
|
||||
'unit': kg.id,
|
||||
'quantity': 2,
|
||||
'from_location': storage.id,
|
||||
'to_location': customer.id,
|
||||
'company': company.id,
|
||||
'unit_price': Decimal('1'),
|
||||
'currency': currency.id,
|
||||
}, {
|
||||
'product': product.id,
|
||||
'lot': None,
|
||||
'unit': kg.id,
|
||||
'quantity': 3,
|
||||
'from_location': supplier.id,
|
||||
'to_location': storage.id,
|
||||
'company': company.id,
|
||||
'unit_price': Decimal('1'),
|
||||
'currency': currency.id,
|
||||
}])
|
||||
Move.do(moves)
|
||||
|
||||
self.assertEqual(Product.products_by_location([storage.id],
|
||||
grouping_filter=([product.id],)), {
|
||||
(storage.id, product.id): 16,
|
||||
})
|
||||
self.assertEqual(Product.products_by_location([storage.id],
|
||||
grouping=('product', 'lot',),
|
||||
grouping_filter=([product.id],)), {
|
||||
(storage.id, product.id, lot1.id): 5,
|
||||
(storage.id, product.id, lot2.id): 8,
|
||||
(storage.id, product.id, None): 3,
|
||||
})
|
||||
with Transaction().set_context(locations=[storage.id]):
|
||||
lot1, lot2 = Lot.browse([lot1, lot2])
|
||||
self.assertEqual(lot1.quantity, 5)
|
||||
self.assertEqual(lot2.quantity, 8)
|
||||
|
||||
@with_transaction()
|
||||
def test_period(self):
|
||||
'Test period'
|
||||
pool = Pool()
|
||||
Uom = pool.get('product.uom')
|
||||
Template = pool.get('product.template')
|
||||
Product = pool.get('product.product')
|
||||
Location = pool.get('stock.location')
|
||||
Move = pool.get('stock.move')
|
||||
Lot = pool.get('stock.lot')
|
||||
Period = pool.get('stock.period')
|
||||
|
||||
unit, = Uom.search([('name', '=', 'Unit')])
|
||||
template, = Template.create([{
|
||||
'name': 'Test period',
|
||||
'type': 'goods',
|
||||
'default_uom': unit.id,
|
||||
}])
|
||||
product, = Product.create([{
|
||||
'template': template.id,
|
||||
}])
|
||||
supplier, = Location.search([('code', '=', 'SUP')])
|
||||
storage, = Location.search([('code', '=', 'STO')])
|
||||
company = create_company()
|
||||
currency = company.currency
|
||||
with set_company(company):
|
||||
lot1, lot2 = Lot.create([{
|
||||
'number': '1',
|
||||
'product': product.id,
|
||||
}, {
|
||||
'number': '2',
|
||||
'product': product.id,
|
||||
}])
|
||||
|
||||
today = dt.date.today()
|
||||
|
||||
moves = Move.create([{
|
||||
'product': product.id,
|
||||
'lot': lot1.id,
|
||||
'unit': unit.id,
|
||||
'quantity': 5,
|
||||
'from_location': supplier.id,
|
||||
'to_location': storage.id,
|
||||
'planned_date': today - dt.timedelta(days=1),
|
||||
'effective_date': today - dt.timedelta(days=1),
|
||||
'company': company.id,
|
||||
'unit_price': Decimal('1'),
|
||||
'currency': currency.id,
|
||||
}, {
|
||||
'product': product.id,
|
||||
'lot': lot2.id,
|
||||
'unit': unit.id,
|
||||
'quantity': 10,
|
||||
'from_location': supplier.id,
|
||||
'to_location': storage.id,
|
||||
'planned_date': today - dt.timedelta(days=1),
|
||||
'effective_date': today - dt.timedelta(days=1),
|
||||
'company': company.id,
|
||||
'unit_price': Decimal('1'),
|
||||
'currency': currency.id,
|
||||
}, {
|
||||
'product': product.id,
|
||||
'lot': None,
|
||||
'unit': unit.id,
|
||||
'quantity': 3,
|
||||
'from_location': supplier.id,
|
||||
'to_location': storage.id,
|
||||
'planned_date': today - dt.timedelta(days=1),
|
||||
'effective_date': today - dt.timedelta(days=1),
|
||||
'company': company.id,
|
||||
'unit_price': Decimal('1'),
|
||||
'currency': currency.id,
|
||||
}])
|
||||
Move.do(moves)
|
||||
|
||||
period, = Period.create([{
|
||||
'date': today - dt.timedelta(days=1),
|
||||
'company': company.id,
|
||||
}])
|
||||
Period.close([period])
|
||||
self.assertEqual(period.state, 'closed')
|
||||
|
||||
quantities = {
|
||||
supplier: -18,
|
||||
storage: 18,
|
||||
}
|
||||
for cache in period.caches:
|
||||
self.assertEqual(cache.product, product)
|
||||
self.assertEqual(cache.internal_quantity,
|
||||
quantities[cache.location])
|
||||
|
||||
quantities = {
|
||||
(supplier, lot1): -5,
|
||||
(storage, lot1): 5,
|
||||
(supplier, lot2): -10,
|
||||
(storage, lot2): 10,
|
||||
(supplier, None): -3,
|
||||
(storage, None): 3,
|
||||
}
|
||||
for lot_cache in period.lot_caches:
|
||||
self.assertEqual(lot_cache.product, product)
|
||||
self.assertEqual(lot_cache.internal_quantity,
|
||||
quantities[(lot_cache.location, lot_cache.lot)])
|
||||
|
||||
@with_transaction()
|
||||
def test_assign_try_with_lot(self):
|
||||
"Test Move assign_try with lot"
|
||||
pool = Pool()
|
||||
Template = pool.get('product.template')
|
||||
Product = pool.get('product.product')
|
||||
Uom = pool.get('product.uom')
|
||||
Location = pool.get('stock.location')
|
||||
Move = pool.get('stock.move')
|
||||
Lot = pool.get('stock.lot')
|
||||
|
||||
unit, = Uom.search([('name', '=', 'Meter')])
|
||||
template = Template(
|
||||
name="Product",
|
||||
type='goods',
|
||||
default_uom=unit,
|
||||
)
|
||||
template.save()
|
||||
product = Product(template=template.id)
|
||||
product.save()
|
||||
|
||||
supplier, = Location.search([('code', '=', 'SUP')])
|
||||
storage, = Location.search([('code', '=', 'STO')])
|
||||
customer, = Location.search([('code', '=', 'CUS')])
|
||||
|
||||
company = create_company()
|
||||
with set_company(company):
|
||||
lot1, lot2 = Lot.create([{
|
||||
'number': "1",
|
||||
'product': product.id,
|
||||
}, {
|
||||
'number': "2",
|
||||
'product': product.id,
|
||||
}])
|
||||
moves = Move.create([{
|
||||
'product': product.id,
|
||||
'lot': lot1.id,
|
||||
'unit': unit.id,
|
||||
'quantity': 2,
|
||||
'from_location': supplier.id,
|
||||
'to_location': storage.id,
|
||||
'company': company.id,
|
||||
'unit_price': Decimal(1),
|
||||
'currency': company.currency.id,
|
||||
}, {
|
||||
'product': product.id,
|
||||
'lot': lot2.id,
|
||||
'unit': unit.id,
|
||||
'quantity': 3,
|
||||
'from_location': supplier.id,
|
||||
'to_location': storage.id,
|
||||
'company': company.id,
|
||||
'unit_price': Decimal(1),
|
||||
'currency': company.currency.id,
|
||||
}, {
|
||||
'product': product.id,
|
||||
'lot': None,
|
||||
'unit': unit.id,
|
||||
'quantity': 3,
|
||||
'from_location': supplier.id,
|
||||
'to_location': storage.id,
|
||||
'company': company.id,
|
||||
'unit_price': Decimal(1),
|
||||
'currency': company.currency.id,
|
||||
}])
|
||||
Move.do(moves)
|
||||
|
||||
move, = Move.create([{
|
||||
'product': product.id,
|
||||
'unit': unit.id,
|
||||
'quantity': 10,
|
||||
'from_location': storage.id,
|
||||
'to_location': customer.id,
|
||||
'company': company.id,
|
||||
'unit_price': Decimal(1),
|
||||
'currency': company.currency.id,
|
||||
}])
|
||||
|
||||
self.assertFalse(
|
||||
Move.assign_try([move], grouping=('product', 'lot')))
|
||||
moves = Move.search([
|
||||
('product', '=', product.id),
|
||||
('from_location', '=', storage.id),
|
||||
('to_location', '=', customer.id),
|
||||
('company', '=', company.id),
|
||||
])
|
||||
self.assertEqual(len(moves), 4)
|
||||
self.assertEqual({
|
||||
(m.lot, m.quantity, m.state) for m in moves}, {
|
||||
(lot1, 2, 'assigned'),
|
||||
(lot2, 3, 'assigned'),
|
||||
(None, 3, 'assigned'),
|
||||
(None, 2, 'draft'),
|
||||
})
|
||||
|
||||
|
||||
del ModuleTestCase
|
||||
8
modules/stock_lot/tests/test_scenario.py
Normal file
8
modules/stock_lot/tests/test_scenario.py
Normal file
@@ -0,0 +1,8 @@
|
||||
# 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 load_doc_tests
|
||||
|
||||
|
||||
def load_tests(*args, **kwargs):
|
||||
return load_doc_tests(__name__, __file__, *args, **kwargs)
|
||||
46
modules/stock_lot/tryton.cfg
Normal file
46
modules/stock_lot/tryton.cfg
Normal file
@@ -0,0 +1,46 @@
|
||||
[tryton]
|
||||
version=7.8.0
|
||||
depends:
|
||||
ir
|
||||
product
|
||||
stock
|
||||
extras_depend:
|
||||
sale_supply_drop_shipment
|
||||
stock_split
|
||||
xml:
|
||||
ir.xml
|
||||
stock.xml
|
||||
product.xml
|
||||
message.xml
|
||||
|
||||
[register]
|
||||
model:
|
||||
product.Configuration
|
||||
product.ConfigurationDefaultLotSequence
|
||||
product.Template
|
||||
product.Product
|
||||
stock.Lot
|
||||
stock.LotTrace
|
||||
stock.LotByLocationContext
|
||||
stock.LotsByLocations
|
||||
stock.Location
|
||||
stock.Move
|
||||
stock.MoveAddLotsStart
|
||||
stock.MoveAddLotsStartLot
|
||||
stock.ShipmentIn
|
||||
stock.ShipmentOut
|
||||
stock.ShipmentOutReturn
|
||||
stock.ShipmentInternal
|
||||
stock.Period
|
||||
stock.PeriodCacheLot
|
||||
stock.Inventory
|
||||
stock.InventoryLine
|
||||
stock.InventoryCountSearch
|
||||
stock.InventoryCountQuantity
|
||||
wizard:
|
||||
stock.MoveAddLots
|
||||
stock.InventoryCount
|
||||
|
||||
[register sale_supply_drop_shipment]
|
||||
model:
|
||||
stock.ShipmentDrop
|
||||
9
modules/stock_lot/view/inventory_count_quantity_form.xml
Normal file
9
modules/stock_lot/view/inventory_count_quantity_form.xml
Normal file
@@ -0,0 +1,9 @@
|
||||
<?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="/form/field[@name='product']" position="after">
|
||||
<label name="lot"/>
|
||||
<field name="lot"/>
|
||||
</xpath>
|
||||
</data>
|
||||
9
modules/stock_lot/view/inventory_line_form.xml
Normal file
9
modules/stock_lot/view/inventory_line_form.xml
Normal file
@@ -0,0 +1,9 @@
|
||||
<?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="/form/field[@name='product']" position="after">
|
||||
<label name="lot"/>
|
||||
<field name="lot"/>
|
||||
</xpath>
|
||||
</data>
|
||||
8
modules/stock_lot/view/inventory_line_list.xml
Normal file
8
modules/stock_lot/view/inventory_line_list.xml
Normal file
@@ -0,0 +1,8 @@
|
||||
<?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="/tree/field[@name='product']" position="after">
|
||||
<field name="lot" expand="1"/>
|
||||
</xpath>
|
||||
</data>
|
||||
8
modules/stock_lot/view/lot_by_location_context_form.xml
Normal file
8
modules/stock_lot/view/lot_by_location_context_form.xml
Normal file
@@ -0,0 +1,8 @@
|
||||
<?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. -->
|
||||
<form>
|
||||
<label name="forecast_date"/>
|
||||
<field name="forecast_date"/>
|
||||
<field name="stock_date_end" invisible="1" colspan="4"/>
|
||||
</form>
|
||||
19
modules/stock_lot/view/lot_form.xml
Normal file
19
modules/stock_lot/view/lot_form.xml
Normal file
@@ -0,0 +1,19 @@
|
||||
<?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. -->
|
||||
<form>
|
||||
<label name="number"/>
|
||||
<field name="number"/>
|
||||
<group col="-1" colspan="2" id="checkboxes">
|
||||
<label name="active"/>
|
||||
<field name="active" xexpand="0" width="25"/>
|
||||
</group>
|
||||
|
||||
<label name="product"/>
|
||||
<field name="product"/>
|
||||
|
||||
<group id="relates" colspan="4" col="-1">
|
||||
<button name="upward_traces" icon="tryton-arrow-up"/>
|
||||
<button name="downward_traces" icon="tryton-arrow-down"/>
|
||||
</group>
|
||||
</form>
|
||||
9
modules/stock_lot/view/lot_list_stock_move.xml
Normal file
9
modules/stock_lot/view/lot_list_stock_move.xml
Normal file
@@ -0,0 +1,9 @@
|
||||
<?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. -->
|
||||
<tree>
|
||||
<field name="number" expand="1"/>
|
||||
<field name="product" expand="1"/>
|
||||
<field name="quantity" symbol="default_uom"/>
|
||||
<field name="forecast_quantity" symbol="default_uom" optional="1"/>
|
||||
</tree>
|
||||
12
modules/stock_lot/view/lot_trace_tree.xml
Normal file
12
modules/stock_lot/view/lot_trace_tree.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. -->
|
||||
<tree>
|
||||
<field name="document" expand="2"/>
|
||||
<field name="product" expand="1"/>
|
||||
<field name="lot" expand="1"/>
|
||||
<field name="from_location" expand="1" optional="1"/>
|
||||
<field name="to_location" expand="1" optional="1"/>
|
||||
<field name="quantity" symbol="unit"/>
|
||||
<field name="date"/>
|
||||
</tree>
|
||||
7
modules/stock_lot/view/lot_tree.xml
Normal file
7
modules/stock_lot/view/lot_tree.xml
Normal file
@@ -0,0 +1,7 @@
|
||||
<?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. -->
|
||||
<tree>
|
||||
<field name="number" expand="1"/>
|
||||
<field name="product" expand="1"/>
|
||||
</tree>
|
||||
9
modules/stock_lot/view/lots_by_locations_list.xml
Normal file
9
modules/stock_lot/view/lots_by_locations_list.xml
Normal file
@@ -0,0 +1,9 @@
|
||||
<?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. -->
|
||||
<tree>
|
||||
<field name="lot" expand="1"/>
|
||||
<field name="product" expand="1"/>
|
||||
<field name="quantity" symbol="default_uom"/>
|
||||
<field name="forecast_quantity" symbol="default_uom"/>
|
||||
</tree>
|
||||
12
modules/stock_lot/view/move_form.xml
Normal file
12
modules/stock_lot/view/move_form.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. -->
|
||||
<data>
|
||||
<xpath expr="/form/field[@name='product']" position="after">
|
||||
<label name="lot"/>
|
||||
<field name="lot" view_ids="stock_lot.lot_view_list_stock_move"/>
|
||||
</xpath>
|
||||
<xpath expr="/form/group[@id='buttons']" position="inside">
|
||||
<button name="add_lots_wizard" icon="tryton-add"/>
|
||||
</xpath>
|
||||
</data>
|
||||
11
modules/stock_lot/view/move_tree.xml
Normal file
11
modules/stock_lot/view/move_tree.xml
Normal file
@@ -0,0 +1,11 @@
|
||||
<?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="/tree/field[@name='product']" position="after">
|
||||
<field name="lot" expand="1" optional="0"/>
|
||||
</xpath>
|
||||
<xpath expr="/tree" position="inside">
|
||||
<button name="add_lots_wizard"/>
|
||||
</xpath>
|
||||
</data>
|
||||
15
modules/stock_lot/view/period_cache_lot_form.xml
Normal file
15
modules/stock_lot/view/period_cache_lot_form.xml
Normal file
@@ -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. -->
|
||||
<form col="8">
|
||||
<label name="period"/>
|
||||
<field name="period" colspan="6"/>
|
||||
<label name="location"/>
|
||||
<field name="location"/>
|
||||
<label name="product"/>
|
||||
<field name="product"/>
|
||||
<label name="lot"/>
|
||||
<field name="lot"/>
|
||||
<label name="internal_quantity"/>
|
||||
<field name="internal_quantity"/>
|
||||
</form>
|
||||
10
modules/stock_lot/view/period_cache_lot_list.xml
Normal file
10
modules/stock_lot/view/period_cache_lot_list.xml
Normal file
@@ -0,0 +1,10 @@
|
||||
<?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. -->
|
||||
<tree>
|
||||
<field name="period"/>
|
||||
<field name="location"/>
|
||||
<field name="product"/>
|
||||
<field name="lot"/>
|
||||
<field name="internal_quantity"/>
|
||||
</tree>
|
||||
9
modules/stock_lot/view/product_configuration_form.xml
Normal file
9
modules/stock_lot/view/product_configuration_form.xml
Normal file
@@ -0,0 +1,9 @@
|
||||
<?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='product_sequence']" position="after">
|
||||
<label name="default_lot_sequence"/>
|
||||
<field name="default_lot_sequence"/>
|
||||
</xpath>
|
||||
</data>
|
||||
20
modules/stock_lot/view/stock_move_add_lots_start_form.xml
Normal file
20
modules/stock_lot/view/stock_move_add_lots_start_form.xml
Normal file
@@ -0,0 +1,20 @@
|
||||
<?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. -->
|
||||
<form>
|
||||
<label name="product"/>
|
||||
<field name="product" colspan="3"/>
|
||||
|
||||
<label name="quantity"/>
|
||||
<field name="quantity" symbol="unit"/>
|
||||
<label name="quantity_remaining" string="Remaining:"/>
|
||||
<field name="quantity_remaining" symbol="unit"/>
|
||||
|
||||
<field name="lots" colspan="4"/>
|
||||
|
||||
<group col="-1" colspan="2" id="duplicate_lot">
|
||||
<button name="duplicate_lot" icon="tryton-copy"/>
|
||||
<field name="duplicate_lot_number" xexpand="0"/>
|
||||
<label name="duplicate_lot_number" string="times"/>
|
||||
</group>
|
||||
</form>
|
||||
@@ -0,0 +1,9 @@
|
||||
<?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. -->
|
||||
<tree editable="1">
|
||||
<field name="parent" expand="1"/>
|
||||
<field name="number" expand="2"/>
|
||||
<field name="product" expand="1"/>
|
||||
<field name="quantity"/>
|
||||
</tree>
|
||||
13
modules/stock_lot/view/template_form.xml
Normal file
13
modules/stock_lot/view/template_form.xml
Normal file
@@ -0,0 +1,13 @@
|
||||
<?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="/form/notebook/page[@id='general']" position="after">
|
||||
<page string="Lots" name="lot_required">
|
||||
<label name="lot_required"/>
|
||||
<field name="lot_required" yexpand="0"/>
|
||||
<label name="lot_sequence"/>
|
||||
<field name="lot_sequence"/>
|
||||
</page>
|
||||
</xpath>
|
||||
</data>
|
||||
Reference in New Issue
Block a user