[[ (a.type =='view' and a.level >= 3) and setTag('para','para',{'style': 'terp_level_3_code_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(3,a.level))+'_code'}) ]][[ a.code ]]
[[ (a.type =='view' and a.level >= 3) and setTag('para','para',{'style': 'terp_level_'+str(min(3,a.level))+'_name_bold'}) or setTag('para','para',{'style': 'terp_level_'+str(min(4,a.level))+'_name'}) ]][[ a.name ]]
diff --git a/addons/account/report/account_tax_code.py b/addons/account/report/account_tax_code.py
deleted file mode 100644
index 56895987b45..00000000000
--- a/addons/account/report/account_tax_code.py
+++ /dev/null
@@ -1,63 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-import time
-from report import report_sxw
-
-def _get_country(record):
- if record.partner_id \
- and record.partner_id.address \
- and record.partner_id.address[0].country_id:
- return record.partner_id.address[0].country_id.code
- else:
- return ''
-
-def _record_to_report_line(record):
- return {'date': record.date,
- 'ref': record.ref,
- 'acode': record.account_id.code,
- 'name': record.name,
- 'debit': record.debit,
- 'credit': record.credit,
- 'pname': record.partner_id and record.partner_id.name or '',
- 'country': _get_country(record)
- }
-
-class account_tax_code_report(report_sxw.rml_parse):
- def __init__(self, cr, uid, name, context):
- super(account_tax_code_report, self).__init__(cr, uid, name, context=context)
- self.localcontext.update({
- 'time': time,
- 'get_line':self.get_line,
- })
-
- def get_line(self, obj):
- line_ids = self.pool.get('account.move.line').search(self.cr, self.uid, [('tax_code_id','=',obj.id)])
- if not line_ids: return []
-
- return map(_record_to_report_line,
- self.pool.get('account.move.line')\
- .browse(self.cr, self.uid, line_ids))
-
-report_sxw.report_sxw('report.account.tax.code.entries', 'account.tax.code',
- 'addons/account/report/account_tax_code.rml', parser=account_tax_code_report, header="internal")
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/report/account_tax_code.rml b/addons/account/report/account_tax_code.rml
deleted file mode 100644
index 10a7c76a821..00000000000
--- a/addons/account/report/account_tax_code.rml
+++ /dev/null
@@ -1,144 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- [[ repeatIn(objects, 'o') ]]
-
-
+
+
+
+ Dashboard Definition
+ board.board
+ form
+ tree,form
+
+
-
- Dashboard Definition
- board.board
- form
- tree,form
-
-
+
-
-
-
-
-
+
diff --git a/addons/board/i18n/es_CL.po b/addons/board/i18n/es_CL.po
new file mode 100644
index 00000000000..1a603deddb1
--- /dev/null
+++ b/addons/board/i18n/es_CL.po
@@ -0,0 +1,395 @@
+# Spanish (Chile) translation for openobject-addons
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR , 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2011-01-11 11:14+0000\n"
+"PO-Revision-Date: 2011-10-03 16:58+0000\n"
+"Last-Translator: David Acevedo Toledo \n"
+"Language-Team: Spanish (Chile) \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2011-10-04 05:01+0000\n"
+"X-Generator: Launchpad (build 14071)\n"
+
+#. module: board
+#: view:res.log.report:0
+msgid " Year "
+msgstr " Año "
+
+#. module: board
+#: model:ir.model,name:board.model_board_menu_create
+msgid "Menu Create"
+msgstr "Crear menú"
+
+#. module: board
+#: view:board.note:0
+#: field:board.note.type,name:0
+#: model:ir.model,name:board.model_board_note_type
+msgid "Note Type"
+msgstr "Tipo de nota"
+
+#. module: board
+#: view:board.note:0
+#: field:board.note,user_id:0
+msgid "Author"
+msgstr "Autor"
+
+#. module: board
+#: model:ir.module.module,shortdesc:board.module_meta_information
+msgid "Dashboard main module"
+msgstr "Módulo principal de tableros"
+
+#. module: board
+#: view:res.users:0
+msgid "Latest Connections"
+msgstr "Últimas conexiones"
+
+#. module: board
+#: code:addons/board/wizard/board_menu_create.py:45
+#, python-format
+msgid "User Error!"
+msgstr "¡Error de usuario!"
+
+#. module: board
+#: view:board.board:0
+#: model:ir.actions.act_window,name:board.open_board_administration_form
+#: model:ir.ui.menu,name:board.menu_board_admin
+msgid "Administration Dashboard"
+msgstr "Tablero de Administración"
+
+#. module: board
+#: view:board.note:0
+#: field:board.note,note:0
+#: model:ir.model,name:board.model_board_note
+msgid "Note"
+msgstr "Nota"
+
+#. module: board
+#: view:board.note:0
+#: view:res.log.report:0
+msgid "Group By..."
+msgstr "Agrupar por..."
+
+#. module: board
+#: model:ir.model,name:board.model_board_board
+msgid "Board"
+msgstr "Tablero"
+
+#. module: board
+#: view:board.board:0
+#: model:ir.actions.act_window,name:board.board_weekly_res_log_report_action
+#: view:res.log.report:0
+msgid "Weekly Global Activity"
+msgstr "Actividad global semanal"
+
+#. module: board
+#: field:board.board.line,name:0
+msgid "Title"
+msgstr "Título"
+
+#. module: board
+#: field:res.log.report,nbr:0
+msgid "# of Entries"
+msgstr "Nº de entradas"
+
+#. module: board
+#: view:res.log.report:0
+#: field:res.log.report,month:0
+msgid "Month"
+msgstr "Mes"
+
+#. module: board
+#: model:ir.actions.act_window,name:board.dashboard_open
+msgid "Open Dashboard"
+msgstr "Abrir tablero"
+
+#. module: board
+#: view:board.board:0
+#: model:ir.actions.act_window,name:board.board_monthly_res_log_report_action
+#: view:res.log.report:0
+msgid "Monthly Activity per Document"
+msgstr "Actividad mensual por documento"
+
+#. module: board
+#: view:res.log.report:0
+msgid "Log Analysis"
+msgstr "Análisis de registro"
+
+#. module: board
+#: model:ir.actions.act_window,name:board.action_view_board_list_form
+#: model:ir.ui.menu,name:board.menu_view_board_form
+msgid "Dashboard Definition"
+msgstr "Definición de tablero"
+
+#. module: board
+#: selection:res.log.report,month:0
+msgid "March"
+msgstr "Marzo"
+
+#. module: board
+#: selection:res.log.report,month:0
+msgid "August"
+msgstr "Agosto"
+
+#. module: board
+#: view:board.board:0
+#: model:ir.actions.act_window,name:board.action_user_connection_tree
+msgid "User Connections"
+msgstr "Conexiones de usuario"
+
+#. module: board
+#: field:res.log.report,creation_date:0
+msgid "Creation Date"
+msgstr "Fecha de Creación"
+
+#. module: board
+#: model:ir.actions.act_window,name:board.action_view_board_note_form
+#: model:ir.ui.menu,name:board.menu_view_board_note_form
+msgid "Publish a note"
+msgstr "Publicar una nota"
+
+#. module: board
+#: view:board.menu.create:0
+msgid "Menu Information"
+msgstr "Información del menú"
+
+#. module: board
+#: selection:res.log.report,month:0
+msgid "June"
+msgstr "Junio"
+
+#. module: board
+#: field:board.note,type:0
+msgid "Note type"
+msgstr "Tipo de nota"
+
+#. module: board
+#: field:board.board,line_ids:0
+msgid "Action Views"
+msgstr "Vistas de acciones"
+
+#. module: board
+#: model:ir.model,name:board.model_res_log_report
+msgid "Log Report"
+msgstr "Informe de registro"
+
+#. module: board
+#: view:board.note:0
+#: field:board.note,date:0
+msgid "Date"
+msgstr "Fecha"
+
+#. module: board
+#: selection:res.log.report,month:0
+msgid "July"
+msgstr "Julio"
+
+#. module: board
+#: view:res.log.report:0
+msgid "Extended Filters..."
+msgstr "Filtros extendidos..."
+
+#. module: board
+#: view:res.log.report:0
+#: field:res.log.report,day:0
+msgid "Day"
+msgstr "Dia"
+
+#. module: board
+#: view:board.menu.create:0
+msgid "Create Menu For Dashboard"
+msgstr "Crear menú para tablero"
+
+#. module: board
+#: selection:res.log.report,month:0
+msgid "February"
+msgstr "Febrero"
+
+#. module: board
+#: selection:res.log.report,month:0
+msgid "October"
+msgstr "Octubre"
+
+#. module: board
+#: model:ir.model,name:board.model_board_board_line
+msgid "Board Line"
+msgstr "Línea tablero"
+
+#. module: board
+#: field:board.menu.create,menu_parent_id:0
+msgid "Parent Menu"
+msgstr "Menú padre"
+
+#. module: board
+#: view:res.log.report:0
+msgid " Month-1 "
+msgstr " Mes-1 "
+
+#. module: board
+#: selection:res.log.report,month:0
+msgid "January"
+msgstr "Enero"
+
+#. module: board
+#: view:board.note:0
+msgid "Notes"
+msgstr "Notas"
+
+#. module: board
+#: selection:res.log.report,month:0
+msgid "November"
+msgstr "Noviembre"
+
+#. module: board
+#: help:board.board.line,sequence:0
+msgid ""
+"Gives the sequence order when displaying a list of "
+"board lines."
+msgstr ""
+"Indica el orden de secuencia cuando se muestra una lista de líneas de "
+"tablero."
+
+#. module: board
+#: selection:res.log.report,month:0
+msgid "April"
+msgstr "Abril"
+
+#. module: board
+#: view:board.board:0
+#: field:board.board,name:0
+#: field:board.board.line,board_id:0
+#: model:ir.ui.menu,name:board.admin_menu_dasboard
+#: model:ir.ui.menu,name:board.menu_dasboard
+msgid "Dashboard"
+msgstr "Tablero"
+
+#. module: board
+#: model:ir.module.module,description:board.module_meta_information
+msgid "Base module for all dashboards."
+msgstr "Módulo base para todos los tableros."
+
+#. module: board
+#: field:board.board.line,action_id:0
+msgid "Action"
+msgstr "Acción."
+
+#. module: board
+#: field:board.board.line,position:0
+msgid "Position"
+msgstr "Posición"
+
+#. module: board
+#: view:res.log.report:0
+msgid "Model"
+msgstr "Modelo"
+
+#. module: board
+#: field:board.menu.create,menu_name:0
+msgid "Menu Name"
+msgstr "Nombre del menú"
+
+#. module: board
+#: view:board.board:0
+#: model:ir.actions.act_window,name:board.action_latest_activities_tree
+msgid "Latest Activities"
+msgstr "Últimas actividades"
+
+#. module: board
+#: selection:board.board.line,position:0
+msgid "Left"
+msgstr "Izquieda"
+
+#. module: board
+#: field:board.board,view_id:0
+msgid "Board View"
+msgstr "Vista de tablero"
+
+#. module: board
+#: selection:board.board.line,position:0
+msgid "Right"
+msgstr "Derecha"
+
+#. module: board
+#: field:board.board.line,width:0
+msgid "Width"
+msgstr "Ancho"
+
+#. module: board
+#: view:res.log.report:0
+msgid " Month "
+msgstr " Mes "
+
+#. module: board
+#: field:board.board.line,sequence:0
+msgid "Sequence"
+msgstr "Secuencia"
+
+#. module: board
+#: selection:res.log.report,month:0
+msgid "September"
+msgstr "Septiembre"
+
+#. module: board
+#: selection:res.log.report,month:0
+msgid "December"
+msgstr "Diciembre"
+
+#. module: board
+#: view:board.board:0
+#: view:board.menu.create:0
+msgid "Create Menu"
+msgstr "Crear Menú"
+
+#. module: board
+#: field:board.board.line,height:0
+msgid "Height"
+msgstr "Alto"
+
+#. module: board
+#: model:ir.actions.act_window,name:board.action_board_menu_create
+msgid "Create Board Menu"
+msgstr "Crear menú del tablero"
+
+#. module: board
+#: selection:res.log.report,month:0
+msgid "May"
+msgstr "Mayo"
+
+#. module: board
+#: field:res.log.report,res_model:0
+msgid "Object"
+msgstr "Objeto"
+
+#. module: board
+#: view:res.log.report:0
+#: field:res.log.report,name:0
+msgid "Year"
+msgstr "Año"
+
+#. module: board
+#: view:board.menu.create:0
+msgid "Cancel"
+msgstr "Cancelar"
+
+#. module: board
+#: view:board.board:0
+msgid "Dashboard View"
+msgstr "Vista de tablero"
+
+#. module: board
+#: code:addons/board/wizard/board_menu_create.py:46
+#, python-format
+msgid "Please Insert Dashboard View(s) !"
+msgstr "¡Por favor inserte alguna vista de tablero!"
+
+#. module: board
+#: view:board.note:0
+#: field:board.note,name:0
+msgid "Subject"
+msgstr "Asunto"
diff --git a/addons/board/security/board_security.xml b/addons/board/security/board_security.xml
deleted file mode 100644
index ee544e098cc..00000000000
--- a/addons/board/security/board_security.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-
-
-
- Sales / User
-
-
-
-
diff --git a/addons/board/security/ir.model.access.csv b/addons/board/security/ir.model.access.csv
index e16104a0acc..8661750bfb8 100644
--- a/addons/board/security/ir.model.access.csv
+++ b/addons/board/security/ir.model.access.csv
@@ -1,7 +1,6 @@
"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
"access_board_board","board.board","model_board_board","base.group_user",1,1,1,1
"access_board_board_line","board.board.line","model_board_board_line","base.group_user",1,1,1,1
-"access_board_board_sale_salesman","board.board.sale.salesman","model_board_board","base.group_sale_salesman",1,1,1,1
"access_res_log_report","res.log.report","model_res_log_report","base.group_user",1,1,1,1
"access_res_log_report_system","res.log.report system","model_res_log_report",base.group_system,1,0,0,0
"access_res_log_report_erp_manager","res.log.report erp_manager","model_res_log_report",base.group_erp_manager,1,0,0,0
diff --git a/addons/caldav/__openerp__.py b/addons/caldav/__openerp__.py
index edf852e4d5e..53bee3d0e94 100644
--- a/addons/caldav/__openerp__.py
+++ b/addons/caldav/__openerp__.py
@@ -49,7 +49,7 @@ To access OpenERP Calendar using WebCal to remote site use the URL like:
DATABASE_NAME: Name of database on which OpenERP Calendar is created
CALENDAR_NAME: Name of calendar to access
""",
- 'category': 'Tools',
+ 'category': 'Hidden',
"author" : "OpenERP SA",
'website': 'http://www.openerp.com',
"init_xml" : ["caldav_data.xml"],
diff --git a/addons/caldav/doc/Path discovery.rst b/addons/caldav/doc/path_discovery.rst
similarity index 100%
rename from addons/caldav/doc/Path discovery.rst
rename to addons/caldav/doc/path_discovery.rst
diff --git a/addons/claim_from_delivery/__openerp__.py b/addons/claim_from_delivery/__openerp__.py
index 2e694008226..c3eec37a229 100644
--- a/addons/claim_from_delivery/__openerp__.py
+++ b/addons/claim_from_delivery/__openerp__.py
@@ -21,7 +21,7 @@
"name" : "Claim from Delivery",
"version" : "1.0",
"author" : "OpenERP SA",
- "category" : "Warehouse",
+ "category" : "Hidden",
"depends" : ["base", "crm_claim", "stock"],
"init_xml" : [],
"demo_xml" : [],
diff --git a/addons/claim_from_delivery/i18n/sr@latin.po b/addons/claim_from_delivery/i18n/sr@latin.po
index c5aa1f31a6d..26c657e2a0e 100644
--- a/addons/claim_from_delivery/i18n/sr@latin.po
+++ b/addons/claim_from_delivery/i18n/sr@latin.po
@@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
-"PO-Revision-Date: 2010-12-24 13:20+0000\n"
-"Last-Translator: OpenERP Administrators \n"
+"PO-Revision-Date: 2011-10-06 14:05+0000\n"
+"Last-Translator: Milan Milosevic \n"
"Language-Team: Serbian latin \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 05:48+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-07 04:36+0000\n"
+"X-Generator: Launchpad (build 14085)\n"
#. module: claim_from_delivery
#: model:ir.actions.act_window,name:claim_from_delivery.action_claim_from_delivery
@@ -25,9 +25,9 @@ msgstr "Zahtev"
#. module: claim_from_delivery
#: model:ir.module.module,description:claim_from_delivery.module_meta_information
msgid "Create Claim from delivery order:\n"
-msgstr "Kreiraj Zahtev iz Naloga Isporuke\n"
+msgstr "Napravi zahtev iz naloga isporuke\n"
#. module: claim_from_delivery
#: model:ir.module.module,shortdesc:claim_from_delivery.module_meta_information
msgid "Claim from delivery"
-msgstr "Zatraži od isporuke"
+msgstr "Zahtev od isporuke"
diff --git a/addons/crm/__init__.py b/addons/crm/__init__.py
index 6e57fa5e8c3..214c5c3d450 100644
--- a/addons/crm/__init__.py
+++ b/addons/crm/__init__.py
@@ -25,7 +25,6 @@ import crm_segmentation
import crm_meeting
import crm_lead
import crm_phonecall
-import crm_installer
import report
import wizard
import res_partner
diff --git a/addons/crm/__openerp__.py b/addons/crm/__openerp__.py
index c2dd5027b71..a6f5f1630f7 100644
--- a/addons/crm/__openerp__.py
+++ b/addons/crm/__openerp__.py
@@ -23,7 +23,7 @@
{
'name': 'Customer & Supplier Relationship Management',
'version': '1.0',
- 'category': 'Sales',
+ 'category': 'Customer Relationship Management',
'complexity': "easy",
'description': """
The generic OpenERP Customer Relationship Management.
@@ -126,6 +126,11 @@ Creates a dashboard for CRM that includes:
'test/test_crm_recurrent_meeting.yml',
'test/test_crm_stage_changes.yml',
'test/test_crm_recurrent_meeting_case2.yml',
+ 'test/test_crm_lead_case2.yml',
+ 'test/test_crm_opportunity_case2.yml',
+ 'test/test_crm_phonecall_case2.yml',
+ 'test/test_crm_partner2opportunity.yml',
+ 'test/test_crm_segmentation.yml',
],
'installable': True,
'active': False,
diff --git a/addons/crm/crm.py b/addons/crm/crm.py
index c7bc461fa1f..bf30cac58fb 100644
--- a/addons/crm/crm.py
+++ b/addons/crm/crm.py
@@ -29,8 +29,8 @@ from tools.translate import _
MAX_LEVEL = 15
AVAILABLE_STATES = [
- ('draft', 'Draft'),
- ('open', 'Open'),
+ ('draft', 'New'),
+ ('open', 'In Progress'),
('cancel', 'Cancelled'),
('done', 'Closed'),
('pending', 'Pending'),
@@ -71,6 +71,7 @@ class crm_case_stage(osv.osv):
'on_change': fields.boolean('Change Probability Automatically', help="Setting this stage will change the probability automatically on the opportunity."),
'requirements': fields.text('Requirements'),
'section_ids':fields.many2many('crm.case.section', 'section_stage_rel', 'stage_id', 'section_id', 'Sections'),
+ 'case_default': fields.boolean('Common to All Teams', help="If you check this field, this stage will be proposed by default on each sales team. It will not assign this stage to existing teams."),
}
_defaults = {
@@ -106,10 +107,14 @@ class crm_case_section(osv.osv):
'working_hours': fields.float('Working Hours', digits=(16,2 )),
'stage_ids': fields.many2many('crm.case.stage', 'section_stage_rel', 'section_id', 'stage_id', 'Stages'),
}
+ def _get_stage_common(self, cr, uid, context):
+ ids = self.pool.get('crm.case.stage').search(cr, uid, [('case_default','=',1)], context=context)
+ return ids
_defaults = {
'active': lambda *a: 1,
'allow_unlink': lambda *a: 1,
+ 'stage_ids': _get_stage_common
}
_sql_constraints = [
@@ -381,7 +386,7 @@ class crm_case(crm_base):
default.update({ 'date_closed': False, })
if self._columns.get('date_open'):
default.update({ 'date_open': False })
- return super(osv.osv, self).copy(cr, uid, id, default, context=context)
+ return super(crm_case, self).copy(cr, uid, id, default, context=context)
def case_open(self, cr, uid, ids, *args):
diff --git a/addons/crm/crm_installer.py b/addons/crm/crm_installer.py
deleted file mode 100644
index fc3816c80fa..00000000000
--- a/addons/crm/crm_installer.py
+++ /dev/null
@@ -1,59 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2009 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-from lxml import etree
-from osv import fields, osv
-
-class crm_installer(osv.osv_memory):
- _inherit = 'base.setup.installer'
-
- _columns = {
- 'name': fields.char('Name', size=64),
- 'crm_helpdesk': fields.boolean('Helpdesk', help="Manages a Helpdesk service."),
- 'crm_fundraising': fields.boolean('Fundraising', help="This may help associations in their fundraising process and tracking."),
- 'crm_claim': fields.boolean('Claims', help="Manages the suppliers and customers claims, including your corrective or preventive actions."),
- 'import_sugarcrm': fields.boolean('Import Data from SugarCRM', help="Help you to import and update data from SugarCRM to OpenERP"),
- 'crm_caldav': fields.boolean('Calendar Synchronizing', help="Helps you to synchronize the meetings with other calendar clients and mobiles."),
- 'sale_crm': fields.boolean('Opportunity to Quotation', help="Create a Quotation from an Opportunity."),
- 'fetchmail': fields.boolean('Fetch Emails', help="Allows you to receive E-Mails from POP/IMAP server."),
- 'thunderbird': fields.boolean('Thunderbird Plug-In', help="Allows you to link your e-mail to OpenERP's documents. You can attach it to any existing one in OpenERP or create a new one."),
- 'outlook': fields.boolean('MS-Outlook Plug-In', help="Allows you to link your e-mail to OpenERP's documents. You can attach it to any existing one in OpenERP or create a new one."),
- 'wiki_sale_faq': fields.boolean('Sale FAQ', help="Helps you manage wiki pages for Frequently Asked Questions on Sales Application."),
- 'import_google': fields.boolean('Google Import', help="Imports contacts and events from your google account."),
- }
-
- def fields_view_get(self, cr, uid, view_id=None, view_type='form', context=None, toolbar=False, submenu=False):
- res = super(crm_installer, self).fields_view_get(cr, uid, view_id=view_id, view_type=view_type, context=context, toolbar=toolbar,submenu=False)
- #Checking sale module is installed or not
- cr.execute("SELECT * from ir_module_module where state='installed' and name = 'sale'")
- count = cr.fetchall()
- if count:
- doc = etree.XML(res['arch'])
- nodes = doc.xpath("//field[@name='sale_crm']")
- for node in nodes:
- node.set('invisible', '0')
- node.set('modifiers', '{}')
- res['arch'] = etree.tostring(doc)
- return res
-
-crm_installer()
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/crm/crm_installer_view.xml b/addons/crm/crm_installer_view.xml
index e517d242f5c..ecaec91cef6 100644
--- a/addons/crm/crm_installer_view.xml
+++ b/addons/crm/crm_installer_view.xml
@@ -1,32 +1,8 @@
-
- crm.installer.view
- base.setup.installer
- form
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Create Sales Team
+ Define Sales Teamir.actions.act_windowcrm.case.sectionform
@@ -39,6 +15,7 @@
10
+
@@ -47,6 +24,7 @@
crm.case.stageformtree,form
+ {'default_case_default': 1}Stages will allow salesmen to easily track how a specific opportunity is positioned in the sales cycle. In order to efficiently manage your sales pipeline, it's important to define conditions to go to the next step. Example: to set an opportunity as 'Qualified', you must set the "Expected Revenue" and the "Expected Closing Date." You should also have a look at the tooltip of the field "Change Probability Automatically".
@@ -54,8 +32,8 @@
- 10
+
+ 9
-
diff --git a/addons/crm/crm_lead.py b/addons/crm/crm_lead.py
index d09e0bf8ba5..b53028c952a 100644
--- a/addons/crm/crm_lead.py
+++ b/addons/crm/crm_lead.py
@@ -133,7 +133,7 @@ class crm_lead(crm_case, osv.osv):
'partner_id': fields.many2one('res.partner', 'Partner', ondelete='set null',
select=True, help="Optional linked partner, usually after conversion of the lead"),
- 'id': fields.integer('ID'),
+ 'id': fields.integer('ID', readonly=True),
'name': fields.char('Name', size=64, select=1),
'active': fields.boolean('Active', required=False),
'date_action_last': fields.datetime('Last Action', readonly=1),
diff --git a/addons/crm/crm_lead_data.xml b/addons/crm/crm_lead_data.xml
index 0c7215c09eb..aaa00307bfe 100644
--- a/addons/crm/crm_lead_data.xml
+++ b/addons/crm/crm_lead_data.xml
@@ -5,31 +5,37 @@
Lost
+ New
+ Qualification
+ Proposition
+ Negotiation
+ Won
+
diff --git a/addons/crm/crm_lead_menu.xml b/addons/crm/crm_lead_menu.xml
index 0d13911a5fe..9b0581844a5 100644
--- a/addons/crm/crm_lead_menu.xml
+++ b/addons/crm/crm_lead_menu.xml
@@ -9,7 +9,7 @@
['|', ('type','=','lead'), ('type','=',False)]
- {'search_default_current':1, 'default_type': 'lead', 'search_default_section_id': section_id, 'stage_type': 'lead'}
+ {'search_default_new':1, 'default_type': 'lead', 'search_default_section_id': section_id, 'stage_type': 'lead'}Leads allow you to manage and keep track of all initial contacts with a prospect or partner showing interest in your products or services. A lead is usually the first step in your sales cycle. Once qualified, a lead may be converted into a business opportunity, while creating the related partner for further detailed tracking of any linked activities. You can import a database of prospects, keep track of your business cards or integrate your website's contact form with the OpenERP Leads. Leads can be connected to the email gateway: new emails may create leads, each of them automatically gets the history of the conversation with the prospect.
@@ -62,7 +62,7 @@
crm.leadtree,form,graph,calendar,kanban[('type','=','opportunity')]
- {'search_default_user_id':uid,'search_default_current':1, 'search_default_section_id':section_id, 'stage_type': 'opportunity', 'default_type': 'opportunity'}
+ {'search_default_user_id':uid,'search_default_new':1, 'search_default_open':1, 'search_default_section_id':section_id, 'stage_type': 'opportunity', 'default_type': 'opportunity'}With opportunities you can manage and keep track of your sales pipeline by creating specific customer- or prospect-related sales documents to follow up potential sales. Information such as expected revenue, opportunity stage, expected closing date, communication history and much more can be stored. Opportunities can be connected to the email gateway: new emails may create opportunities, each of them automatically gets the history of the conversation with the customer.
diff --git a/addons/crm/crm_lead_view.xml b/addons/crm/crm_lead_view.xml
index 1a2e1f706ac..42587eea2b0 100644
--- a/addons/crm/crm_lead_view.xml
+++ b/addons/crm/crm_lead_view.xml
@@ -120,7 +120,7 @@
-
+
@@ -195,7 +195,7 @@
-
+
@@ -302,7 +302,7 @@
-
+
@@ -371,14 +371,16 @@
+ string="New"
+ name="new" help="New Leads"
+ domain="[('state','=','draft')]"/>
@@ -411,7 +413,7 @@
-
+
@@ -515,7 +517,7 @@
-
+
@@ -580,7 +582,7 @@
-
+
@@ -674,14 +676,16 @@
+ string="New" help="New Opportunities"
+ name="new"
+ domain="[('state','=','draft')]"/>
diff --git a/addons/crm/crm_meeting.py b/addons/crm/crm_meeting.py
index c3381601cbf..40ba8662f13 100644
--- a/addons/crm/crm_meeting.py
+++ b/addons/crm/crm_meeting.py
@@ -52,7 +52,7 @@ class crm_meeting(crm_base, osv.osv):
'section_id': fields.many2one('crm.case.section', 'Sales Team', states={'done': [('readonly', True)]}, \
select=True, help='Sales team to which Case belongs to.'),
'email_from': fields.char('Email', size=128, states={'done': [('readonly', True)]}, help="These people will receive email."),
- 'id': fields.integer('ID'),
+ 'id': fields.integer('ID', readonly=True),
'create_date': fields.datetime('Creation Date' , readonly=True),
'write_date': fields.datetime('Write Date' , readonly=True),
'date_action_last': fields.datetime('Last Action', readonly=1),
diff --git a/addons/crm/crm_phonecall.py b/addons/crm/crm_phonecall.py
index d5d7d6c5614..748f85ad063 100644
--- a/addons/crm/crm_phonecall.py
+++ b/addons/crm/crm_phonecall.py
@@ -34,7 +34,7 @@ class crm_phonecall(crm_base, osv.osv):
_order = "id desc"
_columns = {
# From crm.case
- 'id': fields.integer('ID'),
+ 'id': fields.integer('ID', readonly=True),
'name': fields.char('Call Summary', size=64),
'active': fields.boolean('Active', required=False),
'date_action_last': fields.datetime('Last Action', readonly=1),
diff --git a/addons/crm/crm_phonecall_menu.xml b/addons/crm/crm_phonecall_menu.xml
index 55e7657ec05..0531736572c 100644
--- a/addons/crm/crm_phonecall_menu.xml
+++ b/addons/crm/crm_phonecall_menu.xml
@@ -106,7 +106,7 @@
[('state','!=','done')]
-
+ Scheduled calls list all the calls to be done by your sales team. A salesman can record the information about the call in the form view. This information will be stored in the partner form to trace every contact you have with a customer. You can also import a .CSV file with a list of calls to be done by your sales team.
diff --git a/addons/crm/crm_phonecall_view.xml b/addons/crm/crm_phonecall_view.xml
index d312a58febd..54ea8bd7dfc 100644
--- a/addons/crm/crm_phonecall_view.xml
+++ b/addons/crm/crm_phonecall_view.xml
@@ -107,7 +107,7 @@
-
+
@@ -182,9 +182,6 @@
search
-
+
+
+ CRM - Scheduled Calls Search
+ crm.phonecall
+ search
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/addons/crm/crm_view.xml b/addons/crm/crm_view.xml
index c7038958126..fc01cfd5a05 100644
--- a/addons/crm/crm_view.xml
+++ b/addons/crm/crm_view.xml
@@ -64,11 +64,11 @@
-
+
-
+
@@ -154,12 +154,12 @@
-
-
-
-
-
+
+
+
+
+
@@ -230,7 +230,7 @@
-
+
@@ -382,7 +382,6 @@
@@ -396,7 +395,7 @@
-
+
diff --git a/addons/crm/i18n/cs.po b/addons/crm/i18n/cs.po
index c697cae0a62..e3a5c2ce16e 100644
--- a/addons/crm/i18n/cs.po
+++ b/addons/crm/i18n/cs.po
@@ -4,17 +4,17 @@
#
msgid ""
msgstr ""
-"Project-Id-Version: OpenERP Server 6.0dev\n"
+"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-07-15 02:26+0000\n"
+"PO-Revision-Date: 2011-10-10 21:31+0000\n"
"Last-Translator: Jiří Hajda \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 05:06+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:35+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
"X-Poedit-Language: Czech\n"
#. module: crm
@@ -32,7 +32,7 @@ msgstr ""
#. module: crm
#: model:crm.case.categ,name:crm.categ_oppor3
msgid "Need Services"
-msgstr ""
+msgstr "Vyžaduje služby"
#. module: crm
#: selection:crm.meeting,rrule_type:0
@@ -173,12 +173,12 @@ msgstr ""
#. module: crm
#: selection:crm.lead2opportunity.partner,action:0
msgid "Do not create a partner"
-msgstr ""
+msgstr "Nevytvářet partnera"
#. module: crm
#: view:crm.lead:0
msgid "Search Opportunities"
-msgstr ""
+msgstr "Hledat příležitosti"
#. module: crm
#: code:addons/crm/wizard/crm_merge_opportunities.py:46
@@ -199,7 +199,7 @@ msgstr "Varování!"
#: model:ir.actions.act_window,name:crm.action_report_crm_opportunity
#: model:ir.ui.menu,name:crm.menu_report_crm_opportunities_tree
msgid "Opportunities Analysis"
-msgstr ""
+msgstr "Analýza příležitosti"
#. module: crm
#: field:crm.lead,partner_id:0
@@ -234,7 +234,7 @@ msgstr "Organizátor"
#: model:ir.actions.act_window,name:crm.phonecall_to_phonecall_act
#: view:res.partner:0
msgid "Schedule Other Call"
-msgstr ""
+msgstr "Naplánovat jiný hovor"
#. module: crm
#: help:crm.meeting,edit_all:0
@@ -250,7 +250,7 @@ msgstr "Upravit všechny výskyty opakovaného setkání."
#: view:res.partner:0
#, python-format
msgid "Phone Call"
-msgstr ""
+msgstr "Telefonní hovor"
#. module: crm
#: field:crm.lead,optout:0
@@ -275,12 +275,12 @@ msgstr ""
#. module: crm
#: view:crm.lead:0
msgid "Send New Email"
-msgstr ""
+msgstr "Poslat nový email"
#. module: crm
#: field:crm.segmentation,segmentation_line:0
msgid "Criteria"
-msgstr ""
+msgstr "Kritérium"
#. module: crm
#: view:crm.segmentation:0
@@ -458,7 +458,7 @@ msgstr "Datum aktualizace"
#: view:crm.lead2opportunity.action:0
#: field:crm.lead2opportunity.action,name:0
msgid "Select Action"
-msgstr ""
+msgstr "Vybrat akci"
#. module: crm
#: field:base.action.rule,trg_categ_id:0
@@ -496,7 +496,7 @@ msgstr "Soukromí"
#. module: crm
#: view:crm.lead.report:0
msgid "Opportunity Analysis"
-msgstr ""
+msgstr "Analýza příležitostí"
#. module: crm
#: help:crm.meeting,location:0
@@ -511,12 +511,12 @@ msgstr "Pravidlo opakování"
#. module: crm
#: model:crm.case.resource.type,name:crm.type_lead1
msgid "Version 4.2"
-msgstr ""
+msgstr "Verze 4.2"
#. module: crm
#: model:crm.case.resource.type,name:crm.type_lead2
msgid "Version 4.4"
-msgstr ""
+msgstr "Verze 4.4"
#. module: crm
#: help:crm.installer,fetchmail:0
@@ -545,7 +545,7 @@ msgstr ""
#: model:ir.actions.act_window,name:crm.crm_partner2opportunity
#, python-format
msgid "Create Opportunity"
-msgstr ""
+msgstr "Vytvořit příležitost"
#. module: crm
#: view:crm.installer:0
@@ -596,7 +596,7 @@ msgstr ""
#. module: crm
#: model:ir.model,name:crm.model_crm_send_mail_attachment
msgid "crm.send.mail.attachment"
-msgstr ""
+msgstr "crm.send.mail.attachment"
#. module: crm
#: selection:crm.lead.report,month:0
@@ -614,7 +614,7 @@ msgstr ""
#: help:crm.meeting,email_from:0
#: help:crm.phonecall,email_from:0
msgid "These people will receive email."
-msgstr ""
+msgstr "Tito lidé obdrží email."
#. module: crm
#: view:crm.meeting:0
@@ -645,7 +645,7 @@ msgstr ""
#. module: crm
#: view:crm.case.categ:0
msgid "Case Category"
-msgstr ""
+msgstr "Kategorie případu"
#. module: crm
#: help:crm.segmentation,som_interval_default:0
@@ -662,7 +662,7 @@ msgstr "Datum ukončení"
#. module: crm
#: constraint:base.action.rule:0
msgid "Error: The mail is not well formated"
-msgstr ""
+msgstr "Chyba: Mail není správně formátován"
#. module: crm
#: view:crm.segmentation:0
@@ -680,11 +680,13 @@ msgid ""
"The partner category that will be added to partners that match the "
"segmentation criterions after computation."
msgstr ""
+"Kategorie partnera, která bude přidána k partnerům, kteří odpovídají "
+"kritériu členění po vypočtení."
#. module: crm
#: view:crm.lead:0
msgid "Communication history"
-msgstr ""
+msgstr "Historie komunikace"
#. module: crm
#: help:crm.phonecall,canal_id:0
@@ -709,7 +711,7 @@ msgstr "Zodpovědný uživatel"
#: code:addons/crm/wizard/crm_phonecall_to_partner.py:53
#, python-format
msgid "A partner is already defined on this phonecall."
-msgstr ""
+msgstr "Partner je již určen u tohoto hovoru."
#. module: crm
#: help:crm.case.section,reply_to:0
@@ -738,7 +740,7 @@ msgstr "Pracovní čas"
#. module: crm
#: view:crm.segmentation.line:0
msgid "Partner Segmentation Lines"
-msgstr ""
+msgstr "Řádky členění partnerů"
#. module: crm
#: view:crm.lead:0
@@ -774,12 +776,12 @@ msgstr ""
#: view:crm.segmentation:0
#: model:ir.model,name:crm.model_crm_segmentation
msgid "Partner Segmentation"
-msgstr ""
+msgstr "Členění partnerů"
#. module: crm
#: field:crm.lead.report,probable_revenue:0
msgid "Probable Revenue"
-msgstr ""
+msgstr "Pravděpodobný výnos"
#. module: crm
#: help:crm.segmentation,name:0
@@ -956,7 +958,7 @@ msgstr ""
#. module: crm
#: view:crm.phonecall2opportunity:0
msgid "Convert To Opportunity "
-msgstr ""
+msgstr "Převést na příležitost "
#. module: crm
#: help:crm.case.stage,sequence:0
@@ -996,17 +998,17 @@ msgstr ""
#. module: crm
#: view:crm.lead:0
msgid "Mark Won"
-msgstr ""
+msgstr "Označit jako vítězné"
#. module: crm
#: selection:crm.segmentation.line,expr_name:0
msgid "Purchase Amount"
-msgstr ""
+msgstr "Nákupní ástka"
#. module: crm
#: view:crm.lead:0
msgid "Mark Lost"
-msgstr ""
+msgstr "Označit jako ztracené"
#. module: crm
#: selection:crm.lead.report,month:0
@@ -1019,7 +1021,7 @@ msgstr "Březen"
#: code:addons/crm/crm_lead.py:230
#, python-format
msgid "The opportunity '%s' has been closed."
-msgstr ""
+msgstr "Byla uzavřena příležitost '%s'."
#. module: crm
#: field:crm.lead,day_open:0
@@ -1036,7 +1038,7 @@ msgstr "Ukázat čas jako"
#: view:crm.phonecall2partner:0
#, python-format
msgid "Create Partner"
-msgstr ""
+msgstr "Vytvořit partnera"
#. module: crm
#: selection:crm.segmentation.line,expr_operator:0
@@ -1179,7 +1181,7 @@ msgstr "Fáze:"
#: model:crm.case.stage,name:crm.stage_opportunity5
#: view:crm.lead:0
msgid "Won"
-msgstr ""
+msgstr "Vyhrál"
#. module: crm
#: field:crm.lead.report,delay_expected:0
@@ -1189,12 +1191,12 @@ msgstr "Překročený krajní termín"
#. module: crm
#: model:crm.case.section,name:crm.section_sales_department
msgid "Sales Department"
-msgstr ""
+msgstr "Oddělení prodeje"
#. module: crm
#: field:crm.send.mail,html:0
msgid "HTML formatting?"
-msgstr ""
+msgstr "Formátování HTML?"
#. module: crm
#: field:crm.case.stage,type:0
@@ -1218,7 +1220,7 @@ msgstr ""
#: selection:crm.phonecall,priority:0
#: selection:crm.phonecall.report,priority:0
msgid "Lowest"
-msgstr ""
+msgstr "Nejnižší"
#. module: crm
#: view:crm.add.note:0
@@ -1247,7 +1249,7 @@ msgstr "Datum vytvoření"
#. module: crm
#: model:crm.case.categ,name:crm.categ_oppor5
msgid "Need a Website Design"
-msgstr ""
+msgstr "Potřebuje návrh webu"
#. module: crm
#: field:crm.meeting,recurrent_uid:0
@@ -1281,12 +1283,12 @@ msgstr "Fáze"
#. module: crm
#: view:crm.lead:0
msgid "History Information"
-msgstr ""
+msgstr "Informace historie"
#. module: crm
#: field:base.action.rule,act_mail_to_partner:0
msgid "Mail to Partner"
-msgstr ""
+msgstr "Pošta partnerovi"
#. module: crm
#: view:crm.lead:0
@@ -1311,7 +1313,7 @@ msgstr "Nechat automaticky opakovat události v intervalu"
#. module: crm
#: view:base.action.rule:0
msgid "Condition Case Fields"
-msgstr ""
+msgstr "Pole podmíněného případu"
#. module: crm
#: view:crm.case.section:0
@@ -1331,7 +1333,7 @@ msgstr "Fáze"
#: field:crm.partner2opportunity,planned_revenue:0
#: field:crm.phonecall2opportunity,planned_revenue:0
msgid "Expected Revenue"
-msgstr ""
+msgstr "Očekávaný výnos"
#. module: crm
#: model:ir.actions.act_window,help:crm.crm_phonecall_categ_action
@@ -1356,28 +1358,28 @@ msgstr ""
#: model:ir.actions.act_window,name:crm.action_report_crm_phonecall
#: model:ir.ui.menu,name:crm.menu_report_crm_phonecalls_tree
msgid "Phone Calls Analysis"
-msgstr ""
+msgstr "Analýza telefonních hovorů"
#. module: crm
#: field:crm.lead.report,opening_date:0
#: field:crm.phonecall.report,opening_date:0
msgid "Opening Date"
-msgstr ""
+msgstr "Datum otevření"
#. module: crm
#: help:crm.phonecall,duration:0
msgid "Duration in Minutes"
-msgstr ""
+msgstr "Trvání v minutách"
#. module: crm
#: help:crm.installer,crm_helpdesk:0
msgid "Manages a Helpdesk service."
-msgstr ""
+msgstr "Spravuje službu technické podpory."
#. module: crm
#: field:crm.partner2opportunity,name:0
msgid "Opportunity Name"
-msgstr ""
+msgstr "Jméno příležitosti"
#. module: crm
#: help:crm.case.section,active:0
@@ -1405,12 +1407,12 @@ msgstr "Pá"
#. module: crm
#: model:ir.model,name:crm.model_crm_lead
msgid "crm.lead"
-msgstr ""
+msgstr "crm.lead"
#. module: crm
#: field:crm.meeting,write_date:0
msgid "Write Date"
-msgstr ""
+msgstr "Datum zápisu"
#. module: crm
#: view:crm.meeting:0
@@ -1438,12 +1440,12 @@ msgstr ""
#: model:ir.actions.act_window,name:crm.action_crm_phonecall2partner
#: view:res.partner:0
msgid "Create a Partner"
-msgstr ""
+msgstr "Vytvořit partnera"
#. module: crm
#: field:crm.segmentation,state:0
msgid "Execution Status"
-msgstr ""
+msgstr "Stav vykonání"
#. module: crm
#: selection:crm.meeting,week_list:0
@@ -1472,7 +1474,7 @@ msgstr "ID"
#. module: crm
#: model:ir.model,name:crm.model_crm_partner2opportunity
msgid "Partner To Opportunity"
-msgstr ""
+msgstr "Partner k příležitosti"
#. module: crm
#: view:crm.meeting:0
@@ -1496,7 +1498,7 @@ msgstr "Rozšířené filtry..."
#. module: crm
#: field:crm.phonecall2opportunity,name:0
msgid "Opportunity Summary"
-msgstr ""
+msgstr "Souhrn příležitosti"
#. module: crm
#: view:crm.phonecall.report:0
@@ -1506,7 +1508,7 @@ msgstr "Hledat"
#. module: crm
#: view:board.board:0
msgid "Opportunities by Categories"
-msgstr ""
+msgstr "Příležitosti podle kategorií"
#. module: crm
#: view:crm.meeting:0
@@ -1540,7 +1542,7 @@ msgstr "Kód"
#. module: crm
#: field:crm.case.section,child_ids:0
msgid "Child Teams"
-msgstr ""
+msgstr "Podřízené týmy"
#. module: crm
#: view:crm.lead:0
@@ -1587,7 +1589,7 @@ msgstr "res.users"
#. module: crm
#: model:ir.model,name:crm.model_crm_merge_opportunity
msgid "Merge two Opportunities"
-msgstr ""
+msgstr "Sloučit dvě příležitosti"
#. module: crm
#: selection:crm.meeting,end_type:0
@@ -1610,11 +1612,12 @@ msgstr "Pravidlo výjimky"
#: help:base.action.rule,act_mail_to_partner:0
msgid "Check this if you want the rule to send an email to the partner."
msgstr ""
+"Zaškrtněte toto pokud chcete pravidlo pro odeslání emailu partnerovi."
#. module: crm
#: model:ir.actions.act_window,name:crm.crm_phonecall_categ_action
msgid "Phonecall Categories"
-msgstr ""
+msgstr "Kategorie hovorů"
#. module: crm
#: view:crm.meeting:0
@@ -1624,17 +1627,17 @@ msgstr "Pozvat lidi"
#. module: crm
#: constraint:crm.case.section:0
msgid "Error ! You cannot create recursive Sales team."
-msgstr ""
+msgstr "Chyba ! Nemůžete vytvořit rekurzivní prodejní týmy."
#. module: crm
#: view:crm.meeting:0
msgid "Search Meetings"
-msgstr ""
+msgstr "Hledat setkání"
#. module: crm
#: selection:crm.segmentation.line,expr_name:0
msgid "Sale Amount"
-msgstr ""
+msgstr "Prodejní množství"
#. module: crm
#: code:addons/crm/wizard/crm_send_email.py:141
@@ -1645,12 +1648,12 @@ msgstr ""
#. module: crm
#: selection:crm.segmentation.line,expr_operator:0
msgid "="
-msgstr ""
+msgstr "="
#. module: crm
#: selection:crm.meeting,state:0
msgid "Unconfirmed"
-msgstr ""
+msgstr "Nepotvrzené"
#. module: crm
#: model:ir.actions.act_window,help:crm.action_report_crm_opportunity
@@ -1689,7 +1692,7 @@ msgstr ""
#: view:crm.lead.report:0
#: view:crm.phonecall.report:0
msgid "My Case(s)"
-msgstr ""
+msgstr "Moje případy"
#. module: crm
#: field:crm.lead,birthdate:0
@@ -1735,7 +1738,7 @@ msgstr ""
#. module: crm
#: view:crm.phonecall2opportunity:0
msgid "_Convert"
-msgstr ""
+msgstr "_Převést"
#. module: crm
#: model:ir.actions.act_window,help:crm.action_view_attendee_form
@@ -1758,12 +1761,12 @@ msgstr "Pátý"
#. module: crm
#: view:crm.phonecall2phonecall:0
msgid "_Schedule"
-msgstr ""
+msgstr "_Naplánovat"
#. module: crm
#: field:crm.lead.report,delay_close:0
msgid "Delay to Close"
-msgstr ""
+msgstr "Prodleva do ukončení"
#. module: crm
#: field:crm.meeting,we:0
@@ -1773,12 +1776,12 @@ msgstr "St"
#. module: crm
#: model:crm.case.categ,name:crm.categ_oppor6
msgid "Potential Reseller"
-msgstr ""
+msgstr "Případný přeprodejce"
#. module: crm
#: field:crm.lead.report,planned_revenue:0
msgid "Planned Revenue"
-msgstr ""
+msgstr "Plánovaný výnos"
#. module: crm
#: view:crm.lead:0
@@ -1802,12 +1805,12 @@ msgstr "Podrobnosti pozvání"
#. module: crm
#: field:crm.case.section,parent_id:0
msgid "Parent Team"
-msgstr ""
+msgstr "Nadřazený tým"
#. module: crm
#: field:crm.lead,date_action:0
msgid "Next Action Date"
-msgstr ""
+msgstr "Datum další akce"
#. module: crm
#: selection:crm.segmentation,state:0
@@ -1828,7 +1831,7 @@ msgstr "Zip"
#: code:addons/crm/crm_lead.py:213
#, python-format
msgid "The case '%s' has been opened."
-msgstr ""
+msgstr "Byl otevřen případ '%s'."
#. module: crm
#: view:crm.installer:0
@@ -1840,7 +1843,7 @@ msgstr "nadpis"
#: model:ir.actions.act_window,name:crm.crm_case_categ_phone_incoming0
#: model:ir.ui.menu,name:crm.menu_crm_case_phone_inbound
msgid "Inbound"
-msgstr ""
+msgstr "Příchozí"
#. module: crm
#: help:crm.case.stage,probability:0
@@ -1853,12 +1856,12 @@ msgstr ""
#: view:crm.phonecall.report:0
#: model:ir.actions.act_window,name:crm.act_crm_opportunity_crm_phonecall_new
msgid "Phone calls"
-msgstr ""
+msgstr "Telefonní hovory"
#. module: crm
#: view:crm.lead:0
msgid "Communication History"
-msgstr ""
+msgstr "Historie komunikace"
#. module: crm
#: selection:crm.meeting,show_as:0
@@ -1868,12 +1871,12 @@ msgstr "Volný"
#. module: crm
#: view:crm.installer:0
msgid "Synchronization"
-msgstr ""
+msgstr "Synchronizace"
#. module: crm
#: field:crm.case.section,allow_unlink:0
msgid "Allow Delete"
-msgstr ""
+msgstr "Umožnit smazání"
#. module: crm
#: field:crm.meeting,mo:0
@@ -1923,13 +1926,13 @@ msgstr "Hodnota"
#: view:crm.lead:0
#: view:crm.lead.report:0
msgid "Opportunity by Categories"
-msgstr ""
+msgstr "Příležitost podle kategorií"
#. module: crm
#: view:crm.lead:0
#: field:crm.lead,partner_name:0
msgid "Customer Name"
-msgstr ""
+msgstr "Jméno zákazníka"
#. module: crm
#: model:ir.actions.act_window,help:crm.crm_case_categ_meet
@@ -1948,7 +1951,7 @@ msgstr ""
#. module: crm
#: field:crm.case.section,reply_to:0
msgid "Reply-To"
-msgstr ""
+msgstr "Odpovědět-komu"
#. module: crm
#: view:crm.case.section:0
@@ -1975,14 +1978,14 @@ msgstr ""
#: view:crm.partner2opportunity:0
#: model:ir.actions.act_window,name:crm.phonecall2opportunity_act
msgid "Convert To Opportunity"
-msgstr ""
+msgstr "Převést na příležitost"
#. module: crm
#: view:crm.phonecall:0
#: view:crm.phonecall.report:0
#: view:res.partner:0
msgid "Held"
-msgstr ""
+msgstr "Drženo"
#. module: crm
#: view:crm.lead:0
@@ -2001,17 +2004,17 @@ msgstr "Další informace"
#: model:ir.actions.act_window,name:crm.action_merge_opportunities
#: model:ir.actions.act_window,name:crm.merge_opportunity_act
msgid "Merge Opportunities"
-msgstr ""
+msgstr "Sloučit příležitosti"
#. module: crm
#: model:crm.case.resource.type,name:crm.type_lead5
msgid "Google Adwords"
-msgstr ""
+msgstr "Google Adwords"
#. module: crm
#: model:ir.model,name:crm.model_crm_phonecall
msgid "crm.phonecall"
-msgstr ""
+msgstr "crm.phonecall"
#. module: crm
#: model:crm.case.resource.type,name:crm.type_lead3
@@ -2107,12 +2110,12 @@ msgstr "URL Caldav"
#. module: crm
#: view:crm.lead:0
msgid "Expected Revenues"
-msgstr ""
+msgstr "Očekávané výnosy"
#. module: crm
#: model:crm.case.resource.type,name:crm.type_lead6
msgid "Google Adwords 2"
-msgstr ""
+msgstr "Google Adwords 2"
#. module: crm
#: help:crm.lead,type:0
@@ -2152,7 +2155,7 @@ msgstr "Opakovat x-krát"
#: model:ir.model,name:crm.model_crm_case_section
#: model:ir.ui.menu,name:crm.menu_crm_case_section_act
msgid "Sales Teams"
-msgstr ""
+msgstr "Prodejní tým"
#. module: crm
#: model:ir.model,name:crm.model_crm_lead2partner
@@ -2169,24 +2172,24 @@ msgstr "Členění"
#. module: crm
#: view:crm.lead:0
msgid "Team"
-msgstr ""
+msgstr "Tým"
#. module: crm
#: field:crm.installer,outlook:0
msgid "MS-Outlook"
-msgstr ""
+msgstr "MS-Outlook"
#. module: crm
#: view:crm.phonecall:0
#: view:crm.phonecall.report:0
#: view:res.partner:0
msgid "Not Held"
-msgstr ""
+msgstr "Nedrženo"
#. module: crm
#: field:crm.lead.report,probability:0
msgid "Probability"
-msgstr ""
+msgstr "qPravděpodobnost"
#. module: crm
#: view:crm.lead.report:0
@@ -2224,7 +2227,7 @@ msgstr ""
#: selection:crm.lead2partner,action:0
#: selection:crm.phonecall2partner,action:0
msgid "Create a new partner"
-msgstr ""
+msgstr "Vytvořit nového partnera"
#. module: crm
#: view:crm.meeting:0
@@ -2256,7 +2259,7 @@ msgstr ""
#. module: crm
#: view:crm.meeting:0
msgid "Reset to Unconfirmed"
-msgstr ""
+msgstr "Nulovat na nepotvrzené"
#. module: crm
#: code:addons/crm/wizard/crm_add_note.py:40
@@ -2300,7 +2303,7 @@ msgstr ""
#. module: crm
#: model:crm.case.categ,name:crm.categ_meet2
msgid "Internal Meeting"
-msgstr ""
+msgstr "Vnitřní setkání"
#. module: crm
#: code:addons/crm/crm.py:411
@@ -2320,13 +2323,13 @@ msgstr "Čekající"
#. module: crm
#: model:crm.case.categ,name:crm.categ_meet1
msgid "Customer Meeting"
-msgstr ""
+msgstr "Setkání se zákazníkem"
#. module: crm
#: view:crm.lead:0
#: field:crm.lead,email_cc:0
msgid "Global CC"
-msgstr ""
+msgstr "Celkové CC"
#. module: crm
#: view:crm.phonecall:0
@@ -2334,13 +2337,13 @@ msgstr ""
#: model:ir.ui.menu,name:crm.menu_crm_case_phone
#: view:res.partner:0
msgid "Phone Calls"
-msgstr ""
+msgstr "Telefonní hovory"
#. module: crm
#: help:crm.lead.report,delay_open:0
#: help:crm.phonecall.report,delay_open:0
msgid "Number of Days to open the case"
-msgstr ""
+msgstr "Počet dní do otevření případu"
#. module: crm
#: field:crm.lead,phone:0
@@ -2367,17 +2370,17 @@ msgstr ""
#: code:addons/crm/crm_lead.py:282
#, python-format
msgid "Changed Stage to: %s"
-msgstr ""
+msgstr "Fáze změněna na: %s"
#. module: crm
#: selection:crm.segmentation.line,operator:0
msgid "Mandatory Expression"
-msgstr ""
+msgstr "Povinný výraz"
#. module: crm
#: selection:crm.segmentation.line,expr_operator:0
msgid ">"
-msgstr ""
+msgstr ">"
#. module: crm
#: view:crm.meeting:0
@@ -2387,7 +2390,7 @@ msgstr "Nejistý"
#. module: crm
#: field:crm.send.mail,email_cc:0
msgid "CC"
-msgstr ""
+msgstr "CC"
#. module: crm
#: view:crm.send.mail:0
@@ -2422,12 +2425,12 @@ msgstr "Akce"
#. module: crm
#: field:crm.installer,crm_claim:0
msgid "Claims"
-msgstr ""
+msgstr "Nároky"
#. module: crm
#: field:crm.segmentation,som_interval_decrease:0
msgid "Decrease (0>1)"
-msgstr ""
+msgstr "Pokles (0>1)"
#. module: crm
#: view:crm.add.note:0
@@ -2447,7 +2450,7 @@ msgstr "Týdně"
#: code:addons/crm/wizard/crm_send_email.py:270
#, python-format
msgid "Can not send mail!"
-msgstr ""
+msgstr "Nelze odeslat poštu!"
#. module: crm
#: view:crm.lead:0
@@ -2475,7 +2478,7 @@ msgstr "Opakovat každých (Dny/Týden/Měsíc/Rok)"
#. module: crm
#: field:crm.segmentation,som_interval_max:0
msgid "Max Interval"
-msgstr ""
+msgstr "Max. rozmezí"
#. module: crm
#: view:crm.opportunity2phonecall:0
@@ -2520,7 +2523,7 @@ msgstr "Opakovat každých"
#. module: crm
#: field:crm.installer,crm_helpdesk:0
msgid "Helpdesk"
-msgstr ""
+msgstr "Technická podpora"
#. module: crm
#: field:crm.meeting,recurrency:0
@@ -2531,28 +2534,28 @@ msgstr "Opakovaný"
#: code:addons/crm/crm.py:397
#, python-format
msgid "The case '%s' has been cancelled."
-msgstr ""
+msgstr "Byl zrušen případ '%s'."
#. module: crm
#: field:crm.installer,sale_crm:0
msgid "Opportunity to Quotation"
-msgstr ""
+msgstr "Příležitosti podle ocenění"
#. module: crm
#: model:ir.model,name:crm.model_crm_send_mail
msgid "Send new email"
-msgstr ""
+msgstr "Poslat nový email"
#. module: crm
#: view:board.board:0
#: model:ir.actions.act_window,name:crm.act_my_oppor
msgid "My Open Opportunities"
-msgstr ""
+msgstr "Moje otevřené příležitosti"
#. module: crm
#: model:ir.actions.act_window,name:crm.open_board_statistical_dash
msgid "CRM - Statistics Dashboard"
-msgstr ""
+msgstr "CRM - Statistická nástěnka"
#. module: crm
#: help:crm.meeting,rrule:0
@@ -2565,7 +2568,7 @@ msgstr ""
#. module: crm
#: field:crm.lead,job_id:0
msgid "Main Job"
-msgstr ""
+msgstr "Hlavní zaměstnání"
#. module: crm
#: field:base.action.rule,trg_max_history:0
@@ -2582,13 +2585,13 @@ msgstr ""
#: view:crm.meeting:0
#: field:crm.meeting,categ_id:0
msgid "Meeting Type"
-msgstr ""
+msgstr "Typ setkání"
#. module: crm
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:314
#, python-format
msgid "Merge with Existing Opportunity"
-msgstr ""
+msgstr "Sloučit s existující příležitostí"
#. module: crm
#: help:crm.lead,state:0
@@ -2629,7 +2632,7 @@ msgstr ""
#. module: crm
#: field:crm.installer,thunderbird:0
msgid "Thunderbird"
-msgstr ""
+msgstr "Thunderbird"
#. module: crm
#: view:crm.lead.report:0
@@ -2646,7 +2649,7 @@ msgstr ""
#: view:crm.phonecall.report:0
#: field:crm.phonecall.report,delay_open:0
msgid "Delay to open"
-msgstr ""
+msgstr "Prodleva do otevření"
#. module: crm
#: view:crm.meeting:0
@@ -2661,7 +2664,7 @@ msgstr "Den v týdnu"
#. module: crm
#: view:crm.lead:0
msgid "Referrer"
-msgstr ""
+msgstr "Odkazující"
#. module: crm
#: model:ir.model,name:crm.model_crm_lead2opportunity
@@ -2681,7 +2684,7 @@ msgstr ""
#. module: crm
#: view:crm.segmentation:0
msgid "Continue Process"
-msgstr ""
+msgstr "Pokračovat v postupu"
#. module: crm
#: view:crm.installer:0
@@ -2691,7 +2694,7 @@ msgstr ""
#. module: crm
#: model:ir.model,name:crm.model_crm_phonecall2partner
msgid "Phonecall to Partner"
-msgstr ""
+msgstr "Telefonní hovor partnerovi"
#. module: crm
#: help:crm.lead,partner_name:0
@@ -2710,14 +2713,14 @@ msgstr "Přiřadit k"
#: field:crm.add.note,state:0
#: field:crm.send.mail,state:0
msgid "Set New State To"
-msgstr ""
+msgstr "Nastav nový stav na"
#. module: crm
#: field:crm.lead,date_action_last:0
#: field:crm.meeting,date_action_last:0
#: field:crm.phonecall,date_action_last:0
msgid "Last Action"
-msgstr ""
+msgstr "Poslední akce"
#. module: crm
#: field:crm.meeting,duration:0
@@ -2729,14 +2732,14 @@ msgstr "Trvání"
#. module: crm
#: field:crm.send.mail,reply_to:0
msgid "Reply To"
-msgstr ""
+msgstr "Odpovědět komu"
#. module: crm
#: view:board.board:0
#: model:ir.actions.act_window,name:crm.open_board_crm
#: model:ir.ui.menu,name:crm.menu_board_crm
msgid "Sales Dashboard"
-msgstr ""
+msgstr "Nástěnka obchodu"
#. module: crm
#: code:addons/crm/wizard/crm_lead_to_partner.py:56
@@ -2748,13 +2751,13 @@ msgstr ""
#: field:crm.lead.report,nbr:0
#: field:crm.phonecall.report,nbr:0
msgid "# of Cases"
-msgstr ""
+msgstr "# z případů"
#. module: crm
#: help:crm.meeting,section_id:0
#: help:crm.phonecall,section_id:0
msgid "Sales team to which Case belongs to."
-msgstr ""
+msgstr "Prodejní tým, ke kterému patří případ."
#. module: crm
#: selection:crm.meeting,week_list:0
@@ -2771,7 +2774,7 @@ msgstr "Čtvrtý"
#: selection:crm.merge.opportunity,state:0
#: selection:crm.send.mail,state:0
msgid "Unchanged"
-msgstr ""
+msgstr "Nezměněno"
#. module: crm
#: model:ir.actions.act_window,name:crm.crm_segmentation_tree-act
@@ -2803,7 +2806,7 @@ msgstr ""
#. module: crm
#: view:crm.meeting:0
msgid "Assignment"
-msgstr ""
+msgstr "Přiřazení"
#. module: crm
#: field:crm.lead,company_id:0
@@ -2828,13 +2831,13 @@ msgstr "Celý den"
#. module: crm
#: field:crm.segmentation.line,operator:0
msgid "Mandatory / Optional"
-msgstr ""
+msgstr "Povinné / Volitelné"
#. module: crm
#: model:ir.actions.act_window,name:crm.action_view_attendee_form
#: model:ir.ui.menu,name:crm.menu_attendee_invitations
msgid "Meeting Invitations"
-msgstr ""
+msgstr "Pozvání na setkání"
#. module: crm
#: field:crm.case.categ,object_id:0
@@ -2844,18 +2847,18 @@ msgstr "Jméno objektu"
#. module: crm
#: help:crm.lead,email_from:0
msgid "E-mail address of the contact"
-msgstr ""
+msgstr "E-mailová adresa kontaktu"
#. module: crm
#: field:crm.lead,referred:0
msgid "Referred By"
-msgstr ""
+msgstr "Odkazováno podle"
#. module: crm
#: view:crm.lead:0
#: model:ir.model,name:crm.model_crm_add_note
msgid "Add Internal Note"
-msgstr ""
+msgstr "Přidat vnitřní poznámku"
#. module: crm
#: code:addons/crm/crm_lead.py:304
@@ -2893,7 +2896,7 @@ msgstr "Chyba!"
#: field:crm.opportunity2phonecall,name:0
#: field:crm.phonecall2phonecall,name:0
msgid "Call summary"
-msgstr ""
+msgstr "Souhrn hovoru"
#. module: crm
#: selection:crm.add.note,state:0
@@ -2910,18 +2913,18 @@ msgstr "Zrušeno"
#. module: crm
#: field:crm.add.note,body:0
msgid "Note Body"
-msgstr ""
+msgstr "Tělo poznámky"
#. module: crm
#: view:board.board:0
msgid "My Planned Revenues by Stage"
-msgstr ""
+msgstr "Moje plánované výnosy podle fáze"
#. module: crm
#: field:crm.lead.report,date_closed:0
#: field:crm.phonecall.report,date_closed:0
msgid "Close Date"
-msgstr ""
+msgstr "Datum uzavření"
#. module: crm
#: view:crm.lead.report:0
@@ -2932,7 +2935,7 @@ msgstr " Měsíc "
#. module: crm
#: view:crm.lead:0
msgid "Links"
-msgstr ""
+msgstr "Odkazy"
#. module: crm
#: model:ir.actions.act_window,help:crm.crm_lead_categ_action
@@ -2984,7 +2987,7 @@ msgstr "Varování"
#: field:crm.phonecall,name:0
#: view:res.partner:0
msgid "Call Summary"
-msgstr ""
+msgstr "Souhrn hovoru"
#. module: crm
#: field:crm.segmentation.line,expr_operator:0
@@ -2994,12 +2997,12 @@ msgstr ""
#. module: crm
#: model:ir.model,name:crm.model_crm_phonecall2phonecall
msgid "Phonecall To Phonecall"
-msgstr ""
+msgstr "Hovor k hovoru"
#. module: crm
#: view:crm.lead:0
msgid "Schedule/Log Call"
-msgstr ""
+msgstr "Plánovat/Zaznamenat hovor"
#. module: crm
#: field:crm.installer,fetchmail:0
@@ -3031,12 +3034,12 @@ msgstr "Ne"
#. module: crm
#: field:crm.phonecall.report,section_id:0
msgid "Section"
-msgstr ""
+msgstr "Sekce"
#. module: crm
#: view:crm.lead:0
msgid "Total of Planned Revenue"
-msgstr ""
+msgstr "Celkem z plánovaných výnosů"
#. module: crm
#: code:addons/crm/crm.py:375
@@ -3049,7 +3052,7 @@ msgstr ""
#. module: crm
#: selection:crm.segmentation.line,operator:0
msgid "Optional Expression"
-msgstr ""
+msgstr "Volitelný výraz"
#. module: crm
#: selection:crm.meeting,select1:0
@@ -3059,7 +3062,7 @@ msgstr "Den v měsíci"
#. module: crm
#: field:crm.lead2opportunity,probability:0
msgid "Success Rate (%)"
-msgstr ""
+msgstr "Úspěšnost (%)"
#. module: crm
#: model:crm.case.stage,name:crm.stage_lead1
@@ -3092,7 +3095,7 @@ msgstr "Kanál"
#. module: crm
#: model:ir.actions.act_window,name:crm.opportunity2phonecall_act
msgid "Schedule Call"
-msgstr ""
+msgstr "Plánovaný hovor"
#. module: crm
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:135
@@ -3150,7 +3153,7 @@ msgstr ""
#. module: crm
#: model:crm.case.categ,name:crm.categ_oppor4
msgid "Need Information"
-msgstr ""
+msgstr "Potřebuje informace"
#. module: crm
#: model:process.transition,name:crm.process_transition_leadopportunity0
@@ -3161,12 +3164,12 @@ msgstr ""
#: view:crm.installer:0
#: model:ir.actions.act_window,name:crm.action_crm_installer
msgid "CRM Application Configuration"
-msgstr ""
+msgstr "Nastavení aplikace CRM"
#. module: crm
#: field:base.action.rule,act_categ_id:0
msgid "Set Category to"
-msgstr ""
+msgstr "Nastavit kategorii na"
#. module: crm
#: view:crm.case.section:0
@@ -3198,7 +3201,7 @@ msgstr " Měsíc-1 "
#. module: crm
#: help:crm.installer,sale_crm:0
msgid "This module relates sale from opportunity cases in the CRM."
-msgstr ""
+msgstr "Vztažené prodeje tohoto modulu z případů příležitostí v CRM"
#. module: crm
#: selection:crm.meeting,rrule_type:0
@@ -3283,22 +3286,22 @@ msgstr "Obchodník"
#. module: crm
#: field:crm.lead,date_deadline:0
msgid "Expected Closing"
-msgstr ""
+msgstr "Očekávané ukončení"
#. module: crm
#: model:ir.model,name:crm.model_crm_opportunity2phonecall
msgid "Opportunity to Phonecall"
-msgstr ""
+msgstr "Příležitosti podle hovorů"
#. module: crm
#: help:crm.case.section,allow_unlink:0
msgid "Allows to delete non draft cases"
-msgstr ""
+msgstr "Umožňuje odstranit případy, které nejsou koncept"
#. module: crm
#: view:crm.lead:0
msgid "Schedule Meeting"
-msgstr ""
+msgstr "Naplánovat setkání"
#. module: crm
#: view:crm.lead:0
@@ -3310,19 +3313,19 @@ msgstr "Jméno partnera"
#: model:ir.actions.act_window,name:crm.crm_case_categ_phone_outgoing0
#: model:ir.ui.menu,name:crm.menu_crm_case_phone_outbound
msgid "Outbound"
-msgstr ""
+msgstr "Odchozí"
#. module: crm
#: field:crm.lead,date_open:0
#: field:crm.phonecall,date_open:0
msgid "Opened"
-msgstr ""
+msgstr "Otevřené"
#. module: crm
#: view:crm.case.section:0
#: field:crm.case.section,member_ids:0
msgid "Team Members"
-msgstr ""
+msgstr "Členové týmu"
#. module: crm
#: view:crm.lead:0
@@ -3336,7 +3339,7 @@ msgstr "Kontakty"
#. module: crm
#: model:crm.case.categ,name:crm.categ_oppor1
msgid "Interest in Computer"
-msgstr ""
+msgstr "Zájem v počítačích"
#. module: crm
#: view:crm.meeting:0
@@ -3346,7 +3349,7 @@ msgstr "Podrobnosti pozvání"
#. module: crm
#: field:crm.segmentation,som_interval_default:0
msgid "Default (0=None)"
-msgstr ""
+msgstr "Výchozí (0=Žádné)"
#. module: crm
#: help:crm.lead,email_cc:0
@@ -3355,6 +3358,9 @@ msgid ""
"outbound emails for this record before being sent. Separate multiple email "
"addresses with a comma"
msgstr ""
+"Tyto emailové adresy budou přidány do pole CC všech příchozích a odchozích "
+"emailů pro tento záznam před odesláním. Oddělte více emailových adres pomocí "
+"čárky"
#. module: crm
#: constraint:res.partner:0
@@ -3365,7 +3371,7 @@ msgstr "Chyba ! Nemůžete vytvořit rekurzivní asociované členy."
#: field:crm.partner2opportunity,probability:0
#: field:crm.phonecall2opportunity,probability:0
msgid "Success Probability"
-msgstr ""
+msgstr "Pravděpodobnost úspěchu"
#. module: crm
#: code:addons/crm/crm.py:426
@@ -3383,7 +3389,7 @@ msgstr "Koncept"
#. module: crm
#: model:ir.actions.act_window,name:crm.crm_case_section_act_tree
msgid "Cases by Sales Team"
-msgstr ""
+msgstr "Případy podle obchodních týmů"
#. module: crm
#: field:crm.meeting,attendee_ids:0
@@ -3402,7 +3408,7 @@ msgstr "Setkání"
#. module: crm
#: model:ir.model,name:crm.model_crm_case_categ
msgid "Category of Case"
-msgstr ""
+msgstr "Kategorie případů"
#. module: crm
#: view:crm.lead:0
@@ -3413,12 +3419,12 @@ msgstr "7 dnů"
#. module: crm
#: view:board.board:0
msgid "Planned Revenue by Stage and User"
-msgstr ""
+msgstr "Plánovaný výnos podle fáze a uživatele"
#. module: crm
#: view:crm.lead:0
msgid "Communication & History"
-msgstr ""
+msgstr "Komunikace & historie"
#. module: crm
#: model:ir.model,name:crm.model_crm_lead_report
@@ -3447,19 +3453,19 @@ msgstr "Ulice 2"
#: model:ir.actions.act_window,name:crm.crm_meeting_categ_action
#: model:ir.ui.menu,name:crm.menu_crm_case_meeting-act
msgid "Meeting Categories"
-msgstr ""
+msgstr "Kategorie setkání"
#. module: crm
#: view:crm.lead2opportunity.partner:0
#: view:crm.lead2partner:0
#: view:crm.phonecall2partner:0
msgid "You may have to verify that this partner does not exist already."
-msgstr ""
+msgstr "Měli byste ověřit, že tento partner již neexistuje."
#. module: crm
#: field:crm.lead.report,delay_open:0
msgid "Delay to Open"
-msgstr ""
+msgstr "Prodleva do otevření"
#. module: crm
#: field:crm.lead.report,user_id:0
@@ -3478,7 +3484,7 @@ msgstr "Listopad"
#: code:addons/crm/crm_action_rule.py:67
#, python-format
msgid "No E-Mail ID Found for your Company address!"
-msgstr ""
+msgstr "Pro vaši adresu společnosti nebylo nalezeno ID e-mailu!"
#. module: crm
#: view:crm.lead.report:0
@@ -3488,7 +3494,7 @@ msgstr "Příležitosti podle fáze"
#. module: crm
#: model:ir.actions.act_window,name:crm.crm_case_categ_phone_create_partner
msgid "Schedule Phone Call"
-msgstr ""
+msgstr "Naplánovat hovor"
#. module: crm
#: selection:crm.lead.report,month:0
@@ -3509,7 +3515,7 @@ msgstr ""
#. module: crm
#: model:process.process,name:crm.process_process_contractprocess0
msgid "Contract"
-msgstr ""
+msgstr "Smlouva"
#. module: crm
#: model:crm.case.resource.type,name:crm.type_lead4
@@ -3528,30 +3534,30 @@ msgstr "Chyba"
#. module: crm
#: view:crm.lead.report:0
msgid "Planned Revenues"
-msgstr ""
+msgstr "Plánované výnosy"
#. module: crm
#: model:crm.case.categ,name:crm.categ_oppor7
msgid "Need Consulting"
-msgstr ""
+msgstr "Potřebuje konzultaci"
#. module: crm
#: constraint:crm.segmentation:0
msgid "Error ! You can not create recursive profiles."
-msgstr ""
+msgstr "Chyba ! Nemůžete vytvořit rekurzivní profily."
#. module: crm
#: code:addons/crm/crm_lead.py:232
#, python-format
msgid "The case '%s' has been closed."
-msgstr ""
+msgstr "Byl uzavřen případ '%s'."
#. module: crm
#: field:crm.lead,partner_address_id:0
#: field:crm.meeting,partner_address_id:0
#: field:crm.phonecall,partner_address_id:0
msgid "Partner Contact"
-msgstr ""
+msgstr "Kontakt partnera"
#. module: crm
#: field:crm.meeting,recurrent_id:0
@@ -3567,7 +3573,7 @@ msgstr "Nemůžete mít dva uživatele se stejným přihlašovacím jménem !"
#: code:addons/crm/wizard/crm_merge_opportunities.py:100
#, python-format
msgid "Merged into Opportunity: %s"
-msgstr ""
+msgstr "Sloučeno do Příležitosti: %s"
#. module: crm
#: code:addons/crm/crm.py:347
@@ -3582,12 +3588,12 @@ msgstr "Uzavřít"
#: view:crm.phonecall:0
#: view:res.partner:0
msgid "Categorization"
-msgstr ""
+msgstr "Kategorizace"
#. module: crm
#: model:ir.model,name:crm.model_base_action_rule
msgid "Action Rules"
-msgstr ""
+msgstr "Pravidla akcí"
#. module: crm
#: field:crm.meeting,rrule_type:0
@@ -3597,7 +3603,7 @@ msgstr "Opakování"
#. module: crm
#: field:crm.meeting,phonecall_id:0
msgid "Phonecall"
-msgstr ""
+msgstr "Telefonní hovor"
#. module: crm
#: selection:crm.meeting,week_list:0
@@ -3628,7 +3634,7 @@ msgstr "_Přidat"
#. module: crm
#: selection:crm.segmentation.line,expr_name:0
msgid "State of Mind"
-msgstr ""
+msgstr "Stav mysli"
#. module: crm
#: field:crm.case.section,note:0
@@ -3671,13 +3677,13 @@ msgstr "Květen"
#. module: crm
#: model:crm.case.categ,name:crm.categ_oppor2
msgid "Interest in Accessories"
-msgstr ""
+msgstr "Zájem v příslušenství"
#. module: crm
#: code:addons/crm/crm_lead.py:211
#, python-format
msgid "The opportunity '%s' has been opened."
-msgstr ""
+msgstr "Byla otevřena příležitost '%s'."
#. module: crm
#: field:crm.lead.report,email:0
@@ -3692,7 +3698,7 @@ msgstr "Ulice"
#. module: crm
#: view:crm.lead.report:0
msgid "Opportunities by User and Team"
-msgstr ""
+msgstr "Příležitosti podle uživatele a týmu"
#. module: crm
#: field:crm.case.section,working_hours:0
@@ -3717,7 +3723,7 @@ msgstr "Únor"
#: model:ir.actions.act_window,name:crm.crm_case_categ_meet_create_partner
#: view:res.partner:0
msgid "Schedule a Meeting"
-msgstr ""
+msgstr "Naplánovat setkání"
#. module: crm
#: model:crm.case.stage,name:crm.stage_lead6
@@ -3761,12 +3767,12 @@ msgstr ""
#. module: crm
#: model:ir.model,name:crm.model_crm_phonecall_report
msgid "Phone calls by user and section"
-msgstr ""
+msgstr "Hovory podle uživatele a sekce"
#. module: crm
#: selection:crm.lead2opportunity.action,name:0
msgid "Merge with existing Opportunity"
-msgstr ""
+msgstr "Sloučit s existující příležitostí"
#. module: crm
#: field:crm.meeting,select1:0
@@ -3782,7 +3788,7 @@ msgstr "Vyjednávání"
#. module: crm
#: view:crm.lead:0
msgid "Exp.Closing"
-msgstr ""
+msgstr "Oček.uzavření"
#. module: crm
#: field:crm.case.stage,sequence:0
@@ -3814,12 +3820,12 @@ msgstr "Druhý"
#: model:crm.case.stage,name:crm.stage_lead3
#: model:crm.case.stage,name:crm.stage_opportunity3
msgid "Proposition"
-msgstr ""
+msgstr "Návrh"
#. module: crm
#: field:res.partner,phonecall_ids:0
msgid "Phonecalls"
-msgstr ""
+msgstr "Telefonní hovory"
#. module: crm
#: view:crm.lead.report:0
diff --git a/addons/crm/i18n/da.po b/addons/crm/i18n/da.po
new file mode 100644
index 00000000000..a08c1aca502
--- /dev/null
+++ b/addons/crm/i18n/da.po
@@ -0,0 +1,3833 @@
+# Danish translation for openobject-addons
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR , 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2011-01-11 11:15+0000\n"
+"PO-Revision-Date: 2011-09-22 20:38+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Danish \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2011-09-23 04:38+0000\n"
+"X-Generator: Launchpad (build 14012)\n"
+
+#. module: crm
+#: view:crm.lead.report:0
+msgid "# Leads"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: selection:crm.lead,type:0
+#: selection:crm.lead.report,type:0
+msgid "Lead"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.categ,name:crm.categ_oppor3
+msgid "Need Services"
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,rrule_type:0
+msgid "Monthly"
+msgstr "Månedligt"
+
+#. module: crm
+#: view:crm.opportunity2phonecall:0
+msgid "Schedule a PhoneCall"
+msgstr ""
+
+#. module: crm
+#: model:ir.model,name:crm.model_crm_case_stage
+msgid "Stage of case"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+msgid "Visibility"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,title:0
+msgid "Title"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,show_as:0
+msgid "Show as"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,day:0
+#: selection:crm.meeting,select1:0
+msgid "Date of month"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: view:crm.phonecall:0
+msgid "Today"
+msgstr "Idag"
+
+#. module: crm
+#: view:crm.merge.opportunity:0
+msgid "Select Opportunities"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+#: view:crm.phonecall2opportunity:0
+#: view:crm.phonecall2phonecall:0
+#: view:crm.send.mail:0
+msgid " "
+msgstr " "
+
+#. module: crm
+#: view:crm.lead.report:0
+#: field:crm.phonecall.report,delay_close:0
+msgid "Delay to close"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Previous Stage"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/wizard/crm_add_note.py:26
+#, python-format
+msgid "Can not add note!"
+msgstr ""
+
+#. module: crm
+#: field:crm.case.stage,name:0
+msgid "Stage Name"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead.report:0
+#: field:crm.lead.report,day:0
+#: view:crm.phonecall.report:0
+#: field:crm.phonecall.report,day:0
+msgid "Day"
+msgstr "Dag"
+
+#. module: crm
+#: sql_constraint:crm.case.section:0
+msgid "The code of the sales team must be unique !"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/wizard/crm_lead_to_opportunity.py:95
+#, python-format
+msgid "Lead '%s' has been converted to an opportunity."
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm_lead.py:228
+#, python-format
+msgid "The lead '%s' has been closed."
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,freq:0
+msgid "No Repeat"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/wizard/crm_lead_to_opportunity.py:135
+#: code:addons/crm/wizard/crm_lead_to_opportunity.py:260
+#: code:addons/crm/wizard/crm_lead_to_partner.py:55
+#: code:addons/crm/wizard/crm_phonecall_to_partner.py:52
+#, python-format
+msgid "Warning !"
+msgstr "Advarsel!"
+
+#. module: crm
+#: selection:crm.meeting,rrule_type:0
+msgid "Yearly"
+msgstr "Årligt"
+
+#. module: crm
+#: field:crm.segmentation.line,name:0
+msgid "Rule Name"
+msgstr ""
+
+#. module: crm
+#: view:crm.case.resource.type:0
+#: view:crm.lead:0
+#: field:crm.lead,type_id:0
+#: view:crm.lead.report:0
+#: field:crm.lead.report,type_id:0
+#: model:ir.model,name:crm.model_crm_case_resource_type
+msgid "Campaign"
+msgstr "Kampagne"
+
+#. module: crm
+#: selection:crm.lead2opportunity.partner,action:0
+msgid "Do not create a partner"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Search Opportunities"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/wizard/crm_merge_opportunities.py:46
+#, python-format
+msgid ""
+"Opportunity must have Partner assigned before merging with other Opportunity."
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/wizard/crm_merge_opportunities.py:46
+#: code:addons/crm/wizard/crm_merge_opportunities.py:53
+#, python-format
+msgid "Warning!"
+msgstr "Advarsel!"
+
+#. module: crm
+#: view:crm.lead.report:0
+#: model:ir.actions.act_window,name:crm.action_report_crm_opportunity
+#: model:ir.ui.menu,name:crm.menu_report_crm_opportunities_tree
+msgid "Opportunities Analysis"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,partner_id:0
+#: view:crm.lead.report:0
+#: field:crm.lead.report,partner_id:0
+#: field:crm.lead2opportunity,partner_id:0
+#: field:crm.lead2opportunity.partner,partner_id:0
+#: field:crm.lead2partner,partner_id:0
+#: view:crm.meeting:0
+#: field:crm.meeting,partner_id:0
+#: field:crm.partner2opportunity,partner_id:0
+#: view:crm.phonecall:0
+#: field:crm.phonecall,partner_id:0
+#: view:crm.phonecall.report:0
+#: field:crm.phonecall.report,partner_id:0
+#: field:crm.phonecall2opportunity,partner_id:0
+#: field:crm.phonecall2partner,partner_id:0
+#: model:ir.model,name:crm.model_res_partner
+#: model:process.node,name:crm.process_node_partner0
+msgid "Partner"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,organizer:0
+#: field:crm.meeting,organizer_id:0
+msgid "Organizer"
+msgstr ""
+
+#. module: crm
+#: view:crm.phonecall:0
+#: view:crm.phonecall2phonecall:0
+#: model:ir.actions.act_window,name:crm.phonecall_to_phonecall_act
+#: view:res.partner:0
+msgid "Schedule Other Call"
+msgstr ""
+
+#. module: crm
+#: help:crm.meeting,edit_all:0
+msgid "Edit all Occurrences of recurrent Meeting."
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/wizard/crm_opportunity_to_phonecall.py:134
+#: code:addons/crm/wizard/crm_phonecall_to_phonecall.py:89
+#: model:crm.case.categ,name:crm.categ_meet3
+#: view:crm.phonecall:0
+#: model:ir.ui.menu,name:crm.menu_crm_config_phonecall
+#: view:res.partner:0
+#, python-format
+msgid "Phone Call"
+msgstr "Telefonopkald"
+
+#. module: crm
+#: field:crm.lead,optout:0
+msgid "Opt-Out"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm_opportunity.py:108
+#, python-format
+msgid "The opportunity '%s' has been marked as lost."
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,help:crm.action_report_crm_lead
+msgid ""
+"Leads Analysis allows you to check different CRM related information. Check "
+"for treatment delays, number of responses given and emails sent. You can "
+"sort out your leads analysis by different groups to get accurate grained "
+"analysis."
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Send New Email"
+msgstr "Send ny email"
+
+#. module: crm
+#: field:crm.segmentation,segmentation_line:0
+msgid "Criteria"
+msgstr "Kriterier"
+
+#. module: crm
+#: view:crm.segmentation:0
+msgid "Excluded Answers :"
+msgstr ""
+
+#. module: crm
+#: field:crm.case.stage,section_ids:0
+msgid "Sections"
+msgstr ""
+
+#. module: crm
+#: view:crm.merge.opportunity:0
+msgid "_Merge"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead.report:0
+#: model:ir.actions.act_window,name:crm.action_report_crm_lead
+#: model:ir.ui.menu,name:crm.menu_report_crm_leads_tree
+msgid "Leads Analysis"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead2opportunity.action:0
+msgid ""
+"If you select Merge with existing Opportunity, the lead details(with the "
+"communication history) will be merged with existing Opportunity of Selected "
+"partner."
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,class:0
+msgid "Public"
+msgstr "Offentlig"
+
+#. module: crm
+#: model:ir.actions.act_window,name:crm.crm_case_resource_type_act
+#: model:ir.ui.menu,name:crm.menu_crm_case_resource_type_act
+msgid "Campaigns"
+msgstr "Kampagner"
+
+#. module: crm
+#: model:ir.actions.act_window,name:crm.crm_lead_categ_action
+#: model:ir.ui.menu,name:crm.menu_crm_case_phonecall-act
+#: model:ir.ui.menu,name:crm.menu_crm_lead_categ
+msgid "Categories"
+msgstr "Kategorier"
+
+#. module: crm
+#: selection:crm.meeting,end_type:0
+msgid "Forever"
+msgstr ""
+
+#. module: crm
+#: help:crm.lead,optout:0
+msgid ""
+"If opt-out is checked, this contact has refused to receive emails or "
+"unsubscribed to a campaign."
+msgstr ""
+
+#. module: crm
+#: model:process.transition,name:crm.process_transition_leadpartner0
+msgid "Prospect Partner"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,contact_name:0
+msgid "Contact Name"
+msgstr "Kontaktnavn"
+
+#. module: crm
+#: selection:crm.lead2opportunity.partner,action:0
+#: selection:crm.lead2partner,action:0
+#: selection:crm.phonecall2partner,action:0
+msgid "Link to an existing partner"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: view:crm.meeting:0
+#: field:crm.phonecall,partner_contact:0
+msgid "Contact"
+msgstr "Kontaktperson"
+
+#. module: crm
+#: view:crm.installer:0
+msgid "Enhance your core CRM Application with additional functionalities."
+msgstr ""
+
+#. module: crm
+#: field:crm.case.stage,on_change:0
+msgid "Change Probability Automatically"
+msgstr ""
+
+#. module: crm
+#: field:base.action.rule,regex_history:0
+msgid "Regular Expression on Case History"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm_lead.py:209
+#, python-format
+msgid "The lead '%s' has been opened."
+msgstr ""
+
+#. module: crm
+#: model:process.transition,name:crm.process_transition_opportunitymeeting0
+msgid "Opportunity Meeting"
+msgstr ""
+
+#. module: crm
+#: help:crm.lead.report,delay_close:0
+#: help:crm.phonecall.report,delay_close:0
+msgid "Number of Days to close the case"
+msgstr ""
+
+#. module: crm
+#: model:process.node,note:crm.process_node_opportunities0
+msgid "When a real project/opportunity is detected"
+msgstr ""
+
+#. module: crm
+#: field:crm.installer,crm_fundraising:0
+msgid "Fundraising"
+msgstr ""
+
+#. module: crm
+#: view:res.partner:0
+#: field:res.partner,opportunity_ids:0
+msgid "Leads and Opportunities"
+msgstr ""
+
+#. module: crm
+#: view:crm.send.mail:0
+msgid "_Send"
+msgstr "_Send"
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Communication"
+msgstr "Kommunikation"
+
+#. module: crm
+#: field:crm.case.section,change_responsible:0
+msgid "Change Responsible"
+msgstr ""
+
+#. module: crm
+#: field:crm.merge.opportunity,state:0
+msgid "Set State To"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,help:crm.crm_case_categ_phone_outgoing0
+msgid ""
+"Outbound Calls list all the calls to be done by your sales team. A salesman "
+"can record the information about the call in the form view. This information "
+"will be stored in the partner form to trace every contact you have with a "
+"customer. You can also import a .CSV file with a list of calls to be done by "
+"your sales team."
+msgstr ""
+
+#. module: crm
+#: model:ir.model,name:crm.model_crm_lead2opportunity_action
+msgid "Convert/Merge Opportunity"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,write_date:0
+msgid "Update Date"
+msgstr "Opdater dato"
+
+#. module: crm
+#: view:crm.lead2opportunity.action:0
+#: field:crm.lead2opportunity.action,name:0
+msgid "Select Action"
+msgstr ""
+
+#. module: crm
+#: field:base.action.rule,trg_categ_id:0
+#: view:crm.lead:0
+#: field:crm.lead,categ_id:0
+#: view:crm.lead.report:0
+#: field:crm.lead.report,categ_id:0
+#: field:crm.opportunity2phonecall,categ_id:0
+#: field:crm.phonecall,categ_id:0
+#: field:crm.phonecall.report,categ_id:0
+#: field:crm.phonecall2phonecall,categ_id:0
+msgid "Category"
+msgstr "Kategori"
+
+#. module: crm
+#: view:crm.lead.report:0
+msgid "#Opportunities"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.resource.type,name:crm.type_oppor2
+msgid "Campaign 1"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.resource.type,name:crm.type_oppor1
+msgid "Campaign 2"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+msgid "Privacy"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead.report:0
+msgid "Opportunity Analysis"
+msgstr ""
+
+#. module: crm
+#: help:crm.meeting,location:0
+msgid "Location of Event"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,rrule:0
+msgid "Recurrent Rule"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.resource.type,name:crm.type_lead1
+msgid "Version 4.2"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.resource.type,name:crm.type_lead2
+msgid "Version 4.4"
+msgstr ""
+
+#. module: crm
+#: help:crm.installer,fetchmail:0
+msgid "Allows you to receive E-Mails from POP/IMAP server."
+msgstr ""
+
+#. module: crm
+#: model:process.transition,note:crm.process_transition_opportunitymeeting0
+msgid "Normal or phone meeting for opportunity"
+msgstr ""
+
+#. module: crm
+#: model:process.node,note:crm.process_node_leads0
+msgid "Very first contact with new prospect"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm_lead.py:278
+#: code:addons/crm/wizard/crm_lead_to_opportunity.py:197
+#: code:addons/crm/wizard/crm_lead_to_opportunity.py:231
+#: code:addons/crm/wizard/crm_lead_to_opportunity.py:299
+#: view:crm.lead2opportunity:0
+#: view:crm.partner2opportunity:0
+#: model:ir.actions.act_window,name:crm.action_crm_lead2opportunity
+#: model:ir.actions.act_window,name:crm.action_view_crm_partner2opportunity
+#: model:ir.actions.act_window,name:crm.crm_partner2opportunity
+#, python-format
+msgid "Create Opportunity"
+msgstr ""
+
+#. module: crm
+#: view:crm.installer:0
+msgid "Configure"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm.py:378
+#: view:crm.lead:0
+#: view:res.partner:0
+#, python-format
+msgid "Escalate"
+msgstr ""
+
+#. module: crm
+#: model:ir.module.module,shortdesc:crm.module_meta_information
+msgid "Customer & Supplier Relationship Management"
+msgstr ""
+
+#. module: crm
+#: selection:crm.lead.report,month:0
+#: selection:crm.meeting,month_list:0
+#: selection:crm.phonecall.report,month:0
+msgid "June"
+msgstr ""
+
+#. module: crm
+#: selection:crm.segmentation,state:0
+msgid "Not Running"
+msgstr ""
+
+#. module: crm
+#: view:crm.send.mail:0
+#: model:ir.actions.act_window,name:crm.action_crm_reply_mail
+msgid "Reply to last Mail"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,email:0
+msgid "E-Mail"
+msgstr ""
+
+#. module: crm
+#: field:crm.installer,wiki_sale_faq:0
+msgid "Sale FAQ"
+msgstr ""
+
+#. module: crm
+#: model:ir.model,name:crm.model_crm_send_mail_attachment
+msgid "crm.send.mail.attachment"
+msgstr ""
+
+#. module: crm
+#: selection:crm.lead.report,month:0
+#: selection:crm.meeting,month_list:0
+#: selection:crm.phonecall.report,month:0
+msgid "October"
+msgstr ""
+
+#. module: crm
+#: view:crm.segmentation:0
+msgid "Included Answers :"
+msgstr ""
+
+#. module: crm
+#: help:crm.meeting,email_from:0
+#: help:crm.phonecall,email_from:0
+msgid "These people will receive email."
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+#: field:crm.meeting,name:0
+msgid "Summary"
+msgstr ""
+
+#. module: crm
+#: view:crm.segmentation:0
+msgid "State of Mind Computation"
+msgstr ""
+
+#. module: crm
+#: help:crm.case.section,change_responsible:0
+msgid ""
+"Thick this box if you want that on escalation, the responsible of this sale "
+"team automatically becomes responsible of the lead/opportunity escaladed"
+msgstr ""
+
+#. module: crm
+#: help:crm.installer,outlook:0
+#: help:crm.installer,thunderbird:0
+msgid ""
+"Allows you to link your e-mail to OpenERP's documents. You can attach it to "
+"any existing one in OpenERP or create a new one."
+msgstr ""
+
+#. module: crm
+#: view:crm.case.categ:0
+msgid "Case Category"
+msgstr ""
+
+#. module: crm
+#: help:crm.segmentation,som_interval_default:0
+msgid ""
+"Default state of mind for period preceeding the 'Max Interval' computation. "
+"This is the starting state of mind by default if the partner has no event."
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,end_type:0
+msgid "End date"
+msgstr ""
+
+#. module: crm
+#: constraint:base.action.rule:0
+msgid "Error: The mail is not well formated"
+msgstr ""
+
+#. module: crm
+#: view:crm.segmentation:0
+msgid "Profiling Options"
+msgstr ""
+
+#. module: crm
+#: view:crm.phonecall.report:0
+msgid "#Phone calls"
+msgstr ""
+
+#. module: crm
+#: help:crm.segmentation,categ_id:0
+msgid ""
+"The partner category that will be added to partners that match the "
+"segmentation criterions after computation."
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Communication history"
+msgstr ""
+
+#. module: crm
+#: help:crm.phonecall,canal_id:0
+msgid ""
+"The channels represent the different communication "
+"modes available with the customer. With each commercial opportunity, you can "
+"indicate the canall which is this opportunity source."
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm_meeting.py:93
+#, python-format
+msgid "The meeting '%s' has been confirmed."
+msgstr ""
+
+#. module: crm
+#: field:crm.case.section,user_id:0
+msgid "Responsible User"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/wizard/crm_phonecall_to_partner.py:53
+#, python-format
+msgid "A partner is already defined on this phonecall."
+msgstr ""
+
+#. module: crm
+#: help:crm.case.section,reply_to:0
+msgid ""
+"The email address put in the 'Reply-To' of all emails sent by OpenERP about "
+"cases in this sales team"
+msgstr ""
+
+#. module: crm
+#: view:res.users:0
+msgid "Current Activity"
+msgstr ""
+
+#. module: crm
+#: help:crm.meeting,exrule:0
+msgid ""
+"Defines a rule or repeating pattern of time to exclude from the recurring "
+"rule."
+msgstr ""
+
+#. module: crm
+#: field:crm.case.section,resource_calendar_id:0
+msgid "Working Time"
+msgstr ""
+
+#. module: crm
+#: view:crm.segmentation.line:0
+msgid "Partner Segmentation Lines"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: view:crm.meeting:0
+msgid "Details"
+msgstr ""
+
+#. module: crm
+#: help:crm.installer,crm_caldav:0
+msgid ""
+"Helps you to synchronize the meetings with other calendar clients and "
+"mobiles."
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,freq:0
+msgid "Years"
+msgstr ""
+
+#. module: crm
+#: help:crm.installer,crm_claim:0
+msgid ""
+"Manages the suppliers and customers claims, including your corrective or "
+"preventive actions."
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Leads Form"
+msgstr ""
+
+#. module: crm
+#: view:crm.segmentation:0
+#: model:ir.model,name:crm.model_crm_segmentation
+msgid "Partner Segmentation"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead.report,probable_revenue:0
+msgid "Probable Revenue"
+msgstr ""
+
+#. module: crm
+#: help:crm.segmentation,name:0
+msgid "The name of the segmentation."
+msgstr ""
+
+#. module: crm
+#: field:crm.case.stage,probability:0
+#: field:crm.lead,probability:0
+msgid "Probability (%)"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Leads Generation"
+msgstr ""
+
+#. module: crm
+#: view:board.board:0
+#: model:ir.ui.menu,name:crm.menu_board_statistics_dash
+msgid "Statistics Dashboard"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/wizard/crm_lead_to_opportunity.py:88
+#: code:addons/crm/wizard/crm_lead_to_opportunity.py:98
+#: code:addons/crm/wizard/crm_partner_to_opportunity.py:101
+#: code:addons/crm/wizard/crm_phonecall_to_opportunity.py:117
+#: view:crm.lead:0
+#: selection:crm.lead,type:0
+#: selection:crm.lead.report,type:0
+#: field:crm.lead2opportunity,name:0
+#: field:crm.meeting,opportunity_id:0
+#: field:crm.phonecall,opportunity_id:0
+#, python-format
+msgid "Opportunity"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.resource.type,name:crm.type_lead7
+msgid "Television"
+msgstr ""
+
+#. module: crm
+#: field:crm.installer,crm_caldav:0
+msgid "Calendar Synchronizing"
+msgstr ""
+
+#. module: crm
+#: view:crm.segmentation:0
+msgid "Stop Process"
+msgstr ""
+
+#. module: crm
+#: view:crm.phonecall:0
+msgid "Search Phonecalls"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead2opportunity.partner:0
+#: view:crm.lead2partner:0
+#: view:crm.phonecall2partner:0
+msgid "Continue"
+msgstr ""
+
+#. module: crm
+#: field:crm.segmentation,som_interval:0
+msgid "Days per Periode"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,byday:0
+msgid "By day"
+msgstr ""
+
+#. module: crm
+#: field:base.action.rule,act_section_id:0
+msgid "Set Team to"
+msgstr ""
+
+#. module: crm
+#: view:calendar.attendee:0
+#: field:calendar.attendee,categ_id:0
+msgid "Event Type"
+msgstr ""
+
+#. module: crm
+#: model:ir.model,name:crm.model_crm_installer
+msgid "crm.installer"
+msgstr ""
+
+#. module: crm
+#: field:crm.segmentation,exclusif:0
+msgid "Exclusive"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm_opportunity.py:91
+#, python-format
+msgid "The opportunity '%s' has been won."
+msgstr ""
+
+#. module: crm
+#: help:crm.meeting,alarm_id:0
+msgid "Set an alarm at this time, before the event occurs"
+msgstr ""
+
+#. module: crm
+#: model:ir.module.module,description:crm.module_meta_information
+msgid ""
+"The generic OpenERP Customer Relationship Management\n"
+"system enables a group of people to intelligently and efficiently manage\n"
+"leads, opportunities, meeting, phonecall etc.\n"
+"It manages key tasks such as communication, identification, prioritization,\n"
+"assignment, resolution and notification.\n"
+"\n"
+"OpenERP ensures that all cases are successfully tracked by users, customers "
+"and\n"
+"suppliers. It can automatically send reminders, escalate the request, "
+"trigger\n"
+"specific methods and lots of other actions based on your own enterprise "
+"rules.\n"
+"\n"
+"The greatest thing about this system is that users don't need to do "
+"anything\n"
+"special. They can just send email to the request tracker. OpenERP will take\n"
+"care of thanking them for their message, automatically routing it to the\n"
+"appropriate staff, and make sure all future correspondence gets to the "
+"right\n"
+"place.\n"
+"\n"
+"The CRM module has a email gateway for the synchronisation interface\n"
+"between mails and OpenERP. \n"
+"Create dashboard for CRM that includes:\n"
+" * My Leads (list)\n"
+" * Leads by Stage (graph)\n"
+" * My Meetings (list)\n"
+" * Sales Pipeline by Stage (graph)\n"
+" * My Cases (list)\n"
+" * Jobs Tracking (graph)\n"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead.report,create_date:0
+#: field:crm.phonecall.report,create_date:0
+msgid "Create Date"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,ref2:0
+msgid "Reference 2"
+msgstr ""
+
+#. module: crm
+#: view:crm.segmentation:0
+msgid "Sales Purchase"
+msgstr ""
+
+#. module: crm
+#: view:crm.case.stage:0
+#: field:crm.case.stage,requirements:0
+msgid "Requirements"
+msgstr ""
+
+#. module: crm
+#: help:crm.meeting,exdate:0
+msgid ""
+"This property defines the list of date/time exceptions for a recurring "
+"calendar component."
+msgstr ""
+
+#. module: crm
+#: view:crm.phonecall2opportunity:0
+msgid "Convert To Opportunity "
+msgstr ""
+
+#. module: crm
+#: help:crm.case.stage,sequence:0
+msgid "Gives the sequence order when displaying a list of case stages."
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: field:crm.merge.opportunity,opportunity_ids:0
+#: model:ir.actions.act_window,name:crm.crm_case_category_act_oppor11
+#: model:ir.ui.menu,name:crm.menu_crm_case_opp
+#: model:process.node,name:crm.process_node_opportunities0
+msgid "Opportunities"
+msgstr ""
+
+#. module: crm
+#: field:crm.segmentation,categ_id:0
+msgid "Partner Category"
+msgstr ""
+
+#. module: crm
+#: view:crm.add.note:0
+#: model:ir.actions.act_window,name:crm.action_crm_add_note
+msgid "Add Note"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,is_supplier_add:0
+msgid "Supplier"
+msgstr ""
+
+#. module: crm
+#: help:crm.send.mail,reply_to:0
+msgid "Reply-to of the Sales team defined on this case"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Mark Won"
+msgstr ""
+
+#. module: crm
+#: selection:crm.segmentation.line,expr_name:0
+msgid "Purchase Amount"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Mark Lost"
+msgstr ""
+
+#. module: crm
+#: selection:crm.lead.report,month:0
+#: selection:crm.meeting,month_list:0
+#: selection:crm.phonecall.report,month:0
+msgid "March"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm_lead.py:230
+#, python-format
+msgid "The opportunity '%s' has been closed."
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,day_open:0
+msgid "Days to Open"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+msgid "Show time as"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm_lead.py:264
+#: view:crm.phonecall2partner:0
+#, python-format
+msgid "Create Partner"
+msgstr ""
+
+#. module: crm
+#: selection:crm.segmentation.line,expr_operator:0
+msgid "<"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,mobile:0
+#: field:crm.phonecall,partner_mobile:0
+msgid "Mobile"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,end_type:0
+msgid "Way to end reccurency"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/wizard/crm_merge_opportunities.py:53
+#, python-format
+msgid ""
+"There are no other 'Open' or 'Pending' Opportunities for the partner '%s'."
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Next Stage"
+msgstr ""
+
+#. module: crm
+#: view:board.board:0
+msgid "My Meetings"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,ref:0
+msgid "Reference"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,optin:0
+msgid "Opt-In"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm_opportunity.py:208
+#: code:addons/crm/crm_phonecall.py:185
+#: code:addons/crm/wizard/crm_phonecall_to_meeting.py:55
+#: code:addons/crm/wizard/crm_phonecall_to_meeting.py:137
+#: view:crm.meeting:0
+#: model:ir.actions.act_window,name:crm.act_crm_opportunity_crm_meeting_new
+#: model:ir.actions.act_window,name:crm.crm_case_categ_meet
+#: model:ir.ui.menu,name:crm.menu_crm_case_categ_meet
+#: model:ir.ui.menu,name:crm.menu_meeting_sale
+#: view:res.partner:0
+#: field:res.partner,meeting_ids:0
+#, python-format
+msgid "Meetings"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+msgid "Choose day where repeat the meeting"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,date_action_next:0
+#: field:crm.lead,title_action:0
+#: field:crm.meeting,date_action_next:0
+#: field:crm.phonecall,date_action_next:0
+msgid "Next Action"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,end_date:0
+msgid "Repeat Until"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,date_deadline:0
+msgid "Deadline"
+msgstr ""
+
+#. module: crm
+#: help:crm.meeting,active:0
+msgid ""
+"If the active field is set to true, it will allow you to hide the "
+"event alarm information without removing it."
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/wizard/crm_phonecall_to_opportunity.py:57
+#, python-format
+msgid "Closed/Cancelled Phone Call Could not convert into Opportunity"
+msgstr ""
+
+#. module: crm
+#: view:crm.segmentation:0
+msgid "Partner Segmentations"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+#: field:crm.meeting,user_id:0
+#: view:crm.phonecall:0
+#: field:crm.phonecall,user_id:0
+#: view:res.partner:0
+msgid "Responsible"
+msgstr ""
+
+#. module: crm
+#: view:res.partner:0
+msgid "Previous"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Statistics"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+#: field:crm.send.mail,email_from:0
+msgid "From"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead2opportunity.action:0
+#: view:res.partner:0
+msgid "Next"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Stage:"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.stage,name:crm.stage_lead5
+#: model:crm.case.stage,name:crm.stage_opportunity5
+#: view:crm.lead:0
+msgid "Won"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead.report,delay_expected:0
+msgid "Overpassed Deadline"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.section,name:crm.section_sales_department
+msgid "Sales Department"
+msgstr ""
+
+#. module: crm
+#: field:crm.send.mail,html:0
+msgid "HTML formatting?"
+msgstr ""
+
+#. module: crm
+#: field:crm.case.stage,type:0
+#: field:crm.lead,type:0
+#: field:crm.lead.report,type:0
+#: view:crm.meeting:0
+#: view:crm.phonecall:0
+#: view:crm.phonecall.report:0
+#: view:res.partner:0
+msgid "Type"
+msgstr ""
+
+#. module: crm
+#: view:crm.segmentation:0
+msgid "Compute Segmentation"
+msgstr ""
+
+#. module: crm
+#: selection:crm.lead,priority:0
+#: selection:crm.lead.report,priority:0
+#: selection:crm.phonecall,priority:0
+#: selection:crm.phonecall.report,priority:0
+msgid "Lowest"
+msgstr ""
+
+#. module: crm
+#: view:crm.add.note:0
+#: view:crm.send.mail:0
+#: field:crm.send.mail.attachment,binary:0
+msgid "Attachment"
+msgstr ""
+
+#. module: crm
+#: selection:crm.lead.report,month:0
+#: selection:crm.meeting,month_list:0
+#: selection:crm.phonecall.report,month:0
+msgid "August"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: field:crm.lead,create_date:0
+#: field:crm.lead.report,creation_date:0
+#: field:crm.meeting,create_date:0
+#: field:crm.phonecall,create_date:0
+#: field:crm.phonecall.report,creation_date:0
+msgid "Creation Date"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.categ,name:crm.categ_oppor5
+msgid "Need a Website Design"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,recurrent_uid:0
+msgid "Recurrent ID"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: view:crm.meeting:0
+#: field:crm.send.mail,subject:0
+#: view:res.partner:0
+msgid "Subject"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,tu:0
+msgid "Tue"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm_lead.py:300
+#: view:crm.case.stage:0
+#: view:crm.lead:0
+#: field:crm.lead,stage_id:0
+#: view:crm.lead.report:0
+#: field:crm.lead.report,stage_id:0
+#, python-format
+msgid "Stage"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "History Information"
+msgstr ""
+
+#. module: crm
+#: field:base.action.rule,act_mail_to_partner:0
+msgid "Mail to Partner"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Mailings"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,class:0
+msgid "Mark as"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,count:0
+msgid "Repeat"
+msgstr ""
+
+#. module: crm
+#: help:crm.meeting,rrule_type:0
+msgid "Let the event automatically repeat at that interval"
+msgstr ""
+
+#. module: crm
+#: view:base.action.rule:0
+msgid "Condition Case Fields"
+msgstr ""
+
+#. module: crm
+#: view:crm.case.section:0
+#: field:crm.case.section,stage_ids:0
+#: view:crm.case.stage:0
+#: model:ir.actions.act_window,name:crm.crm_case_stage_act
+#: model:ir.actions.act_window,name:crm.crm_lead_stage_act
+#: model:ir.actions.act_window,name:crm.crm_opportunity_stage_act
+#: model:ir.ui.menu,name:crm.menu_crm_lead_stage_act
+#: model:ir.ui.menu,name:crm.menu_crm_opportunity_stage_act
+msgid "Stages"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,planned_revenue:0
+#: field:crm.lead2opportunity,planned_revenue:0
+#: field:crm.partner2opportunity,planned_revenue:0
+#: field:crm.phonecall2opportunity,planned_revenue:0
+msgid "Expected Revenue"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,help:crm.crm_phonecall_categ_action
+msgid ""
+"Create specific phone call categories to better define the type of calls "
+"tracked in the system."
+msgstr ""
+
+#. module: crm
+#: selection:crm.lead.report,month:0
+#: selection:crm.meeting,month_list:0
+#: selection:crm.phonecall.report,month:0
+msgid "September"
+msgstr ""
+
+#. module: crm
+#: field:crm.segmentation,partner_id:0
+msgid "Max Partner ID processed"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,name:crm.action_report_crm_phonecall
+#: model:ir.ui.menu,name:crm.menu_report_crm_phonecalls_tree
+msgid "Phone Calls Analysis"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead.report,opening_date:0
+#: field:crm.phonecall.report,opening_date:0
+msgid "Opening Date"
+msgstr ""
+
+#. module: crm
+#: help:crm.phonecall,duration:0
+msgid "Duration in Minutes"
+msgstr ""
+
+#. module: crm
+#: help:crm.installer,crm_helpdesk:0
+msgid "Manages a Helpdesk service."
+msgstr ""
+
+#. module: crm
+#: field:crm.partner2opportunity,name:0
+msgid "Opportunity Name"
+msgstr ""
+
+#. module: crm
+#: help:crm.case.section,active:0
+msgid ""
+"If the active field is set to true, it will allow you to hide the sales team "
+"without removing it."
+msgstr ""
+
+#. module: crm
+#: view:crm.lead.report:0
+#: view:crm.phonecall.report:0
+msgid " Year "
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,edit_all:0
+msgid "Edit All"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,fr:0
+msgid "Fri"
+msgstr ""
+
+#. module: crm
+#: model:ir.model,name:crm.model_crm_lead
+msgid "crm.lead"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,write_date:0
+msgid "Write Date"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+msgid "End of recurrency"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+msgid "Reminder"
+msgstr ""
+
+#. module: crm
+#: help:crm.segmentation,sales_purchase_active:0
+msgid ""
+"Check if you want to use this tab as part of the segmentation rule. If not "
+"checked, the criteria beneath will be ignored"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead2opportunity.partner:0
+#: view:crm.lead2partner:0
+#: view:crm.phonecall:0
+#: view:crm.phonecall2partner:0
+#: model:ir.actions.act_window,name:crm.action_crm_lead2partner
+#: model:ir.actions.act_window,name:crm.action_crm_phonecall2partner
+#: view:res.partner:0
+msgid "Create a Partner"
+msgstr ""
+
+#. module: crm
+#: field:crm.segmentation,state:0
+msgid "Execution Status"
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,week_list:0
+msgid "Monday"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,day_close:0
+msgid "Days to Close"
+msgstr ""
+
+#. module: crm
+#: field:crm.add.note,attachment_ids:0
+#: field:crm.case.section,complete_name:0
+#: field:crm.send.mail,attachment_ids:0
+msgid "unknown"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,id:0
+#: field:crm.meeting,id:0
+#: field:crm.phonecall,id:0
+msgid "ID"
+msgstr ""
+
+#. module: crm
+#: model:ir.model,name:crm.model_crm_partner2opportunity
+msgid "Partner To Opportunity"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+#: field:crm.meeting,date:0
+#: field:crm.opportunity2phonecall,date:0
+#: view:crm.phonecall:0
+#: field:crm.phonecall,date:0
+#: field:crm.phonecall2phonecall,date:0
+#: view:res.partner:0
+msgid "Date"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: view:crm.lead.report:0
+#: view:crm.meeting:0
+#: view:crm.phonecall.report:0
+msgid "Extended Filters..."
+msgstr ""
+
+#. module: crm
+#: field:crm.phonecall2opportunity,name:0
+msgid "Opportunity Summary"
+msgstr ""
+
+#. module: crm
+#: view:crm.phonecall.report:0
+msgid "Search"
+msgstr ""
+
+#. module: crm
+#: view:board.board:0
+msgid "Opportunities by Categories"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+msgid "Choose day in the month where repeat the meeting"
+msgstr ""
+
+#. module: crm
+#: view:crm.segmentation:0
+msgid "Segmentation Description"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: view:res.partner:0
+msgid "History"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,help:crm.crm_segmentation_tree-act
+msgid ""
+"Create specific partner categories which you can assign to your partners to "
+"better manage your interactions with them. The segmentation tool is able to "
+"assign categories to partners according to criteria you set."
+msgstr ""
+
+#. module: crm
+#: field:crm.case.section,code:0
+msgid "Code"
+msgstr ""
+
+#. module: crm
+#: field:crm.case.section,child_ids:0
+msgid "Child Teams"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: field:crm.lead,state:0
+#: view:crm.lead.report:0
+#: field:crm.lead.report,state:0
+#: view:crm.meeting:0
+#: field:crm.meeting,state:0
+#: field:crm.phonecall,state:0
+#: view:crm.phonecall.report:0
+#: field:crm.phonecall.report,state:0
+msgid "State"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,freq:0
+msgid "Frequency"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "References"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm.py:392
+#: view:crm.lead:0
+#: view:crm.lead2opportunity:0
+#: view:crm.lead2opportunity.action:0
+#: view:crm.lead2opportunity.partner:0
+#: view:crm.lead2partner:0
+#: view:crm.phonecall:0
+#: view:crm.phonecall2partner:0
+#: view:res.partner:0
+#, python-format
+msgid "Cancel"
+msgstr ""
+
+#. module: crm
+#: model:ir.model,name:crm.model_res_users
+msgid "res.users"
+msgstr ""
+
+#. module: crm
+#: model:ir.model,name:crm.model_crm_merge_opportunity
+msgid "Merge two Opportunities"
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,end_type:0
+msgid "Fix amout of times"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: view:crm.meeting:0
+#: view:crm.phonecall:0
+msgid "Current"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,exrule:0
+msgid "Exception Rule"
+msgstr ""
+
+#. module: crm
+#: help:base.action.rule,act_mail_to_partner:0
+msgid "Check this if you want the rule to send an email to the partner."
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,name:crm.crm_phonecall_categ_action
+msgid "Phonecall Categories"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+msgid "Invite People"
+msgstr ""
+
+#. module: crm
+#: constraint:crm.case.section:0
+msgid "Error ! You cannot create recursive Sales team."
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+msgid "Search Meetings"
+msgstr ""
+
+#. module: crm
+#: selection:crm.segmentation.line,expr_name:0
+msgid "Sale Amount"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/wizard/crm_send_email.py:141
+#, python-format
+msgid "Unable to send mail. Please check SMTP is configured properly."
+msgstr ""
+
+#. module: crm
+#: selection:crm.segmentation.line,expr_operator:0
+msgid "="
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,state:0
+msgid "Unconfirmed"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,help:crm.action_report_crm_opportunity
+msgid ""
+"Opportunities Analysis gives you an instant access to your opportunities "
+"with information such as the expected revenue, planned cost, missed "
+"deadlines or the number of interactions per opportunity. This report is "
+"mainly used by the sales manager in order to do the periodic review with the "
+"teams of the sales pipeline."
+msgstr ""
+
+#. module: crm
+#: field:crm.case.categ,name:0
+#: field:crm.installer,name:0
+#: field:crm.lead,name:0
+#: field:crm.segmentation,name:0
+#: field:crm.send.mail.attachment,name:0
+msgid "Name"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,alarm_id:0
+#: field:crm.meeting,base_calendar_alarm_id:0
+msgid "Alarm"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,help:crm.crm_lead_stage_act
+msgid ""
+"Add specific stages to leads and opportunities allowing your sales to better "
+"organise their sales pipeline. Stages will allow them to easily track how a "
+"specific lead or opportunity is positioned in the sales cycle."
+msgstr ""
+
+#. module: crm
+#: view:crm.lead.report:0
+#: view:crm.phonecall.report:0
+msgid "My Case(s)"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,birthdate:0
+msgid "Birthdate"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+msgid "The"
+msgstr ""
+
+#. module: crm
+#: field:crm.send.mail.attachment,wizard_id:0
+msgid "Wizard"
+msgstr ""
+
+#. module: crm
+#: help:crm.lead,section_id:0
+msgid ""
+"Sales team to which this case belongs to. Defines responsible user and e-"
+"mail address for the mail gateway."
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: view:crm.phonecall:0
+msgid "Creation"
+msgstr ""
+
+#. module: crm
+#: selection:crm.lead,priority:0
+#: selection:crm.lead.report,priority:0
+#: selection:crm.phonecall,priority:0
+#: selection:crm.phonecall.report,priority:0
+msgid "High"
+msgstr ""
+
+#. module: crm
+#: model:process.node,note:crm.process_node_partner0
+msgid "Convert to prospect to business partner"
+msgstr ""
+
+#. module: crm
+#: view:crm.phonecall2opportunity:0
+msgid "_Convert"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,help:crm.action_view_attendee_form
+msgid ""
+"With Meeting Invitations you can create and manage the meeting invitations "
+"sent/to be sent to your colleagues/partners. You can not only invite OpenERP "
+"users, but also external parties, such as a customer."
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,week_list:0
+msgid "Saturday"
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,byday:0
+msgid "Fifth"
+msgstr ""
+
+#. module: crm
+#: view:crm.phonecall2phonecall:0
+msgid "_Schedule"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead.report,delay_close:0
+msgid "Delay to Close"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,we:0
+msgid "Wed"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.categ,name:crm.categ_oppor6
+msgid "Potential Reseller"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead.report,planned_revenue:0
+msgid "Planned Revenue"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: view:crm.lead.report:0
+#: view:crm.meeting:0
+#: view:crm.phonecall:0
+#: view:crm.phonecall.report:0
+msgid "Group By..."
+msgstr ""
+
+#. module: crm
+#: help:crm.lead,partner_id:0
+msgid "Optional linked partner, usually after conversion of the lead"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+msgid "Invitation details"
+msgstr ""
+
+#. module: crm
+#: field:crm.case.section,parent_id:0
+msgid "Parent Team"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,date_action:0
+msgid "Next Action Date"
+msgstr ""
+
+#. module: crm
+#: selection:crm.segmentation,state:0
+msgid "Running"
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,freq:0
+msgid "Hours"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,zip:0
+msgid "Zip"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm_lead.py:213
+#, python-format
+msgid "The case '%s' has been opened."
+msgstr ""
+
+#. module: crm
+#: view:crm.installer:0
+msgid "title"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.categ,name:crm.categ_phone1
+#: model:ir.actions.act_window,name:crm.crm_case_categ_phone_incoming0
+#: model:ir.ui.menu,name:crm.menu_crm_case_phone_inbound
+msgid "Inbound"
+msgstr ""
+
+#. module: crm
+#: help:crm.case.stage,probability:0
+msgid ""
+"This percentage depicts the default/average probability of the Case for this "
+"stage to be a success"
+msgstr ""
+
+#. module: crm
+#: view:crm.phonecall.report:0
+#: model:ir.actions.act_window,name:crm.act_crm_opportunity_crm_phonecall_new
+msgid "Phone calls"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Communication History"
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,show_as:0
+msgid "Free"
+msgstr ""
+
+#. module: crm
+#: view:crm.installer:0
+msgid "Synchronization"
+msgstr ""
+
+#. module: crm
+#: field:crm.case.section,allow_unlink:0
+msgid "Allow Delete"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,mo:0
+msgid "Mon"
+msgstr ""
+
+#. module: crm
+#: selection:crm.lead,priority:0
+#: selection:crm.lead.report,priority:0
+#: selection:crm.phonecall,priority:0
+#: selection:crm.phonecall.report,priority:0
+msgid "Highest"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,help:crm.crm_case_categ_phone_incoming0
+msgid ""
+"The Inbound Calls tool allows you to log your inbound calls on the fly. Each "
+"call you get will appear on the partner form to trace every contact you have "
+"with a partner. From the phone call form, you can trigger a request for "
+"another call, a meeting or an opportunity."
+msgstr ""
+
+#. module: crm
+#: help:crm.meeting,recurrency:0
+msgid "Recurrent Meeting"
+msgstr ""
+
+#. module: crm
+#: view:crm.case.section:0
+#: view:crm.lead:0
+#: field:crm.lead,description:0
+msgid "Notes"
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,freq:0
+msgid "Days"
+msgstr ""
+
+#. module: crm
+#: field:crm.segmentation.line,expr_value:0
+msgid "Value"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: view:crm.lead.report:0
+msgid "Opportunity by Categories"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: field:crm.lead,partner_name:0
+msgid "Customer Name"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,help:crm.crm_case_categ_meet
+msgid ""
+"The meeting calendar is shared between the sales teams and fully integrated "
+"with other applications such as the employee holidays or the business "
+"opportunities. You can also synchronize meetings with your mobile phone "
+"using the caldav interface."
+msgstr ""
+
+#. module: crm
+#: model:ir.model,name:crm.model_crm_phonecall2opportunity
+msgid "Phonecall To Opportunity"
+msgstr ""
+
+#. module: crm
+#: field:crm.case.section,reply_to:0
+msgid "Reply-To"
+msgstr ""
+
+#. module: crm
+#: view:crm.case.section:0
+msgid "Select stages for this Sales Team"
+msgstr ""
+
+#. module: crm
+#: view:board.board:0
+msgid "Opportunities by Stage"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+msgid "Recurrency Option"
+msgstr ""
+
+#. module: crm
+#: model:process.transition,note:crm.process_transition_leadpartner0
+msgid "Prospect is converting to business partner"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead2opportunity:0
+#: view:crm.partner2opportunity:0
+#: model:ir.actions.act_window,name:crm.phonecall2opportunity_act
+msgid "Convert To Opportunity"
+msgstr ""
+
+#. module: crm
+#: view:crm.phonecall:0
+#: view:crm.phonecall.report:0
+#: view:res.partner:0
+msgid "Held"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: view:crm.phonecall:0
+#: view:res.partner:0
+msgid "Reset to Draft"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Extra Info"
+msgstr ""
+
+#. module: crm
+#: view:crm.merge.opportunity:0
+#: model:ir.actions.act_window,name:crm.action_merge_opportunities
+#: model:ir.actions.act_window,name:crm.merge_opportunity_act
+msgid "Merge Opportunities"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.resource.type,name:crm.type_lead5
+msgid "Google Adwords"
+msgstr ""
+
+#. module: crm
+#: model:ir.model,name:crm.model_crm_phonecall
+msgid "crm.phonecall"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.resource.type,name:crm.type_lead3
+msgid "Mail Campaign 2"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Create"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Dates"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm.py:492
+#, python-format
+msgid "Send"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: field:crm.lead,priority:0
+#: view:crm.lead.report:0
+#: field:crm.lead.report,priority:0
+#: field:crm.phonecall,priority:0
+#: view:crm.phonecall.report:0
+#: field:crm.phonecall.report,priority:0
+msgid "Priority"
+msgstr ""
+
+#. module: crm
+#: field:crm.segmentation,sales_purchase_active:0
+msgid "Use The Sales Purchase Rules"
+msgstr ""
+
+#. module: crm
+#: model:ir.model,name:crm.model_crm_lead2opportunity_partner
+msgid "Lead To Opportunity Partner"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,location:0
+msgid "Location"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Reply"
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,freq:0
+msgid "Weeks"
+msgstr ""
+
+#. module: crm
+#: model:process.node,note:crm.process_node_meeting0
+msgid "Schedule a normal or phone meeting"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm.py:375
+#, python-format
+msgid "Error !"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,help:crm.crm_meeting_categ_action
+msgid ""
+"Create different meeting categories to better organize and classify your "
+"meetings."
+msgstr ""
+
+#. module: crm
+#: model:ir.model,name:crm.model_crm_segmentation_line
+msgid "Segmentation line"
+msgstr ""
+
+#. module: crm
+#: view:crm.opportunity2phonecall:0
+#: view:crm.phonecall2phonecall:0
+msgid "Planned Date"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,base_calendar_url:0
+msgid "Caldav URL"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Expected Revenues"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.resource.type,name:crm.type_lead6
+msgid "Google Adwords 2"
+msgstr ""
+
+#. module: crm
+#: help:crm.lead,type:0
+#: help:crm.lead.report,type:0
+msgid "Type is used to separate Leads and Opportunities"
+msgstr ""
+
+#. module: crm
+#: view:crm.phonecall2partner:0
+msgid "Are you sure you want to create a partner based on this Phonecall ?"
+msgstr ""
+
+#. module: crm
+#: selection:crm.lead.report,month:0
+#: selection:crm.meeting,month_list:0
+#: selection:crm.phonecall.report,month:0
+msgid "July"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,help:crm.crm_case_section_act
+msgid ""
+"Define a Sales Team to organize your different salesmen or sales departments "
+"into separate teams. Each team will work in its own list of opportunities, "
+"sales orders, etc. Each user can set a default team in his user preferences. "
+"The opportunities and sales order displayed, will automatically be filtered "
+"according to his team."
+msgstr ""
+
+#. module: crm
+#: help:crm.meeting,count:0
+msgid "Repeat x times"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,name:crm.crm_case_section_act
+#: model:ir.model,name:crm.model_crm_case_section
+#: model:ir.ui.menu,name:crm.menu_crm_case_section_act
+msgid "Sales Teams"
+msgstr ""
+
+#. module: crm
+#: model:ir.model,name:crm.model_crm_lead2partner
+msgid "Lead to Partner"
+msgstr ""
+
+#. module: crm
+#: view:crm.segmentation:0
+#: field:crm.segmentation.line,segmentation_id:0
+#: model:ir.actions.act_window,name:crm.crm_segmentation-act
+msgid "Segmentation"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Team"
+msgstr ""
+
+#. module: crm
+#: field:crm.installer,outlook:0
+msgid "MS-Outlook"
+msgstr ""
+
+#. module: crm
+#: view:crm.phonecall:0
+#: view:crm.phonecall.report:0
+#: view:res.partner:0
+msgid "Not Held"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead.report,probability:0
+msgid "Probability"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead.report:0
+#: field:crm.lead.report,month:0
+#: field:crm.meeting,month_list:0
+#: view:crm.phonecall.report:0
+#: field:crm.phonecall.report,month:0
+msgid "Month"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: model:ir.actions.act_window,name:crm.crm_case_category_act_leads_all
+#: model:ir.ui.menu,name:crm.menu_crm_case_categ0_act_leads
+#: model:process.node,name:crm.process_node_leads0
+msgid "Leads"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,help:crm.crm_case_category_act_leads_all
+msgid ""
+"Leads allow you to manage and keep track of all initial contacts with a "
+"prospect or partner showing interest in your products or services. A lead is "
+"usually the first step in your sales cycle. Once qualified, a lead may be "
+"converted into a business opportunity, while creating the related partner "
+"for further detailed tracking of any linked activities. You can import a "
+"database of prospects, keep track of your business cards or integrate your "
+"website's contact form with the OpenERP Leads. Leads can be connected to the "
+"email gateway: new emails may create leads, each of them automatically gets "
+"the history of the conversation with the prospect."
+msgstr ""
+
+#. module: crm
+#: selection:crm.lead2opportunity.partner,action:0
+#: selection:crm.lead2partner,action:0
+#: selection:crm.phonecall2partner,action:0
+msgid "Create a new partner"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+#: view:res.partner:0
+msgid "Start Date"
+msgstr ""
+
+#. module: crm
+#: selection:crm.phonecall,state:0
+#: view:crm.phonecall.report:0
+msgid "Todo"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+msgid "Delegate"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+msgid "Decline"
+msgstr ""
+
+#. module: crm
+#: help:crm.lead,optin:0
+msgid "If opt-in is checked, this contact has accepted to receive emails."
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+msgid "Reset to Unconfirmed"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/wizard/crm_add_note.py:40
+#: view:crm.add.note:0
+#, python-format
+msgid "Note"
+msgstr ""
+
+#. module: crm
+#: constraint:res.users:0
+msgid "The chosen company is not in the allowed companies for this user"
+msgstr ""
+
+#. module: crm
+#: selection:crm.lead,priority:0
+#: selection:crm.lead.report,priority:0
+#: selection:crm.phonecall,priority:0
+#: selection:crm.phonecall.report,priority:0
+msgid "Low"
+msgstr ""
+
+#. module: crm
+#: selection:crm.add.note,state:0
+#: field:crm.lead,date_closed:0
+#: selection:crm.lead,state:0
+#: view:crm.lead.report:0
+#: selection:crm.lead.report,state:0
+#: field:crm.meeting,date_closed:0
+#: selection:crm.merge.opportunity,state:0
+#: field:crm.phonecall,date_closed:0
+#: selection:crm.phonecall.report,state:0
+#: selection:crm.send.mail,state:0
+msgid "Closed"
+msgstr ""
+
+#. module: crm
+#: view:crm.installer:0
+msgid "Plug-In"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.categ,name:crm.categ_meet2
+msgid "Internal Meeting"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm.py:411
+#: selection:crm.add.note,state:0
+#: view:crm.lead:0
+#: selection:crm.lead,state:0
+#: view:crm.lead.report:0
+#: selection:crm.lead.report,state:0
+#: selection:crm.merge.opportunity,state:0
+#: selection:crm.phonecall,state:0
+#: selection:crm.phonecall.report,state:0
+#: selection:crm.send.mail,state:0
+#, python-format
+msgid "Pending"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.categ,name:crm.categ_meet1
+msgid "Customer Meeting"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: field:crm.lead,email_cc:0
+msgid "Global CC"
+msgstr ""
+
+#. module: crm
+#: view:crm.phonecall:0
+#: model:ir.actions.act_window,name:crm.crm_case_categ_phone0
+#: model:ir.ui.menu,name:crm.menu_crm_case_phone
+#: view:res.partner:0
+msgid "Phone Calls"
+msgstr ""
+
+#. module: crm
+#: help:crm.lead.report,delay_open:0
+#: help:crm.phonecall.report,delay_open:0
+msgid "Number of Days to open the case"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,phone:0
+#: field:crm.phonecall,partner_phone:0
+msgid "Phone"
+msgstr ""
+
+#. module: crm
+#: field:crm.case.section,active:0
+#: field:crm.lead,active:0
+#: view:crm.lead.report:0
+#: field:crm.meeting,active:0
+#: field:crm.phonecall,active:0
+msgid "Active"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm_lead.py:306
+#, python-format
+msgid "The stage of opportunity '%s' has been changed to '%s'."
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm_lead.py:282
+#, python-format
+msgid "Changed Stage to: %s"
+msgstr ""
+
+#. module: crm
+#: selection:crm.segmentation.line,operator:0
+msgid "Mandatory Expression"
+msgstr ""
+
+#. module: crm
+#: selection:crm.segmentation.line,expr_operator:0
+msgid ">"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+msgid "Uncertain"
+msgstr ""
+
+#. module: crm
+#: field:crm.send.mail,email_cc:0
+msgid "CC"
+msgstr ""
+
+#. module: crm
+#: view:crm.send.mail:0
+#: model:ir.actions.act_window,name:crm.action_crm_send_mail
+msgid "Send Mail"
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,freq:0
+msgid "Months"
+msgstr ""
+
+#. module: crm
+#: help:crm.installer,wiki_sale_faq:0
+msgid ""
+"Helps you manage wiki pages for Frequently Asked Questions on Sales "
+"Application."
+msgstr ""
+
+#. module: crm
+#: help:crm.installer,crm_fundraising:0
+msgid "This may help associations in their fundraising process and tracking."
+msgstr ""
+
+#. module: crm
+#: field:crm.lead2opportunity.partner,action:0
+#: field:crm.lead2partner,action:0
+#: field:crm.phonecall2partner,action:0
+msgid "Action"
+msgstr ""
+
+#. module: crm
+#: field:crm.installer,crm_claim:0
+msgid "Claims"
+msgstr ""
+
+#. module: crm
+#: field:crm.segmentation,som_interval_decrease:0
+msgid "Decrease (0>1)"
+msgstr ""
+
+#. module: crm
+#: view:crm.add.note:0
+#: view:crm.lead:0
+#: view:crm.send.mail:0
+msgid "Attachments"
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,rrule_type:0
+msgid "Weekly"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/wizard/crm_send_email.py:72
+#: code:addons/crm/wizard/crm_send_email.py:169
+#: code:addons/crm/wizard/crm_send_email.py:270
+#, python-format
+msgid "Can not send mail!"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Misc"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.categ,name:crm.categ_oppor8
+#: view:crm.meeting:0
+msgid "Other"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+#: selection:crm.meeting,state:0
+#: selection:crm.phonecall,state:0
+msgid "Done"
+msgstr ""
+
+#. module: crm
+#: help:crm.meeting,interval:0
+msgid "Repeat every (Days/Week/Month/Year)"
+msgstr ""
+
+#. module: crm
+#: field:crm.segmentation,som_interval_max:0
+msgid "Max Interval"
+msgstr ""
+
+#. module: crm
+#: view:crm.opportunity2phonecall:0
+msgid "_Schedule Call"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm.py:326
+#: selection:crm.add.note,state:0
+#: view:crm.lead:0
+#: selection:crm.lead,state:0
+#: selection:crm.lead.report,state:0
+#: selection:crm.merge.opportunity,state:0
+#: view:crm.phonecall:0
+#: selection:crm.phonecall.report,state:0
+#: selection:crm.send.mail,state:0
+#: view:res.partner:0
+#, python-format
+msgid "Open"
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,week_list:0
+msgid "Tuesday"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,city:0
+msgid "City"
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,show_as:0
+msgid "Busy"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,interval:0
+msgid "Repeat every"
+msgstr ""
+
+#. module: crm
+#: field:crm.installer,crm_helpdesk:0
+msgid "Helpdesk"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,recurrency:0
+msgid "Recurrent"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm.py:397
+#, python-format
+msgid "The case '%s' has been cancelled."
+msgstr ""
+
+#. module: crm
+#: field:crm.installer,sale_crm:0
+msgid "Opportunity to Quotation"
+msgstr ""
+
+#. module: crm
+#: model:ir.model,name:crm.model_crm_send_mail
+msgid "Send new email"
+msgstr ""
+
+#. module: crm
+#: view:board.board:0
+#: model:ir.actions.act_window,name:crm.act_my_oppor
+msgid "My Open Opportunities"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,name:crm.open_board_statistical_dash
+msgid "CRM - Statistics Dashboard"
+msgstr ""
+
+#. module: crm
+#: help:crm.meeting,rrule:0
+msgid ""
+"Defines a rule or repeating pattern for recurring events\n"
+"e.g.: Every other month on the last Sunday of the month for 10 occurrences: "
+" FREQ=MONTHLY;INTERVAL=2;COUNT=10;BYDAY=-1SU"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,job_id:0
+msgid "Main Job"
+msgstr ""
+
+#. module: crm
+#: field:base.action.rule,trg_max_history:0
+msgid "Maximum Communication History"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead2opportunity.partner:0
+#: view:crm.lead2partner:0
+msgid "Are you sure you want to create a partner based on this lead ?"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+#: field:crm.meeting,categ_id:0
+msgid "Meeting Type"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/wizard/crm_lead_to_opportunity.py:314
+#, python-format
+msgid "Merge with Existing Opportunity"
+msgstr ""
+
+#. module: crm
+#: help:crm.lead,state:0
+#: help:crm.phonecall,state:0
+msgid ""
+"The state is set to 'Draft', when a case is created. "
+" \n"
+"If the case is in progress the state is set to 'Open'. "
+" \n"
+"When the case is over, the state is set to 'Done'. "
+" \n"
+"If the case needs to be reviewed then the state is set to 'Pending'."
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+#: view:res.partner:0
+msgid "End Date"
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,byday:0
+msgid "Third"
+msgstr ""
+
+#. module: crm
+#: help:crm.segmentation,som_interval_max:0
+msgid ""
+"The computation is made on all events that occured during this interval, the "
+"past X periods."
+msgstr ""
+
+#. module: crm
+#: view:board.board:0
+msgid "My Win/Lost Ratio for the Last Year"
+msgstr ""
+
+#. module: crm
+#: field:crm.installer,thunderbird:0
+msgid "Thunderbird"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead.report:0
+msgid "# of Emails"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Search Leads"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead.report:0
+#: view:crm.phonecall.report:0
+#: field:crm.phonecall.report,delay_open:0
+msgid "Delay to open"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+msgid "Recurrency period"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,week_list:0
+msgid "Weekday"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Referrer"
+msgstr ""
+
+#. module: crm
+#: model:ir.model,name:crm.model_crm_lead2opportunity
+msgid "Lead To Opportunity"
+msgstr ""
+
+#. module: crm
+#: model:ir.model,name:crm.model_calendar_attendee
+msgid "Attendee information"
+msgstr ""
+
+#. module: crm
+#: view:crm.segmentation:0
+msgid "Segmentation Test"
+msgstr ""
+
+#. module: crm
+#: view:crm.segmentation:0
+msgid "Continue Process"
+msgstr ""
+
+#. module: crm
+#: view:crm.installer:0
+msgid "Configure Your CRM Application"
+msgstr ""
+
+#. module: crm
+#: model:ir.model,name:crm.model_crm_phonecall2partner
+msgid "Phonecall to Partner"
+msgstr ""
+
+#. module: crm
+#: help:crm.lead,partner_name:0
+msgid ""
+"The name of the future partner that will be created while converting the "
+"into opportunity"
+msgstr ""
+
+#. module: crm
+#: field:crm.opportunity2phonecall,user_id:0
+#: field:crm.phonecall2phonecall,user_id:0
+msgid "Assign To"
+msgstr ""
+
+#. module: crm
+#: field:crm.add.note,state:0
+#: field:crm.send.mail,state:0
+msgid "Set New State To"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,date_action_last:0
+#: field:crm.meeting,date_action_last:0
+#: field:crm.phonecall,date_action_last:0
+msgid "Last Action"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,duration:0
+#: field:crm.phonecall,duration:0
+#: field:crm.phonecall.report,duration:0
+msgid "Duration"
+msgstr ""
+
+#. module: crm
+#: field:crm.send.mail,reply_to:0
+msgid "Reply To"
+msgstr ""
+
+#. module: crm
+#: view:board.board:0
+#: model:ir.actions.act_window,name:crm.open_board_crm
+#: model:ir.ui.menu,name:crm.menu_board_crm
+msgid "Sales Dashboard"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/wizard/crm_lead_to_partner.py:56
+#, python-format
+msgid "A partner is already defined on this lead."
+msgstr ""
+
+#. module: crm
+#: field:crm.lead.report,nbr:0
+#: field:crm.phonecall.report,nbr:0
+msgid "# of Cases"
+msgstr ""
+
+#. module: crm
+#: help:crm.meeting,section_id:0
+#: help:crm.phonecall,section_id:0
+msgid "Sales team to which Case belongs to."
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,week_list:0
+msgid "Sunday"
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,byday:0
+msgid "Fourth"
+msgstr ""
+
+#. module: crm
+#: selection:crm.add.note,state:0
+#: selection:crm.merge.opportunity,state:0
+#: selection:crm.send.mail,state:0
+msgid "Unchanged"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,name:crm.crm_segmentation_tree-act
+#: model:ir.ui.menu,name:crm.menu_crm_segmentation-act
+msgid "Partners Segmentation"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,fax:0
+msgid "Fax"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,help:crm.crm_case_category_act_oppor11
+msgid ""
+"With opportunities you can manage and keep track of your sales pipeline by "
+"creating specific customer- or prospect-related sales documents to follow up "
+"potential sales. Information such as expected revenue, opportunity stage, "
+"expected closing date, communication history and much more can be stored. "
+"Opportunities can be connected to the email gateway: new emails may create "
+"opportunities, each of them automatically gets the history of the "
+"conversation with the customer.\n"
+"\n"
+"You and your team(s) will be able to plan meetings and phone calls from "
+"opportunities, convert them into quotations, manage related documents, track "
+"all customer related activities, and much more."
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+msgid "Assignment"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,company_id:0
+#: view:crm.lead.report:0
+#: field:crm.lead.report,company_id:0
+#: field:crm.phonecall,company_id:0
+#: view:crm.phonecall.report:0
+#: field:crm.phonecall.report,company_id:0
+msgid "Company"
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,week_list:0
+msgid "Friday"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,allday:0
+msgid "All Day"
+msgstr ""
+
+#. module: crm
+#: field:crm.segmentation.line,operator:0
+msgid "Mandatory / Optional"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,name:crm.action_view_attendee_form
+#: model:ir.ui.menu,name:crm.menu_attendee_invitations
+msgid "Meeting Invitations"
+msgstr ""
+
+#. module: crm
+#: field:crm.case.categ,object_id:0
+msgid "Object Name"
+msgstr ""
+
+#. module: crm
+#: help:crm.lead,email_from:0
+msgid "E-mail address of the contact"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,referred:0
+msgid "Referred By"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: model:ir.model,name:crm.model_crm_add_note
+msgid "Add Internal Note"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm_lead.py:304
+#, python-format
+msgid "The stage of lead '%s' has been changed to '%s'."
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,byday:0
+msgid "Last"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,message_ids:0
+#: field:crm.meeting,message_ids:0
+#: field:crm.phonecall,message_ids:0
+msgid "Messages"
+msgstr ""
+
+#. module: crm
+#: help:crm.case.stage,on_change:0
+msgid "Change Probability on next and previous stages."
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm.py:455
+#: code:addons/crm/crm.py:457
+#: code:addons/crm/crm_action_rule.py:66
+#: code:addons/crm/wizard/crm_send_email.py:141
+#, python-format
+msgid "Error!"
+msgstr ""
+
+#. module: crm
+#: field:crm.opportunity2phonecall,name:0
+#: field:crm.phonecall2phonecall,name:0
+msgid "Call summary"
+msgstr ""
+
+#. module: crm
+#: selection:crm.add.note,state:0
+#: selection:crm.lead,state:0
+#: selection:crm.lead.report,state:0
+#: selection:crm.meeting,state:0
+#: selection:crm.merge.opportunity,state:0
+#: selection:crm.phonecall,state:0
+#: selection:crm.phonecall.report,state:0
+#: selection:crm.send.mail,state:0
+msgid "Cancelled"
+msgstr ""
+
+#. module: crm
+#: field:crm.add.note,body:0
+msgid "Note Body"
+msgstr ""
+
+#. module: crm
+#: view:board.board:0
+msgid "My Planned Revenues by Stage"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead.report,date_closed:0
+#: field:crm.phonecall.report,date_closed:0
+msgid "Close Date"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead.report:0
+#: view:crm.phonecall.report:0
+msgid " Month "
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Links"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,help:crm.crm_lead_categ_action
+msgid ""
+"Create specific categories that fit your company's activities to better "
+"classify and analyse your leads and opportunities. Such categories could for "
+"instance reflect your product structure or the different types of sales you "
+"do."
+msgstr ""
+
+#. module: crm
+#: help:crm.segmentation,som_interval_decrease:0
+msgid ""
+"If the partner has not purchased (or bought) during a period, decrease the "
+"state of mind by this factor. It's a multiplication"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,help:crm.action_report_crm_phonecall
+msgid ""
+"From this report, you can analyse the performance of your sales team, based "
+"on their phone calls. You can group or filter the information according to "
+"several criteria and drill down the information, by adding more groups in "
+"the report."
+msgstr ""
+
+#. module: crm
+#: view:crm.case.section:0
+msgid "Mailgateway"
+msgstr ""
+
+#. module: crm
+#: help:crm.lead,user_id:0
+msgid "By Default Salesman is Administrator when create New User"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead.report:0
+msgid "# Mails"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/wizard/crm_phonecall_to_opportunity.py:57
+#, python-format
+msgid "Warning"
+msgstr ""
+
+#. module: crm
+#: field:crm.phonecall,name:0
+#: view:res.partner:0
+msgid "Call Summary"
+msgstr ""
+
+#. module: crm
+#: field:crm.segmentation.line,expr_operator:0
+msgid "Operator"
+msgstr ""
+
+#. module: crm
+#: model:ir.model,name:crm.model_crm_phonecall2phonecall
+msgid "Phonecall To Phonecall"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Schedule/Log Call"
+msgstr ""
+
+#. module: crm
+#: field:crm.installer,fetchmail:0
+msgid "Fetch Emails"
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,state:0
+msgid "Confirmed"
+msgstr ""
+
+#. module: crm
+#: help:crm.send.mail,email_cc:0
+msgid ""
+"These addresses will receive a copy of this email. To modify the permanent "
+"CC list, edit the global CC field of this case"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+msgid "Confirm"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,su:0
+msgid "Sun"
+msgstr ""
+
+#. module: crm
+#: field:crm.phonecall.report,section_id:0
+msgid "Section"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Total of Planned Revenue"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm.py:375
+#, python-format
+msgid ""
+"You can not escalate, You are already at the top level regarding your sales-"
+"team category."
+msgstr ""
+
+#. module: crm
+#: selection:crm.segmentation.line,operator:0
+msgid "Optional Expression"
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,select1:0
+msgid "Day of month"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead2opportunity,probability:0
+msgid "Success Rate (%)"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.stage,name:crm.stage_lead1
+#: model:crm.case.stage,name:crm.stage_opportunity1
+msgid "New"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+msgid "Mail TO"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: field:crm.lead,email_from:0
+#: field:crm.meeting,email_from:0
+#: field:crm.phonecall,email_from:0
+msgid "Email"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: field:crm.lead,channel_id:0
+#: view:crm.lead.report:0
+#: field:crm.lead.report,channel_id:0
+#: field:crm.phonecall,canal_id:0
+msgid "Channel"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,name:crm.opportunity2phonecall_act
+msgid "Schedule Call"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/wizard/crm_lead_to_opportunity.py:135
+#: code:addons/crm/wizard/crm_lead_to_opportunity.py:260
+#, python-format
+msgid "Closed/Cancelled Leads Could not convert into Opportunity"
+msgstr ""
+
+#. module: crm
+#: view:crm.segmentation:0
+msgid "Profiling"
+msgstr ""
+
+#. module: crm
+#: help:crm.segmentation,exclusif:0
+msgid ""
+"Check if the category is limited to partners that match the segmentation "
+"criterions. \n"
+"If checked, remove the category from partners that doesn't match "
+"segmentation criterions"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,exdate:0
+msgid "Exception Date/Times"
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,class:0
+msgid "Confidential"
+msgstr ""
+
+#. module: crm
+#: help:crm.meeting,date_deadline:0
+msgid ""
+"Deadline Date is automatically computed from Start "
+"Date + Duration"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,state_id:0
+msgid "Fed. State"
+msgstr ""
+
+#. module: crm
+#: model:process.transition,note:crm.process_transition_leadopportunity0
+msgid "Creating business opportunities from Leads"
+msgstr ""
+
+#. module: crm
+#: help:crm.send.mail,html:0
+msgid "Select this if you want to send email with HTML formatting."
+msgstr ""
+
+#. module: crm
+#: model:crm.case.categ,name:crm.categ_oppor4
+msgid "Need Information"
+msgstr ""
+
+#. module: crm
+#: model:process.transition,name:crm.process_transition_leadopportunity0
+msgid "Prospect Opportunity"
+msgstr ""
+
+#. module: crm
+#: view:crm.installer:0
+#: model:ir.actions.act_window,name:crm.action_crm_installer
+msgid "CRM Application Configuration"
+msgstr ""
+
+#. module: crm
+#: field:base.action.rule,act_categ_id:0
+msgid "Set Category to"
+msgstr ""
+
+#. module: crm
+#: view:crm.case.section:0
+msgid "Configuration"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,th:0
+msgid "Thu"
+msgstr ""
+
+#. module: crm
+#: view:crm.add.note:0
+#: view:crm.merge.opportunity:0
+#: view:crm.opportunity2phonecall:0
+#: view:crm.partner2opportunity:0
+#: view:crm.phonecall2opportunity:0
+#: view:crm.phonecall2phonecall:0
+#: view:crm.send.mail:0
+msgid "_Cancel"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead.report:0
+#: view:crm.phonecall.report:0
+msgid " Month-1 "
+msgstr ""
+
+#. module: crm
+#: help:crm.installer,sale_crm:0
+msgid "This module relates sale from opportunity cases in the CRM."
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,rrule_type:0
+msgid "Daily"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.stage,name:crm.stage_lead2
+#: model:crm.case.stage,name:crm.stage_opportunity2
+msgid "Qualification"
+msgstr ""
+
+#. module: crm
+#: view:crm.case.stage:0
+msgid "Stage Definition"
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,byday:0
+msgid "First"
+msgstr ""
+
+#. module: crm
+#: selection:crm.lead.report,month:0
+#: selection:crm.meeting,month_list:0
+#: selection:crm.phonecall.report,month:0
+msgid "December"
+msgstr ""
+
+#. module: crm
+#: field:crm.installer,config_logo:0
+msgid "Image"
+msgstr ""
+
+#. module: crm
+#: view:base.action.rule:0
+msgid "Condition on Communication History"
+msgstr ""
+
+#. module: crm
+#: help:crm.segmentation,som_interval:0
+msgid ""
+"A period is the average number of days between two cycle of sale or purchase "
+"for this segmentation. \n"
+"It's mainly used to detect if a partner has not purchased or buy for a too "
+"long time, \n"
+"so we suppose that his state of mind has decreased because he probably "
+"bought goods to another supplier. \n"
+"Use this functionality for recurring businesses."
+msgstr ""
+
+#. module: crm
+#: view:crm.send.mail:0
+msgid "_Send Reply"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,vtimezone:0
+msgid "Timezone"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead2opportunity.partner,msg:0
+#: field:crm.lead2partner,msg:0
+#: view:crm.send.mail:0
+msgid "Message"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,sa:0
+msgid "Sat"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: field:crm.lead,user_id:0
+#: view:crm.lead.report:0
+#: view:crm.phonecall.report:0
+msgid "Salesman"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,date_deadline:0
+msgid "Expected Closing"
+msgstr ""
+
+#. module: crm
+#: model:ir.model,name:crm.model_crm_opportunity2phonecall
+msgid "Opportunity to Phonecall"
+msgstr ""
+
+#. module: crm
+#: help:crm.case.section,allow_unlink:0
+msgid "Allows to delete non draft cases"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Schedule Meeting"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Partner Name"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.categ,name:crm.categ_phone2
+#: model:ir.actions.act_window,name:crm.crm_case_categ_phone_outgoing0
+#: model:ir.ui.menu,name:crm.menu_crm_case_phone_outbound
+msgid "Outbound"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,date_open:0
+#: field:crm.phonecall,date_open:0
+msgid "Opened"
+msgstr ""
+
+#. module: crm
+#: view:crm.case.section:0
+#: field:crm.case.section,member_ids:0
+msgid "Team Members"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: field:crm.lead,job_ids:0
+#: view:crm.meeting:0
+#: view:crm.phonecall:0
+#: view:res.partner:0
+msgid "Contacts"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.categ,name:crm.categ_oppor1
+msgid "Interest in Computer"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+msgid "Invitation Detail"
+msgstr ""
+
+#. module: crm
+#: field:crm.segmentation,som_interval_default:0
+msgid "Default (0=None)"
+msgstr ""
+
+#. module: crm
+#: help:crm.lead,email_cc:0
+msgid ""
+"These email addresses will be added to the CC field of all inbound and "
+"outbound emails for this record before being sent. Separate multiple email "
+"addresses with a comma"
+msgstr ""
+
+#. module: crm
+#: constraint:res.partner:0
+msgid "Error ! You can not create recursive associated members."
+msgstr ""
+
+#. module: crm
+#: field:crm.partner2opportunity,probability:0
+#: field:crm.phonecall2opportunity,probability:0
+msgid "Success Probability"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm.py:426
+#: selection:crm.add.note,state:0
+#: selection:crm.lead,state:0
+#: selection:crm.lead.report,state:0
+#: selection:crm.merge.opportunity,state:0
+#: selection:crm.phonecall,state:0
+#: selection:crm.phonecall.report,state:0
+#: selection:crm.send.mail,state:0
+#, python-format
+msgid "Draft"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,name:crm.crm_case_section_act_tree
+msgid "Cases by Sales Team"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,attendee_ids:0
+msgid "Attendees"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+#: view:crm.phonecall:0
+#: model:ir.model,name:crm.model_crm_meeting
+#: model:process.node,name:crm.process_node_meeting0
+#: model:res.request.link,name:crm.request_link_meeting
+msgid "Meeting"
+msgstr ""
+
+#. module: crm
+#: model:ir.model,name:crm.model_crm_case_categ
+msgid "Category of Case"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: view:crm.phonecall:0
+msgid "7 Days"
+msgstr ""
+
+#. module: crm
+#: view:board.board:0
+msgid "Planned Revenue by Stage and User"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Communication & History"
+msgstr ""
+
+#. module: crm
+#: model:ir.model,name:crm.model_crm_lead_report
+msgid "CRM Lead Report"
+msgstr ""
+
+#. module: crm
+#: field:crm.installer,progress:0
+msgid "Configuration Progress"
+msgstr ""
+
+#. module: crm
+#: selection:crm.lead,priority:0
+#: selection:crm.lead.report,priority:0
+#: selection:crm.phonecall,priority:0
+#: selection:crm.phonecall.report,priority:0
+msgid "Normal"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,street2:0
+msgid "Street2"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,name:crm.crm_meeting_categ_action
+#: model:ir.ui.menu,name:crm.menu_crm_case_meeting-act
+msgid "Meeting Categories"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead2opportunity.partner:0
+#: view:crm.lead2partner:0
+#: view:crm.phonecall2partner:0
+msgid "You may have to verify that this partner does not exist already."
+msgstr ""
+
+#. module: crm
+#: field:crm.lead.report,delay_open:0
+msgid "Delay to Open"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead.report,user_id:0
+#: field:crm.phonecall.report,user_id:0
+msgid "User"
+msgstr ""
+
+#. module: crm
+#: selection:crm.lead.report,month:0
+#: selection:crm.meeting,month_list:0
+#: selection:crm.phonecall.report,month:0
+msgid "November"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm_action_rule.py:67
+#, python-format
+msgid "No E-Mail ID Found for your Company address!"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead.report:0
+msgid "Opportunities By Stage"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,name:crm.crm_case_categ_phone_create_partner
+msgid "Schedule Phone Call"
+msgstr ""
+
+#. module: crm
+#: selection:crm.lead.report,month:0
+#: selection:crm.meeting,month_list:0
+#: selection:crm.phonecall.report,month:0
+msgid "January"
+msgstr ""
+
+#. module: crm
+#: model:ir.actions.act_window,help:crm.crm_opportunity_stage_act
+msgid ""
+"Create specific stages that will help your sales better organise their sales "
+"pipeline by maintaining them to their sales opportunities. It will allow "
+"them to easily track how is positioned a specific opportunity in the sales "
+"cycle."
+msgstr ""
+
+#. module: crm
+#: model:process.process,name:crm.process_process_contractprocess0
+msgid "Contract"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.resource.type,name:crm.type_lead4
+msgid "Twitter Ads"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/wizard/crm_add_note.py:26
+#: code:addons/crm/wizard/crm_send_email.py:72
+#: code:addons/crm/wizard/crm_send_email.py:169
+#: code:addons/crm/wizard/crm_send_email.py:270
+#, python-format
+msgid "Error"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead.report:0
+msgid "Planned Revenues"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.categ,name:crm.categ_oppor7
+msgid "Need Consulting"
+msgstr ""
+
+#. module: crm
+#: constraint:crm.segmentation:0
+msgid "Error ! You can not create recursive profiles."
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm_lead.py:232
+#, python-format
+msgid "The case '%s' has been closed."
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,partner_address_id:0
+#: field:crm.meeting,partner_address_id:0
+#: field:crm.phonecall,partner_address_id:0
+msgid "Partner Contact"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,recurrent_id:0
+msgid "Recurrent ID date"
+msgstr ""
+
+#. module: crm
+#: sql_constraint:res.users:0
+msgid "You can not have two users with the same login !"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/wizard/crm_merge_opportunities.py:100
+#, python-format
+msgid "Merged into Opportunity: %s"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm.py:347
+#: view:crm.lead:0
+#: view:res.partner:0
+#, python-format
+msgid "Close"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: view:crm.phonecall:0
+#: view:res.partner:0
+msgid "Categorization"
+msgstr ""
+
+#. module: crm
+#: model:ir.model,name:crm.model_base_action_rule
+msgid "Action Rules"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,rrule_type:0
+msgid "Recurrency"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,phonecall_id:0
+msgid "Phonecall"
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,week_list:0
+msgid "Thursday"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+#: field:crm.send.mail,email_to:0
+msgid "To"
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,class:0
+msgid "Private"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,function:0
+msgid "Function"
+msgstr ""
+
+#. module: crm
+#: view:crm.add.note:0
+msgid "_Add"
+msgstr ""
+
+#. module: crm
+#: selection:crm.segmentation.line,expr_name:0
+msgid "State of Mind"
+msgstr ""
+
+#. module: crm
+#: field:crm.case.section,note:0
+#: view:crm.meeting:0
+#: field:crm.meeting,description:0
+#: view:crm.phonecall:0
+#: field:crm.phonecall,description:0
+#: field:crm.segmentation,description:0
+#: view:res.partner:0
+msgid "Description"
+msgstr ""
+
+#. module: crm
+#: field:base.action.rule,trg_section_id:0
+#: field:crm.case.categ,section_id:0
+#: field:crm.case.resource.type,section_id:0
+#: view:crm.case.section:0
+#: field:crm.case.section,name:0
+#: field:crm.lead,section_id:0
+#: view:crm.lead.report:0
+#: field:crm.lead.report,section_id:0
+#: field:crm.meeting,section_id:0
+#: field:crm.opportunity2phonecall,section_id:0
+#: view:crm.phonecall:0
+#: field:crm.phonecall,section_id:0
+#: view:crm.phonecall.report:0
+#: field:crm.phonecall2phonecall,section_id:0
+#: field:res.partner,section_id:0
+#: field:res.users,context_section_id:0
+msgid "Sales Team"
+msgstr ""
+
+#. module: crm
+#: selection:crm.lead.report,month:0
+#: selection:crm.meeting,month_list:0
+#: selection:crm.phonecall.report,month:0
+msgid "May"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.categ,name:crm.categ_oppor2
+msgid "Interest in Accessories"
+msgstr ""
+
+#. module: crm
+#: code:addons/crm/crm_lead.py:211
+#, python-format
+msgid "The opportunity '%s' has been opened."
+msgstr ""
+
+#. module: crm
+#: field:crm.lead.report,email:0
+msgid "# Emails"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,street:0
+msgid "Street"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead.report:0
+msgid "Opportunities by User and Team"
+msgstr ""
+
+#. module: crm
+#: field:crm.case.section,working_hours:0
+msgid "Working Hours"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: field:crm.lead,is_customer_add:0
+msgid "Customer"
+msgstr ""
+
+#. module: crm
+#: selection:crm.lead.report,month:0
+#: selection:crm.meeting,month_list:0
+#: selection:crm.phonecall.report,month:0
+msgid "February"
+msgstr ""
+
+#. module: crm
+#: view:crm.phonecall:0
+#: model:ir.actions.act_window,name:crm.crm_case_categ_meet_create_partner
+#: view:res.partner:0
+msgid "Schedule a Meeting"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.stage,name:crm.stage_lead6
+#: model:crm.case.stage,name:crm.stage_opportunity6
+#: view:crm.lead:0
+msgid "Lost"
+msgstr ""
+
+#. module: crm
+#: field:crm.lead,country_id:0
+#: view:crm.lead.report:0
+#: field:crm.lead.report,country_id:0
+msgid "Country"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+#: selection:crm.lead2opportunity.action,name:0
+#: view:crm.phonecall:0
+#: view:res.partner:0
+msgid "Convert to Opportunity"
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,week_list:0
+msgid "Wednesday"
+msgstr ""
+
+#. module: crm
+#: selection:crm.lead.report,month:0
+#: selection:crm.meeting,month_list:0
+#: selection:crm.phonecall.report,month:0
+msgid "April"
+msgstr ""
+
+#. module: crm
+#: field:crm.case.resource.type,name:0
+msgid "Campaign Name"
+msgstr ""
+
+#. module: crm
+#: model:ir.model,name:crm.model_crm_phonecall_report
+msgid "Phone calls by user and section"
+msgstr ""
+
+#. module: crm
+#: selection:crm.lead2opportunity.action,name:0
+msgid "Merge with existing Opportunity"
+msgstr ""
+
+#. module: crm
+#: field:crm.meeting,select1:0
+msgid "Option"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.stage,name:crm.stage_lead4
+#: model:crm.case.stage,name:crm.stage_opportunity4
+msgid "Negotiation"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead:0
+msgid "Exp.Closing"
+msgstr ""
+
+#. module: crm
+#: field:crm.case.stage,sequence:0
+#: field:crm.meeting,sequence:0
+msgid "Sequence"
+msgstr ""
+
+#. module: crm
+#: field:crm.send.mail,body:0
+msgid "Message Body"
+msgstr ""
+
+#. module: crm
+#: view:crm.meeting:0
+msgid "Accept"
+msgstr ""
+
+#. module: crm
+#: field:crm.segmentation.line,expr_name:0
+msgid "Control Variable"
+msgstr ""
+
+#. module: crm
+#: selection:crm.meeting,byday:0
+msgid "Second"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.stage,name:crm.stage_lead3
+#: model:crm.case.stage,name:crm.stage_opportunity3
+msgid "Proposition"
+msgstr ""
+
+#. module: crm
+#: field:res.partner,phonecall_ids:0
+msgid "Phonecalls"
+msgstr ""
+
+#. module: crm
+#: view:crm.lead.report:0
+#: field:crm.lead.report,name:0
+#: view:crm.phonecall.report:0
+#: field:crm.phonecall.report,name:0
+msgid "Year"
+msgstr ""
+
+#. module: crm
+#: model:crm.case.resource.type,name:crm.type_lead8
+msgid "Newsletter"
+msgstr ""
diff --git a/addons/crm/i18n/fr.po b/addons/crm/i18n/fr.po
index ff8a76ddbd7..d1c4f486a64 100644
--- a/addons/crm/i18n/fr.po
+++ b/addons/crm/i18n/fr.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-01-18 16:45+0000\n"
-"Last-Translator: Fabien (Open ERP) \n"
+"PO-Revision-Date: 2011-09-26 12:10+0000\n"
+"Last-Translator: lholivier \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 05:06+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-09-27 04:47+0000\n"
+"X-Generator: Launchpad (build 14028)\n"
#. module: crm
#: view:crm.lead.report:0
@@ -2512,7 +2512,7 @@ msgstr "L'étape de l'opportunité \"%s\" a été changé à \"%s\"."
#: code:addons/crm/crm_lead.py:282
#, python-format
msgid "Changed Stage to: %s"
-msgstr ""
+msgstr "Etape passée à : %s"
#. module: crm
#: selection:crm.segmentation.line,operator:0
diff --git a/addons/crm/i18n/zh_TW.po b/addons/crm/i18n/zh_TW.po
index 896a92d76a0..cb7df534f37 100644
--- a/addons/crm/i18n/zh_TW.po
+++ b/addons/crm/i18n/zh_TW.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-01-27 05:08+0000\n"
+"PO-Revision-Date: 2011-09-27 07:26+0000\n"
"Last-Translator: Walter Cheuk \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 05:08+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-09-28 05:19+0000\n"
+"X-Generator: Launchpad (build 14049)\n"
#. module: crm
#: view:crm.lead.report:0
@@ -78,7 +78,7 @@ msgstr "今日"
#. module: crm
#: view:crm.merge.opportunity:0
msgid "Select Opportunities"
-msgstr "選取機會"
+msgstr "選擇機會"
#. module: crm
#: view:crm.meeting:0
@@ -184,7 +184,7 @@ msgstr "搜尋機會"
#, python-format
msgid ""
"Opportunity must have Partner assigned before merging with other Opportunity."
-msgstr "機會要先安排伙伴才可合併。"
+msgstr "機會要先安排伙伴才可與其他機會合併。"
#. module: crm
#: code:addons/crm/wizard/crm_merge_opportunities.py:46
@@ -249,7 +249,7 @@ msgstr ""
#: view:res.partner:0
#, python-format
msgid "Phone Call"
-msgstr "打電話"
+msgstr "致電"
#. module: crm
#: field:crm.lead,optout:0
@@ -260,7 +260,7 @@ msgstr ""
#: code:addons/crm/crm_opportunity.py:108
#, python-format
msgid "The opportunity '%s' has been marked as lost."
-msgstr ""
+msgstr "「%s」機會已標為丟失。"
#. module: crm
#: model:ir.actions.act_window,help:crm.action_report_crm_lead
@@ -309,7 +309,7 @@ msgid ""
"If you select Merge with existing Opportunity, the lead details(with the "
"communication history) will be merged with existing Opportunity of Selected "
"partner."
-msgstr ""
+msgstr "如選擇與現有機會合併,潛在客戶之詳情(包括通訊記錄)會與選取之伙伴的現有機會合併。"
#. module: crm
#: selection:crm.meeting,class:0
@@ -389,7 +389,7 @@ msgstr ""
#. module: crm
#: model:process.transition,name:crm.process_transition_opportunitymeeting0
msgid "Opportunity Meeting"
-msgstr ""
+msgstr "商機會談"
#. module: crm
#: help:crm.lead.report,delay_close:0
@@ -400,7 +400,7 @@ msgstr ""
#. module: crm
#: model:process.node,note:crm.process_node_opportunities0
msgid "When a real project/opportunity is detected"
-msgstr ""
+msgstr "當偵測到真正專案/機會"
#. module: crm
#: field:crm.installer,crm_fundraising:0
@@ -446,7 +446,7 @@ msgstr ""
#. module: crm
#: model:ir.model,name:crm.model_crm_lead2opportunity_action
msgid "Convert/Merge Opportunity"
-msgstr ""
+msgstr "轉變/合併機會"
#. module: crm
#: field:crm.lead,write_date:0
@@ -457,7 +457,7 @@ msgstr "更新日期"
#: view:crm.lead2opportunity.action:0
#: field:crm.lead2opportunity.action,name:0
msgid "Select Action"
-msgstr ""
+msgstr "選擇動作"
#. module: crm
#: field:base.action.rule,trg_categ_id:0
@@ -475,7 +475,7 @@ msgstr "分類"
#. module: crm
#: view:crm.lead.report:0
msgid "#Opportunities"
-msgstr ""
+msgstr "#機會"
#. module: crm
#: model:crm.case.resource.type,name:crm.type_oppor2
@@ -495,7 +495,7 @@ msgstr ""
#. module: crm
#: view:crm.lead.report:0
msgid "Opportunity Analysis"
-msgstr ""
+msgstr "機會分析"
#. module: crm
#: help:crm.meeting,location:0
@@ -525,7 +525,7 @@ msgstr ""
#. module: crm
#: model:process.transition,note:crm.process_transition_opportunitymeeting0
msgid "Normal or phone meeting for opportunity"
-msgstr ""
+msgstr "與機會的正常或電話會談"
#. module: crm
#: model:process.node,note:crm.process_node_leads0
@@ -544,7 +544,7 @@ msgstr ""
#: model:ir.actions.act_window,name:crm.crm_partner2opportunity
#, python-format
msgid "Create Opportunity"
-msgstr ""
+msgstr "建立機會"
#. module: crm
#: view:crm.installer:0
@@ -631,7 +631,7 @@ msgstr "滿意度調查"
msgid ""
"Thick this box if you want that on escalation, the responsible of this sale "
"team automatically becomes responsible of the lead/opportunity escaladed"
-msgstr ""
+msgstr "如想提升注意級別,勾選此項;此銷售隊伍之負責人會自動成為已提升注意潛在客戶/機會之負責人"
#. module: crm
#: help:crm.installer,outlook:0
@@ -671,7 +671,7 @@ msgstr ""
#. module: crm
#: view:crm.phonecall.report:0
msgid "#Phone calls"
-msgstr ""
+msgstr "致電數"
#. module: crm
#: help:crm.segmentation,categ_id:0
@@ -691,7 +691,7 @@ msgid ""
"The channels represent the different communication "
"modes available with the customer. With each commercial opportunity, you can "
"indicate the canall which is this opportunity source."
-msgstr ""
+msgstr "渠道代表該顧客之不同通訊模式。對於每個商機,您可指明此機會來源之管道。"
#. module: crm
#: code:addons/crm/crm_meeting.py:93
@@ -720,7 +720,7 @@ msgstr ""
#. module: crm
#: view:res.users:0
msgid "Current Activity"
-msgstr "目前活動"
+msgstr "當前動態"
#. module: crm
#: help:crm.meeting,exrule:0
@@ -835,7 +835,7 @@ msgstr "停止處理"
#. module: crm
#: view:crm.phonecall:0
msgid "Search Phonecalls"
-msgstr ""
+msgstr "搜尋致電"
#. module: crm
#: view:crm.lead2opportunity.partner:0
@@ -953,7 +953,7 @@ msgstr ""
#. module: crm
#: view:crm.phonecall2opportunity:0
msgid "Convert To Opportunity "
-msgstr ""
+msgstr "轉變為機會 "
#. module: crm
#: help:crm.case.stage,sequence:0
@@ -1016,7 +1016,7 @@ msgstr "三月"
#: code:addons/crm/crm_lead.py:230
#, python-format
msgid "The opportunity '%s' has been closed."
-msgstr ""
+msgstr "「%s」機會已結束。"
#. module: crm
#: field:crm.lead,day_open:0
@@ -1033,7 +1033,7 @@ msgstr "將時間顯示為"
#: view:crm.phonecall2partner:0
#, python-format
msgid "Create Partner"
-msgstr ""
+msgstr "建立伙伴"
#. module: crm
#: selection:crm.segmentation.line,expr_operator:0
@@ -1056,7 +1056,7 @@ msgstr ""
#, python-format
msgid ""
"There are no other 'Open' or 'Pending' Opportunities for the partner '%s'."
-msgstr ""
+msgstr "「%s」伙伴並無「開放」或「待處理」之機會。"
#. module: crm
#: view:crm.lead:0
@@ -1105,7 +1105,7 @@ msgstr ""
#: field:crm.meeting,date_action_next:0
#: field:crm.phonecall,date_action_next:0
msgid "Next Action"
-msgstr ""
+msgstr "下個動作"
#. module: crm
#: field:crm.meeting,end_date:0
@@ -1128,7 +1128,7 @@ msgstr ""
#: code:addons/crm/wizard/crm_phonecall_to_opportunity.py:57
#, python-format
msgid "Closed/Cancelled Phone Call Could not convert into Opportunity"
-msgstr ""
+msgstr "已結束/已取消之致電不能轉為機會"
#. module: crm
#: view:crm.segmentation:0
@@ -1353,7 +1353,7 @@ msgstr "已處理最大伙伴ID"
#: model:ir.actions.act_window,name:crm.action_report_crm_phonecall
#: model:ir.ui.menu,name:crm.menu_report_crm_phonecalls_tree
msgid "Phone Calls Analysis"
-msgstr ""
+msgstr "致電分析"
#. module: crm
#: field:crm.lead.report,opening_date:0
@@ -1493,7 +1493,7 @@ msgstr ""
#. module: crm
#: field:crm.phonecall2opportunity,name:0
msgid "Opportunity Summary"
-msgstr ""
+msgstr "機會摘要"
#. module: crm
#: view:crm.phonecall.report:0
@@ -1584,7 +1584,7 @@ msgstr ""
#. module: crm
#: model:ir.model,name:crm.model_crm_merge_opportunity
msgid "Merge two Opportunities"
-msgstr ""
+msgstr "合併兩個機會"
#. module: crm
#: selection:crm.meeting,end_type:0
@@ -1611,7 +1611,7 @@ msgstr ""
#. module: crm
#: model:ir.actions.act_window,name:crm.crm_phonecall_categ_action
msgid "Phonecall Categories"
-msgstr ""
+msgstr "致電分類"
#. module: crm
#: view:crm.meeting:0
@@ -1804,7 +1804,7 @@ msgstr "上級團隊"
#. module: crm
#: field:crm.lead,date_action:0
msgid "Next Action Date"
-msgstr ""
+msgstr "下個動作日期"
#. module: crm
#: selection:crm.segmentation,state:0
@@ -1850,7 +1850,7 @@ msgstr ""
#: view:crm.phonecall.report:0
#: model:ir.actions.act_window,name:crm.act_crm_opportunity_crm_phonecall_new
msgid "Phone calls"
-msgstr ""
+msgstr "致電"
#. module: crm
#: view:crm.lead:0
@@ -2070,7 +2070,7 @@ msgstr ""
#. module: crm
#: model:process.node,note:crm.process_node_meeting0
msgid "Schedule a normal or phone meeting"
-msgstr ""
+msgstr "安排正常或電話會談"
#. module: crm
#: code:addons/crm/crm.py:375
@@ -2331,7 +2331,7 @@ msgstr ""
#: model:ir.ui.menu,name:crm.menu_crm_case_phone
#: view:res.partner:0
msgid "Phone Calls"
-msgstr ""
+msgstr "致電"
#. module: crm
#: help:crm.lead.report,delay_open:0
@@ -2358,7 +2358,7 @@ msgstr "活躍"
#: code:addons/crm/crm_lead.py:306
#, python-format
msgid "The stage of opportunity '%s' has been changed to '%s'."
-msgstr ""
+msgstr "機會階段已由「%s」變為「%s」。"
#. module: crm
#: code:addons/crm/crm_lead.py:282
@@ -2414,7 +2414,7 @@ msgstr ""
#: field:crm.lead2partner,action:0
#: field:crm.phonecall2partner,action:0
msgid "Action"
-msgstr ""
+msgstr "動作"
#. module: crm
#: field:crm.installer,crm_claim:0
@@ -2544,7 +2544,7 @@ msgstr ""
#: view:board.board:0
#: model:ir.actions.act_window,name:crm.act_my_oppor
msgid "My Open Opportunities"
-msgstr ""
+msgstr "我的開放機會"
#. module: crm
#: model:ir.actions.act_window,name:crm.open_board_statistical_dash
@@ -2585,7 +2585,7 @@ msgstr "會議類型"
#: code:addons/crm/wizard/crm_lead_to_opportunity.py:314
#, python-format
msgid "Merge with Existing Opportunity"
-msgstr "與既有機會合併"
+msgstr "與現有機會合併"
#. module: crm
#: help:crm.lead,state:0
@@ -2714,7 +2714,7 @@ msgstr ""
#: field:crm.meeting,date_action_last:0
#: field:crm.phonecall,date_action_last:0
msgid "Last Action"
-msgstr ""
+msgstr "最後動作"
#. module: crm
#: field:crm.meeting,duration:0
@@ -3485,7 +3485,7 @@ msgstr "各階段機會"
#. module: crm
#: model:ir.actions.act_window,name:crm.crm_case_categ_phone_create_partner
msgid "Schedule Phone Call"
-msgstr ""
+msgstr "安排致電"
#. module: crm
#: selection:crm.lead.report,month:0
@@ -3564,7 +3564,7 @@ msgstr ""
#: code:addons/crm/wizard/crm_merge_opportunities.py:100
#, python-format
msgid "Merged into Opportunity: %s"
-msgstr "合併至機會:%s"
+msgstr "已合併至機會: %s"
#. module: crm
#: code:addons/crm/crm.py:347
@@ -3584,7 +3584,7 @@ msgstr "分類化"
#. module: crm
#: model:ir.model,name:crm.model_base_action_rule
msgid "Action Rules"
-msgstr ""
+msgstr "動作規則"
#. module: crm
#: field:crm.meeting,rrule_type:0
@@ -3594,7 +3594,7 @@ msgstr ""
#. module: crm
#: field:crm.meeting,phonecall_id:0
msgid "Phonecall"
-msgstr ""
+msgstr "致電"
#. module: crm
#: selection:crm.meeting,week_list:0
@@ -3763,7 +3763,7 @@ msgstr ""
#. module: crm
#: selection:crm.lead2opportunity.action,name:0
msgid "Merge with existing Opportunity"
-msgstr ""
+msgstr "與現有機會合併"
#. module: crm
#: field:crm.meeting,select1:0
@@ -3816,7 +3816,7 @@ msgstr ""
#. module: crm
#: field:res.partner,phonecall_ids:0
msgid "Phonecalls"
-msgstr ""
+msgstr "致電"
#. module: crm
#: view:crm.lead.report:0
diff --git a/addons/crm/report/crm_lead_report_view.xml b/addons/crm/report/crm_lead_report_view.xml
index 09c08108b56..4c165d5aa81 100644
--- a/addons/crm/report/crm_lead_report_view.xml
+++ b/addons/crm/report/crm_lead_report_view.xml
@@ -73,11 +73,13 @@
@@ -93,9 +95,13 @@
+ string="New"
+ domain="[('state','=','draft')]"
+ help="Leads/Opportunities which are in New state"/>
+ Leads Analysis
crm.lead.reportform
- {'search_default_filter_lead': 1, "search_default_user":1, "search_default_this_month":1, 'group_by_no_leaf':1, 'group_by':[]}
+ {'search_default_lead': 1, "search_default_user":1, "search_default_this_month":1, 'group_by_no_leaf':1, 'group_by':[]}tree,graph[]Leads Analysis allows you to check different CRM related information. Check for treatment delays, number of responses given and emails sent. You can sort out your leads analysis by different groups to get accurate grained analysis.
@@ -231,7 +237,7 @@
Opportunities Analysiscrm.lead.reportform
- {"search_default_filter_opportunity":1, "search_default_opportunity": 1, "search_default_user":1,"search_default_this_month":1,'group_by_no_leaf':1,'group_by':[]}
+ {"search_default_opportunity":1,"search_default_opportunity": 1, "search_default_user":1,"search_default_this_month":1,'group_by_no_leaf':1,'group_by':[]}tree,graphOpportunities Analysis gives you an instant access to your opportunities with information such as the expected revenue, planned cost, missed deadlines or the number of interactions per opportunity. This report is mainly used by the sales manager in order to do the periodic review with the teams of the sales pipeline.
diff --git a/addons/crm/res_partner_view.xml b/addons/crm/res_partner_view.xml
index 8f9012b1bf0..79b8bebb55d 100644
--- a/addons/crm/res_partner_view.xml
+++ b/addons/crm/res_partner_view.xml
@@ -53,7 +53,7 @@
-
+
@@ -84,7 +84,7 @@
icon="gtk-go-up" />
-
+
@@ -92,7 +92,7 @@
-
+
diff --git a/addons/crm/test/test_crm_lead.yml b/addons/crm/test/test_crm_lead.yml
index 52472a9d9e8..d5d3c6b933b 100644
--- a/addons/crm/test/test_crm_lead.yml
+++ b/addons/crm/test/test_crm_lead.yml
@@ -1,11 +1,9 @@
-- |
- In order to test the CRM in OpenERP,
- I will do a customer qualification process that
- starts with a fist contact with a customer (a lead), which will be converted to a
- business opportunity and a partner.
-- |
- In order to test the flow, I create a two new users "user_crm" and
- I assign the group "salesman".
+-
+ In order to test the CRM in OpenERP, I will do a customer qualification
+ process that starts with a fist contact with a customer (a lead), which will
+ be converted to a business opportunity and a partner.
+-
+ I create a two new users "user_crm" and I assign the group "salesman".
-
!record {model: res.users, id: res_users_usercrm0}:
company_id: base.main_company
@@ -25,26 +23,36 @@
email_from: info@mycustomer.com
name: New Customer
partner_name: Capegemini
+ partner_id: base.res_partner_9
phone: (855) 924-4364
mobile: (333) 715-1450
section_id: crm.section_sales_department
referred: False
- |
- I check that the lead is in 'draft' state,
+ I check that the lead is in 'draft' state.
-
!assert {model: crm.lead, id: crm_lead_newcustomer0, string: Lead in Draft}:
- state == "draft"
-
- I open lead by click on "Open" button,
+ I open lead by click on "Open" button.
-
!python {model: crm.lead}: |
self.case_open(cr, uid, [ref("crm_lead_newcustomer0")])
+ fields={
+ 'day_open': 0.0,
+ 'day_close': 0.0
+ }
+ self._compute_day(cr, uid, [ref("crm_lead_newcustomer0")], fields, context)
- |
I check that lead is now in 'open' state.
-
!assert {model: crm.lead, id: crm_lead_newcustomer0, string: Lead in open state}:
- state == "open"
-
+-
+ I search id for case object.
+-
+ !python {model: crm.case.categ}: |
+ self._find_object_id(cr, uid, context)
- |
As the lead seems to be a real business opportunity, I will convert it to a
partner
@@ -56,16 +64,38 @@
assert action['res_model'] == 'crm.lead2opportunity.partner'
-
|
- Now, select "create a new partner" option in this wizard.
+ I select "create a new partner" option.
-
!record {model: crm.lead2opportunity.partner, id: crm_lead2opportunity_partner_create_0}:
action: 'create'
name: 'convert'
-
- Then, Click on "Create Opportunity" button of this wizard.
+ Then, Click on "Create Opportunity" button.
-
!python {model: crm.lead2opportunity.partner}: |
self.action_apply(cr, uid, [ref("crm_lead2opportunity_partner_create_0")], {'active_ids': [ref("crm_lead_newcustomer0")], 'active_id': ref("crm_lead_newcustomer0")})
+-
+ |
+ I select "Link to an existing partner" option.
+-
+ !record {model: crm.lead2opportunity.partner, id: crm_lead2opportunity_partner_create_1}:
+ action: 'exist'
+-
+ Then, Click on "Create Opportunity" button.
+-
+ !python {model: crm.lead2opportunity.partner}: |
+ self.action_apply(cr, uid, [ref("crm_lead2opportunity_partner_create_1")], {'active_ids': [ref("crm_lead_newcustomer0")], 'active_id': ref("crm_lead_newcustomer0")})
+-
+ |
+ I select "Do not link to a partner" option.
+-
+ !record {model: crm.lead2opportunity.partner, id: crm_lead2opportunity_partner_create_2}:
+ action: 'nothing'
+-
+ Then, Click on "Create Opportunity" button.
+-
+ !python {model: crm.lead2opportunity.partner}: |
+ self.action_apply(cr, uid, [ref("crm_lead2opportunity_partner_create_2")], {'active_ids': [ref("crm_lead_newcustomer0")], 'active_id': ref("crm_lead_newcustomer0")})
- |
In order to check the opportunity is created or not, I check type.
-
@@ -73,6 +103,39 @@
lead = self.browse(cr, uid, ref("crm_lead_newcustomer0"))
assert lead.type == 'opportunity'
+-
+ I create mass report of lead to opprtunity partner.
+-
+ !record {model: crm.lead2opportunity.partner.mass, id: crm_lead2opportunity_partner_mass0}:
+ user_ids:
+ - base.user_root
+ section_id: crm.section_sales_department
+-
+ Then, execute that mass wizard.
+-
+ !python {model: crm.lead2opportunity.partner.mass}: |
+ self.mass_convert(cr, uid, [ref("crm_lead2opportunity_partner_mass0")],{'active_ids': [ref("crm_lead_newcustomer0")], 'active_id': ref("crm_lead_newcustomer0")})
+-
+ I close lead by click on "close" button.
+-
+ !python {model: crm.lead}: |
+ self.case_close(cr, uid, [ref("crm_lead_newcustomer0")])
+- |
+ I check that lead is now in 'done' state.
+-
+ !assert {model: crm.lead, id: crm_lead_newcustomer0, string: Lead in done state}:
+ - state == "done"
+-
+ I cancel lead by click on "cancel" button.
+-
+ !python {model: crm.lead}: |
+ self.case_cancel(cr, uid, [ref("crm_lead_newcustomer0")])
+- |
+ I check that lead is now in 'cancel' state.
+-
+ !assert {model: crm.lead, id: crm_lead_newcustomer0, string: Lead in cancel state}:
+ - state == "cancel"
+
#-
# |
# yaml is also not working with smtp server and send new email.
@@ -89,4 +152,3 @@
- |
I Reply to last Email to lead with some document attached.and check that communication history generated or not.
-
diff --git a/addons/crm/test/test_crm_lead_case2.yml b/addons/crm/test/test_crm_lead_case2.yml
new file mode 100644
index 00000000000..23a654d31a8
--- /dev/null
+++ b/addons/crm/test/test_crm_lead_case2.yml
@@ -0,0 +1,151 @@
+-
+ In order to do complete test the CRM in OpenERP,
+ I will create new full configured record and carry test on it.
+- |
+ I Start by creating "Test Sales Team" with No Unlink.
+ I create a crm.case.section record.
+-
+ !record {model: crm.case.section, id: crm_case_section_demosalesteam}:
+ code: DEMO
+ complete_name: Test Sales Team
+ name: Test Sales Team
+ allow_unlink: False
+ member_ids:
+ - base.user_admin
+ stage_ids:
+ - crm.stage_lead1
+ - crm.stage_lead2
+ - crm.stage_lead3
+ - crm.stage_lead4
+ - crm.stage_lead5
+ - crm.stage_lead6
+ working_hours: 0.0
+ resource_calendar_id: resource.timesheet_group1
+ parent_id: crm.section_sales_department
+-
+ I assign segmentation.
+-
+ !record {model: res.users, id: res_users_usercrm0}:
+ context_section_id: crm_case_section_demosalesteam
+- |
+ I create a new lead "Test Customer" and I provide an address to this
+ demo customer and email "info@democustomer.com" and Also "Test Sales Team".
+-
+ !record {model: crm.lead, id: crm_lead_democustomer}:
+ email_from: info@democustomer.com
+ name: Test Customer
+ partner_name: NotSoTinySARL
+ phone: (+32).81.81.37.00
+ mobile: (+32).81.81.37.00
+ section_id: crm_case_section_demosalesteam
+ referred: False
+ type: lead
+-
+ I check that the lead is in 'draft' state.
+-
+ !assert {model: crm.lead, id: crm_lead_democustomer, string: Lead in Draft}:
+ - state == "draft"
+-
+ I create categories.
+-
+ !record {model: crm.case.categ, id: crm_case_categ0}:
+ name: crm_case_section_demosalesteam
+ section_id: crm_case_section_demosalesteam
+-
+ I assigning contact detail to the Lead "Test Customer" without address.
+-
+ !python {model: crm.lead}: |
+ self.onchange_partner_address_id(cr, uid, ref("crm_lead_democustomer"), None, email=False)
+
+-
+ I assigning contact detail to the Lead "Test Customer" with address.
+-
+ !python {model: crm.lead}: |
+ self.onchange_partner_address_id(cr, uid, ref("crm_lead_democustomer"), ref("base.res_partner_address_notsotinysarl0"), email=False)
+
+-
+ I selecting email "Opt-out" option for the "Test Customer" Lead.
+-
+ !python {model: crm.lead}: |
+ self.on_change_optout(cr, uid, ref("crm_lead_democustomer"), True)
+
+-
+ I change the Opt-out to Opt-in to show email receive preference.
+-
+ !python {model: crm.lead}: |
+ self.on_change_optin(cr, uid, ref("crm_lead_democustomer"), True)
+-
+ I open lead by click on "Open" button.
+-
+ !python {model: crm.lead}: |
+ self.case_open(cr, uid, [ref("crm_lead_democustomer")])
+-
+ I check that lead "Test Customer" is now in 'open' state.
+-
+ !assert {model: crm.lead, id: crm_lead_democustomer, string: Lead in open state}:
+ - state == "open"
+-
+ I reset the lead "Test Customer".
+-
+ !python {model: crm.lead}: |
+ self.case_reset(cr, uid, [ref("crm_lead_democustomer")])
+-
+ I again opening lead by click on "Open" button.
+-
+ !python {model: crm.lead}: |
+ self.case_open(cr, uid, [ref("crm_lead_democustomer")])
+-
+ I setting stage "New" for the lead "Test Customer".
+-
+ !python {model: crm.lead}: |
+ self.stage_next(cr, uid, [ref("crm_lead_democustomer")], context={'stage_type': 'lead'})
+-
+ I try to Unlink the Lead "Test Customer" demo Lead.
+-
+ !python {model: crm.lead}: |
+ try:
+ self.unlink(cr, uid, [ref("crm_lead_democustomer")])
+ except:
+ pass
+-
+ I setting Lead "Test Customer" to Pending State.
+-
+ !python {model: crm.lead}: |
+ self.case_pending(cr, uid, [ref("crm_lead_democustomer")])
+-
+ I check that lead "Test Customer" is now in 'Pending' state.
+-
+ !assert {model: crm.lead, id: crm_lead_democustomer, string: Lead in Pending state}:
+ - state == "pending"
+-
+ I Escalate the Lead "Test Customer" Parent "Sales Team".
+-
+ !python {model: crm.lead}: |
+ self.case_escalate(cr, uid, [ref("crm_lead_democustomer")])
+-
+ I add Internal Note Saying Escalated Reason.
+-
+ !record {model: crm.add.note, id: crm_add_note_0}:
+ body: Sales Lead Has Been Escalated Due to Some Technical reason to the parent 'Sales
+ Team'
+ state: unchanged
+-
+ I click a note button to attach the record.
+-
+ !python {model: crm.add.note}: |
+ context['active_model'] = "crm.lead"
+ context['active_ids'] = [ref("crm_lead_democustomer")]
+ self.action_add(cr, uid, [ref("crm_add_note_0")], context=context)
+
+-
+ I Copying this lead "Test Customer" to New Lead.
+-
+ !python {model: crm.lead}: |
+ self.copy(cr, uid, ref("crm_lead_democustomer"))
+-
+ I checking the Lead Copied or Not.
+-
+ !python {model: crm.lead}: |
+ sid = self.search(cr, uid, [('name', '=', 'Test Customer'),('state', '=', 'draft')])
+ if not sid:
+ raise AssertionError("Lead is not copied Successfully")
diff --git a/addons/crm/test/test_crm_meeting.yml b/addons/crm/test/test_crm_meeting.yml
index 9b89fff697b..8d851dd58c7 100644
--- a/addons/crm/test/test_crm_meeting.yml
+++ b/addons/crm/test/test_crm_meeting.yml
@@ -1,9 +1,9 @@
- |
- Now I will test Meetings which may be customer meeting or phonecall meeting or
+ I will test Meetings which may be customer meeting or phonecall meeting or
internal Meeting.
- |
- I start by creating a new Meeting.
--
+ I start by creating a new Meeting.
+-
!record {model: crm.meeting, id: crm_meeting_regardingpresentation0}:
categ_id: crm.categ_meet2
date: !eval time.strftime('%Y-%m-%d 16:04:00')
@@ -18,14 +18,14 @@
section_id: crm.section_sales_department
- |
I check that the Meetings is in 'UnConfirmed' state.
--
+-
!assert {model: crm.meeting, id: crm_meeting_regardingpresentation0}:
- - state == "draft"
+ - state == "draft"
- |
- I can set reminder on meeting if I put reminder "40 minutes before"
+ I can set reminder on meeting if I put reminder "40 minutes before" .
- |
For that, I first create alarm.
--
+-
!record {model: res.alarm, id: res_alarm_minituesbefore0}:
name: 40 minutes before
trigger_duration: 40
@@ -33,51 +33,51 @@
trigger_occurs: before
trigger_related: start
- |
- Now I will assign this reminder.
-
+ I will assign this reminder.
+
- !python {model: crm.meeting}: |
self.write(cr, uid, [ref('crm_meeting_regardingpresentation0')], {'alarm_id': ref("res_alarm_minituesbefore0")})
- |
In order to check recurrence on meetings I will set Recurrency to Custom
- and I set the fields so that the meeting will occur weekly on Monday and Friday 10 times
+ and I set the fields so that the meeting will occur weekly on Monday and Friday 10 times.
-
!python {model: crm.meeting}: |
self.write(cr, uid, [ref("crm_meeting_regardingpresentation0")], {'fr': 1, 'mo': 1, 'th': 1, 'tu': 1, 'we':1, 'count':10, 'interval': 1, 'rrule_type': 'weekly'})
-
+
- |
I can see from the calendar view that the meeting is scheduled on Monday and Friday
- for 10 times,
-
+ for 10 times.
+
-
!python {model: crm.meeting}: |
self.fields_view_get(cr, uid, False, 'calendar', context)
-- |
+- |
I will search for one of the recurrent event and count the number of meeting.
-
!python {model: crm.meeting}: |
import time
from datetime import datetime, date, timedelta
ids = self.search(cr, uid, [('date', '>=', time.strftime('%Y-%m-%d 00:00:00')), ('date', '<=', (datetime.now()+timedelta(31)).strftime('%Y-%m-%d 00:00:00')), ('name', '=', 'Regarding Presentation')], context={'virtual_id': True})
- assert len(ids) == 10
+ assert len(ids) == 10
- |
- Now If I want to edit meetings information for all occurrence I click on "Edit All" button.
+ If I want to edit meetings information for all occurrence I click on "Edit All" button.
-
!python {model: crm.meeting}: |
self.write(cr, uid, [ref('crm_meeting_regardingpresentation0')], {'edit_all':'True'},context)
-- |
- I can see that new meeting form is opened with same value
- I change some data for meeting and save it
- I can see from meeting's calendar view that all meeting occurrences are changed accordingly
--
+- |
+ I can see that new meeting form is opened with same value.
+ I change some data for meeting and save it.
+ I can see from meeting's calendar view that all meeting occurrences are changed accordingly.
+-
!record {model: crm.meeting, id: crm.crm_meeting_regardingpresentation0}:
alarm_id: base_calendar.alarm9
rrule_type: weekly
-- |
+- |
In order to invite people for this meetings, I click on "Invite People" button
- I can invite internal user.
--
+ I can invite internal user.
+-
!record {model: base_calendar.invite.attendee, id: base_calendar_invite_attendee_0}:
type: internal
send_mail: False
@@ -85,13 +85,13 @@
user_ids:
- base.user_demo
-
- I click on "Invite" button of "Invite attendee" wizard.
+ I click on "Invite" button of "Invite attendee" wizard.
-
!python {model: base_calendar.invite.attendee}: |
- self.do_invite(cr, uid, [ref('base_calendar_invite_attendee_0')], {'active_id': ref('crm_meeting_regardingpresentation0'), 'model' : 'crm.meeting', 'attendee_field':'attendee_ids'})
+ self.do_invite(cr, uid, [ref('base_calendar_invite_attendee_0')], {'active_id': ref('crm_meeting_regardingpresentation0'), 'model' : 'crm.meeting', 'attendee_field':'attendee_ids'})
- |
- After direct/indirect confirmation for meetings I can confirm meeting
+ After direct/indirect confirmation for meetings I can confirm meeting.
-
!python {model: crm.meeting}: |
self.case_open(cr, uid, [ref('crm_meeting_regardingpresentation0')])
diff --git a/addons/crm/test/test_crm_opportunity.yml b/addons/crm/test/test_crm_opportunity.yml
index 7640cc67815..734a1cae46c 100644
--- a/addons/crm/test/test_crm_opportunity.yml
+++ b/addons/crm/test/test_crm_opportunity.yml
@@ -11,18 +11,17 @@
stage_id: crm.stage_lead1
categ_id: crm.categ_oppor2
section_id: crm.section_sales_department
-
- |
I check that the opportunity is in 'New' state.
-
!assert {model: crm.lead, id: crm_opportunity_abcfuelcounits0}:
- state == "draft"
-- |
- I open opportunity by click on "Open" button,
--
- !python {model: crm.lead}: |
- self.case_open(cr, uid, [ref("crm_opportunity_abcfuelcounits0")])
+- |
+ I check that phonecall record is created for that opportunity.
+-
+ !python {model: crm.phonecall}: |
+ phone_obj = self.pool.get('crm.phonecall')
- |
I schedule Meeting on this current opportunity by clicking on "schedule
Meeting".
@@ -33,7 +32,7 @@
- |
I can see that Meeting's calendar view is shown.
then I click on the date on which I want to schedule meeting.
- I fill proper data for that meeting and save it
+ I fill proper data for that meeting and save it.
-
!record {model: crm.meeting, id: crm_meeting_abcfuelcounits0}:
date: !eval time.strftime('%Y-%m-%d 00:00:00')
@@ -51,13 +50,13 @@
I click on "schedule call" button and select planned date for the call.
-
!record {model: crm.opportunity2phonecall, id: crm_opportunity2phonecall_abcfuelcounits0}:
- date: !eval "(datetime.now() + timedelta(1)).strftime('%Y-%m-%d 11:15:00')"
+ date: !eval "(datetime.now() + timedelta(1)).strftime('%Y-%m-%d 11:15:00')"
name: 'ABC FUEL CO 829264 - 10002 units'
section_id: crm.section_sales_department
user_id: base.user_demo
categ_id: crm.categ_phone1
- |
- schedule phonecall by apply (action_apply)function of opportunity2phoncall wizard
+ schedule phonecall by opportunity2phoncall wizard.
-
!python {model: crm.opportunity2phonecall}: |
self.action_apply(cr, uid, [ref('crm_opportunity2phonecall_abcfuelcounits0')], {'active_ids': [ref("crm_opportunity_abcfuelcounits0")]})
@@ -72,10 +71,43 @@
I can see phonecall record after click on "Schedule call" wizard.
-
!record {model: crm.phonecall, id: crm_phonecall_abcfuelcounits0}:
- date: !eval "(datetime.now() + timedelta(1)).strftime('%Y-%m-%d 11:15:00')"
+ date: !eval "(datetime.now() + timedelta(1)).strftime('%Y-%m-%d 11:15:00')"
duration: 3.0
name: 'ABC FUEL CO 829264 - 10002 units'
partner_address_id: base.res_partner_address_1
partner_id: base.res_partner_9
section_id: crm.section_sales_department
-
+- |
+ I Merge the opportunities.
+-
+ for that create two opportunities first opportunity 'Test FUEL CO'.
+-
+ !record {model: crm.lead, id: crm_opportunity_1}:
+ email_from: info@balmerinc.be
+ name: 'Test FUEL CO 829264 - 10002 units'
+ partner_address_id: base.res_partner_address_1
+ partner_id: base.res_partner_9
+ probability: 1.0
+ stage_id: crm.stage_lead1
+ categ_id: crm.categ_oppor2
+ section_id: crm.section_sales_department
+-
+ I create the opportunity 'FUEL CO'.
+-
+ !record {model: crm.lead, id: crm_opportunity_2}:
+ email_from: info@balmerinc.be
+ name: 'FUEL CO 829264 - 10002 units'
+ partner_address_id: base.res_partner_address_1
+ partner_id: base.res_partner_9
+ probability: 1.0
+ stage_id: crm.stage_lead1
+ categ_id: crm.categ_oppor2
+ section_id: crm.section_sales_department
+- |
+ I Merge two Opportunities.
+-
+ !python {model: crm.merge.opportunity}: |
+ op_list = [ref('crm_opportunity_1'),ref('crm_opportunity_2')]
+ op_ids=self.pool.get('crm.lead').browse(cr,uid,op_list)
+ lead_ids = [ref('crm_lead_newcustomer0')]
+ self.merge(cr, uid, op_ids, {'lead_ids': lead_ids})
diff --git a/addons/crm/test/test_crm_opportunity_case2.yml b/addons/crm/test/test_crm_opportunity_case2.yml
new file mode 100644
index 00000000000..dc0dbe517f1
--- /dev/null
+++ b/addons/crm/test/test_crm_opportunity_case2.yml
@@ -0,0 +1,45 @@
+- |
+ I start by creating a new Opportunity. And I select partner for opportunity.
+ I can see that after selecting partner his contact and email is automatically filled.
+-
+ !record {model: crm.lead, id: crm_opportunity_demotestopportunity}:
+ email_from: info@balmerinc.be
+ name: 'Demo Test Opportunity'
+ partner_address_id: base.res_partner_address_1
+ partner_id: base.res_partner_9
+ probability: 1.0
+ categ_id: crm.categ_oppor2
+ section_id: crm.section_sales_department
+ type: opportunity
+-
+ I check that the opportunity is in 'New' state.
+-
+ !assert {model: crm.lead, id: crm_opportunity_demotestopportunity, string: Opportunity in Draft}:
+ - state == "draft"
+-
+ I open opportunity by click on "Open" button.
+-
+ !python {model: crm.lead}: |
+ self.case_open(cr, uid, [ref("crm_opportunity_demotestopportunity")])
+-
+ I change partner of the opportunity.
+-
+ !python {model: crm.lead}: |
+ self.onchange_partner_id(cr, uid, [ref("crm_opportunity_demotestopportunity")], ref("base.res_partner_agrolait"))
+
+-
+ I change Contact Detail of the opportunity.
+-
+ !python {model: crm.lead}: |
+ self.onchange_partner_address_id(cr, uid,[ref("crm_opportunity_demotestopportunity")], ref("base.res_partner_address_8invoice"))
+
+-
+ I change Opportunity to Won State.
+-
+ !python {model: crm.lead}: |
+ self.case_mark_won(cr, uid, [ref("crm_opportunity_demotestopportunity")])
+-
+ I check that the opportunity is in 'Done' state.
+-
+ !assert {model: crm.lead, id: crm_opportunity_demotestopportunity, string: Opportunity is Won}:
+ - state == "done"
diff --git a/addons/crm/test/test_crm_partner2opportunity.yml b/addons/crm/test/test_crm_partner2opportunity.yml
new file mode 100644
index 00000000000..fe026074f4f
--- /dev/null
+++ b/addons/crm/test/test_crm_partner2opportunity.yml
@@ -0,0 +1,25 @@
+- |
+ I start by creating a new opportunity from partner.
+-
+ !record {model: crm.partner2opportunity, id: crm_partner2opportunity_id_0}:
+ name: test
+ planned_revenue: 0.0
+ partner_id: base.res_partner_9
+ probability: 0.0
+-
+ I click on "Create Opportunity" button of this wizard.
+-
+ !python {model: crm.partner2opportunity}: |
+ fields = {
+ 'name': 'test',
+ 'planned_revenue': '0.0',
+ 'partner_id': ref('base.res_partner_9'),
+ 'probability': '0.0'
+ }
+ self.default_get(cr, uid, fields, {"active_ids": [ref("crm_partner2opportunity_id_0")]})
+- |
+ In order to check the opportunity is created or not, I check type.
+-
+ !python {model: crm.partner2opportunity}: |
+ opportunity = self.make_opportunity(cr, uid, [ref("crm_partner2opportunity_id_0")], {"active_ids": [ref("crm_partner2opportunity_id_0")]})
+ assert True
diff --git a/addons/crm/test/test_crm_phonecall.yml b/addons/crm/test/test_crm_phonecall.yml
index 1885e34a5ce..0754a5b9544 100644
--- a/addons/crm/test/test_crm_phonecall.yml
+++ b/addons/crm/test/test_crm_phonecall.yml
@@ -7,16 +7,19 @@
duration: 2.0
section_id: crm.section_sales_department
-
- Now , I select partner by click on "Create a Partner" button.
+ I select partner by click on "Create a Partner" button.
-
!record {model: crm.phonecall2partner, id: crm_phonecall2partner_1}:
action: exist
partner_id: base.res_partner_9
-
- Now, click on "Continue" button of this wizard.
+ I click on "Continue" button of this wizard and make partner.
-
!python {model: crm.phonecall2partner}: |
+
+ self._select_partner(cr, uid,{"active_ids": [ref("crm_phonecall_interviewcall0")]})
+ self.open_create_partner(cr, uid, [ref("crm_phonecall2partner_1")], {"active_ids": [ref("crm_phonecall_interviewcall0")]})
self.make_partner(cr, uid, [ref("crm_phonecall2partner_1")], {"active_ids": [ref("crm_phonecall_interviewcall0")]})
- |
@@ -28,31 +31,28 @@
partner_id: base.res_partner_9
planned_revenue: 0.0
probability: 0.0
--
- Now, I click on "Convert" button of this wizard.
--
- !python {model: crm.phonecall2opportunity}: |
- self.action_apply(cr, uid, [ref("crm_phonecall2opportunity_interviewcall0")], {"active_id": ref("crm_phonecall_interviewcall0")})
-
- |
I can see that a business opportunity is now assigned to this phonecall
-
!assert {model: crm.phonecall, id: crm_phonecall_interviewcall0}:
- opportunity_id != False
-
+-
+ I click on "Convert" button of this wizard.
+-
+ !python {model: crm.phonecall2opportunity}: |
+ self.action_apply(cr, uid, [ref("crm_phonecall2opportunity_interviewcall0")], {"active_id": ref("crm_phonecall_interviewcall0")})
- |
And I check that the phonecall and the newly created business opportunity is linked
- to same partner
+ to same partner.
-
!python {model: crm.phonecall}: |
obj_phonecall = self.browse(cr, uid, ref('crm_phonecall_interviewcall0'))
ids = self.pool.get('crm.lead').search(cr, uid, [('name', '=', obj_phonecall.opportunity_id.name)])
obj_opp = self.pool.get('crm.lead').browse(cr, uid, ids)[0]
assert obj_phonecall.partner_id == obj_opp.partner_id
-
- |
I schedule Meeting on this current phonecall by clicking on "schedule
- Meeting"
+ Meeting".
-
!python {model: crm.phonecall}: |
self.action_make_meeting(cr, uid, [ref('crm_phonecall_interviewcall0')])
@@ -60,7 +60,7 @@
- |
I can see that Meeting's calendar view is shown.
then I click on the date on which I want schedule meeting.
- I fill proper data for that meeting and save it
+ I fill proper data for that meeting and save it.
-
!record {model: crm.meeting, id: crm_meeting_interviewcall0}:
alarm_id: base_calendar.alarm3
@@ -85,9 +85,32 @@
name: Interview call
section_id: crm.section_sales_department
user_id: base.user_root
+ action: schedule
+ categ_id: crm.categ_phone1
+-
+ I click on "schedule other call" button. and plan for other call.
+-
+ !record {model: crm.phonecall2phonecall, id: crm_phonecall2phonecall_interviewcall1}:
+ date: !eval "'%s-%s-%s 19:49:00' %(datetime.now().year,datetime.now().month,datetime.now().day)"
+ name: Interview call
+ section_id: crm.section_sales_department
+ user_id: base.user_root
+ action: log
categ_id: crm.categ_phone1
- |
I click on "Schedule" button of this wizard.
-
!python {model: crm.phonecall2phonecall}: |
+ fields = {
+ 'name': 'Interview call',
+ 'section_id': ref('crm.section_sales_department'),
+ 'user_id': ref('base.user_root'),
+ 'categ_id': ref('crm.categ_phone1')
+ }
+ self.default_get(cr, uid, fields,{'active_id': ref('crm_phonecall_interviewcall0')})
self.action_apply(cr, uid, [ref('crm_phonecall2phonecall_interviewcall0')], {'active_id': ref('crm_phonecall_interviewcall0')})
+- |
+ I click on "Schedule" button of this wizard with log option.
+-
+ !python {model: crm.phonecall2phonecall}: |
+ self.action_apply(cr, uid, [ref('crm_phonecall2phonecall_interviewcall1')], {'active_id': ref('crm_phonecall_interviewcall0')})
diff --git a/addons/crm/test/test_crm_phonecall_case2.yml b/addons/crm/test/test_crm_phonecall_case2.yml
new file mode 100644
index 00000000000..1b07121183c
--- /dev/null
+++ b/addons/crm/test/test_crm_phonecall_case2.yml
@@ -0,0 +1,26 @@
+- |
+ I start by creating a new phonecall.
+-
+ !record {model: crm.phonecall, id: crm_phonecall_dummycall}:
+ date: !eval time.strftime('%Y-%m-%d 08:00:00')
+ name: Dummy call
+ duration: 0.0
+ section_id: crm.section_sales_department
+ partner_id: base.res_partner_agrolait
+ state: open
+-
+ I change Contact Detail of the Partner.
+-
+ !python {model: crm.phonecall}: |
+ self.onchange_partner_address_id(cr, uid,[ref("crm_phonecall_dummycall")], ref("base.res_partner_address_8invoice"))
+
+-
+ I setting Phone call to Held (Done).
+-
+ !python {model: crm.phonecall}: |
+ self.case_close(cr, uid, [ref("crm_phonecall_dummycall")])
+-
+ I check that the hone call is in 'Held' state.
+-
+ !assert {model: crm.phonecall, id: crm_phonecall_dummycall, string: Phone call Helded}:
+ - state == "done"
diff --git a/addons/crm/test/test_crm_recurrent_meeting_case2.yml b/addons/crm/test/test_crm_recurrent_meeting_case2.yml
index 585c6af73ae..b6afeb6906e 100644
--- a/addons/crm/test/test_crm_recurrent_meeting_case2.yml
+++ b/addons/crm/test/test_crm_recurrent_meeting_case2.yml
@@ -21,7 +21,7 @@
meeting_ids = self.search(cr, uid, [('id', 'in', [ref('crm_meeting_testmeeting0')]),('date','>=','2011-03-13'), ('date_deadline', '<=', '2011-05-13')], context={'virtual_id': True})
assert len(meeting_ids) == 5, 'Recurrent daily meetings are not created !'
-
- Now I create a weekly meeting till a particular end date.
+ I create a weekly meeting till a particular end date.
-
!record {model: crm.meeting, id: crm_meeting_reviewcodewithprogrammer0}:
date: '2011-04-18 11:47:00'
@@ -95,4 +95,3 @@
meeting_ids = self.search(cr, uid, [('recurrent_uid', '=', ref('crm_meeting_reviewcodewithprogrammer0')), ('recurrent_id','=','2011-04-25 12:47:00')], context)
assert meeting_ids, 'Meeting is not edited !'
-
\ No newline at end of file
diff --git a/addons/crm/test/test_crm_segmentation.yml b/addons/crm/test/test_crm_segmentation.yml
new file mode 100644
index 00000000000..5563f1ce52f
--- /dev/null
+++ b/addons/crm/test/test_crm_segmentation.yml
@@ -0,0 +1,38 @@
+- |
+ I will test segmentation which create specific partner categories criteria.
+-
+ I create a new segmentation record.
+-
+ !record {model: crm.segmentation, id: crm_segmentation_id_0}:
+ categ_id: base.res_partner_category_5
+ exclusif: true
+ name: segment
+ som_interval: 0.0
+ sales_purchase_active : True
+-
+ I start the process.
+-
+ !python {model: crm.segmentation}: |
+ self.process_start(cr, uid, [ref("crm_segmentation_id_0")],context)
+-
+ I continue the segmentation process.
+-
+ !python {model: crm.segmentation}: |
+ context.update({'start': True})
+ self.process_continue(cr, uid, [ref("crm_segmentation_id_0")], context)
+-
+ I create the segmentation line.
+-
+ !record {model: crm.segmentation.line, id: crm_segmentation_line_id_0}:
+ expr_name: sale
+ expr_operator: '>'
+ expr_value: 1000.0
+ name: Rule1
+ operator: or
+ segmentation_id: crm_segmentation_id_0
+
+-
+ I check the Segmentation line record.
+-
+ !python {model: crm.segmentation.line}: |
+ self.test(cr, uid, [ref("crm_segmentation_line_id_0")],partner_id=0)
diff --git a/addons/crm/test/test_crm_stage_changes.yml b/addons/crm/test/test_crm_stage_changes.yml
index c9c25bec604..391a328bffe 100644
--- a/addons/crm/test/test_crm_stage_changes.yml
+++ b/addons/crm/test/test_crm_stage_changes.yml
@@ -1,10 +1,10 @@
-
In order to test the changes on stage of a lead or an opportunity with OpenERP,
I create some leads and test the stage changes.
--
+-
I want to change the probability to 0.0 when the opportunity is marked as lost.
So I set its Change probability automatically true.
--
+-
!record {model: crm.case.stage, id: crm.stage_lead6}:
name: Lost
on_change: true
@@ -12,9 +12,9 @@
section_ids:
- crm.section_sales_department
sequence: 0
--
+-
I create a lead 'Test Lead1'.
--
+-
!record {model: crm.lead, id: crm_lead_openerppresentation0}:
categ_id: crm.categ_oppor4
day_close: 0.0
@@ -29,7 +29,17 @@
!python {model: crm.lead}: |
self.case_open(cr, uid, [ref('crm_lead_openerppresentation0')])
-
- I find that this lead can be converted to opportunity.
+ I assigning stage.
+-
+ !python {model: crm.lead}: |
+ self.onchange_stage_id(cr, uid, [ref('crm_lead_openerppresentation0')], [], context)
+-
+ I assigning percent.
+-
+ !python {model: crm.lead}: |
+ self.stage_find_percent(cr, uid, 10.0, [])
+-
+ I find that this lead can be converted to opportunity.
-
!record {model: crm.lead2opportunity.partner, id: crm_lead2opportunity_partner0}:
action: 'create'
@@ -51,7 +61,7 @@
!python {model: crm.lead}: |
self.case_mark_lost(cr, uid, [ref('crm_lead_openerppresentation0')])
-
- Now I check whether the probability is set according to stage change or not.
+ I check whether the probability is set according to stage change or not.
-
!python {model: crm.lead}: |
opportunity = self.browse(cr, uid, ref('crm_lead_openerppresentation0'))
diff --git a/addons/crm/wizard/crm_lead_to_opportunity.py b/addons/crm/wizard/crm_lead_to_opportunity.py
index 8200dbd1675..87ab9229d26 100644
--- a/addons/crm/wizard/crm_lead_to_opportunity.py
+++ b/addons/crm/wizard/crm_lead_to_opportunity.py
@@ -37,7 +37,7 @@ class crm_lead2opportunity_partner(osv.osv_memory):
('nothing', 'Do not link to a partner')], \
'Action', required=True),
'name': fields.selection([('convert', 'Convert to Opportunity'), ('merge', 'Merge with existing Opportunity')],'Select Action', required=True),
- 'opportunity_ids': fields.many2many('crm.lead', 'merge_opportunity_rel', 'merge_id', 'opportunity_id', 'Opportunities', domain=[('type', '=', 'opportunity')]),
+ 'opportunity_ids': fields.many2many('crm.lead', string='Opportunities', domain=[('type', '=', 'opportunity')]),
}
def default_get(self, cr, uid, fields, context=None):
@@ -236,7 +236,7 @@ class crm_lead2opportunity_mass_convert(osv.osv_memory):
_columns = {
- 'user_ids': fields.many2many('res.users', 'mass_convert_rel', 'user_id', 'wizard_id', 'Salesmans'),
+ 'user_ids': fields.many2many('res.users', string='Salesmans'),
'section_id': fields.many2one('crm.case.section', 'Sales Team'),
}
diff --git a/addons/crm/wizard/crm_lead_to_partner.py b/addons/crm/wizard/crm_lead_to_partner.py
index 790c6222de6..88ccacffef5 100644
--- a/addons/crm/wizard/crm_lead_to_partner.py
+++ b/addons/crm/wizard/crm_lead_to_partner.py
@@ -158,6 +158,7 @@ class crm_lead2partner(osv.osv_memory):
'name': lead.partner_name or lead.contact_name or lead.name,
'user_id': lead.user_id.id,
'comment': lead.description,
+ 'address': []
})
contact_obj.create(cr, uid, {
'partner_id': partner_id,
diff --git a/addons/crm/wizard/crm_merge_opportunities.py b/addons/crm/wizard/crm_merge_opportunities.py
index d2d46749746..f092d6ad0b6 100644
--- a/addons/crm/wizard/crm_merge_opportunities.py
+++ b/addons/crm/wizard/crm_merge_opportunities.py
@@ -142,7 +142,7 @@ class crm_merge_opportunity(osv.osv_memory):
count+=1
for history in opp.message_ids:
- message_obj.write(cr, uid, history.id, {'res_id': first_opportunity.id, 'name' : _("From %s : %s") % (opp.name, history.name) }, context=context)
+ message_obj.write(cr, uid, history.id, {'res_id': first_opportunity.id, 'subject' : _("From %s : %s") % (opp.name, history.subject) }, context=context)
#Notification about loss of information
details = []
diff --git a/addons/crm/wizard/crm_partner_to_opportunity_view.xml b/addons/crm/wizard/crm_partner_to_opportunity_view.xml
index 762303f06ba..1111bbbbc50 100644
--- a/addons/crm/wizard/crm_partner_to_opportunity_view.xml
+++ b/addons/crm/wizard/crm_partner_to_opportunity_view.xml
@@ -31,17 +31,16 @@
formformnew
-
+
-
+
-
-
-
+
+
diff --git a/addons/crm_caldav/__openerp__.py b/addons/crm_caldav/__openerp__.py
index fdbde1c8d2d..8f1812862c5 100644
--- a/addons/crm_caldav/__openerp__.py
+++ b/addons/crm_caldav/__openerp__.py
@@ -22,10 +22,9 @@
{
- 'name': 'Extended Module to Add CalDav feature on Meeting',
+ 'name': 'Calendar Synchronizing',
'version': '1.1',
- 'category': 'Sales',
- 'category': 'Generic Modules/CRM & SRM',
+ 'category': 'Customer Relationship Management',
'complexity': "normal",
'description': """
Caldav features in Meeting.
diff --git a/addons/crm_caldav/i18n/sr@latin.po b/addons/crm_caldav/i18n/sr@latin.po
index 65f9cd7e78d..58afdb13b25 100644
--- a/addons/crm_caldav/i18n/sr@latin.po
+++ b/addons/crm_caldav/i18n/sr@latin.po
@@ -8,19 +8,19 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2010-12-23 10:47+0000\n"
-"Last-Translator: qdp (OpenERP) \n"
+"PO-Revision-Date: 2011-10-06 14:03+0000\n"
+"Last-Translator: Milan Milosevic \n"
"Language-Team: Serbian \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 05:55+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-07 04:36+0000\n"
+"X-Generator: Launchpad (build 14085)\n"
#. module: crm_caldav
#: model:ir.actions.act_window,name:crm_caldav.action_caldav_browse
msgid "Caldav Browse"
-msgstr ""
+msgstr "Pretraži CalDav"
#. module: crm_caldav
#: model:ir.model,name:crm_caldav.model_crm_meeting
@@ -30,7 +30,7 @@ msgstr "Sastanak"
#. module: crm_caldav
#: model:ir.module.module,shortdesc:crm_caldav.module_meta_information
msgid "Extended Module to Add CalDav feature on Meeting"
-msgstr ""
+msgstr "Produženi modul za dodavanje CalDav funkcije u sastancima"
#. module: crm_caldav
#: model:ir.module.module,description:crm_caldav.module_meta_information
@@ -39,8 +39,11 @@ msgid ""
" New Features in Meeting:\n"
" * Share meeting with other calendar clients like sunbird\n"
msgstr ""
+"\n"
+" Nove funkcije u sastancima\n"
+" *Podeli sastanke s drugim kalendarskim klijentima poput sunbird-a\n"
#. module: crm_caldav
#: model:ir.ui.menu,name:crm_caldav.menu_caldav_browse
msgid "Synchronyze this calendar"
-msgstr ""
+msgstr "Sinhronisanje ovog kalendara"
diff --git a/addons/crm_claim/__openerp__.py b/addons/crm_claim/__openerp__.py
index 696298d275b..ae493c5dac2 100644
--- a/addons/crm_claim/__openerp__.py
+++ b/addons/crm_claim/__openerp__.py
@@ -21,9 +21,9 @@
{
- 'name': 'Customer & Supplier Claims Management',
+ 'name': 'Claims',
'version': '1.0',
- 'category': 'Sales',
+ 'category': 'Customer Relationship Management',
'complexity': "easy",
'description': """
This modules allows you to track your customers/suppliers claims and grievances.
diff --git a/addons/crm_claim/crm_claim_view.xml b/addons/crm_claim/crm_claim_view.xml
index 15956389e8e..a2ad01e0651 100644
--- a/addons/crm_claim/crm_claim_view.xml
+++ b/addons/crm_claim/crm_claim_view.xml
@@ -106,7 +106,7 @@
-
+
@@ -155,11 +155,11 @@
-
+
@@ -158,10 +158,10 @@
-
+
@@ -177,9 +177,9 @@
name="%(crm.action_crm_add_note)d"
context="{'model': 'crm.lead' }"
icon="terp-document-new" type="action" />
-
+
@@ -244,9 +244,9 @@
-
+
diff --git a/addons/crm_fundraising/report/crm_fundraising_report_view.xml b/addons/crm_fundraising/report/crm_fundraising_report_view.xml
index 645634e15e2..b3c1b45a46c 100644
--- a/addons/crm_fundraising/report/crm_fundraising_report_view.xml
+++ b/addons/crm_fundraising/report/crm_fundraising_report_view.xml
@@ -69,27 +69,27 @@
-
+ crm.fundraising.report.selecttcrm.fundraising.reportsearch
-
+
+ help="Funds raised in current month"/>
',
+ 'priority':'3',
+ }
+ context = None
+ self.message_new(cr, uid,msg,context)
+
+- |
+ After a request via email now I close this fundraising Request by clicking on "Done" button.
+-
+ !python {model: crm.fundraising}: |
+ self.case_close(cr, uid, [ref('crm_fundraising_donationforbookstopoorschoolchildren0')])
diff --git a/addons/crm_helpdesk/__openerp__.py b/addons/crm_helpdesk/__openerp__.py
index b69f1de1b08..5124c3c5817 100644
--- a/addons/crm_helpdesk/__openerp__.py
+++ b/addons/crm_helpdesk/__openerp__.py
@@ -21,8 +21,8 @@
{
- 'category': 'Sales',
- 'name': 'CRM Helpdesk',
+ 'category': 'Customer Relationship Management',
+ 'name': 'Helpdesk',
'version': '1.0',
'complexity': "easy",
'description': """
diff --git a/addons/crm_helpdesk/crm_helpdesk.py b/addons/crm_helpdesk/crm_helpdesk.py
index 48bc2a1bb2e..97ed007f456 100644
--- a/addons/crm_helpdesk/crm_helpdesk.py
+++ b/addons/crm_helpdesk/crm_helpdesk.py
@@ -71,10 +71,10 @@ class crm_helpdesk(crm.crm_case, osv.osv):
'priority': fields.selection(crm.AVAILABLE_PRIORITIES, 'Priority'),
'probability': fields.float('Probability (%)'),
'categ_id': fields.many2one('crm.case.categ', 'Category', \
- domain="[('section_id','=',section_id),\
- ('object_id.model', '=', 'crm.helpdesk')]"),
- 'duration': fields.float('Duration', states={'done': [('readonly', True)]}),
- 'state': fields.selection(crm.AVAILABLE_STATES, 'State', size=16, readonly=True,
+ domain="['|',('section_id','=',False),('section_id','=',section_id),\
+ ('object_id.model', '=', 'crm.helpdesk')]"),
+ 'duration': fields.float('Duration', states={'done': [('readonly', True)]}),
+ 'state': fields.selection(crm.AVAILABLE_STATES, 'State', size=16, readonly=True,
help='The state is set to \'Draft\', when a case is created.\
\nIf the case is in progress the state is set to \'Open\'.\
\nWhen the case is over, the state is set to \'Done\'.\
diff --git a/addons/crm_helpdesk/crm_helpdesk_menu.xml b/addons/crm_helpdesk/crm_helpdesk_menu.xml
index 162cef8c15d..31ee27345b0 100644
--- a/addons/crm_helpdesk/crm_helpdesk_menu.xml
+++ b/addons/crm_helpdesk/crm_helpdesk_menu.xml
@@ -11,8 +11,8 @@
crm.helpdesktree,calendar,form
- {"search_default_user_id":uid, 'search_default_section_id': section_id}
+ {"search_default_user_id":uid, "search_default_current":1, 'search_default_section_id': section_id}Helpdesk and Support allow you to track your interventions. Select a customer, add notes and categorize interventions with partners if necessary. You can also assign a priority level. Use the OpenERP Issues system to manage your support activities. Issues can be connected to the email gateway: new emails may create issues, each of them automatically gets the history of the conversation with the customer.
diff --git a/addons/crm_helpdesk/crm_helpdesk_view.xml b/addons/crm_helpdesk/crm_helpdesk_view.xml
index d8bd5319018..5b3203f19d0 100644
--- a/addons/crm_helpdesk/crm_helpdesk_view.xml
+++ b/addons/crm_helpdesk/crm_helpdesk_view.xml
@@ -69,7 +69,7 @@
-
+
@@ -100,11 +100,11 @@
-
+
@@ -118,10 +118,10 @@
-
+
@@ -137,9 +137,9 @@
name="%(crm.action_crm_add_note)d"
context="{'model': 'crm.lead' }"
icon="terp-document-new" type="action" />
-
+
@@ -232,14 +232,29 @@
search
+
+
+
+
diff --git a/addons/crm_helpdesk/report/crm_helpdesk_report_view.xml b/addons/crm_helpdesk/report/crm_helpdesk_report_view.xml
index ce23e677394..6a4ab3e01c5 100644
--- a/addons/crm_helpdesk/report/crm_helpdesk_report_view.xml
+++ b/addons/crm_helpdesk/report/crm_helpdesk_report_view.xml
@@ -64,11 +64,11 @@
domain="[('create_date','<=', (datetime.date.today() - relativedelta(day=31, months=1)).strftime('%%Y-%%m-%%d')),('create_date','>=',(datetime.date.today() - relativedelta(day=1,months=1)).strftime('%%Y-%%m-%%d'))]"
help="Helpdesk requests occurred in last month"/>
-
-
-
+
+ crm.helpdesk.reportformtree,graph
- {"search_default_User":1,"search_default_This Month":1,'group_by_no_leaf':1,'group_by':[]}
+ {"search_default_User":1,"search_default_this_month":1,'group_by_no_leaf':1,'group_by':[]}Have a general overview of all support requests by sorting them with specific criteria such as the processing time, number of requests answered, emails sent and costs.
diff --git a/addons/crm_helpdesk/test/test_crm_helpdesk.yml b/addons/crm_helpdesk/test/test_crm_helpdesk.yml
index 4023fad8c63..eb0a25d2110 100644
--- a/addons/crm_helpdesk/test/test_crm_helpdesk.yml
+++ b/addons/crm_helpdesk/test/test_crm_helpdesk.yml
@@ -10,6 +10,17 @@
partner_address_id: base.res_partner_address_1
partner_id: base.res_partner_9
section_id: crm.section_sales_department
+-
+ I create the message.
+-
+ !python {model: crm.helpdesk}: |
+ msg = {
+ 'subject': 'test_email',
+ 'body_text': 'Testing',
+ 'from': 'Administrator ',
+ }
+ context = None
+ self.message_new(cr, uid,msg,context)
- |
I check that the Helpdesk request is in 'Draft' state.
@@ -17,10 +28,27 @@
!assert {model: crm.helpdesk, id: crm_helpdesk_somefunctionalquestion0}:
- state == 'draft'
- |
- In order to make this helpdesk request to be considered I make it "Open"
+ I make it "Open".
-
!python {model: crm.helpdesk}: |
self.case_open(cr, uid, [ref('crm_helpdesk_somefunctionalquestion0')])
+-
+ Update the created message.
+-
+ !python {model: crm.helpdesk}: |
+ vals = {}
+ msg = {
+ 'subject': 'test_email',
+ 'body_text': 'Testing',
+ 'from': 'Administrator ',
+ 'priority': 'done'
+ }
+ context = None
+ default_act = 'pending'
+ try:
+ self.message_update(cr, uid,[ref('crm_helpdesk_somefunctionalquestion0')], msg,context)
+ except:
+ pass
- |
After a proper communication for the request via email I make sure that the request is fulfilled and
I close this HelpDesk Request by clicking on "Close" button.
diff --git a/addons/crm_partner_assign/__openerp__.py b/addons/crm_partner_assign/__openerp__.py
index eca5307df91..9e72204e31d 100644
--- a/addons/crm_partner_assign/__openerp__.py
+++ b/addons/crm_partner_assign/__openerp__.py
@@ -23,7 +23,7 @@
{
'name': 'Partner Geo-Localization',
'version': '1.0',
- 'category': 'Sales',
+ 'category': 'Hidden',
'complexity': "normal",
'description': """
This is the module used by OpenERP SA to redirect customers to its partners, based on geolocalization.
diff --git a/addons/crm_partner_assign/test/test_crm_partner_assign.yml b/addons/crm_partner_assign/test/test_crm_partner_assign.yml
index 4d982daab20..359fa8454f6 100644
--- a/addons/crm_partner_assign/test/test_crm_partner_assign.yml
+++ b/addons/crm_partner_assign/test/test_crm_partner_assign.yml
@@ -30,6 +30,11 @@
-
!record {model: res.partner, id: base.res_partner_desertic_hispafuentes}:
grade_id: res_partner_grade_first0
+-
+ I change the User email id or partner if needed.
+-
+ !python {model: res.partner}: |
+ self.geo_localize(cr, uid, [ref('base.res_partner_desertic_hispafuentes')], context)
-
I assgin a reply-to email address to Sales Team.
-
@@ -57,7 +62,44 @@
probability: 0.0
type: opportunity
-
- Now I click on Forward button.
+ I change the assigned partner.
+-
+ !python {model: crm.lead}: |
+ self.onchange_assign_id(cr, uid, [ref('crm_lead_questionnaireonopenerp0')], ref('base.res_partner_desertic_hispafuentes'), context)
+ self.assign_partner(cr, uid, [ref('crm_lead_questionnaireonopenerp0')], context)
+-
+ I change the User email id or partner if needed.
+-
+ !python {model: crm.lead.forward.to.partner}: |
+ context.update({'history': 'latest', })
+ user = ref('base.user_root')
+ self.on_change_email(cr, uid, [ref('crm_lead_questionnaireonopenerp0')], user)
+ self.on_change_partner(cr, uid, [ref('crm_lead_questionnaireonopenerp0')], ref('base.res_partner_desertic_hispafuentes'))
+-
+ I change in history define.
+-
+ !python {model: crm.lead.forward.to.partner}: |
+ context.update({'history': 'info', })
+ self.on_change_history(cr, uid, [ref('crm_lead_questionnaireonopenerp0')], context.get('history'), context)
+-
+ I check the case history.
+-
+ !python {model: crm.lead.forward.to.partner}: |
+ context.update({'history': 'latest', })
+ self._get_case_history(cr, uid, context.get('history'), ref('crm_lead_questionnaireonopenerp0'), context=context)
+
+ context.update({'history': 'info', })
+ self._get_case_history(cr, uid, context.get('history'), ref('crm_lead_questionnaireonopenerp0'), context=context)
+
+ context.update({'history': 'whole', })
+ self._get_case_history(cr, uid, context.get('history'), ref('crm_lead_questionnaireonopenerp0'), context=context)
+-
+ I get lead details.
+-
+ !python {model: crm.lead.forward.to.partner}: |
+ self.get_lead_details(cr, uid, ref('crm_lead_questionnaireonopenerp0'), context)
+-
+ I click on Forward button.
-
!python {model: crm.lead.forward.to.partner}: |
from tools import config
@@ -65,10 +107,31 @@
'subject': 'email',
'email_to': 'info@axelor.com',
'email_from': 'Administrator ',
- 'reply_to': 'sales_openerp@openerp.com'
+ 'reply_to': 'sales_openerp@openerp.com',
+ 'state': 'draft',
+ 'history': 'latest',
}
ids = self.create(cr, uid, vals, context={'active_id': ref('crm_lead_questionnaireonopenerp0'), 'active_model': 'crm.lead'})
host = config.get('smtp_user', '127.0.0.1')
assert config.get(host, True), 'SMTP not configured !'
- self.action_forward(cr, uid, [ids], context={'active_id': ref('crm_lead_questionnaireonopenerp0'), 'active_model': 'crm.lead'})
-
+ try:
+ self.action_forward(cr, uid, [ids], context={'active_id': ref('crm_lead_questionnaireonopenerp0'), 'active_model': 'crm.lead'})
+ except:
+ pass
+-
+ I create the opportunity.
+-
+ !record {model: crm.lead, id: crm_opportunity2}:
+ email_from: info@balmerinc.be
+ name: 'FUEL CO 829264 - 10002 units'
+ partner_address_id: base.res_partner_address_1
+ partner_id: base.res_partner_9
+ probability: 1.0
+ stage_id: crm.stage_lead1
+ categ_id: crm.categ_oppor2
+ section_id: crm.section_sales_department
+- |
+ I Update the data.
+-
+ !python {model: crm.merge.opportunity}: |
+ self._update_data([ref('crm_opportunity2')], ref('crm_lead_questionnaireonopenerp0'))
diff --git a/addons/crm_partner_assign/wizard/crm_forward_to_partner_view.xml b/addons/crm_partner_assign/wizard/crm_forward_to_partner_view.xml
index d3ecddb1aa3..8bdb03cf962 100644
--- a/addons/crm_partner_assign/wizard/crm_forward_to_partner_view.xml
+++ b/addons/crm_partner_assign/wizard/crm_forward_to_partner_view.xml
@@ -25,7 +25,6 @@
-
diff --git a/addons/crm_profiling/__openerp__.py b/addons/crm_profiling/__openerp__.py
index c76278201b1..656f8360f0b 100644
--- a/addons/crm_profiling/__openerp__.py
+++ b/addons/crm_profiling/__openerp__.py
@@ -21,9 +21,9 @@
{
- 'name': 'CRM Profiling Management - To Perform Segmentation within Partners',
+ 'name': 'Profiling Tools',
'version': '1.3',
- 'category': 'Sales',
+ 'category': 'Marketing',
'complexity': "easy",
'description': """
This module allows users to perform segmentation within partners.
@@ -41,6 +41,7 @@ It also has been merged with the earlier CRM & SRM segmentation tool because the
'init_xml': [],
'update_xml': ['security/ir.model.access.csv', 'crm_profiling_view.xml'],
'demo_xml': ['crm_profiling_demo.xml'],
+ 'test': ['test/test_crm_profiling.yml'],
'installable': True,
'active': False,
'certificate': '0033984979005',
diff --git a/addons/crm_profiling/crm_profiling.py b/addons/crm_profiling/crm_profiling.py
index 90dc0818743..59137966da0 100644
--- a/addons/crm_profiling/crm_profiling.py
+++ b/addons/crm_profiling/crm_profiling.py
@@ -264,7 +264,7 @@ class crm_segmentation(osv.osv):
}
_constraints = [
- (orm.orm._check_recursion, 'Error ! You can not create recursive profiles.', ['parent_id'])
+ (osv.osv._check_recursion, 'Error ! You can not create recursive profiles.', ['parent_id'])
]
def process_continue(self, cr, uid, ids, start=False):
diff --git a/addons/crm_profiling/test/test_crm_profiling.yml b/addons/crm_profiling/test/test_crm_profiling.yml
new file mode 100644
index 00000000000..2b70cac592b
--- /dev/null
+++ b/addons/crm_profiling/test/test_crm_profiling.yml
@@ -0,0 +1,77 @@
+- |
+ I check segmentation which allows users to perform segmentation within partners.
+-
+ I create a crm profiling question record.
+-
+ !record {model: crm_profiling.question, id: crm_profiling_question_openerppartner0}:
+ answers_ids:
+ - name: 'no'
+ name: OpenERP partner?
+-
+ I create a crm profiling answer record.
+-
+ !record {model: crm_profiling.answer, id: crm_profiling_answer_openerppartner0}:
+ name: 'yes'
+ question_id: crm_profiling_question_openerppartner0
+-
+ I create Partner category Customers.
+-
+ !record {model: res.partner.category, id: res_partner_category_customers0}:
+ name: Customers
+- |
+ I'm creating new partner "John" with his email "info@mycustomer.com".
+-
+ !record {model: res.partner, id: res_partner_john0}:
+ address:
+ - city: Bruxelles
+ country_id: base.be
+ street: Rue des Palais 51, bte 33
+ type: default
+ zip: '1000'
+ email: 'info@mycustomer.com'
+ name: John
+ category_id:
+ - res_partner_category_customers0
+ answers_ids:
+ - crm_profiling_answer_openerppartner0
+
+-
+ Define the answers and category to partner.
+-
+ !python {model: res.partner}: |
+ data ={'form': {'questionnaire_name': ref('res_partner_john0')}, 'ids': [ref('res_partner_john0')], 'report_type': 'pdf', 'model': 'res.partner', 'id': ref('res_partner_john0')}
+ self._questionnaire_compute(cr, uid, data, context)
+- |
+ I start by creating new Questionnaire.
+-
+ !record {model: crm_profiling.questionnaire, id: crm_profiling_questionnaire_basequestionnaire0}:
+ description: First questionnaire.
+ name: Base questionnaire
+ questions_ids:
+ - crm_profiling.activity_sector
+ - crm_profiling.nb_employees
+ - crm_profiling.partner_level
+- |
+ I create the form for the "Base questionnaire".
+-
+ !python {model: crm_profiling.questionnaire}: |
+ context.update({'active_id':ref('res_partner_john0')})
+ data ={'form': {'questionnaire_name': ref('res_partner_john0')}, 'ids': [ref('res_partner_john0')], 'report_type': 'pdf', 'model': 'res.partner', 'id': ref('res_partner_john0')}
+ self.build_form(cr, uid, data, context)
+-
+ I create a segmentation record.
+-
+ !record {model: crm.segmentation, id: crm_segmentation_test1}:
+ answer_yes:
+ - crm_profiling_answer_openerppartner0
+ categ_id: res_partner_category_customers0
+ name: test
+ parent_id: crm_profiling.crm_segmentation0
+ profiling_active: true
+ som_interval: 0.0
+- |
+ I continue the process of segmentation.
+-
+ !python {model: crm.segmentation}: |
+ self.process_continue(cr, uid, [ref('crm_segmentation_test1')], start=False)
+
diff --git a/addons/decimal_precision/__openerp__.py b/addons/decimal_precision/__openerp__.py
index a2e94c7f58d..b8ac25eb379 100644
--- a/addons/decimal_precision/__openerp__.py
+++ b/addons/decimal_precision/__openerp__.py
@@ -30,7 +30,7 @@ The decimal precision is configured per company.
"author": "OpenERP SA",
"version": "0.1",
"depends": ["base"],
- "category" : "Tools",
+ "category" : "Hidden",
'complexity': "easy",
"init_xml": [],
"update_xml": [
diff --git a/addons/decimal_precision/i18n/sr@latin.po b/addons/decimal_precision/i18n/sr@latin.po
index f4fd07121c4..4a177f34577 100644
--- a/addons/decimal_precision/i18n/sr@latin.po
+++ b/addons/decimal_precision/i18n/sr@latin.po
@@ -8,30 +8,30 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2010-12-23 16:14+0000\n"
-"Last-Translator: OpenERP Administrators \n"
+"PO-Revision-Date: 2011-10-06 14:01+0000\n"
+"Last-Translator: Milan Milosevic \n"
"Language-Team: Serbian latin \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 05:47+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-07 04:36+0000\n"
+"X-Generator: Launchpad (build 14085)\n"
#. module: decimal_precision
#: field:decimal.precision,digits:0
msgid "Digits"
-msgstr "Brojevi"
+msgstr "Cifara"
#. module: decimal_precision
#: view:decimal.precision:0
msgid "Decimal Precision"
-msgstr "Decimalna Preiznost"
+msgstr "Decimalna preciznost"
#. module: decimal_precision
#: model:ir.actions.act_window,name:decimal_precision.action_decimal_precision_form
#: model:ir.ui.menu,name:decimal_precision.menu_decimal_precision_form
msgid "Decimal Accuracy Definitions"
-msgstr "Definicija Decimalne Preciznosti"
+msgstr "Definicije decimalne preciznosti"
#. module: decimal_precision
#: model:ir.module.module,description:decimal_precision.module_meta_information
@@ -44,26 +44,26 @@ msgid ""
"The decimal precision is configured per company.\n"
msgstr ""
"\n"
-"Ovaj modul vam omogucava za zaokruzujete cene na potrebne vrednosti za "
-"nekoliko nacina\n"
-"koriscenja: Racunanje, prodaja, nabavka ...\n"
+"Ovaj modul Vam omogućava podešavanje preciznosti cena za različite načine\n"
+"upotrebe: računanje, prodaja, nabavka ... \n"
"\n"
-"Preciznost definisete za celo preduzece.\n"
+"Preciznost je definisana po pojedinačnom preduzeću.\n"
#. module: decimal_precision
#: field:decimal.precision,name:0
msgid "Usage"
-msgstr "Koriscenje"
+msgstr "Upotreba"
#. module: decimal_precision
#: sql_constraint:decimal.precision:0
msgid "Only one value can be defined for each given usage!"
msgstr ""
+"Samo jedna vrednost može biti definisana za svaku pojedinačnu upotrebu!"
#. module: decimal_precision
#: model:ir.module.module,shortdesc:decimal_precision.module_meta_information
msgid "Decimal Precision Configuration"
-msgstr "Podesavanje Decimalne Preciznosti"
+msgstr "Podešavanje decimalne preciznosti"
#. module: decimal_precision
#: model:ir.model,name:decimal_precision.model_decimal_precision
diff --git a/addons/decimal_precision/i18n/zh_TW.po b/addons/decimal_precision/i18n/zh_TW.po
new file mode 100644
index 00000000000..0350112585d
--- /dev/null
+++ b/addons/decimal_precision/i18n/zh_TW.po
@@ -0,0 +1,72 @@
+# Chinese (Traditional) translation for openobject-addons
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR , 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2011-01-11 11:15+0000\n"
+"PO-Revision-Date: 2011-09-27 08:06+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Chinese (Traditional) \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2011-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 14049)\n"
+
+#. module: decimal_precision
+#: field:decimal.precision,digits:0
+msgid "Digits"
+msgstr "數字"
+
+#. module: decimal_precision
+#: view:decimal.precision:0
+msgid "Decimal Precision"
+msgstr "小數精確度"
+
+#. module: decimal_precision
+#: model:ir.actions.act_window,name:decimal_precision.action_decimal_precision_form
+#: model:ir.ui.menu,name:decimal_precision.menu_decimal_precision_form
+msgid "Decimal Accuracy Definitions"
+msgstr ""
+
+#. module: decimal_precision
+#: model:ir.module.module,description:decimal_precision.module_meta_information
+msgid ""
+"\n"
+"This module allows to configure the price accuracy you need for different "
+"kind\n"
+"of usage: accounting, sales, purchases, ...\n"
+"\n"
+"The decimal precision is configured per company.\n"
+msgstr ""
+"\n"
+"此模組讓您為會計、銷售、採購...等不同用途設定價錢準確度。\n"
+"\n"
+"每間公司之小數精確度可以不同。\n"
+
+#. module: decimal_precision
+#: field:decimal.precision,name:0
+msgid "Usage"
+msgstr "用途"
+
+#. module: decimal_precision
+#: sql_constraint:decimal.precision:0
+msgid "Only one value can be defined for each given usage!"
+msgstr "每種用途只可定義一個值!"
+
+#. module: decimal_precision
+#: model:ir.module.module,shortdesc:decimal_precision.module_meta_information
+msgid "Decimal Precision Configuration"
+msgstr "小數精確度設定"
+
+#. module: decimal_precision
+#: model:ir.model,name:decimal_precision.model_decimal_precision
+msgid "decimal.precision"
+msgstr ""
+
+#~ msgid "Decimal Accuracy"
+#~ msgstr "小數準確度"
diff --git a/addons/delivery/__openerp__.py b/addons/delivery/__openerp__.py
index e9fa8240e21..40dab751f79 100644
--- a/addons/delivery/__openerp__.py
+++ b/addons/delivery/__openerp__.py
@@ -21,9 +21,9 @@
{
- 'name': 'Carriers and Deliveries',
+ 'name': 'Delivery Costs',
'version': '1.0',
- 'category': 'Warehouse',
+ 'category': 'Sales Management',
'complexity': "normal",
'description': """
Allows you to add delivery methods in sale orders and picking.
diff --git a/addons/delivery/delivery.py b/addons/delivery/delivery.py
index 55199a9aa19..cac4c20c288 100644
--- a/addons/delivery/delivery.py
+++ b/addons/delivery/delivery.py
@@ -61,16 +61,16 @@ class delivery_carrier(osv.osv):
return res
_columns = {
- 'name': fields.char('Carrier', size=64, required=True),
- 'partner_id': fields.many2one('res.partner', 'Carrier Partner', required=True),
+ 'name': fields.char('Delivery Method', size=64, required=True),
+ 'partner_id': fields.many2one('res.partner', 'Transport Company', required=True, help="The partner that is doing the delivery service."),
'product_id': fields.many2one('product.product', 'Delivery Product', required=True),
'grids_id': fields.one2many('delivery.grid', 'carrier_id', 'Delivery Grids'),
'price' : fields.function(get_price, string='Price'),
'active': fields.boolean('Active', help="If the active field is set to False, it will allow you to hide the delivery carrier without removing it."),
- 'normal_price': fields.float('Normal Price'),
- 'free_if_more_than': fields.boolean('Free If More Than'),
- 'amount': fields.float('Amount'),
- 'use_detailed_pricelist': fields.boolean('Use Detailed Pricelist'),
+ 'normal_price': fields.float('Normal Price', help="Keep empty if the pricing depends on the advanced pricing per destination"),
+ 'free_if_more_than': fields.boolean('Free If More Than', help="If the order is more expensive than a certain amount, the customer can benefit from a free shipping"),
+ 'amount': fields.float('Amount', help="Amount of the order to benefit from a free shipping, expressed in the company currency"),
+ 'use_detailed_pricelist': fields.boolean('Advanced Pricing per Destination', help="Check this box if you want to manage delivery prices that depends on the destination, the weight, the total of the order, etc."),
'pricelist_ids': fields.one2many('delivery.grid', 'carrier_id', 'Advanced Pricing'),
}
@@ -103,25 +103,32 @@ class delivery_carrier(osv.osv):
grid_line_pool = self.pool.get('delivery.grid.line')
grid_pool = self.pool.get('delivery.grid')
for record in self.browse(cr, uid, ids, context=context):
- grid_id = grid_pool.search(cr, uid, [('carrier_id', '=', record.id)], context=context)
+ grid_id = grid_pool.search(cr, uid, [('carrier_id', '=', record.id),('sequence','=',9999)], context=context)
+
+ if grid_id and not (record.normal_price or record.free_if_more_than):
+ grid_pool.unlink(cr, uid, grid_id, context=context)
+
+ if not (record.normal_price or record.free_if_more_than):
+ continue
+
if not grid_id:
record_data = {
- 'name': vals.get('name', False),
+ 'name': record.name,
'carrier_id': record.id,
- 'seqeunce': 10,
+ 'sequence': 9999,
}
new_grid_id = grid_pool.create(cr, uid, record_data, context=context)
grid_id = [new_grid_id]
- #delete all existing grid lines
- grid_lines = [line.id for line in grid_pool.browse(cr, uid, grid_id[0]).line_ids if line.type == 'price']
- grid_line_pool.unlink(cr, uid, grid_lines, context=context)
+ lines = grid_line_pool.search(cr, uid, [('grid_id','in',grid_id)], context=context)
+ if lines:
+ grid_line_pool.unlink(cr, uid, lines, context=context)
#create the grid lines
if record.free_if_more_than:
data = {
'grid_id': grid_id and grid_id[0],
- 'name': _('Free if more than %d') % record.amount,
+ 'name': _('Free if more than %.2f') % record.amount,
'type': 'price',
'operator': '>=',
'max_value': record.amount,
@@ -217,7 +224,7 @@ class delivery_grid_line(osv.osv):
_description = "Delivery Grid Line"
_columns = {
'name': fields.char('Name', size=32, required=True),
- 'grid_id': fields.many2one('delivery.grid', 'Grid',required=True),
+ 'grid_id': fields.many2one('delivery.grid', 'Grid',required=True, ondelete='cascade'),
'type': fields.selection([('weight','Weight'),('volume','Volume'),\
('wv','Weight * Volume'), ('price','Price')],\
'Variable', required=True),
@@ -238,6 +245,23 @@ class delivery_grid_line(osv.osv):
delivery_grid_line()
+class define_delivery_steps(osv.osv_memory):
+ _name = 'delivery.define.delivery.steps.wizard'
+
+ _columns = {
+ 'picking_policy' : fields.selection([('direct', 'Deliver each product when available'), ('one', 'Deliver all products at once')], 'Picking Policy'),
+ }
+ _defaults = {
+ 'picking_policy': lambda s,c,u,ctx: s.pool.get('sale.order').default_get(c,u,['picking_policy'],context=ctx)['picking_policy']
+ }
+
+ def apply_cb(self, cr, uid, ids, context=None):
+ ir_values_obj = self.pool.get('ir.values')
+ wizard = self.browse(cr, uid, ids, context=context)[0]
+ ir_values_obj.set(cr, uid, 'default', False, 'picking_policy', ['sale.order'], wizard.picking_policy)
+ return {'type' : 'ir.actions.act_window_close'}
+
+define_delivery_steps()
+
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
diff --git a/addons/delivery/delivery_view.xml b/addons/delivery/delivery_view.xml
index 4ade9b321a7..deb13679355 100644
--- a/addons/delivery/delivery_view.xml
+++ b/addons/delivery/delivery_view.xml
@@ -9,6 +9,7 @@
tree
+
@@ -21,15 +22,16 @@
+
-
-
-
+
+
+
-
+
@@ -37,7 +39,6 @@
-
@@ -72,12 +73,12 @@
- Delivery Method
+ Define Delivery Methodsir.actions.act_windowdelivery.carrierform
- form,tree
- Define the delivery methods you are using and their pricing in order to reinvoice the delivery costs when you are doing invoicing based on delivery orders
+ tree,form
+ Define your delivery methods and their pricing. The delivery costs can be added on the sale order form or in the invoice, based on the delivery orders.
@@ -325,15 +326,46 @@
-
+
+ 10
+
+ delivery.define_delivery_steps
+ delivery.define.delivery.steps.wizard
+ form
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Setup Your Picking Policy
+ delivery.define.delivery.steps.wizard
+ form
+ form
+ new
+
+
+
+
+
+ once
+
diff --git a/addons/delivery/i18n/et.po b/addons/delivery/i18n/et.po
index 1fef0ec02ba..c2cbc7812cc 100644
--- a/addons/delivery/i18n/et.po
+++ b/addons/delivery/i18n/et.po
@@ -7,19 +7,19 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2010-10-30 13:40+0000\n"
-"Last-Translator: Fabien (Open ERP) \n"
+"PO-Revision-Date: 2011-10-11 17:52+0000\n"
+"Last-Translator: Aare Vesi \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 05:00+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-12 04:39+0000\n"
+"X-Generator: Launchpad (build 14124)\n"
#. module: delivery
#: report:sale.shipping:0
msgid "Order Ref."
-msgstr ""
+msgstr "Tellimuse viide"
#. module: delivery
#: model:product.template,name:delivery.delivery_product_product_template
@@ -34,12 +34,12 @@ msgstr "Sihtpunkt"
#. module: delivery
#: field:stock.move,weight_net:0
msgid "Net weight"
-msgstr ""
+msgstr "Netokaal"
#. module: delivery
#: view:stock.picking:0
msgid "Delivery Order"
-msgstr ""
+msgstr "Tarnekorraldus"
#. module: delivery
#: code:addons/delivery/delivery.py:141
@@ -77,7 +77,7 @@ msgstr ""
#. module: delivery
#: model:ir.actions.report.xml,name:delivery.report_shipping
msgid "Delivery order"
-msgstr ""
+msgstr "Tarnetellimus"
#. module: delivery
#: view:res.partner:0
@@ -103,7 +103,7 @@ msgstr "Riigid"
#. module: delivery
#: report:sale.shipping:0
msgid "Delivery Order :"
-msgstr ""
+msgstr "Tarnetellimus :"
#. module: delivery
#: field:delivery.grid.line,variable_factor:0
@@ -137,7 +137,7 @@ msgstr "Tarneviis"
#. module: delivery
#: model:ir.model,name:delivery.model_stock_move
msgid "Stock Move"
-msgstr ""
+msgstr "Laoseisu liikumine"
#. module: delivery
#: code:addons/delivery/delivery.py:141
@@ -153,7 +153,7 @@ msgstr ""
#. module: delivery
#: field:stock.picking,weight_net:0
msgid "Net Weight"
-msgstr ""
+msgstr "Netokaal"
#. module: delivery
#: model:ir.actions.act_window,help:delivery.action_delivery_carrier_form
@@ -177,7 +177,7 @@ msgstr ""
#. module: delivery
#: view:delivery.sale.order:0
msgid "_Cancel"
-msgstr ""
+msgstr "_Tühista"
#. module: delivery
#: field:delivery.grid.line,operator:0
@@ -187,12 +187,12 @@ msgstr "Operaator"
#. module: delivery
#: model:ir.model,name:delivery.model_res_partner
msgid "Partner"
-msgstr ""
+msgstr "Partner"
#. module: delivery
#: model:ir.model,name:delivery.model_sale_order
msgid "Sales Order"
-msgstr ""
+msgstr "Müügitellimus"
#. module: delivery
#: model:ir.model,name:delivery.model_delivery_grid
@@ -207,7 +207,7 @@ msgstr ""
#. module: delivery
#: model:ir.model,name:delivery.model_stock_picking
msgid "Picking List"
-msgstr ""
+msgstr "Noppeleht"
#. module: delivery
#: model:ir.model,name:delivery.model_delivery_sale_order
@@ -250,7 +250,7 @@ msgstr ""
#. module: delivery
#: report:sale.shipping:0
msgid "Order Date"
-msgstr ""
+msgstr "Tellimuse Kuupäev"
#. module: delivery
#: field:delivery.grid,name:0
@@ -260,12 +260,12 @@ msgstr ""
#. module: delivery
#: view:stock.move:0
msgid "Weights"
-msgstr ""
+msgstr "Kaalud"
#. module: delivery
#: field:stock.picking,number_of_packages:0
msgid "Number of Packages"
-msgstr ""
+msgstr "Pakkide arv"
#. module: delivery
#: selection:delivery.grid.line,type:0
@@ -309,7 +309,7 @@ msgstr "Viga! Sa ei saa luua rekursiivseid seotud liikmeid."
#. module: delivery
#: report:sale.shipping:0
msgid "Lot"
-msgstr ""
+msgstr "Partii"
#. module: delivery
#: constraint:stock.move:0
@@ -325,7 +325,7 @@ msgstr "Aktiivne"
#. module: delivery
#: report:sale.shipping:0
msgid "Shipping Date"
-msgstr ""
+msgstr "Tarnimise kuupäev"
#. module: delivery
#: field:delivery.carrier,product_id:0
@@ -361,7 +361,7 @@ msgstr "Maksimumväärtus"
#. module: delivery
#: report:sale.shipping:0
msgid "Quantity"
-msgstr ""
+msgstr "Kogus"
#. module: delivery
#: field:delivery.grid,zip_from:0
@@ -387,7 +387,7 @@ msgstr "Müügid ja ostud"
#. module: delivery
#: selection:delivery.grid.line,operator:0
msgid "<="
-msgstr ""
+msgstr "<="
#. module: delivery
#: constraint:stock.move:0
@@ -408,7 +408,7 @@ msgstr "Tarnekulud"
#. module: delivery
#: report:sale.shipping:0
msgid "Description"
-msgstr ""
+msgstr "Kirjeldus"
#. module: delivery
#: model:ir.actions.act_window,name:delivery.action_delivery_grid_form
@@ -469,7 +469,7 @@ msgstr "Tarnija"
#. module: delivery
#: view:delivery.sale.order:0
msgid "_Apply"
-msgstr ""
+msgstr "_Rakenda"
#. module: delivery
#: field:sale.order,id:0
diff --git a/addons/delivery/i18n/zh_TW.po b/addons/delivery/i18n/zh_TW.po
index 6a09d0860d7..91f4e8816a5 100644
--- a/addons/delivery/i18n/zh_TW.po
+++ b/addons/delivery/i18n/zh_TW.po
@@ -7,19 +7,19 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-01-28 03:29+0000\n"
+"PO-Revision-Date: 2011-09-27 10:27+0000\n"
"Last-Translator: Walter Cheuk \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 05:01+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-09-28 05:19+0000\n"
+"X-Generator: Launchpad (build 14049)\n"
#. module: delivery
#: report:sale.shipping:0
msgid "Order Ref."
-msgstr "單號參照"
+msgstr "訂單參考"
#. module: delivery
#: model:product.template,name:delivery.delivery_product_product_template
@@ -67,7 +67,7 @@ msgstr "體積"
#. module: delivery
#: sql_constraint:sale.order:0
msgid "Order Reference must be unique !"
-msgstr "交貨參照不能重覆!"
+msgstr "訂單參考不能重覆!"
#. module: delivery
#: field:delivery.grid,line_ids:0
@@ -82,17 +82,17 @@ msgstr "交貨單"
#. module: delivery
#: view:res.partner:0
msgid "Deliveries Properties"
-msgstr ""
+msgstr "交貨性質"
#. module: delivery
#: model:ir.actions.act_window,name:delivery.action_picking_tree4
msgid "Picking to be invoiced"
-msgstr ""
+msgstr "要開立發票的提貨"
#. module: delivery
#: help:delivery.grid,sequence:0
msgid "Gives the sequence order when displaying a list of delivery grid."
-msgstr ""
+msgstr "提供顯示交貨格線清單的次序。"
#. module: delivery
#: view:delivery.grid:0
@@ -103,12 +103,12 @@ msgstr "國家"
#. module: delivery
#: report:sale.shipping:0
msgid "Delivery Order :"
-msgstr "交貨單:"
+msgstr "交貨單 :"
#. module: delivery
#: field:delivery.grid.line,variable_factor:0
msgid "Variable Factor"
-msgstr ""
+msgstr "可變因子"
#. module: delivery
#: model:ir.actions.act_window,help:delivery.action_delivery_grid_form
@@ -132,7 +132,7 @@ msgstr "固定"
#: field:res.partner,property_delivery_carrier:0
#: field:sale.order,carrier_id:0
msgid "Delivery Method"
-msgstr "交貨方式"
+msgstr "交貨方法"
#. module: delivery
#: model:ir.model,name:delivery.model_stock_move
@@ -143,12 +143,12 @@ msgstr "庫存調動"
#: code:addons/delivery/delivery.py:141
#, python-format
msgid "No line matched this order in the choosed delivery grids !"
-msgstr ""
+msgstr "選擇的交貨格無一行符合此訂單 !"
#. module: delivery
#: field:stock.picking,carrier_tracking_ref:0
msgid "Carrier Tracking Ref"
-msgstr "運輸公司追蹤編號"
+msgstr "運輸公司追蹤參考"
#. module: delivery
#: field:stock.picking,weight_net:0
@@ -172,7 +172,7 @@ msgstr "警告"
#. module: delivery
#: view:delivery.grid:0
msgid "Grid definition"
-msgstr ""
+msgstr "格線定義"
#. module: delivery
#: view:delivery.sale.order:0
@@ -197,12 +197,12 @@ msgstr "銷貨單"
#. module: delivery
#: model:ir.model,name:delivery.model_delivery_grid
msgid "Delivery Grid"
-msgstr ""
+msgstr "交貨格線"
#. module: delivery
#: report:sale.shipping:0
msgid "Invoiced to"
-msgstr "發票交至"
+msgstr "發票開立對象:"
#. module: delivery
#: model:ir.model,name:delivery.model_stock_picking
@@ -212,7 +212,7 @@ msgstr "提貨清單"
#. module: delivery
#: model:ir.model,name:delivery.model_delivery_sale_order
msgid "Make Delievery"
-msgstr ""
+msgstr "進行交貨"
#. module: delivery
#: model:ir.module.module,description:delivery.module_meta_information
@@ -228,12 +228,12 @@ msgstr ""
#. module: delivery
#: view:delivery.grid.line:0
msgid "Grid Lines"
-msgstr ""
+msgstr "格線"
#. module: delivery
#: field:delivery.grid.line,grid_id:0
msgid "Grid"
-msgstr ""
+msgstr "網格"
#. module: delivery
#: help:delivery.grid,active:0
@@ -245,17 +245,17 @@ msgstr ""
#. module: delivery
#: field:delivery.grid,zip_to:0
msgid "To Zip"
-msgstr ""
+msgstr "至郵遞區號"
#. module: delivery
#: report:sale.shipping:0
msgid "Order Date"
-msgstr "單子日期"
+msgstr "訂單日期"
#. module: delivery
#: field:delivery.grid,name:0
msgid "Grid Name"
-msgstr ""
+msgstr "網格名稱"
#. module: delivery
#: view:stock.move:0
@@ -287,7 +287,7 @@ msgstr ""
#: code:addons/delivery/wizard/delivery_sale_order.py:95
#, python-format
msgid "No grid available !"
-msgstr ""
+msgstr "無可用網格 !"
#. module: delivery
#: selection:delivery.grid.line,operator:0
@@ -299,7 +299,7 @@ msgstr ""
#: code:addons/delivery/wizard/delivery_sale_order.py:98
#, python-format
msgid "Order not in draft state !"
-msgstr ""
+msgstr "訂單不在草稿階段 !"
#. module: delivery
#: constraint:res.partner:0
@@ -314,7 +314,7 @@ msgstr "批次"
#. module: delivery
#: constraint:stock.move:0
msgid "You try to assign a lot which is not from the same product"
-msgstr ""
+msgstr "指定了不同產品的批次"
#. module: delivery
#: field:delivery.carrier,active:0
@@ -325,7 +325,7 @@ msgstr "活躍"
#. module: delivery
#: report:sale.shipping:0
msgid "Shipping Date"
-msgstr ""
+msgstr "貨運日期"
#. module: delivery
#: field:delivery.carrier,product_id:0
@@ -382,7 +382,7 @@ msgstr "運輸公司伙伴"
#. module: delivery
#: view:res.partner:0
msgid "Sales & Purchases"
-msgstr "銷售&採購"
+msgstr "銷售 及 購貨"
#. module: delivery
#: selection:delivery.grid.line,operator:0
@@ -392,12 +392,12 @@ msgstr ""
#. module: delivery
#: constraint:stock.move:0
msgid "You must assign a production lot for this product"
-msgstr "須為此產品分配生產批次"
+msgstr "須為此產品指定生產批次"
#. module: delivery
#: view:delivery.sale.order:0
msgid "Create Deliveries"
-msgstr ""
+msgstr "進行交貨"
#. module: delivery
#: model:ir.actions.act_window,name:delivery.action_delivery_cost
@@ -481,7 +481,7 @@ msgstr ""
#: code:addons/delivery/wizard/delivery_sale_order.py:98
#, python-format
msgid "The order state have to be draft to add delivery lines."
-msgstr ""
+msgstr "訂單狀態要是草稿才能添加交貨明細。"
#. module: delivery
#: model:ir.module.module,shortdesc:delivery.module_meta_information
@@ -491,12 +491,12 @@ msgstr "運輸公司與交貨"
#. module: delivery
#: field:delivery.carrier,grids_id:0
msgid "Delivery Grids"
-msgstr ""
+msgstr "交貨網格"
#. module: delivery
#: field:delivery.grid,sequence:0
msgid "Sequence"
-msgstr ""
+msgstr "次序"
#. module: delivery
#: field:delivery.grid.line,list_price:0
@@ -507,7 +507,7 @@ msgstr "銷售價"
#: view:delivery.grid:0
#: field:delivery.grid,state_ids:0
msgid "States"
-msgstr ""
+msgstr "狀態"
#. module: delivery
#: field:delivery.grid.line,price_type:0
diff --git a/addons/document/__openerp__.py b/addons/document/__openerp__.py
index c98daa4eaaf..6b9cbd21f48 100644
--- a/addons/document/__openerp__.py
+++ b/addons/document/__openerp__.py
@@ -23,8 +23,7 @@
{
'name': 'Integrated Document Management System',
'version': '2.1',
- 'category': 'Tools',
- 'category': 'Generic Modules/Others',
+ 'category': 'Knowledge Management',
'complexity': "normal",
'description': """
This is a complete document management system.
diff --git a/addons/document/i18n/zh_HK.po b/addons/document/i18n/zh_HK.po
new file mode 100644
index 00000000000..d0e38ae37d2
--- /dev/null
+++ b/addons/document/i18n/zh_HK.po
@@ -0,0 +1,1030 @@
+# Chinese (Hong Kong) translation for openobject-addons
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR , 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2011-01-11 11:15+0000\n"
+"PO-Revision-Date: 2011-09-27 13:46+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Chinese (Hong Kong) \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2011-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 14049)\n"
+
+#. module: document
+#: field:document.directory,parent_id:0
+msgid "Parent Directory"
+msgstr ""
+
+#. module: document
+#: model:ir.model,name:document.model_document_configuration
+msgid "Auto Directory Configuration"
+msgstr ""
+
+#. module: document
+#: field:document.directory,resource_field:0
+msgid "Name field"
+msgstr ""
+
+#. module: document
+#: view:board.board:0
+msgid "Document board"
+msgstr ""
+
+#. module: document
+#: model:ir.model,name:document.model_process_node
+msgid "Process Node"
+msgstr ""
+
+#. module: document
+#: view:document.directory:0
+msgid "Search Document Directory"
+msgstr ""
+
+#. module: document
+#: help:document.directory,resource_field:0
+msgid ""
+"Field to be used as name on resource directories. If empty, the \"name\" "
+"will be used."
+msgstr ""
+
+#. module: document
+#: code:addons/document/document_directory.py:276
+#, python-format
+msgid "Directory name contains special characters!"
+msgstr ""
+
+#. module: document
+#: view:document.directory:0
+#: view:document.storage:0
+msgid "Group By..."
+msgstr ""
+
+#. module: document
+#: model:ir.model,name:document.model_document_directory_content_type
+msgid "Directory Content Type"
+msgstr ""
+
+#. module: document
+#: view:document.directory:0
+msgid "Resources"
+msgstr ""
+
+#. module: document
+#: field:document.directory,file_ids:0
+#: view:report.document.user:0
+msgid "Files"
+msgstr ""
+
+#. module: document
+#: view:report.files.partner:0
+msgid "Files per Month"
+msgstr ""
+
+#. module: document
+#: selection:report.document.user,month:0
+#: selection:report.files.partner,month:0
+msgid "March"
+msgstr ""
+
+#. module: document
+#: view:document.configuration:0
+msgid "title"
+msgstr ""
+
+#. module: document
+#: view:document.directory:0
+#: field:document.directory,company_id:0
+msgid "Company"
+msgstr ""
+
+#. module: document
+#: model:ir.model,name:document.model_document_directory_content
+msgid "Directory Content"
+msgstr ""
+
+#. module: document
+#: view:document.directory:0
+msgid "Dynamic context"
+msgstr ""
+
+#. module: document
+#: model:ir.ui.menu,name:document.menu_document_management_configuration
+msgid "Document Management"
+msgstr ""
+
+#. module: document
+#: help:document.directory.dctx,expr:0
+msgid ""
+"A python expression used to evaluate the field.\n"
+"You can use 'dir_id' for current dir, 'res_id', 'res_model' as a reference "
+"to the current record, in dynamic folders"
+msgstr ""
+
+#. module: document
+#: view:report.document.user:0
+msgid "This Year"
+msgstr ""
+
+#. module: document
+#: field:document.storage,path:0
+msgid "Path"
+msgstr ""
+
+#. module: document
+#: code:addons/document/document_directory.py:266
+#: code:addons/document/document_directory.py:271
+#, python-format
+msgid "Directory name must be unique!"
+msgstr ""
+
+#. module: document
+#: view:ir.attachment:0
+#: field:ir.attachment,index_content:0
+msgid "Indexed Content"
+msgstr ""
+
+#. module: document
+#: help:document.directory,resource_find_all:0
+msgid ""
+"If true, all attachments that match this resource will be located. If "
+"false, only ones that have this as parent."
+msgstr ""
+
+#. module: document
+#: view:document.directory:0
+#: field:document.storage,dir_ids:0
+#: model:ir.actions.act_window,name:document.action_document_directory_form
+#: model:ir.ui.menu,name:document.menu_document_directories
+msgid "Directories"
+msgstr ""
+
+#. module: document
+#: field:document.configuration,sale_order:0
+msgid "Sale Order"
+msgstr ""
+
+#. module: document
+#: model:ir.model,name:document.model_report_document_user
+msgid "Files details by Users"
+msgstr ""
+
+#. module: document
+#: field:document.configuration,project:0
+msgid "Project"
+msgstr ""
+
+#. module: document
+#: code:addons/document/document_storage.py:573
+#: code:addons/document/document_storage.py:601
+#, python-format
+msgid "Error!"
+msgstr ""
+
+#. module: document
+#: help:document.configuration,product:0
+msgid "Auto directory configuration for Products."
+msgstr ""
+
+#. module: document
+#: field:document.directory,resource_find_all:0
+msgid "Find all resources"
+msgstr ""
+
+#. module: document
+#: selection:document.directory,type:0
+msgid "Folders per resource"
+msgstr ""
+
+#. module: document
+#: field:document.directory.content,suffix:0
+msgid "Suffix"
+msgstr ""
+
+#. module: document
+#: field:report.document.user,change_date:0
+msgid "Modified Date"
+msgstr ""
+
+#. module: document
+#: view:document.configuration:0
+msgid "Knowledge Application Configuration"
+msgstr ""
+
+#. module: document
+#: view:ir.attachment:0
+#: field:ir.attachment,partner_id:0
+#: field:report.files.partner,partner:0
+msgid "Partner"
+msgstr ""
+
+#. module: document
+#: view:board.board:0
+msgid "Files by Users"
+msgstr ""
+
+#. module: document
+#: field:process.node,directory_id:0
+msgid "Document directory"
+msgstr ""
+
+#. module: document
+#: code:addons/document/document.py:226
+#: code:addons/document/document.py:294
+#: code:addons/document/document_directory.py:266
+#: code:addons/document/document_directory.py:271
+#: code:addons/document/document_directory.py:276
+#, python-format
+msgid "ValidateError"
+msgstr ""
+
+#. module: document
+#: model:ir.model,name:document.model_ir_actions_report_xml
+msgid "ir.actions.report.xml"
+msgstr ""
+
+#. module: document
+#: model:ir.actions.act_window,name:document.action_document_file_form
+#: view:ir.attachment:0
+#: model:ir.ui.menu,name:document.menu_document_doc
+#: model:ir.ui.menu,name:document.menu_document_files
+msgid "Documents"
+msgstr ""
+
+#. module: document
+#: constraint:document.directory:0
+msgid "Error! You can not create recursive Directories."
+msgstr ""
+
+#. module: document
+#: view:document.directory:0
+#: field:document.directory,storage_id:0
+msgid "Storage"
+msgstr ""
+
+#. module: document
+#: view:document.configuration:0
+msgid "Configure Resource Directory"
+msgstr ""
+
+#. module: document
+#: field:ir.attachment,file_size:0
+#: field:report.document.file,file_size:0
+#: field:report.document.user,file_size:0
+#: field:report.files.partner,file_size:0
+msgid "File Size"
+msgstr ""
+
+#. module: document
+#: field:document.directory.content.type,name:0
+#: field:ir.attachment,file_type:0
+msgid "Content Type"
+msgstr ""
+
+#. module: document
+#: view:document.directory:0
+#: field:document.directory,type:0
+#: view:document.storage:0
+#: field:document.storage,type:0
+msgid "Type"
+msgstr ""
+
+#. module: document
+#: help:document.directory,ressource_type_id:0
+msgid ""
+"Select an object here and there will be one folder per record of that "
+"resource."
+msgstr ""
+
+#. module: document
+#: help:document.directory,domain:0
+msgid ""
+"Use a domain if you want to apply an automatic filter on visible resources."
+msgstr ""
+
+#. module: document
+#: model:ir.actions.act_window,name:document.action_view_files_by_partner
+msgid "Files Per Partner"
+msgstr ""
+
+#. module: document
+#: field:document.directory,dctx_ids:0
+msgid "Context fields"
+msgstr ""
+
+#. module: document
+#: field:ir.attachment,store_fname:0
+msgid "Stored Filename"
+msgstr ""
+
+#. module: document
+#: field:document.directory,ressource_type_id:0
+msgid "Resource model"
+msgstr ""
+
+#. module: document
+#: view:document.directory:0
+#: field:report.document.user,type:0
+msgid "Directory Type"
+msgstr ""
+
+#. module: document
+#: field:document.directory.content,report_id:0
+msgid "Report"
+msgstr ""
+
+#. module: document
+#: selection:report.document.user,month:0
+#: selection:report.files.partner,month:0
+msgid "July"
+msgstr ""
+
+#. module: document
+#: model:ir.actions.act_window,name:document.open_board_document_manager
+#: model:ir.ui.menu,name:document.menu_reports_document_manager
+msgid "Document Dashboard"
+msgstr ""
+
+#. module: document
+#: field:document.directory.content.type,code:0
+msgid "Extension"
+msgstr ""
+
+#. module: document
+#: view:ir.attachment:0
+msgid "Created"
+msgstr ""
+
+#. module: document
+#: field:document.directory,content_ids:0
+msgid "Virtual Files"
+msgstr ""
+
+#. module: document
+#: view:ir.attachment:0
+msgid "Modified"
+msgstr ""
+
+#. module: document
+#: code:addons/document/document_storage.py:639
+#, python-format
+msgid "Error at doc write!"
+msgstr ""
+
+#. module: document
+#: view:document.directory:0
+msgid "Generated Files"
+msgstr ""
+
+#. module: document
+#: field:document.directory.content,directory_id:0
+#: field:document.directory.dctx,dir_id:0
+#: model:ir.actions.act_window,name:document.action_document_file_directory_form
+#: view:ir.attachment:0
+#: field:ir.attachment,parent_id:0
+#: model:ir.model,name:document.model_document_directory
+#: field:report.document.user,directory:0
+msgid "Directory"
+msgstr ""
+
+#. module: document
+#: view:board.board:0
+msgid "Files by Partner"
+msgstr ""
+
+#. module: document
+#: field:document.directory,write_uid:0
+#: field:document.storage,write_uid:0
+#: field:ir.attachment,write_uid:0
+msgid "Last Modification User"
+msgstr ""
+
+#. module: document
+#: model:ir.actions.act_window,name:document.act_res_partner_document
+#: model:ir.actions.act_window,name:document.zoom_directory
+msgid "Related Documents"
+msgstr ""
+
+#. module: document
+#: field:document.configuration,progress:0
+msgid "Configuration Progress"
+msgstr ""
+
+#. module: document
+#: field:document.directory,domain:0
+msgid "Domain"
+msgstr ""
+
+#. module: document
+#: field:document.directory,write_date:0
+#: field:document.storage,write_date:0
+#: field:ir.attachment,write_date:0
+msgid "Date Modified"
+msgstr ""
+
+#. module: document
+#: model:ir.model,name:document.model_report_document_file
+msgid "Files details by Directory"
+msgstr ""
+
+#. module: document
+#: view:report.document.user:0
+msgid "All users files"
+msgstr ""
+
+#. module: document
+#: view:board.board:0
+#: model:ir.actions.act_window,name:document.action_view_size_month
+#: view:report.document.file:0
+msgid "File Size by Month"
+msgstr ""
+
+#. module: document
+#: selection:report.document.user,month:0
+#: selection:report.files.partner,month:0
+msgid "December"
+msgstr ""
+
+#. module: document
+#: field:document.configuration,config_logo:0
+msgid "Image"
+msgstr ""
+
+#. module: document
+#: selection:document.directory,type:0
+msgid "Static Directory"
+msgstr ""
+
+#. module: document
+#: field:document.directory,child_ids:0
+msgid "Children"
+msgstr ""
+
+#. module: document
+#: view:document.directory:0
+msgid "Define words in the context, for all child directories and files"
+msgstr ""
+
+#. module: document
+#: model:ir.module.module,description:document.module_meta_information
+msgid ""
+"This is a complete document management system:\n"
+" * User Authentication\n"
+" * Document Indexation :- .pptx and .docx files are not support in "
+"windows platform.\n"
+" * Dashboard for Document that includes:\n"
+" * New Files (list)\n"
+" * Files by Resource Type (graph)\n"
+" * Files by Partner (graph)\n"
+" * Files by Month (graph)\n"
+" ATTENTION:\n"
+" - When you install this module in a running company that have already "
+"PDF files stored into the database,\n"
+" you will lose them all.\n"
+" - After installing this module PDF's are no longer stored into the "
+"database,\n"
+" but in the servers rootpad like /server/bin/filestore.\n"
+msgstr ""
+
+#. module: document
+#: help:document.storage,online:0
+msgid ""
+"If not checked, media is currently offline and its contents not available"
+msgstr ""
+
+#. module: document
+#: view:document.directory:0
+#: field:document.directory,user_id:0
+#: field:document.storage,user_id:0
+#: view:ir.attachment:0
+#: field:ir.attachment,user_id:0
+#: field:report.document.user,user_id:0
+#: field:report.document.wall,user_id:0
+msgid "Owner"
+msgstr ""
+
+#. module: document
+#: view:document.directory:0
+msgid "PDF Report"
+msgstr ""
+
+#. module: document
+#: view:document.directory:0
+msgid "Contents"
+msgstr ""
+
+#. module: document
+#: field:document.directory,create_date:0
+#: field:document.storage,create_date:0
+#: field:report.document.user,create_date:0
+msgid "Date Created"
+msgstr ""
+
+#. module: document
+#: help:document.directory.content,include_name:0
+msgid ""
+"Check this field if you want that the name of the file to contain the record "
+"name.\n"
+"If set, the directory will have to be a resource one."
+msgstr ""
+
+#. module: document
+#: model:ir.actions.act_window,name:document.action_config_auto_directory
+msgid "Auto Configure Directory"
+msgstr ""
+
+#. module: document
+#: field:document.directory.content,include_name:0
+msgid "Include Record Name"
+msgstr ""
+
+#. module: document
+#: view:ir.attachment:0
+msgid "Attachment"
+msgstr ""
+
+#. module: document
+#: field:ir.actions.report.xml,model_id:0
+msgid "Model Id"
+msgstr ""
+
+#. module: document
+#: field:document.storage,online:0
+msgid "Online"
+msgstr ""
+
+#. module: document
+#: help:document.directory,ressource_tree:0
+msgid ""
+"Check this if you want to use the same tree structure as the object selected "
+"in the system."
+msgstr ""
+
+#. module: document
+#: view:document.directory:0
+msgid "Security"
+msgstr "保安"
+
+#. module: document
+#: help:document.directory,ressource_id:0
+msgid ""
+"Along with Parent Model, this ID attaches this folder to a specific record "
+"of Parent Model."
+msgstr ""
+
+#. module: document
+#: selection:report.document.user,month:0
+#: selection:report.files.partner,month:0
+msgid "August"
+msgstr ""
+
+#. module: document
+#: sql_constraint:document.directory:0
+msgid "Directory cannot be parent of itself!"
+msgstr ""
+
+#. module: document
+#: selection:report.document.user,month:0
+#: selection:report.files.partner,month:0
+msgid "June"
+msgstr ""
+
+#. module: document
+#: field:report.document.user,user:0
+#: field:report.document.wall,user:0
+msgid "User"
+msgstr ""
+
+#. module: document
+#: field:document.directory,group_ids:0
+#: field:document.storage,group_ids:0
+msgid "Groups"
+msgstr ""
+
+#. module: document
+#: field:document.directory.content.type,active:0
+msgid "Active"
+msgstr ""
+
+#. module: document
+#: selection:report.document.user,month:0
+#: selection:report.files.partner,month:0
+msgid "November"
+msgstr ""
+
+#. module: document
+#: view:ir.attachment:0
+#: field:ir.attachment,db_datas:0
+msgid "Data"
+msgstr ""
+
+#. module: document
+#: help:document.directory,ressource_parent_type_id:0
+msgid ""
+"If you put an object here, this directory template will appear bellow all of "
+"these objects. Such directories are \"attached\" to the specific model or "
+"record, just like attachments. Don't put a parent directory if you select a "
+"parent model."
+msgstr ""
+
+#. module: document
+#: view:document.directory:0
+msgid "Definition"
+msgstr ""
+
+#. module: document
+#: selection:report.document.user,month:0
+#: selection:report.files.partner,month:0
+msgid "October"
+msgstr ""
+
+#. module: document
+#: view:document.directory:0
+msgid "Seq."
+msgstr ""
+
+#. module: document
+#: selection:document.storage,type:0
+msgid "Database"
+msgstr ""
+
+#. module: document
+#: help:document.configuration,project:0
+msgid "Auto directory configuration for Projects."
+msgstr ""
+
+#. module: document
+#: view:ir.attachment:0
+msgid "Related to"
+msgstr ""
+
+#. module: document
+#: model:ir.module.module,shortdesc:document.module_meta_information
+msgid "Integrated Document Management System"
+msgstr ""
+
+#. module: document
+#: view:document.configuration:0
+msgid "Choose the following Resouces to auto directory configuration."
+msgstr ""
+
+#. module: document
+#: view:ir.attachment:0
+msgid "Attached To"
+msgstr ""
+
+#. module: document
+#: model:ir.ui.menu,name:document.menu_reports_document
+msgid "Dashboard"
+msgstr ""
+
+#. module: document
+#: model:ir.actions.act_window,name:document.action_view_user_graph
+msgid "Files By Users"
+msgstr ""
+
+#. module: document
+#: field:document.storage,readonly:0
+msgid "Read Only"
+msgstr ""
+
+#. module: document
+#: field:document.directory.dctx,expr:0
+msgid "Expression"
+msgstr ""
+
+#. module: document
+#: sql_constraint:document.directory:0
+msgid "The directory name must be unique !"
+msgstr ""
+
+#. module: document
+#: field:document.directory,create_uid:0
+#: field:document.storage,create_uid:0
+msgid "Creator"
+msgstr ""
+
+#. module: document
+#: view:board.board:0
+#: model:ir.actions.act_window,name:document.action_view_files_by_month_graph
+#: view:report.document.user:0
+msgid "Files by Month"
+msgstr ""
+
+#. module: document
+#: selection:report.document.user,month:0
+#: selection:report.files.partner,month:0
+msgid "September"
+msgstr ""
+
+#. module: document
+#: field:document.directory.content,prefix:0
+msgid "Prefix"
+msgstr ""
+
+#. module: document
+#: field:report.document.wall,last:0
+msgid "Last Posted Time"
+msgstr ""
+
+#. module: document
+#: field:report.document.user,datas_fname:0
+msgid "File Name"
+msgstr ""
+
+#. module: document
+#: view:document.configuration:0
+msgid "res_config_contents"
+msgstr ""
+
+#. module: document
+#: field:document.directory,ressource_id:0
+msgid "Resource ID"
+msgstr ""
+
+#. module: document
+#: selection:document.storage,type:0
+msgid "External file storage"
+msgstr ""
+
+#. module: document
+#: view:board.board:0
+#: model:ir.actions.act_window,name:document.action_view_wall
+#: view:report.document.wall:0
+msgid "Wall of Shame"
+msgstr ""
+
+#. module: document
+#: help:document.storage,path:0
+msgid "For file storage, the root path of the storage"
+msgstr ""
+
+#. module: document
+#: model:ir.model,name:document.model_report_files_partner
+msgid "Files details by Partners"
+msgstr ""
+
+#. module: document
+#: field:document.directory.dctx,field:0
+msgid "Field"
+msgstr ""
+
+#. module: document
+#: model:ir.model,name:document.model_document_directory_dctx
+msgid "Directory Dynamic Context"
+msgstr ""
+
+#. module: document
+#: field:document.directory,ressource_parent_type_id:0
+msgid "Parent Model"
+msgstr ""
+
+#. module: document
+#: view:report.document.user:0
+msgid "Files by users"
+msgstr ""
+
+#. module: document
+#: field:report.document.file,month:0
+#: field:report.document.user,month:0
+#: field:report.document.wall,month:0
+#: field:report.document.wall,name:0
+#: field:report.files.partner,month:0
+msgid "Month"
+msgstr ""
+
+#. module: document
+#: model:ir.ui.menu,name:document.menu_reporting
+msgid "Reporting"
+msgstr ""
+
+#. module: document
+#: field:document.configuration,product:0
+msgid "Product"
+msgstr ""
+
+#. module: document
+#: field:document.directory,ressource_tree:0
+msgid "Tree Structure"
+msgstr ""
+
+#. module: document
+#: selection:report.document.user,month:0
+#: selection:report.files.partner,month:0
+msgid "May"
+msgstr ""
+
+#. module: document
+#: model:ir.actions.act_window,name:document.action_view_all_document_tree1
+msgid "All Users files"
+msgstr ""
+
+#. module: document
+#: model:ir.model,name:document.model_report_document_wall
+msgid "Users that did not inserted documents since one month"
+msgstr ""
+
+#. module: document
+#: model:ir.actions.act_window,help:document.action_document_file_form
+msgid ""
+"The Documents repository gives you access to all attachments, such as mails, "
+"project documents, invoices etc."
+msgstr ""
+
+#. module: document
+#: view:document.directory:0
+msgid "For each entry here, virtual files will appear in this folder."
+msgstr ""
+
+#. module: document
+#: model:ir.model,name:document.model_ir_attachment
+msgid "ir.attachment"
+msgstr ""
+
+#. module: document
+#: view:board.board:0
+msgid "New Files"
+msgstr ""
+
+#. module: document
+#: selection:report.document.user,month:0
+#: selection:report.files.partner,month:0
+msgid "January"
+msgstr ""
+
+#. module: document
+#: view:document.directory:0
+msgid "Static"
+msgstr ""
+
+#. module: document
+#: view:report.files.partner:0
+msgid "Files By Partner"
+msgstr ""
+
+#. module: document
+#: help:document.directory.dctx,field:0
+msgid ""
+"The name of the field. Note that the prefix \"dctx_\" will be prepended to "
+"what is typed here."
+msgstr ""
+
+#. module: document
+#: view:report.document.user:0
+msgid "This Month"
+msgstr ""
+
+#. module: document
+#: view:ir.attachment:0
+msgid "Notes"
+msgstr ""
+
+#. module: document
+#: help:document.configuration,sale_order:0
+msgid ""
+"Auto directory configuration for Sale Orders and Quotation with report."
+msgstr ""
+
+#. module: document
+#: help:document.directory,type:0
+msgid ""
+"Each directory can either have the type Static or be linked to another "
+"resource. A static directory, as with Operating Systems, is the classic "
+"directory that can contain a set of files. The directories linked to systems "
+"resources automatically possess sub-directories for each of resource types "
+"defined in the parent directory."
+msgstr ""
+
+#. module: document
+#: selection:report.document.user,month:0
+#: selection:report.files.partner,month:0
+msgid "February"
+msgstr ""
+
+#. module: document
+#: model:ir.actions.act_window,name:document.open_board_document_manager1
+#: model:ir.ui.menu,name:document.menu_reports_document_manager1
+msgid "Statistics by User"
+msgstr ""
+
+#. module: document
+#: field:document.directory,name:0
+#: field:document.storage,name:0
+msgid "Name"
+msgstr ""
+
+#. module: document
+#: sql_constraint:document.storage:0
+msgid "The storage path must be unique!"
+msgstr ""
+
+#. module: document
+#: view:document.directory:0
+msgid "Fields"
+msgstr ""
+
+#. module: document
+#: help:document.storage,readonly:0
+msgid "If set, media is for reading only"
+msgstr ""
+
+#. module: document
+#: selection:report.document.user,month:0
+#: selection:report.files.partner,month:0
+msgid "April"
+msgstr ""
+
+#. module: document
+#: field:report.document.file,nbr:0
+#: field:report.document.user,nbr:0
+#: field:report.files.partner,nbr:0
+msgid "# of Files"
+msgstr ""
+
+#. module: document
+#: view:document.directory:0
+msgid ""
+"Only members of these groups will have access to this directory and its "
+"files."
+msgstr ""
+
+#. module: document
+#: view:document.directory:0
+msgid ""
+"These groups, however, do NOT apply to children directories, which must "
+"define their own groups."
+msgstr ""
+
+#. module: document
+#: field:document.directory.content.type,mimetype:0
+msgid "Mime Type"
+msgstr ""
+
+#. module: document
+#: field:document.directory.content,sequence:0
+msgid "Sequence"
+msgstr ""
+
+#. module: document
+#: field:document.directory.content,name:0
+msgid "Content Name"
+msgstr ""
+
+#. module: document
+#: code:addons/document/document.py:226
+#: code:addons/document/document.py:294
+#, python-format
+msgid "File name must be unique!"
+msgstr ""
+
+#. module: document
+#: selection:document.storage,type:0
+msgid "Internal File storage"
+msgstr ""
+
+#. module: document
+#: sql_constraint:document.directory:0
+msgid "Directory must have a parent or a storage"
+msgstr ""
+
+#. module: document
+#: model:ir.actions.act_window,name:document.action_document_directory_tree
+#: model:ir.ui.menu,name:document.menu_document_directories_tree
+msgid "Directories' Structure"
+msgstr ""
+
+#. module: document
+#: view:board.board:0
+#: model:ir.actions.act_window,name:document.action_view_document_by_resourcetype_graph
+#: view:report.document.user:0
+msgid "Files by Resource Type"
+msgstr ""
+
+#. module: document
+#: field:report.document.user,name:0
+#: field:report.files.partner,name:0
+msgid "Year"
+msgstr ""
+
+#. module: document
+#: view:document.storage:0
+#: model:ir.model,name:document.model_document_storage
+#: model:ir.ui.menu,name:document.menu_document_storage_media
+msgid "Storage Media"
+msgstr ""
+
+#. module: document
+#: view:document.storage:0
+msgid "Search Document storage"
+msgstr ""
+
+#. module: document
+#: field:document.directory.content,extension:0
+msgid "Document Type"
+msgstr ""
diff --git a/addons/document/wizard/document_configuration.py b/addons/document/wizard/document_configuration.py
index 3485e7412c7..97eda4e2d62 100644
--- a/addons/document/wizard/document_configuration.py
+++ b/addons/document/wizard/document_configuration.py
@@ -22,26 +22,16 @@
from osv import osv, fields
class document_configuration(osv.osv_memory):
-
_name='document.configuration'
- _description = 'Auto Directory Configuration'
+ _description = 'Directory Configuration'
_inherit = 'res.config'
- _columns = {
- 'sale_order' : fields.boolean('Sale Orders', help="Create virtual folders for Sale Orders and Quotations. One virtual folder will appear for each, in which the latest printed PDF document can be downloaded at any time, and where you can manage (view, add, delete) other attachments."),
- 'product' : fields.boolean('Products', help="Create virtual folders for Products. One virtual folder will appear for each product, where you can manage (view, add, delete) the files attached to the product"),
- 'project': fields.boolean('Projects', help="Create virtual folders for Projects. One virtual folder will appear for each project, where you can manage (view, add, delete) the files attached to the project"),
- }
-
-
def execute(self, cr, uid, ids, context=None):
- conf_id = ids and ids[0] or False
- conf = self.browse(cr, uid, conf_id, context=context)
dir_pool = self.pool.get('document.directory')
data_pool = self.pool.get('ir.model.data')
model_pool = self.pool.get('ir.model')
content_pool = self.pool.get('document.directory.content')
- if conf.sale_order and self.pool.get('sale.order'):
+ if self.pool.get('sale.order'):
# Sale order
dir_data_id = data_pool._get_id(cr, uid, 'document', 'dir_sale_order_all')
if dir_data_id:
@@ -90,7 +80,7 @@ class document_configuration(osv.osv_memory):
})
- if conf.product and self.pool.get('product.product'):
+ if self.pool.get('product.product'):
# Product
dir_data_id = data_pool._get_id(cr, uid, 'document', 'dir_product')
if dir_data_id:
@@ -104,7 +94,7 @@ class document_configuration(osv.osv_memory):
'ressource_type_id': mid[0],
})
- if conf.project and self.pool.get('account.analytic.account'):
+ if self.pool.get('account.analytic.account'):
# Project
dir_data_id = data_pool._get_id(cr, uid, 'document', 'dir_project')
if dir_data_id:
diff --git a/addons/document/wizard/document_configuration_view.xml b/addons/document/wizard/document_configuration_view.xml
index eaba3b7115e..a51a7877e60 100644
--- a/addons/document/wizard/document_configuration_view.xml
+++ b/addons/document/wizard/document_configuration_view.xml
@@ -1,31 +1,27 @@
- Auto Configure Directory
+ Auto Configure Directoriesdocument.configurationform
diff --git a/addons/fetchmail/i18n/et.po b/addons/fetchmail/i18n/et.po
new file mode 100644
index 00000000000..24cc08e4b50
--- /dev/null
+++ b/addons/fetchmail/i18n/et.po
@@ -0,0 +1,305 @@
+# Estonian translation for openobject-addons
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR , 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2011-01-11 11:15+0000\n"
+"PO-Revision-Date: 2011-10-11 18:02+0000\n"
+"Last-Translator: Aare Vesi \n"
+"Language-Team: Estonian \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2011-10-12 04:40+0000\n"
+"X-Generator: Launchpad (build 14124)\n"
+
+#. module: fetchmail
+#: constraint:email.server:0
+msgid ""
+"Warning! Record for selected Model can not be created\n"
+"Please choose valid Model"
+msgstr ""
+
+#. module: fetchmail
+#: selection:email.server,state:0
+msgid "Confirmed"
+msgstr "Kinnitatud"
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "Confirm"
+msgstr "Kinnita"
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "Group By..."
+msgstr "Grupeeri..."
+
+#. module: fetchmail
+#: view:email.server:0
+#: field:email.server,state:0
+msgid "State"
+msgstr "Olek"
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "POP"
+msgstr "POP"
+
+#. module: fetchmail
+#: selection:email.server,state:0
+msgid "Not Confirmed"
+msgstr "Kinnitamata"
+
+#. module: fetchmail
+#: field:email.server,user:0
+msgid "User Name"
+msgstr "Kasutajanimi"
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "Type"
+msgstr "Tüüp"
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "POP/IMAP Servers"
+msgstr "POP/IMAP serverid"
+
+#. module: fetchmail
+#: model:ir.module.module,shortdesc:fetchmail.module_meta_information
+msgid "Fetchmail Server"
+msgstr "Fetchmail server"
+
+#. module: fetchmail
+#: view:email.server:0
+#: field:email.server,note:0
+msgid "Description"
+msgstr "Kirjeldus"
+
+#. module: fetchmail
+#: help:email.server,object_id:0
+msgid ""
+"OpenObject Model. Generates a record of this model.\n"
+"Select Object with message_new attrbutes."
+msgstr ""
+
+#. module: fetchmail
+#: field:email.server,attach:0
+msgid "Add Attachments ?"
+msgstr ""
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "# of emails"
+msgstr ""
+
+#. module: fetchmail
+#: model:ir.actions.act_window,name:fetchmail.act_server_history
+msgid "Email History"
+msgstr ""
+
+#. module: fetchmail
+#: field:email.server,user_id:0
+msgid "User"
+msgstr "Kasutaja"
+
+#. module: fetchmail
+#: field:email.server,date:0
+msgid "Date"
+msgstr "Kuupäev"
+
+#. module: fetchmail
+#: selection:email.server,state:0
+msgid "Waiting for Verification"
+msgstr ""
+
+#. module: fetchmail
+#: field:email.server,password:0
+msgid "Password"
+msgstr "Salasõna"
+
+#. module: fetchmail
+#: model:ir.actions.act_window,name:fetchmail.act_server_history
+#: view:mailgate.message:0
+msgid "Emails"
+msgstr "E-kirjad"
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "Search Email Servers"
+msgstr ""
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "Server & Login"
+msgstr ""
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "Auto Reply?"
+msgstr "Automaatvastus"
+
+#. module: fetchmail
+#: field:email.server,name:0
+msgid "Name"
+msgstr "Nimi"
+
+#. module: fetchmail
+#: model:ir.model,name:fetchmail.model_mailgate_message
+msgid "Mailgateway Message"
+msgstr ""
+
+#. module: fetchmail
+#: model:ir.actions.act_window,name:fetchmail.action_email_server_tree
+msgid "POP Servers"
+msgstr "POP serverid"
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "Set to Draft"
+msgstr "Määra mustandiks"
+
+#. module: fetchmail
+#: field:email.server,message_ids:0
+#: model:ir.actions.act_window,name:fetchmail.action_view_mail_message_emails
+msgid "Messages"
+msgstr "Sõnumid"
+
+#. module: fetchmail
+#: model:ir.ui.menu,name:fetchmail.menu_action_fetchmail_server_tree
+msgid "Fetchmail Services"
+msgstr "Fetchmail teenused"
+
+#. module: fetchmail
+#: field:email.server,server:0
+msgid "Server"
+msgstr "Server"
+
+#. module: fetchmail
+#: field:email.server,active:0
+msgid "Active"
+msgstr "Aktiivne"
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "Process Parameter"
+msgstr ""
+
+#. module: fetchmail
+#: field:email.server,is_ssl:0
+msgid "SSL ?"
+msgstr "SSL ?"
+
+#. module: fetchmail
+#: selection:email.server,type:0
+#: selection:mailgate.message,server_type:0
+msgid "IMAP Server"
+msgstr "IMAP server"
+
+#. module: fetchmail
+#: field:email.server,object_id:0
+msgid "Model"
+msgstr "Mudel"
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "IMAP"
+msgstr "IMAP"
+
+#. module: fetchmail
+#: view:email.server:0
+#: model:ir.model,name:fetchmail.model_email_server
+msgid "POP/IMAP Server"
+msgstr "POP/IMAP server"
+
+#. module: fetchmail
+#: constraint:email.server:0
+msgid "Warning! Can't have duplicate server configuration!"
+msgstr ""
+
+#. module: fetchmail
+#: field:email.server,type:0
+#: field:mailgate.message,server_type:0
+msgid "Server Type"
+msgstr "Serveri tüüp"
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "Login Information"
+msgstr "Sisselogimise info"
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "Server Information"
+msgstr "Serveri info"
+
+#. module: fetchmail
+#: help:email.server,attach:0
+msgid "Fetches mail with attachments if true."
+msgstr ""
+
+#. module: fetchmail
+#: selection:email.server,type:0
+#: selection:mailgate.message,server_type:0
+msgid "POP Server"
+msgstr "POP server"
+
+#. module: fetchmail
+#: field:email.server,port:0
+msgid "Port"
+msgstr "Port"
+
+#. module: fetchmail
+#: model:ir.module.module,description:fetchmail.module_meta_information
+msgid ""
+"Fetchmail: \n"
+" * Fetch email from Pop / IMAP server\n"
+" * Support SSL\n"
+" * Integrated with all Modules\n"
+" * Automatic Email Receive\n"
+" * Email based Records (Add, Update)\n"
+" "
+msgstr ""
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "SSL"
+msgstr "SSL"
+
+#. module: fetchmail
+#: help:email.server,action_id:0
+msgid ""
+"An Email Server Action. It will be run whenever an e-mail is fetched from "
+"server."
+msgstr ""
+
+#. module: fetchmail
+#: help:email.server,priority:0
+msgid "Priority between 0 to 10, select define the order of Processing"
+msgstr ""
+
+#. module: fetchmail
+#: field:email.server,action_id:0
+msgid "Email Server Action"
+msgstr ""
+
+#. module: fetchmail
+#: field:email.server,priority:0
+msgid "Server Priority"
+msgstr ""
+
+#. module: fetchmail
+#: view:mailgate.message:0
+#: field:mailgate.message,server_id:0
+msgid "Mail Server"
+msgstr ""
+
+#. module: fetchmail
+#: view:email.server:0
+msgid "Fetch Emails"
+msgstr ""
diff --git a/addons/fetchmail_crm/__init__.py b/addons/fetchmail_crm/__init__.py
new file mode 100644
index 00000000000..5831b3284bb
--- /dev/null
+++ b/addons/fetchmail_crm/__init__.py
@@ -0,0 +1,20 @@
+#-*- coding:utf-8 -*-
+##############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2011 OpenERP S.A. (). All Rights Reserved
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see .
+#
+##############################################################################
diff --git a/addons/fetchmail_crm/__openerp__.py b/addons/fetchmail_crm/__openerp__.py
new file mode 100644
index 00000000000..66cff346d0a
--- /dev/null
+++ b/addons/fetchmail_crm/__openerp__.py
@@ -0,0 +1,39 @@
+#-*- coding:utf-8 -*-
+##############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2011 OpenERP S.A. (). All Rights Reserved
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see .
+#
+##############################################################################
+
+{
+ "name" : "Fetchmail for CRM",
+ "version" : "1.0",
+ "depends" : ["fetchmail", "crm"],
+ "author" : "OpenERP SA",
+ "category": 'Hidden/Link',
+ "description": """
+ """,
+ 'website': 'http://www.openerp.com',
+ 'init_xml': [],
+ 'update_xml': [
+ "installer.xml",
+ ],
+ 'demo_xml': [
+ ],
+ 'installable': True,
+ 'active': False,
+}
diff --git a/addons/fetchmail_crm/installer.xml b/addons/fetchmail_crm/installer.xml
new file mode 100644
index 00000000000..def954eb286
--- /dev/null
+++ b/addons/fetchmail_crm/installer.xml
@@ -0,0 +1,18 @@
+
+
+
+
+ Create Leads from Email Account
+ ir.actions.act_window
+ fetchmail.server
+ form
+ form
+ {'default_name' : "Email Account For Leads", 'fetchmail_model' : 'crm.lead'}
+
+
+
+
+
+
+
+
diff --git a/addons/fetchmail_crm_claim/__init__.py b/addons/fetchmail_crm_claim/__init__.py
new file mode 100644
index 00000000000..5831b3284bb
--- /dev/null
+++ b/addons/fetchmail_crm_claim/__init__.py
@@ -0,0 +1,20 @@
+#-*- coding:utf-8 -*-
+##############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2011 OpenERP S.A. (). All Rights Reserved
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see .
+#
+##############################################################################
diff --git a/addons/fetchmail_crm_claim/__openerp__.py b/addons/fetchmail_crm_claim/__openerp__.py
new file mode 100644
index 00000000000..cfe6a675d20
--- /dev/null
+++ b/addons/fetchmail_crm_claim/__openerp__.py
@@ -0,0 +1,39 @@
+#-*- coding:utf-8 -*-
+##############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2011 OpenERP S.A. (). All Rights Reserved
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see .
+#
+##############################################################################
+
+{
+ "name" : "Fetchmail for CRM Claim",
+ "version" : "1.0",
+ "depends" : ["fetchmail", "crm_claim"],
+ "author" : "OpenERP SA",
+ "category": 'Hidden/Link',
+ "description": """
+ """,
+ 'website': 'http://www.openerp.com',
+ 'init_xml': [],
+ 'update_xml': [
+ "installer.xml",
+ ],
+ 'demo_xml': [
+ ],
+ 'installable': True,
+ 'active': False,
+}
diff --git a/addons/fetchmail_crm_claim/installer.xml b/addons/fetchmail_crm_claim/installer.xml
new file mode 100644
index 00000000000..232d95f6ea2
--- /dev/null
+++ b/addons/fetchmail_crm_claim/installer.xml
@@ -0,0 +1,18 @@
+
+
+
+
+ Create Claims from Email Account
+ ir.actions.act_window
+ fetchmail.server
+ form
+ form
+ {'default_name' : "Email Account For Claims", 'fetchmail_model' : 'crm.claim'}
+
+
+
+
+
+
+
+
diff --git a/addons/fetchmail_hr_recruitment/__init__.py b/addons/fetchmail_hr_recruitment/__init__.py
new file mode 100644
index 00000000000..5831b3284bb
--- /dev/null
+++ b/addons/fetchmail_hr_recruitment/__init__.py
@@ -0,0 +1,20 @@
+#-*- coding:utf-8 -*-
+##############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2011 OpenERP S.A. (). All Rights Reserved
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see .
+#
+##############################################################################
diff --git a/addons/fetchmail_hr_recruitment/__openerp__.py b/addons/fetchmail_hr_recruitment/__openerp__.py
new file mode 100644
index 00000000000..75531097645
--- /dev/null
+++ b/addons/fetchmail_hr_recruitment/__openerp__.py
@@ -0,0 +1,39 @@
+#-*- coding:utf-8 -*-
+##############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2011 OpenERP S.A. (). All Rights Reserved
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see .
+#
+##############################################################################
+
+{
+ "name" : "Fetchmail for Applicants",
+ "version" : "1.0",
+ "depends" : ["fetchmail", "hr_recruitment"],
+ "author" : "OpenERP SA",
+ "category": 'Hidden/Link',
+ "description": """
+ """,
+ 'website': 'http://www.openerp.com',
+ 'init_xml': [],
+ 'update_xml': [
+ "installer.xml",
+ ],
+ 'demo_xml': [
+ ],
+ 'installable': True,
+ 'active': False,
+}
diff --git a/addons/fetchmail_hr_recruitment/installer.xml b/addons/fetchmail_hr_recruitment/installer.xml
new file mode 100644
index 00000000000..f9dc497f357
--- /dev/null
+++ b/addons/fetchmail_hr_recruitment/installer.xml
@@ -0,0 +1,18 @@
+
+
+
+
+ Create Applicants from Email Account
+ ir.actions.act_window
+ fetchmail.server
+ form
+ form
+ {'default_name' : "Email Account For Applicant", 'fetchmail_model' : 'hr.applicant'}
+
+
+
+
+
+
+
+
diff --git a/addons/fetchmail_project_issue/__init__.py b/addons/fetchmail_project_issue/__init__.py
new file mode 100644
index 00000000000..5831b3284bb
--- /dev/null
+++ b/addons/fetchmail_project_issue/__init__.py
@@ -0,0 +1,20 @@
+#-*- coding:utf-8 -*-
+##############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2011 OpenERP S.A. (). All Rights Reserved
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see .
+#
+##############################################################################
diff --git a/addons/fetchmail_project_issue/__openerp__.py b/addons/fetchmail_project_issue/__openerp__.py
new file mode 100644
index 00000000000..1165949108a
--- /dev/null
+++ b/addons/fetchmail_project_issue/__openerp__.py
@@ -0,0 +1,39 @@
+#-*- coding:utf-8 -*-
+##############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2011 OpenERP S.A. (). All Rights Reserved
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see .
+#
+##############################################################################
+
+{
+ "name" : "Fetchmail for Project Issue",
+ "version" : "1.0",
+ "depends" : ["fetchmail", "project_issue"],
+ "author" : "OpenERP SA",
+ "category": 'Hidden/Link',
+ "description": """
+ """,
+ 'website': 'http://www.openerp.com',
+ 'init_xml': [],
+ 'update_xml': [
+ "installer.xml",
+ ],
+ 'demo_xml': [
+ ],
+ 'installable': True,
+ 'active': False,
+}
diff --git a/addons/fetchmail_project_issue/installer.xml b/addons/fetchmail_project_issue/installer.xml
new file mode 100644
index 00000000000..300ffdc22d1
--- /dev/null
+++ b/addons/fetchmail_project_issue/installer.xml
@@ -0,0 +1,18 @@
+
+
+
+
+ Create Issues from Email Account
+ ir.actions.act_window
+ fetchmail.server
+ form
+ form
+ {'default_name' : "Email Account For Issue", 'fetchmail_model' : 'project.issue'}
+
+
+
+
+
+
+
+
diff --git a/addons/google_base_account/__openerp__.py b/addons/google_base_account/__openerp__.py
index 409ca205c74..19afc18bf09 100644
--- a/addons/google_base_account/__openerp__.py
+++ b/addons/google_base_account/__openerp__.py
@@ -23,8 +23,8 @@
{
'name': 'Google user',
'version': '1.0',
- 'category': 'Generic Modules/Others',
- 'description': """The module adds google user in res user""",
+ 'category': 'Hidden',
+ 'description': """The module adds google user in res user""",
'author': 'OpenERP SA',
'website': 'http://www.openerp.com',
'depends': ['base'],
diff --git a/addons/google_map/__openerp__.py b/addons/google_map/__openerp__.py
index 5c48a9370d7..423351a53ef 100644
--- a/addons/google_map/__openerp__.py
+++ b/addons/google_map/__openerp__.py
@@ -23,9 +23,7 @@
{
'name': 'Google Map',
'version': '1.0',
- 'category': 'Tools',
- 'complexity': "easy",
- 'category': 'Generic Modules/Others',
+ 'category': 'Hidden',
'description': """
The module adds Google Map field in partner address.
====================================================
diff --git a/addons/google_map/i18n/et.po b/addons/google_map/i18n/et.po
index 1a3a0e1ee00..e37768b0755 100644
--- a/addons/google_map/i18n/et.po
+++ b/addons/google_map/i18n/et.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2010-08-03 06:15+0000\n"
-"Last-Translator: lyyser \n"
+"PO-Revision-Date: 2011-10-10 19:33+0000\n"
+"Last-Translator: Aare Vesi \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:54+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:32+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: google_map
#: view:res.partner:0
@@ -47,12 +47,12 @@ msgstr ""
#. module: google_map
#: model:ir.module.module,shortdesc:google_map.module_meta_information
msgid "Google Map"
-msgstr ""
+msgstr "Google Map"
#. module: google_map
#: model:ir.model,name:google_map.model_res_partner_address
msgid "Partner Addresses"
-msgstr ""
+msgstr "Partneri aadressid"
#~ msgid "Invalid XML for View Architecture!"
#~ msgstr "Vigane XML vaate arhitektuurile!"
diff --git a/addons/google_map/i18n/sr@latin.po b/addons/google_map/i18n/sr@latin.po
index af7d4e21ee3..5d9570489bc 100644
--- a/addons/google_map/i18n/sr@latin.po
+++ b/addons/google_map/i18n/sr@latin.po
@@ -8,26 +8,26 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2010-12-23 16:09+0000\n"
-"Last-Translator: OpenERP Administrators \n"
+"PO-Revision-Date: 2011-10-06 13:57+0000\n"
+"Last-Translator: Milan Milosevic \n"
"Language-Team: Serbian latin \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:55+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-07 04:36+0000\n"
+"X-Generator: Launchpad (build 14085)\n"
#. module: google_map
#: view:res.partner:0
#: view:res.partner.address:0
msgid "Map"
-msgstr "mapa"
+msgstr "Karta"
#. module: google_map
#: view:res.partner:0
#: view:res.partner.address:0
msgid "Street2 : "
-msgstr "Ulica2 "
+msgstr "Ulica2 : "
#. module: google_map
#: model:ir.actions.wizard,name:google_map.wizard_google_map
@@ -41,19 +41,19 @@ msgid ""
"so that we can directly open google map from the\n"
"url widget."
msgstr ""
-"Ovaj Modul ubacuje sliku google map u partnerovoj adresi\n"
-"tako da mozemo direktno da otvorimo google map iz tog\n"
-"prozora."
+"Ovaj Modul dodaje google map polje u partnerovoj adresi\n"
+"tako da možemo direktno otvoriti google map iz\n"
+"url vidžeta."
#. module: google_map
#: model:ir.module.module,shortdesc:google_map.module_meta_information
msgid "Google Map"
-msgstr ""
+msgstr "Google Map"
#. module: google_map
#: model:ir.model,name:google_map.model_res_partner_address
msgid "Partner Addresses"
-msgstr "Adresa Partnera"
+msgstr "Partnerove adrese"
#~ msgid "Invalid XML for View Architecture!"
#~ msgstr "Nevažeći XML za pregled arhitekture"
diff --git a/addons/hr/__init__.py b/addons/hr/__init__.py
index 769e894f1bb..e2ff754ad35 100644
--- a/addons/hr/__init__.py
+++ b/addons/hr/__init__.py
@@ -21,9 +21,8 @@
import hr_department
import hr
-import installer
import report
import wizard
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/hr/__openerp__.py b/addons/hr/__openerp__.py
index 598b49a725e..900c689dfbf 100644
--- a/addons/hr/__openerp__.py
+++ b/addons/hr/__openerp__.py
@@ -38,7 +38,7 @@ You can manage:
'author': 'OpenERP SA',
'website': 'http://www.openerp.com',
'images': ['images/hr_department.jpeg', 'images/hr_employee.jpeg','images/hr_job_position.jpeg'],
- 'depends': ['base_setup', 'resource', 'board'],
+ 'depends': ['base_setup','mail', 'resource', 'board'],
'init_xml': [],
'update_xml': [
'security/hr_security.xml',
@@ -48,13 +48,12 @@ You can manage:
'process/hr_process.xml',
'hr_installer.xml',
'hr_data.xml',
- 'board_hr_view.xml',
- 'board_hr_manager_view.xml',
- ],
+ 'hr_board.xml',
+ ],
'demo_xml': [
'hr_demo.xml',
'hr_department_demo.xml',
- ],
+ ],
'test': ['test/test_hr.yml'],
'installable': True,
'active': False,
diff --git a/addons/hr/board_hr_manager_view.xml b/addons/hr/board_hr_manager_view.xml
deleted file mode 100644
index 3cfaf165840..00000000000
--- a/addons/hr/board_hr_manager_view.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
-
-
-
-
- board.hr.manager.form
- board.board
- form
-
-
+
+
+
+ Human Resources Dashboard
+ board.board
+ form
+ form
+ menu
+
+
+
+
+
+
+
+
+
+
+ board.hr.manager.form
+ board.board
+ form
+
+
+
+
+
+
+
+
+
+
+
+
+ HR Manager Dashboard
+ board.board
+ form
+ form
+ menu
+
+
+
+
+
+
+
diff --git a/addons/hr/hr_installer.xml b/addons/hr/hr_installer.xml
index 6aae7a3ac85..263f842b5b4 100644
--- a/addons/hr/hr_installer.xml
+++ b/addons/hr/hr_installer.xml
@@ -1,49 +1,42 @@
-
+
-
- hr.installer.view
- base.setup.installer
- form
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- HR Management
- 5
-
-
-
- Create your employees
- ir.actions.act_window
- hr.employee
- form
- form
-
-
+
+ HR Management
+ 5
+
-
-
-
-
+
+
+ Create your Employees
+ ir.actions.act_window
+ hr.employee
+ form
+ tree,form
+
+
-
+
+
+
+
+
+
+ Create Your Departments
+ ir.actions.act_window
+ hr.department
+ form
+ tree,form
+
+ Your departments structure is used to manage all documents related to employees by departments: expenses and timesheet validation, leaves management, recruitments, etc.
+
+
+
+
+
+ 3
+
+
+
diff --git a/addons/hr/hr_view.xml b/addons/hr/hr_view.xml
index fb10baedc9e..f0399a4f5a3 100644
--- a/addons/hr/hr_view.xml
+++ b/addons/hr/hr_view.xml
@@ -33,7 +33,7 @@
-
+
@@ -125,7 +125,70 @@
-
+
+
+ HR - Employess Kanban
+ hr.employee
+ kanban
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ,
+
+
+
+
+ ,
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Employees Structurehr.employee
@@ -149,13 +212,27 @@
Employeeshr.employeeform
- tree,form
+ tree,form,kanban[]{"search_default_department_id": department_id,"search_default_active":eval('True')}Here you can manage your work force by creating employees and assigning them specific properties in the system. Maintain all employee related information and keep track of anything that needs to be recorded for them. The personal information tab will help you maintain their identity data. The Categories tab gives you the opportunity to assign them related employee categories depending on their position and activities within the company. A category can be a seniority level within the company or a department. The Timesheets tab allows to assign them a specific timesheet and analytic journal where they will be able to enter time through the system. In the note tab, you can enter text data that should be recorded for a specific employee.
+
+
+
+ tree
+
+
+
+
+
+
+ form
+
+
+
@@ -346,9 +423,10 @@
search
-
-
+
diff --git a/addons/hr/installer.py b/addons/hr/installer.py
deleted file mode 100644
index 3916acaeb1e..00000000000
--- a/addons/hr/installer.py
+++ /dev/null
@@ -1,52 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2009 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-from osv import fields, osv
-
-class hr_installer(osv.osv_memory):
- _inherit = 'base.setup.installer'
- _columns = {
- # Human Resources Management
- 'hr_holidays': fields.boolean('Leaves Management',
- help="Tracks employee leaves, allocation requests and planning."),
- 'hr_expense': fields.boolean('Expenses',
- help="Tracks and manages employee expenses, and can "
- "automatically re-invoice clients if the expenses are "
- "project-related."),
- 'hr_recruitment': fields.boolean('Recruitment Process',
- help="Helps you manage and streamline your recruitment process."),
- 'hr_timesheet_sheet':fields.boolean('Timesheets',
- help="Tracks and helps employees encode and validate timesheets "
- "and attendances."),
- 'hr_contract': fields.boolean("Employee's Contracts",
- help="Extends employee profiles to help manage their contracts."),
- 'hr_evaluation': fields.boolean('Periodic Evaluations',
- help="Lets you create and manage the periodic evaluation and "
- "performance review of employees."),
- 'hr_attendance': fields.boolean('Attendances',
- help="Simplifies the management of employee's attendances."),
- 'hr_payroll': fields.boolean('Payroll',
- help="Generic Payroll system."),
- 'hr_payroll_account': fields.boolean('Payroll Accounting',
- help="Generic Payroll system Integrated with Accountings."),
- }
-hr_installer()
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/hr_attendance/__openerp__.py b/addons/hr_attendance/__openerp__.py
index f7111fdb191..3d945910144 100644
--- a/addons/hr_attendance/__openerp__.py
+++ b/addons/hr_attendance/__openerp__.py
@@ -21,7 +21,7 @@
{
- 'name': 'Attendances Of Employees',
+ 'name': 'Attendances',
'version': '1.1',
'category': 'Human Resources',
'complexity': "easy",
diff --git a/addons/hr_attendance/hr_attendance_view.xml b/addons/hr_attendance/hr_attendance_view.xml
index 0affdde9e73..7a65ce7f88c 100644
--- a/addons/hr_attendance/hr_attendance_view.xml
+++ b/addons/hr_attendance/hr_attendance_view.xml
@@ -52,7 +52,7 @@
-
+
diff --git a/addons/hr_attendance/report/attendance_by_month.py b/addons/hr_attendance/report/attendance_by_month.py
index 2b708434317..80646be85f4 100644
--- a/addons/hr_attendance/report/attendance_by_month.py
+++ b/addons/hr_attendance/report/attendance_by_month.py
@@ -30,9 +30,10 @@ from report.interface import toxml
from report import report_sxw
from tools import ustr
+from tools.translate import _
one_day = relativedelta(days=1)
-month2name = [0, 'January', 'February', 'March', 'April', 'May', 'Jun', 'July', 'August', 'September', 'October', 'November', 'December']
+month2name = [0, 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']
def hour2str(h):
hours = int(h)
@@ -52,7 +53,7 @@ class report_custom(report_rml):
context = {}
month = datetime(datas['form']['year'], datas['form']['month'], 1)
emp_ids = context.get('active_ids', [])
- user_xml = ['%s' % month2name[month.month], '%s' % month.year]
+ user_xml = ['%s' % _(month2name[month.month]), '%s' % month.year]
if emp_ids:
for emp in obj_emp.read(cr, uid, emp_ids, ['name']):
stop, days_xml = False, []
@@ -95,7 +96,7 @@ class report_custom(report_rml):
days_xml.append(today_xml)
today, tomor = tomor, tomor + one_day
user_xml.append(user_repr % '\n'.join(days_xml))
-
+
rpt_obj = pooler.get_pool(cr.dbname).get('hr.employee')
rml_obj=report_sxw.rml_parse(cr, uid, rpt_obj._name,context)
header_xml = '''
@@ -104,7 +105,7 @@ class report_custom(report_rml):
%s
''' % (str(rml_obj.formatLang(time.strftime("%Y-%m-%d"),date=True))+' ' + str(time.strftime("%H:%M")),pooler.get_pool(cr.dbname).get('res.users').browse(cr,uid,uid).company_id.name)
-
+
first_date = str(month)
som = datetime.strptime(first_date, '%Y-%m-%d %H:%M:%S')
eom = som + timedelta(int(dy)-1)
@@ -113,12 +114,12 @@ class report_custom(report_rml):
cell=1
date_xml.append('')
if day_diff.days>=30:
- date_xml += ['' % (x, som.replace(day=x).strftime('%a'),x-som.day+1) for x in range(som.day, lengthmonth(som.year, som.month)+1)]
+ date_xml += ['' % (x, _(som.replace(day=x).strftime('%a')),x-som.day+1) for x in range(som.day, lengthmonth(som.year, som.month)+1)]
else:
if day_diff.days>=(lengthmonth(som.year, som.month)-som.day):
- date_xml += ['' % (x, som.replace(day=x).strftime('%a'),x-som.day+1) for x in range(som.day, lengthmonth(som.year, som.month)+1)]
+ date_xml += ['' % (x, _(som.replace(day=x).strftime('%a')),x-som.day+1) for x in range(som.day, lengthmonth(som.year, som.month)+1)]
else:
- date_xml += ['' % (x, som.replace(day=x).strftime('%a'),x-som.day+1) for x in range(som.day, eom.day+1)]
+ date_xml += ['' % (x, _(som.replace(day=x).strftime('%a')),x-som.day+1) for x in range(som.day, eom.day+1)]
cell=x-som.day+1
day_diff1=day_diff.days-cell+1
width_dict={}
@@ -129,12 +130,12 @@ class report_custom(report_rml):
month=som.month
month_dict[j]=som.strftime('%B')
width_dict[j]=cell
-
+
while day_diff1>0:
if month+i<=12:
if day_diff1 > lengthmonth(year,i+month): # Not on 30 else you have problems when entering 01-01-2009 for example
som1=datetime.date(year,month+i,1)
- date_xml += ['' % (x, som1.replace(day=x).strftime('%a'),cell+x) for x in range(1, lengthmonth(year,i+month)+1)]
+ date_xml += ['' % (x, _(som1.replace(day=x).strftime('%a')),cell+x) for x in range(1, lengthmonth(year,i+month)+1)]
i=i+1
j=j+1
month_dict[j]=som1.strftime('%B')
@@ -142,7 +143,7 @@ class report_custom(report_rml):
width_dict[j]=x
else:
som1=datetime.date(year,month+i,1)
- date_xml += ['' % (x, som1.replace(day=x).strftime('%a'),cell+x) for x in range(1, eom.day+1)]
+ date_xml += ['' % (x, _(som1.replace(day=x).strftime('%a')),cell+x) for x in range(1, eom.day+1)]
i=i+1
j=j+1
month_dict[j]=som1.strftime('%B')
@@ -156,7 +157,7 @@ class report_custom(report_rml):
i=1
if day_diff1>=30:
som1=datetime.date(years,i,1)
- date_xml += ['' % (x, som1.replace(day=x).strftime('%a'),cell+x) for x in range(1, lengthmonth(years,i)+1)]
+ date_xml += ['' % (x, _(som1.replace(day=x).strftime('%a')),cell+x) for x in range(1, lengthmonth(years,i)+1)]
i=i+1
j=j+1
month_dict[j]=som1.strftime('%B')
@@ -167,7 +168,7 @@ class report_custom(report_rml):
i=i+1
j=j+1
month_dict[j]=som1.strftime('%B')
- date_xml += ['' % (x, som1.replace(day=x).strftime('%a'),cell+x) for x in range(1, eom.day+1)]
+ date_xml += ['' % (x, _(som1.replace(day=x).strftime('%a')),cell+x) for x in range(1, eom.day+1)]
cell=cell+x
width_dict[j]=x
day_diff1=day_diff1-x
@@ -176,10 +177,11 @@ class report_custom(report_rml):
xml = '''
%s
+ %s
%s
%s
- ''' % (header_xml,'\n'.join(user_xml),date_xml)
+ ''' % (header_xml,_('Attendances By Month'),'\n'.join(user_xml),date_xml)
return xml
report_custom('report.hr.attendance.bymonth', 'hr.employee', '', 'addons/hr_attendance/report/bymonth.xsl')
diff --git a/addons/hr_attendance/report/bymonth.xsl b/addons/hr_attendance/report/bymonth.xsl
index 23e7fb14b3d..0ec0a23cc8d 100644
--- a/addons/hr_attendance/report/bymonth.xsl
+++ b/addons/hr_attendance/report/bymonth.xsl
@@ -12,6 +12,7 @@
+
@@ -29,7 +30,7 @@
- Attendances By Month
+ week
@@ -53,7 +54,14 @@
-
+
+
+
+
+
+
+
+
diff --git a/addons/hr_attendance/security/ir_rule.xml b/addons/hr_attendance/security/ir_rule.xml
index 92534da7dc0..b934dc16f5a 100644
--- a/addons/hr_attendance/security/ir_rule.xml
+++ b/addons/hr_attendance/security/ir_rule.xml
@@ -2,17 +2,11 @@
-
- Employee Attendance
-
- [('employee_id.user_id','=',user.id)]
-
- Manager Attendance[(1,'=',1)]
-
+ Employee Attendance
@@ -21,7 +15,6 @@
-
diff --git a/addons/hr_attendance/wizard/hr_attendance_sign_in_out.py b/addons/hr_attendance/wizard/hr_attendance_sign_in_out.py
index 7a51c2b9e1e..2631139b38d 100644
--- a/addons/hr_attendance/wizard/hr_attendance_sign_in_out.py
+++ b/addons/hr_attendance/wizard/hr_attendance_sign_in_out.py
@@ -29,7 +29,7 @@ class hr_si_so_ask(osv.osv_memory):
_columns = {
'name': fields.char('Employees name', size=32, required=True, readonly=True),
'last_time': fields.datetime('Your last sign out', required=True),
- 'emp_id': fields.char('Empoyee ID', size=32, required=True, readonly=True),
+ 'emp_id': fields.many2one('hr.employee', 'Empoyee ID', readonly=True),
}
def _get_empname(self, cr, uid, context=None):
@@ -52,10 +52,12 @@ class hr_si_so_ask(osv.osv_memory):
def sign_in(self, cr, uid, ids, context=None):
data = self.read(cr, uid, ids, [], context=context)[0]
+ data['emp_id'] = data['emp_id'] and data['emp_id'][0]
return self.pool.get('hr.sign.in.out').sign_in(cr, uid, data, context)
def sign_out(self, cr, uid, ids, context=None):
data = self.read(cr, uid, ids, [], context=context)[0]
+ data['emp_id'] = data['emp_id'] and data['emp_id'][0]
return self.pool.get('hr.sign.in.out').sign_out(cr, uid, data, context)
hr_si_so_ask()
@@ -68,7 +70,7 @@ class hr_sign_in_out(osv.osv_memory):
_columns = {
'name': fields.char('Employees name', size=32, required=True, readonly=True),
'state': fields.char('Current state', size=32, required=True, readonly=True),
- 'emp_id': fields.char('Employee ID', size=32, required=True, readonly=True),
+ 'emp_id': fields.many2one('hr.employee', 'Empoyee ID', readonly=True),
}
def _get_empid(self, cr, uid, context=None):
@@ -88,6 +90,7 @@ class hr_sign_in_out(osv.osv_memory):
obj_model = self.pool.get('ir.model.data')
att_obj = self.pool.get('hr.attendance')
data = self.read(cr, uid, ids, [], context=context)[0]
+ data['emp_id'] = data['emp_id'] and data['emp_id'][0]
emp_id = data['emp_id']
att_id = att_obj.search(cr, uid, [('employee_id', '=', emp_id)], limit=1, order='name desc')
last_att = att_obj.browse(cr, uid, att_id, context=context)
@@ -113,6 +116,7 @@ class hr_sign_in_out(osv.osv_memory):
obj_model = self.pool.get('ir.model.data')
att_obj = self.pool.get('hr.attendance')
data = self.read(cr, uid, ids, [], context=context)[0]
+ data['emp_id'] = data['emp_id'] and data['emp_id'][0]
emp_id = data['emp_id']
att_id = att_obj.search(cr, uid, [('employee_id', '=', emp_id),('action', '!=', 'action')], limit=1, order='name desc')
last_att = att_obj.browse(cr, uid, att_id, context=context)
diff --git a/addons/hr_contract/__openerp__.py b/addons/hr_contract/__openerp__.py
index 091204fcf74..a0d303383f7 100644
--- a/addons/hr_contract/__openerp__.py
+++ b/addons/hr_contract/__openerp__.py
@@ -21,7 +21,7 @@
{
- 'name': 'Human Resources Contracts',
+ 'name': "Employee's Contracts",
'version': '1.0',
'category': 'Human Resources',
'complexity': "easy",
diff --git a/addons/hr_contract/hr_contract.py b/addons/hr_contract/hr_contract.py
index 3a6ea844012..4f82d1b3014 100644
--- a/addons/hr_contract/hr_contract.py
+++ b/addons/hr_contract/hr_contract.py
@@ -63,7 +63,7 @@ class hr_contract(osv.osv):
_name = 'hr.contract'
_description = 'Contract'
_columns = {
- 'name': fields.char('Contract Reference', size=32, required=True),
+ 'name': fields.char('Contract Reference', size=64, required=True),
'employee_id': fields.many2one('hr.employee', "Employee", required=True),
'department_id': fields.related('employee_id','department_id', type='many2one', relation='hr.department', string="Department", readonly=True),
'type_id': fields.many2one('hr.contract.type', "Contract Type", required=True),
diff --git a/addons/hr_evaluation/__openerp__.py b/addons/hr_evaluation/__openerp__.py
index adf1d9d69c4..bed442dc2ad 100644
--- a/addons/hr_evaluation/__openerp__.py
+++ b/addons/hr_evaluation/__openerp__.py
@@ -20,7 +20,7 @@
##############################################################################
{
- "name" : "Human Resources Evaluation",
+ "name" : "Periodic Evaluations",
"version": "0.1",
"author": "OpenERP SA",
"category": "Human Resources",
@@ -39,7 +39,7 @@ level of employee hierarchy fills what and final review and evaluation
is done by the manager.Every evaluation filled by the employees can be viewed
in the form of pdf file. Implements a dashboard for My Current Evaluations
""",
- "demo": ["hr_evaluation_demo.xml", ],
+ "demo": [],
"data": [
"security/ir.model.access.csv",
"security/hr_evaluation_security.xml",
@@ -47,8 +47,8 @@ in the form of pdf file. Implements a dashboard for My Current Evaluations
"hr_evaluation_view.xml",
"report/hr_evaluation_report_view.xml",
"board_hr_evaluation_view.xml",
- 'hr_evaluation_installer_view.xml',
'hr_evaluation_data.xml',
+ 'hr_evaluation_installer.xml',
],
"test": ["test/test_hr_evaluation.yml"],
"active": False,
diff --git a/addons/hr_evaluation/hr_evaluation.py b/addons/hr_evaluation/hr_evaluation.py
index 7634052704c..03ff1692009 100644
--- a/addons/hr_evaluation/hr_evaluation.py
+++ b/addons/hr_evaluation/hr_evaluation.py
@@ -39,6 +39,8 @@ class hr_evaluation_plan(osv.osv):
}
_defaults = {
'active': True,
+ 'month_first': 6,
+ 'month_next': 12,
'company_id': lambda s,cr,uid,c: s.pool.get('res.company')._company_default_get(cr, uid, 'account.account', context=c),
}
hr_evaluation_plan()
@@ -158,7 +160,7 @@ class hr_evaluation(osv.osv):
'survey_request_ids': fields.one2many('hr.evaluation.interview','evaluation_id','Appraisal Forms'),
'plan_id': fields.many2one('hr_evaluation.plan', 'Plan', required=True),
'state': fields.selection([
- ('draft','Draft'),
+ ('draft','New'),
('wait','Plan In Progress'),
('progress','Waiting Appreciation'),
('done','Done'),
diff --git a/addons/hr_evaluation/hr_evaluation_data.xml b/addons/hr_evaluation/hr_evaluation_data.xml
index a83caa71173..b69671f2343 100644
--- a/addons/hr_evaluation/hr_evaluation_data.xml
+++ b/addons/hr_evaluation/hr_evaluation_data.xml
@@ -593,5 +593,636 @@ Once the form had been filled, the employee send it to his supervisor.
+
+
+ Employee Opinion
+ 20
+
+
+
+ 5
+
+
+ Process
+
+
+
+
+ Survey
+
+
+
+
+ 1
+ do_not_validate
+ do_not_validate
+ Please enter a comment.
+ The choices need to add up to [enter sum here].
+
+ The comment you entered is in an invalid format.
+
+ This question requires an answer.
+
+ Employee Details
+
+ multiple_textboxes_diff_type
+ The comment you entered is in an invalid format.
+
+
+
+ Other
+
+
+
+
+ 1
+ do_not_validate
+ do_not_validate
+ Please enter a comment.
+ The choices need to add up to [enter sum here].
+
+ The comment you entered is in an invalid format.
+
+ This question requires an answer.
+
+ Engagement
+
+ matrix_of_choices_only_one_ans
+ The comment you entered is in an invalid format.
+
+
+
+ Other
+
+
+
+
+ 1
+ do_not_validate
+ do_not_validate
+ Please enter a comment.
+ The choices need to add up to [enter sum here].
+
+ The comment you entered is in an invalid format.
+
+ This question requires an answer.
+
+ Leadership
+
+ matrix_of_choices_only_one_ans
+
+
+
+
+
+
+ 1
+ do_not_validate
+ do_not_validate
+ Please enter a comment.
+ The choices need to add up to [enter sum here].
+
+ The comment you entered is in an invalid format.
+
+ This question requires an answer.
+
+ Effectiveness
+
+ matrix_of_choices_only_one_ans
+ The comment you entered is in an invalid format.
+
+
+
+ Other
+
+
+
+
+ 1
+ do_not_validate
+ do_not_validate
+ Please enter a comment.
+ The choices need to add up to [enter sum here].
+
+ The comment you entered is in an invalid format.
+
+ This question requires an answer.
+
+ Continuous Improvement
+
+ matrix_of_choices_only_one_ans
+ The comment you entered is in an invalid format.
+
+
+
+ Other
+
+
+
+
+ 1
+ do_not_validate
+ do_not_validate
+ Please enter a comment.
+ The choices need to add up to [enter sum here].
+
+ The comment you entered is in an invalid format.
+
+ This question requires an answer.
+
+ Openness
+
+ matrix_of_choices_only_one_ans
+ The comment you entered is in an invalid format.
+
+
+
+ Other
+
+
+
+
+ 1
+ do_not_validate
+ do_not_validate
+ Please enter a comment.
+ The choices need to add up to [enter sum here].
+
+ The comment you entered is in an invalid format.
+
+ This question requires an answer.
+
+ Miscellaneous
+
+ matrix_of_choices_only_one_ans
+ The comment you entered is in an invalid format.
+
+
+
+ Other
+
+
+
+
+ 1
+ do_not_validate
+ do_not_validate
+ Please enter a comment.
+ The choices need to add up to [enter sum here].
+
+ The comment you entered is in an invalid format.
+
+ This question requires an answer.
+
+ Additional comments :
+
+ comment
+ The comment you entered is in an invalid format.
+
+
+
+ Other
+
+
+
+
+ 1
+ do_not_validate
+ do_not_validate
+ Please enter a comment.
+ The choices need to add up to [enter sum here].
+
+ The comment you entered is in an invalid format.
+
+ This question requires an answer.
+
+ At the supervisor's appraisal date
+
+ descriptive_text
+ The comment you entered is in an invalid format.
+ * His direct reports will be invited through OpenERP to express a feedback on their supervisor's leadership and to give their opinion about their own engagement and effectiveness, the continuous improvement and openness in action in the company, ...
+
+* The employees will send back their anonymous answers to OpenERP. The data will be handled by the HR manager and a brief summary of the data will be sent to the concerned supervisor, to his team and to the supervisor's supervisor.
+* The appraiser should rate the employee’s major work accomplishments and performance according to the metric provided below :
+
+ 1 - Significantly exceeds standards and expectations required of the position
+ 2 - Exceeds standards and expectations
+ 3 - Meet standards and expectations
+ 4 - Did not meet standards and expectations
+ 5 - Significantly below standards and expectations
+
+
+
+ Other
+
+
+
+
+ 1
+ 1
+ 1
+
+
+
+ 1
+ 1
+ 2
+
+
+
+ 1
+ 1
+ 3
+
+
+
+ 1
+ 1
+ 4
+
+
+
+ 1
+ 1
+ 5
+
+
+
+ 1
+ 1
+ 1
+
+
+
+ 1
+ 1
+ 2
+
+
+
+ 1
+ 1
+ 3
+
+
+
+ 1
+ 1
+ 4
+
+
+
+ 1
+ 1
+ 5
+
+
+
+ 1
+ 1
+ 1
+
+
+
+ 1
+ 1
+ 2
+
+
+
+ 1
+ 1
+ 3
+
+
+
+ 1
+ 1
+ 4
+
+
+
+ 1
+ 1
+ 5
+
+
+
+ 1
+ 1
+ 1
+
+
+
+ 1
+ 1
+ 2
+
+
+
+ 1
+ 1
+ 3
+
+
+
+ 1
+ 1
+ 4
+
+
+
+ 1
+ 1
+ 5
+
+
+
+ 1
+ 1
+ 1
+
+
+
+ 1
+ 1
+ 2
+
+
+
+ 1
+ 1
+ 3
+
+
+
+ 1
+ 1
+ 4
+
+
+
+ 1
+ 1
+ 5
+
+
+
+ 1
+ 1
+ 1
+
+
+
+ 1
+ 1
+ 2
+
+
+
+ 1
+ 1
+ 3
+
+
+
+ 1
+ 1
+ 4
+
+
+
+ 1
+ 1
+ 5
+
+
+
+ 1
+ Demonstrates genuine concern for me as a person.
+
+
+
+
+ 1
+ I'm efficient at work and my achievements are successful.
+
+
+
+
+ 1
+ I am proud to tell others I work here.
+
+
+
+
+ 0
+ Name of your direct supervisor
+
+ char
+
+
+
+ 1
+ Actions by Executive management show genuine interest in the well-being of employees.
+
+
+
+
+ 1
+ I know the company's values and live them.
+
+
+
+
+ 1
+ My work contributes towards the continuous improvement of the company, our services or products.
+
+
+
+
+ 1
+ I have enough work.
+
+
+
+
+ 0
+ Date
+
+ datetime
+
+
+
+ 1
+ I consistently acquire new knowledge, skills or understanding through contact with my supervisor. He helps me growing my compete
+
+
+
+
+ 1
+ My job provides me with a sense of personal accomplishment.
+
+
+
+
+ 1
+ What I did several months ago is still of use to the company, the services or the products today.
+
+
+
+
+ 1
+ My best achievements have been communicated to the community, internally or to customers.
+
+
+
+
+ 1
+ I have the same opportunity to succeed as others with similar experiences, performance and educational background.
+
+
+
+
+ 1
+ Compared to similar jobs in other companies where I could work, my total compensation is:
+(Scale: Well below others, Below othe
+
+
+
+
+ 1
+ Overall, I believe the quality of products and/or services my workgroup delivers is improving.
+
+
+
+
+ 1
+ I would prefer to remain with this company even if a comparable job were available in another company.
+
+
+
+
+ 1
+ Listens and takes into account all ideas and do his best to put in place the best of these.
+
+
+
+
+ 1
+ I mostly work on value-added tasks for the company, the products or the services. (Value-added task : significant improvement pe
+
+
+
+
+ 1
+ Our workgroup identifies and reduces waste of time in our activities and processes.
+
+
+
+
+ 1
+ Taking everything into account, how satisfied are you with your current job?
+
+
+
+
+ 1
+ I understand the company strategy and how my workgroup supports it.
+
+
+
+
+ 1
+ I am willing to put in a great deal of effort beyond what is expected to help my workgroup succeed.
+
+
+
+
+ 1
+ I believe the information that I get from the person I report to.
+
+
+
+
+
+
+
+
+ Manager's Evaluation Plan
+
+
+
+
+
+
+
+
+ Send to Subordinates
+
+
+
+ bottom-up
+
+
+
+
+
+
+
+
+ Send to Managers
+
+
+
+ top-down
+
+
+
+
+
+
+
+
+ Send to Employee
+
+
+
+ self
+
+
+
+
+
+
+
+
+ Final Interview With Manager
+
+
+
+ final
+
+
+
+
+
+
+
+
+
+
+ Run Employee Evaluation
+
+
+ 1
+ days
+ -1
+
+
+
+
+
+
diff --git a/addons/hr_evaluation/hr_evaluation_demo.xml b/addons/hr_evaluation/hr_evaluation_demo.xml
deleted file mode 100644
index a7be585272f..00000000000
--- a/addons/hr_evaluation/hr_evaluation_demo.xml
+++ /dev/null
@@ -1,857 +0,0 @@
-
-
-
-
-
- Employee Opinion
- 20
-
-
-
- 5
-
-
-
-
-
- Process
-
-
-
-
-
-
-
- Survey
-
-
-
-
-
-
-
- 1
- do_not_validate
- do_not_validate
- Please enter a comment.
- The choices need to add up to [enter sum here].
-
- The comment you entered is in an invalid format.
-
- This question requires an answer.
-
- Employee Details
-
- multiple_textboxes_diff_type
- The comment you entered is in an invalid format.
-
-
-
- Other
-
-
-
-
-
-
-
- 1
- do_not_validate
- do_not_validate
- Please enter a comment.
- The choices need to add up to [enter sum here].
-
- The comment you entered is in an invalid format.
-
- This question requires an answer.
-
- Engagement
-
- matrix_of_choices_only_one_ans
- The comment you entered is in an invalid format.
-
-
-
- Other
-
-
-
-
-
-
-
- 1
- do_not_validate
- do_not_validate
- Please enter a comment.
- The choices need to add up to [enter sum here].
-
- The comment you entered is in an invalid format.
-
- This question requires an answer.
-
- Leadership
-
- matrix_of_choices_only_one_ans
-
-
-
-
-
-
-
-
-
-
-
-
- 1
- do_not_validate
- do_not_validate
- Please enter a comment.
- The choices need to add up to [enter sum here].
-
- The comment you entered is in an invalid format.
-
- This question requires an answer.
-
- Effectiveness
-
- matrix_of_choices_only_one_ans
- The comment you entered is in an invalid format.
-
-
-
- Other
-
-
-
-
-
-
-
- 1
- do_not_validate
- do_not_validate
- Please enter a comment.
- The choices need to add up to [enter sum here].
-
- The comment you entered is in an invalid format.
-
- This question requires an answer.
-
- Continuous Improvement
-
- matrix_of_choices_only_one_ans
- The comment you entered is in an invalid format.
-
-
-
- Other
-
-
-
-
-
-
-
- 1
- do_not_validate
- do_not_validate
- Please enter a comment.
- The choices need to add up to [enter sum here].
-
- The comment you entered is in an invalid format.
-
- This question requires an answer.
-
- Openness
-
- matrix_of_choices_only_one_ans
- The comment you entered is in an invalid format.
-
-
-
- Other
-
-
-
-
-
-
-
- 1
- do_not_validate
- do_not_validate
- Please enter a comment.
- The choices need to add up to [enter sum here].
-
- The comment you entered is in an invalid format.
-
- This question requires an answer.
-
- Miscellaneous
-
- matrix_of_choices_only_one_ans
- The comment you entered is in an invalid format.
-
-
-
- Other
-
-
-
-
-
-
-
- 1
- do_not_validate
- do_not_validate
- Please enter a comment.
- The choices need to add up to [enter sum here].
-
- The comment you entered is in an invalid format.
-
- This question requires an answer.
-
- Additional comments :
-
- comment
- The comment you entered is in an invalid format.
-
-
-
- Other
-
-
-
-
-
-
-
- 1
- do_not_validate
- do_not_validate
- Please enter a comment.
- The choices need to add up to [enter sum here].
-
- The comment you entered is in an invalid format.
-
- This question requires an answer.
-
- At the supervisor's appraisal date
-
- descriptive_text
- The comment you entered is in an invalid format.
- * His direct reports will be invited through OpenERP to express a feedback on their supervisor's leadership and to give their opinion about their own engagement and effectiveness, the continuous improvement and openness in action in the company, ...
-
-* The employees will send back their anonymous answers to OpenERP. The data will be handled by the HR manager and a brief summary of the data will be sent to the concerned supervisor, to his team and to the supervisor's supervisor.
-* The appraiser should rate the employee’s major work accomplishments and performance according to the metric provided below :
-
- 1 - Significantly exceeds standards and expectations required of the position
- 2 - Exceeds standards and expectations
- 3 - Meet standards and expectations
- 4 - Did not meet standards and expectations
- 5 - Significantly below standards and expectations
-
-
-
- Other
-
-
-
-
-
-
-
- 1
- 1
- 1
-
-
-
-
-
-
- 1
- 1
- 2
-
-
-
-
-
-
- 1
- 1
- 3
-
-
-
-
-
-
- 1
- 1
- 4
-
-
-
-
-
-
- 1
- 1
- 5
-
-
-
-
-
-
- 1
- 1
- 1
-
-
-
-
-
-
- 1
- 1
- 2
-
-
-
-
-
-
- 1
- 1
- 3
-
-
-
-
-
-
- 1
- 1
- 4
-
-
-
-
-
-
- 1
- 1
- 5
-
-
-
-
-
-
- 1
- 1
- 1
-
-
-
-
-
-
- 1
- 1
- 2
-
-
-
-
-
-
- 1
- 1
- 3
-
-
-
-
-
-
- 1
- 1
- 4
-
-
-
-
-
-
- 1
- 1
- 5
-
-
-
-
-
-
- 1
- 1
- 1
-
-
-
-
-
-
- 1
- 1
- 2
-
-
-
-
-
-
- 1
- 1
- 3
-
-
-
-
-
-
- 1
- 1
- 4
-
-
-
-
-
-
- 1
- 1
- 5
-
-
-
-
-
-
- 1
- 1
- 1
-
-
-
-
-
-
- 1
- 1
- 2
-
-
-
-
-
-
- 1
- 1
- 3
-
-
-
-
-
-
- 1
- 1
- 4
-
-
-
-
-
-
- 1
- 1
- 5
-
-
-
-
-
-
- 1
- 1
- 1
-
-
-
-
-
-
- 1
- 1
- 2
-
-
-
-
-
-
- 1
- 1
- 3
-
-
-
-
-
-
- 1
- 1
- 4
-
-
-
-
-
-
- 1
- 1
- 5
-
-
-
-
-
-
- 1
- Demonstrates genuine concern for me as a person.
-
-
-
-
-
-
-
- 1
- I'm efficient at work and my achievements are successful.
-
-
-
-
-
-
-
- 1
- I am proud to tell others I work here.
-
-
-
-
-
-
-
- 0
- Name of your direct supervisor
-
- char
-
-
-
-
-
-
- 1
- Actions by Executive management show genuine interest in the well-being of employees.
-
-
-
-
-
-
-
- 1
- I know the company's values and live them.
-
-
-
-
-
-
-
- 1
- My work contributes towards the continuous improvement of the company, our services or products.
-
-
-
-
-
-
-
- 1
- I have enough work.
-
-
-
-
-
-
-
- 0
- Date
-
- datetime
-
-
-
-
-
-
- 1
- I consistently acquire new knowledge, skills or understanding through contact with my supervisor. He helps me growing my compete
-
-
-
-
-
-
-
- 1
- My job provides me with a sense of personal accomplishment.
-
-
-
-
-
-
-
- 1
- What I did several months ago is still of use to the company, the services or the products today.
-
-
-
-
-
-
-
- 1
- My best achievements have been communicated to the community, internally or to customers.
-
-
-
-
-
-
-
- 1
- I have the same opportunity to succeed as others with similar experiences, performance and educational background.
-
-
-
-
-
-
-
- 1
- Compared to similar jobs in other companies where I could work, my total compensation is:
-(Scale: Well below others, Below othe
-
-
-
-
-
-
-
- 1
- Overall, I believe the quality of products and/or services my workgroup delivers is improving.
-
-
-
-
-
-
-
- 1
- I would prefer to remain with this company even if a comparable job were available in another company.
-
-
-
-
-
-
-
- 1
- Listens and takes into account all ideas and do his best to put in place the best of these.
-
-
-
-
-
-
-
- 1
- I mostly work on value-added tasks for the company, the products or the services. (Value-added task : significant improvement pe
-
-
-
-
-
-
-
- 1
- Our workgroup identifies and reduces waste of time in our activities and processes.
-
-
-
-
-
-
-
- 1
- Taking everything into account, how satisfied are you with your current job?
-
-
-
-
-
-
-
- 1
- I understand the company strategy and how my workgroup supports it.
-
-
-
-
-
-
-
-
- 1
- I am willing to put in a great deal of effort beyond what is expected to help my workgroup succeed.
-
-
-
-
-
-
-
- 1
- I believe the information that I get from the person I report to.
-
-
-
-
-
-
-
-
-
- Manager's Evaluation Plan
-
-
-
-
-
-
-
-
- Send to Subordinates
-
-
-
- bottom-up
-
-
-
-
-
-
-
-
-
-
-
- Send to Managers
-
-
-
- top-down
-
-
-
-
-
-
-
-
-
-
-
- Send to Employee
-
-
-
- self
-
-
-
-
-
-
-
-
-
-
-
- Final Interview With Manager
-
-
-
- final
-
-
-
-
-
-
-
-
-
-
- Run Employee Evaluation
-
-
- 1
- minutes
- -1
-
-
-
-
-
-
- Employee Evaluation
-
- [('employee_id.user_id','=',user.id)]
-
-
-
- Manager Evaluation
-
- ['|',('employee_id.user_id','=',user.id),('employee_id.parent_id.user_id','=',user.id )]
-
-
-
-
-
diff --git a/addons/hr_evaluation/hr_evaluation_installer.xml b/addons/hr_evaluation/hr_evaluation_installer.xml
new file mode 100644
index 00000000000..842363559a9
--- /dev/null
+++ b/addons/hr_evaluation/hr_evaluation_installer.xml
@@ -0,0 +1,17 @@
+
+
+
+
+ Review Evaluation Plans
+ ir.actions.act_window
+ hr_evaluation.plan
+ form
+ tree,form
+
+
+
+
+
+
+
+
diff --git a/addons/hr_evaluation/hr_evaluation_installer_view.xml b/addons/hr_evaluation/hr_evaluation_installer_view.xml
deleted file mode 100644
index 27dd0945553..00000000000
--- a/addons/hr_evaluation/hr_evaluation_installer_view.xml
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
-
- Define Your Department Structure
- ir.actions.act_window
- hr.department
- form
- tree,form
-
- Your Company's Department Structure is used to manage all documents related to employees by departments: expenses and timesheet validation, leaves management, recruitments, etc.
-
-
-
-
-
- 3
-
-
-
diff --git a/addons/hr_evaluation/hr_evaluation_view.xml b/addons/hr_evaluation/hr_evaluation_view.xml
index e5a3d0ac818..46b9994c09e 100644
--- a/addons/hr_evaluation/hr_evaluation_view.xml
+++ b/addons/hr_evaluation/hr_evaluation_view.xml
@@ -170,7 +170,7 @@
-
+
@@ -201,7 +201,7 @@
-
+
-
-
+
+
diff --git a/addons/hr_expense/__openerp__.py b/addons/hr_expense/__openerp__.py
index 09352fcfa89..4a22f00e076 100644
--- a/addons/hr_expense/__openerp__.py
+++ b/addons/hr_expense/__openerp__.py
@@ -21,7 +21,7 @@
{
- 'name': 'Human Resources Expenses Tracking',
+ 'name': 'Expenses',
'version': '1.0',
'category': 'Human Resources',
'complexity': "easy",
diff --git a/addons/hr_expense/board_hr_expense_manager_view.xml b/addons/hr_expense/board_hr_expense_manager_view.xml
index d86c7614d7f..c45979057a1 100644
--- a/addons/hr_expense/board_hr_expense_manager_view.xml
+++ b/addons/hr_expense/board_hr_expense_manager_view.xml
@@ -21,12 +21,5 @@
-
diff --git a/addons/hr_expense/board_hr_expense_view.xml b/addons/hr_expense/board_hr_expense_view.xml
index 0493f628ebd..4e213048dc7 100644
--- a/addons/hr_expense/board_hr_expense_view.xml
+++ b/addons/hr_expense/board_hr_expense_view.xml
@@ -2,13 +2,6 @@
-
- My Expenseshr.expense.expense
diff --git a/addons/hr_expense/hr_expense.py b/addons/hr_expense/hr_expense.py
index 68d607b0335..2dc6ad090ac 100644
--- a/addons/hr_expense/hr_expense.py
+++ b/addons/hr_expense/hr_expense.py
@@ -77,7 +77,7 @@ class hr_expense_expense(osv.osv):
'department_id':fields.many2one('hr.department','Department'),
'company_id': fields.many2one('res.company', 'Company', required=True),
'state': fields.selection([
- ('draft', 'Draft'),
+ ('draft', 'New'),
('confirm', 'Waiting Approval'),
('accepted', 'Approved'),
('invoiced', 'Invoiced'),
@@ -92,14 +92,17 @@ class hr_expense_expense(osv.osv):
'employee_id': _employee_get,
'user_id': lambda cr, uid, id, c={}: id,
'currency_id': _get_currency,
- 'company_id': lambda self, cr, uid, c: self.pool.get('res.users').browse(cr, uid, uid, c).company_id.id,
}
def onchange_employee_id(self, cr, uid, ids, employee_id, context=None):
+ emp_obj = self.pool.get('hr.employee')
department_id = False
+ company_id = False
if employee_id:
- department_id = self.pool.get('hr.employee').browse(cr, uid, employee_id, context=context).department_id.id or False
- return {'value':{'department_id':department_id}}
+ employee = emp_obj.browse(cr, uid, employee_id, context=context)
+ department_id = employee.department_id.id
+ company_id = employee.company_id.id
+ return {'value': {'department_id': department_id, 'company_id': company_id}}
def expense_confirm(self, cr, uid, ids, *args):
self.write(cr, uid, ids, {
@@ -154,6 +157,7 @@ class hr_expense_expense(osv.osv):
analytic_journal_obj = self.pool.get('account.analytic.journal')
account_journal = self.pool.get('account.journal')
for exp in self.browse(cr, uid, ids):
+ company_id = exp.company_id.id
lines = []
for l in exp.line_ids:
tax_id = []
@@ -163,10 +167,9 @@ class hr_expense_expense(osv.osv):
acc = l.product_id.categ_id.property_account_expense_categ
tax_id = [x.id for x in l.product_id.supplier_taxes_id]
else:
- acc = property_obj.get(cr, uid, 'property_account_expense_categ', 'product.category')
+ acc = property_obj.get(cr, uid, 'property_account_expense_categ', 'product.category', context={'force_company': company_id})
if not acc:
raise osv.except_osv(_('Error !'), _('Please configure Default Expense account for Product purchase, `property_account_expense_categ`'))
-
lines.append((0, False, {
'name': l.name,
'account_id': acc.id,
@@ -191,6 +194,7 @@ class hr_expense_expense(osv.osv):
'partner_id': exp.employee_id.address_home_id.partner_id.id,
'address_invoice_id': exp.employee_id.address_home_id.id,
'address_contact_id': exp.employee_id.address_home_id.id,
+ 'company_id': company_id,
'origin': exp.name,
'invoice_line': lines,
'currency_id': exp.currency_id.id,
@@ -206,7 +210,7 @@ class hr_expense_expense(osv.osv):
inv['journal_id']=exp.journal_id.id
journal = exp.journal_id
else:
- journal_id = invoice_obj._get_journal(cr, uid, context={'type': 'in_invoice'})
+ journal_id = invoice_obj._get_journal(cr, uid, context={'type': 'in_invoice', 'company_id': company_id})
if journal_id:
inv['journal_id'] = journal_id
journal = account_journal.browse(cr, uid, journal_id)
@@ -259,7 +263,7 @@ class hr_expense_line(osv.osv):
'unit_amount': fields.float('Unit Price', digits_compute=dp.get_precision('Account')),
'unit_quantity': fields.float('Quantities' ),
'product_id': fields.many2one('product.product', 'Product', domain=[('hr_expense_ok','=',True)]),
- 'uom_id': fields.many2one('product.uom', 'UoM' ),
+ 'uom_id': fields.many2one('product.uom', 'UoM'),
'description': fields.text('Description'),
'analytic_account': fields.many2one('account.analytic.account','Analytic account'),
'ref': fields.char('Reference', size=32),
diff --git a/addons/hr_expense/hr_expense_installer_view.xml b/addons/hr_expense/hr_expense_installer_view.xml
index a5c378238a6..bdb5fdedcb4 100644
--- a/addons/hr_expense/hr_expense_installer_view.xml
+++ b/addons/hr_expense/hr_expense_installer_view.xml
@@ -24,6 +24,7 @@
[('hr_expense_ok','=',True)]
+ Define one product for each expense type allowed for an employee (travel by car, hostel, restaurant, etc). If you reimburse the employees at a fixed rate, set a cost and a unit of measure on the product. If you reimburse based on real costs, set the cost at 0.00. The user will set the real price when recording his expense sheet.
diff --git a/addons/hr_expense/hr_expense_view.xml b/addons/hr_expense/hr_expense_view.xml
index 295f9593d0f..786dc6beee2 100644
--- a/addons/hr_expense/hr_expense_view.xml
+++ b/addons/hr_expense/hr_expense_view.xml
@@ -99,11 +99,11 @@
-
+
-
+
@@ -136,8 +136,7 @@
-
-
+
-
- Employee Expense
-
- [('employee_id.user_id','=',user.id)]
-
- Manager Expense[(1,'=',1)]
-
+ Employee Expense
diff --git a/addons/hr_holidays/__openerp__.py b/addons/hr_holidays/__openerp__.py
index 63c2eb76195..563bb409b41 100644
--- a/addons/hr_holidays/__openerp__.py
+++ b/addons/hr_holidays/__openerp__.py
@@ -21,7 +21,7 @@
{
- "name": "Human Resources: Holidays management",
+ "name": "Leaves Management",
"version": "1.5",
"author": ['OpenERP SA', 'Axelor'],
"category": "Human Resources",
diff --git a/addons/hr_holidays/board_hr_holidays_view.xml b/addons/hr_holidays/board_hr_holidays_view.xml
index 71b4e2a98fb..9dc9646da9b 100644
--- a/addons/hr_holidays/board_hr_holidays_view.xml
+++ b/addons/hr_holidays/board_hr_holidays_view.xml
@@ -1,17 +1,6 @@
-
-
-
-
-
-
My Leaveshr.holidays.status
diff --git a/addons/hr_holidays/board_hr_manager_holidays_view.xml b/addons/hr_holidays/board_hr_manager_holidays_view.xml
index 980a8dd5fbb..662569fb81d 100644
--- a/addons/hr_holidays/board_hr_manager_holidays_view.xml
+++ b/addons/hr_holidays/board_hr_manager_holidays_view.xml
@@ -15,7 +15,7 @@
board.hr.holidays.manager.formboard.board
-
+ form
@@ -24,12 +24,5 @@
-
diff --git a/addons/hr_holidays/hr_holidays.py b/addons/hr_holidays/hr_holidays.py
index 9ca68bdb55e..f6f660f5f45 100644
--- a/addons/hr_holidays/hr_holidays.py
+++ b/addons/hr_holidays/hr_holidays.py
@@ -111,7 +111,7 @@ class hr_holidays(osv.osv):
_columns = {
'name': fields.char('Description', required=True, size=64),
- 'state': fields.selection([('draft', 'Draft'), ('confirm', 'Waiting Approval'), ('refuse', 'Refused'),
+ 'state': fields.selection([('draft', 'New'), ('confirm', 'Waiting Approval'), ('refuse', 'Refused'),
('validate1', 'Waiting Second Approval'), ('validate', 'Approved'), ('cancel', 'Cancelled')],
'State', readonly=True, help='The state is set to \'Draft\', when a holiday request is created.\
\nThe state is \'Waiting Approval\', when holiday request is confirmed by user.\
@@ -216,7 +216,7 @@ class hr_holidays(osv.osv):
}
return {'warning': warning, 'value': {'double_validation': double_validation}}
- def set_to_draft(self, cr, uid, ids, *args):
+ def set_to_draft(self, cr, uid, ids, context=None):
self.write(cr, uid, ids, {
'state': 'draft',
'manager_id': False,
@@ -228,15 +228,15 @@ class hr_holidays(osv.osv):
wf_service.trg_create(uid, 'hr.holidays', id, cr)
return True
- def holidays_validate(self, cr, uid, ids, *args):
- self.check_holidays(cr, uid, ids)
+ def holidays_validate(self, cr, uid, ids, context=None):
+ self.check_holidays(cr, uid, ids, context=context)
obj_emp = self.pool.get('hr.employee')
ids2 = obj_emp.search(cr, uid, [('user_id', '=', uid)])
manager = ids2 and ids2[0] or False
return self.write(cr, uid, ids, {'state':'validate1', 'manager_id': manager})
- def holidays_validate2(self, cr, uid, ids, *args):
- self.check_holidays(cr, uid, ids)
+ def holidays_validate2(self, cr, uid, ids, context=None):
+ self.check_holidays(cr, uid, ids, context=context)
obj_emp = self.pool.get('hr.employee')
ids2 = obj_emp.search(cr, uid, [('user_id', '=', uid)])
manager = ids2 and ids2[0] or False
@@ -286,23 +286,22 @@ class hr_holidays(osv.osv):
self.write(cr, uid, holiday_ids, {'manager_id2': manager})
return True
- def holidays_confirm(self, cr, uid, ids, *args):
- self.check_holidays(cr, uid, ids)
+ def holidays_confirm(self, cr, uid, ids, context=None):
+ self.check_holidays(cr, uid, ids, context=context)
return self.write(cr, uid, ids, {'state':'confirm'})
- def holidays_refuse(self, cr, uid, ids, approval, *args):
+ def holidays_refuse(self, cr, uid, ids, approval, context=None):
obj_emp = self.pool.get('hr.employee')
ids2 = obj_emp.search(cr, uid, [('user_id', '=', uid)])
manager = ids2 and ids2[0] or False
if approval == 'first_approval':
- self.write(cr, uid, ids, {'manager_id': manager})
+ self.write(cr, uid, ids, {'state': 'refuse', 'manager_id': manager})
else:
- self.write(cr, uid, ids, {'manager_id2': manager})
- self.write(cr, uid, ids, {'state': 'refuse'})
- self.holidays_cancel(cr, uid, ids)
+ self.write(cr, uid, ids, {'state': 'refuse', 'manager_id2': manager})
+ self.holidays_cancel(cr, uid, ids, context=context)
return True
- def holidays_cancel(self, cr, uid, ids, *args):
+ def holidays_cancel(self, cr, uid, ids, context=None):
obj_crm_meeting = self.pool.get('crm.meeting')
for record in self.browse(cr, uid, ids):
# Delete the meeting
@@ -316,7 +315,7 @@ class hr_holidays(osv.osv):
return True
- def check_holidays(self, cr, uid, ids):
+ def check_holidays(self, cr, uid, ids, context=None):
holi_status_obj = self.pool.get('hr.holidays.status')
for record in self.browse(cr, uid, ids):
if record.holiday_type == 'employee' and record.type == 'remove':
@@ -358,12 +357,24 @@ class hr_employee(osv.osv):
leave_id = holiday_obj.create(cr, uid, {'name': _('Leave Request for %s') % employee.name, 'employee_id': employee.id, 'holiday_status_id': status_id, 'type': 'remove', 'holiday_type': 'employee', 'number_of_days_temp': abs(diff)}, context=context)
else:
return False
- holiday_obj.holidays_confirm(cr, uid, [leave_id])
- holiday_obj.holidays_validate2(cr, uid, [leave_id])
+ wf_service = netsvc.LocalService("workflow")
+ wf_service.trg_validate(uid, 'hr.holidays', leave_id, 'confirm', cr)
+ wf_service.trg_validate(uid, 'hr.holidays', leave_id, 'validate', cr)
+ wf_service.trg_validate(uid, 'hr.holidays', leave_id, 'second_validate', cr)
return True
def _get_remaining_days(self, cr, uid, ids, name, args, context=None):
- cr.execute("SELECT sum(h.number_of_days_temp) as days, h.employee_id from hr_holidays h join hr_holidays_status s on (s.id=h.holiday_status_id) where h.type='add' and h.state='validate' and s.limit=False group by h.employee_id")
+ cr.execute("""SELECT
+ sum(h.number_of_days) as days,
+ h.employee_id
+ from
+ hr_holidays h
+ join hr_holidays_status s on (s.id=h.holiday_status_id)
+ where
+ h.state='validate' and
+ s.limit=False and
+ h.employee_id in (%s)
+ group by h.employee_id"""% (','.join(map(str,ids)),) )
res = cr.dictfetchall()
remaining = {}
for r in res:
@@ -373,11 +384,10 @@ class hr_employee(osv.osv):
remaining[employee_id] = 0.0
return remaining
-
_columns = {
- 'remaining_leaves': fields.function(_get_remaining_days, string='Remaining Legal Leaves', fnct_inv=_set_remaining_days, type="float", help='Total number of legal leaves allocated to this employee, change this value to create allocation/leave requests.', store=True),
+ 'remaining_leaves': fields.function(_get_remaining_days, string='Remaining Legal Leaves', fnct_inv=_set_remaining_days, type="float", help='Total number of legal leaves allocated to this employee, change this value to create allocation/leave requests.'),
}
hr_employee()
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/hr_holidays/hr_holidays_view.xml b/addons/hr_holidays/hr_holidays_view.xml
index 074b44a4104..b6d6a64ed26 100644
--- a/addons/hr_holidays/hr_holidays_view.xml
+++ b/addons/hr_holidays/hr_holidays_view.xml
@@ -8,10 +8,9 @@
-
-
+
@@ -22,8 +21,6 @@
-
-
@@ -84,7 +81,7 @@
-
+
@@ -127,7 +124,7 @@
-
+
@@ -146,7 +143,7 @@
hr.holidaystree
-
+
@@ -226,7 +223,7 @@
hr.holidaystree
-
+
@@ -315,7 +312,7 @@
formtree,form
- {'search_default_my_leaves': 1, 'search_default_group_type': 1}
+ {'search_default_my_leaves': 1, 'search_default_group_type': 1, 'search_default_validated': 1}[('holiday_type','=','employee')]
@@ -438,7 +435,7 @@
hr.employeetree
-
+
@@ -446,19 +443,20 @@
- Assign Legal Leaves to Employees
+ Allocate Leaves for Employeesir.actions.act_windowhr.employeeformtree,form
+ You can assign remaining Legal Leaves for each employee, OpenERP will automatically create and validate allocation requests.
-
-
+
+
@@ -468,7 +466,7 @@
-
+
diff --git a/addons/hr_holidays/hr_holidays_wizard.xml b/addons/hr_holidays/hr_holidays_wizard.xml
index 01aff603626..8215abf12f9 100644
--- a/addons/hr_holidays/hr_holidays_wizard.xml
+++ b/addons/hr_holidays/hr_holidays_wizard.xml
@@ -1,12 +1,6 @@
-
-
' % (row_id,x,display[x]) for x in range(1,len(display)+1) ]
-
+
# Computing the xml
xml = '''
%s
@@ -120,18 +121,17 @@ class report_custom(report_rml):
# date_xml=[]
for l in range(0,len(legend)):
- date_xml += ['' % (l+1,legend[l][0],legend[l][1],legend[l][2])]
-
+ date_xml += ['' % (l+1,legend[l][0],_(legend[l][1]),legend[l][2])]
date_xml += ['' % (som.strftime('%B'), som.year),'']
cell=1
if day_diff.days>=30:
- date_xml += ['' % (x, som.replace(day=x).strftime('%a'),x-som.day+1) for x in range(som.day, lengthmonth(som.year, som.month)+1)]
+ date_xml += ['' % (x, _(som.replace(day=x).strftime('%a')),x-som.day+1) for x in range(som.day, lengthmonth(som.year, som.month)+1)]
else:
if day_diff.days>=(lengthmonth(som.year, som.month)-som.day):
- date_xml += ['' % (x, som.replace(day=x).strftime('%a'),x-som.day+1) for x in range(som.day, lengthmonth(som.year, som.month)+1)]
+ date_xml += ['' % (x, _(som.replace(day=x).strftime('%a')),x-som.day+1) for x in range(som.day, lengthmonth(som.year, som.month)+1)]
else:
- date_xml += ['' % (x, som.replace(day=x).strftime('%a'),x-som.day+1) for x in range(som.day, eom.day+1)]
+ date_xml += ['' % (x, _(som.replace(day=x).strftime('%a')),x-som.day+1) for x in range(som.day, eom.day+1)]
cell=x-som.day+1
day_diff1=day_diff.days-cell+1
@@ -150,7 +150,7 @@ class report_custom(report_rml):
if month+i<=12:
if day_diff1 > lengthmonth(year,i+month): # Not on 30 else you have problems when entering 01-01-2009 for example
som1=datetime.date(year,month+i,1)
- date_xml += ['' % (x, som1.replace(day=x).strftime('%a'),cell+x) for x in range(1, lengthmonth(year,i+month)+1)]
+ date_xml += ['' % (x, _(som1.replace(day=x).strftime('%a')),cell+x) for x in range(1, lengthmonth(year,i+month)+1)]
i=i+1
j=j+1
month_dict[j]=som1.strftime('%B')
@@ -159,7 +159,7 @@ class report_custom(report_rml):
else:
som1=datetime.date(year,month+i,1)
- date_xml += ['' % (x, som1.replace(day=x).strftime('%a'),cell+x) for x in range(1, eom.day+1)]
+ date_xml += ['' % (x, _(som1.replace(day=x).strftime('%a')),cell+x) for x in range(1, eom.day+1)]
i=i+1
j=j+1
month_dict[j]=som1.strftime('%B')
@@ -174,7 +174,7 @@ class report_custom(report_rml):
i=1
if day_diff1>=30:
som1=datetime.date(years,i,1)
- date_xml += ['' % (x, som1.replace(day=x).strftime('%a'),cell+x) for x in range(1, lengthmonth(years,i)+1)]
+ date_xml += ['' % (x, _(som1.replace(day=x).strftime('%a')),cell+x) for x in range(1, lengthmonth(years,i)+1)]
i=i+1
j=j+1
month_dict[j]=som1.strftime('%B')
@@ -186,7 +186,7 @@ class report_custom(report_rml):
i=i+1
j=j+1
month_dict[j]=som1.strftime('%B')
- date_xml += ['' % (x, som1.replace(day=x).strftime('%a'),cell+x) for x in range(1, eom.day+1)]
+ date_xml += ['' % (x, _(som1.replace(day=x).strftime('%a')),cell+x) for x in range(1, eom.day+1)]
cell=cell+x
width_dict[j]=x
@@ -200,16 +200,16 @@ class report_custom(report_rml):
st+=',' + str(0.4 *width_dict[m])+'cm'
st+=',0.4cm\n'
- months_xml =['' % (x,month_dict[x]) for x in range(1,len(month_dict)+1) ]
+ months_xml =['' % (x, _(month_dict[x])) for x in range(1,len(month_dict)+1) ]
months_xml.append(st)
-
+
emp_xml=''
row_id=1
-
+
if data['model']=='hr.employee':
for id in data['form']['emp']:
items = obj_emp.read(cr, uid, id, ['id','name'])
-
+
emp_xml += emp_create_xml(self, cr, uid, 0, holiday_type, row_id, items['id'], items['name'], som, eom)
row_id = row_id +1
@@ -229,7 +229,7 @@ class report_custom(report_rml):
dept_done=1
emp_xml += emp_create_xml(self, cr, uid, 0, holiday_type, row_id, item['id'], item['name'], som, eom)
row_id = row_id +1
-
+
header_xml = '''
%s
diff --git a/addons/hr_holidays/security/ir_rule.xml b/addons/hr_holidays/security/ir_rule.xml
index 285fb381602..f05008203df 100644
--- a/addons/hr_holidays/security/ir_rule.xml
+++ b/addons/hr_holidays/security/ir_rule.xml
@@ -2,17 +2,11 @@
-
- Employee Holidays
-
- ['|', ('employee_id.user_id','=',user.id), ('department_id.manager_id.user_id', '=', user.id)]
-
- Manager Holidays[(1,'=',1)]
-
+ Employee Holidays
diff --git a/addons/hr_payroll/__openerp__.py b/addons/hr_payroll/__openerp__.py
index 9e7debaa992..34e8924bea5 100644
--- a/addons/hr_payroll/__openerp__.py
+++ b/addons/hr_payroll/__openerp__.py
@@ -20,7 +20,7 @@
#
##############################################################################
{
- 'name': 'Human Resource Payroll',
+ 'name': 'Payroll',
'version': '1.0',
'category': 'Human Resources',
'complexity': "expert",
diff --git a/addons/hr_payroll/hr_payroll_view.xml b/addons/hr_payroll/hr_payroll_view.xml
index 912c49b87f5..aa97ad9503a 100644
--- a/addons/hr_payroll/hr_payroll_view.xml
+++ b/addons/hr_payroll/hr_payroll_view.xml
@@ -551,8 +551,8 @@
-
- hr.salary.rule.tree
+
+ hr.salary.rule.listhr.salary.ruletree
@@ -565,6 +565,22 @@
+
+
+ hr.salary.rule.tree
+ hr.salary.rule
+ tree
+ child_ids
+
+
+
+
+
+
+
+
+
+ hr.salary.rule.formhr.salary.rule
@@ -645,7 +661,7 @@
Salary Ruleshr.salary.ruleform
-
+ [('parent_rule_id','=',False)]
@@ -653,6 +669,14 @@
+
+
diff --git a/addons/hr_payroll/security/ir.model.access.csv b/addons/hr_payroll/security/ir.model.access.csv
index d19ec411d5d..4d2afff54c3 100644
--- a/addons/hr_payroll/security/ir.model.access.csv
+++ b/addons/hr_payroll/security/ir.model.access.csv
@@ -13,3 +13,4 @@
"access_hr_payslip_run","hr.payslip.run","model_hr_payslip_run","base.group_hr_manager",1,1,1,1
"access_hr_payslip_input","hr.payslip.input","model_hr_payslip_input","base.group_hr_manager",1,1,1,1
"access_hr_rule_input","hr.rule.input","model_hr_rule_input","base.group_hr_manager",1,1,1,1
+"access_hr_salary_rule_user","hr.salary.rule.user","model_hr_salary_rule","base.group_hr_user",1,1,1,1
\ No newline at end of file
diff --git a/addons/hr_payroll_account/__openerp__.py b/addons/hr_payroll_account/__openerp__.py
index 5a7f67d5d21..beaa08b56cd 100644
--- a/addons/hr_payroll_account/__openerp__.py
+++ b/addons/hr_payroll_account/__openerp__.py
@@ -20,7 +20,7 @@
#
##############################################################################
{
- 'name': 'Human Resource Payroll Accounting',
+ 'name': 'Payroll Accounting',
'version': '1.0',
'category': 'Human Resources',
'complexity': "expert",
diff --git a/addons/hr_payroll_account/hr_payroll_account.py b/addons/hr_payroll_account/hr_payroll_account.py
index 8e4e73458f2..75a49c5a2a6 100644
--- a/addons/hr_payroll_account/hr_payroll_account.py
+++ b/addons/hr_payroll_account/hr_payroll_account.py
@@ -59,9 +59,10 @@ class hr_payslip(osv.osv):
move_ids = []
move_to_cancel = []
for slip in self.browse(cr, uid, ids, context=context):
- move_ids.append(slip.move_id.id)
- if slip.move_id.state == 'posted':
- move_to_cancel.append(slip.move_id.id)
+ if slip.move_id:
+ move_ids.append(slip.move_id.id)
+ if slip.move_id.state == 'posted':
+ move_to_cancel.append(slip.move_id.id)
move_pool.button_cancel(cr, uid, move_to_cancel, context=context)
move_pool.unlink(cr, uid, move_ids, context=context)
return super(hr_payslip, self).cancel_sheet(cr, uid, ids, context=context)
@@ -125,7 +126,7 @@ class hr_payslip(osv.osv):
debit_sum += debit_line[2]['debit'] - debit_line[2]['credit']
if credit_account_id:
line_ids.append(credit_line)
- credit_sum += credit_line[2]['credit'] - credit_line['debit']
+ credit_sum += credit_line[2]['credit'] - credit_line[2]['debit']
if debit_sum > credit_sum:
adjust_credit = (0, 0, {
diff --git a/addons/hr_recruitment/__openerp__.py b/addons/hr_recruitment/__openerp__.py
index 790ac78cd4f..b728609c53d 100644
--- a/addons/hr_recruitment/__openerp__.py
+++ b/addons/hr_recruitment/__openerp__.py
@@ -20,7 +20,7 @@
#
##############################################################################
{
- 'name': 'HR - Recruitment',
+ 'name': 'Recruitment Process',
'version': '1.0',
'category': 'Human Resources',
'complexity': "easy",
diff --git a/addons/hr_recruitment/board_hr_recruitment_statistical_view.xml b/addons/hr_recruitment/board_hr_recruitment_statistical_view.xml
index 73037dfb64f..822a7da3249 100644
--- a/addons/hr_recruitment/board_hr_recruitment_statistical_view.xml
+++ b/addons/hr_recruitment/board_hr_recruitment_statistical_view.xml
@@ -38,13 +38,5 @@
-
-
diff --git a/addons/hr_recruitment/hr_recruitment.py b/addons/hr_recruitment/hr_recruitment.py
index 9ad7180441c..e2ecf522cae 100644
--- a/addons/hr_recruitment/hr_recruitment.py
+++ b/addons/hr_recruitment/hr_recruitment.py
@@ -180,6 +180,7 @@ class hr_applicant(crm.crm_case, osv.osv):
multi='day_open', type="float", store=True),
'day_close': fields.function(_compute_day, string='Days to Close', \
multi='day_close', type="float", store=True),
+ 'color': fields.integer('Color Index'),
}
def _get_stage(self, cr, uid, context=None):
@@ -194,6 +195,7 @@ class hr_applicant(crm.crm_case, osv.osv):
'priority': lambda *a: '',
'company_id': lambda s, cr, uid, c: s.pool.get('res.company')._company_default_get(cr, uid, 'crm.helpdesk', context=c),
'priority': lambda *a: crm.AVAILABLE_PRIORITIES[2][0],
+ 'color': 0,
}
def onchange_job(self,cr, uid, ids, job, context=None):
@@ -442,7 +444,28 @@ class hr_applicant(crm.crm_case, osv.osv):
res = super(hr_applicant, self).case_reset(cr, uid, ids, *args)
self.write(cr, uid, ids, {'date_open': False, 'date_closed': False})
return res
+
+ def set_priority(self, cr, uid, ids, priority):
+ """Set lead priority
+ """
+ return self.write(cr, uid, ids, {'priority' : priority})
+ def set_high_priority(self, cr, uid, ids, *args):
+ """Set lead priority to high
+ """
+ return self.set_priority(cr, uid, ids, '1')
+
+ def set_normal_priority(self, cr, uid, ids, *args):
+ """Set lead priority to normal
+ """
+ return self.set_priority(cr, uid, ids, '3')
+
+ def write(self, cr, uid, ids, vals, context=None):
+ if 'stage_id' in vals and vals['stage_id']:
+ stage = self.pool.get('hr.recruitment.stage').browse(cr, uid, vals['stage_id'], context=context)
+ text = _("Changed Stage to: %s") % stage.name
+ self.message_append(cr, uid, ids, text, body_text=text, context=context)
+ return super(hr_applicant,self).write(cr, uid, ids, vals, context=context)
hr_applicant()
diff --git a/addons/hr_recruitment/hr_recruitment_data.xml b/addons/hr_recruitment/hr_recruitment_data.xml
index 9fafbaf1e03..a1d271c01c8 100644
--- a/addons/hr_recruitment/hr_recruitment_data.xml
+++ b/addons/hr_recruitment/hr_recruitment_data.xml
@@ -88,7 +88,6 @@
Job Survey
- draft20
diff --git a/addons/hr_recruitment/hr_recruitment_installer_view.xml b/addons/hr_recruitment/hr_recruitment_installer_view.xml
index 5fdf1df849a..3d7d49d595e 100644
--- a/addons/hr_recruitment/hr_recruitment_installer_view.xml
+++ b/addons/hr_recruitment/hr_recruitment_installer_view.xml
@@ -1,19 +1,19 @@
-
-
- Review Recruitment Stages
- ir.actions.act_window
- hr.recruitment.stage
- form
- tree,form
- Check if the following stages are matching your recruitment process. Don't forget to specify the department if your recruitment process is different according to the job position.
-
-
+
+
+ Review Recruitment Stages
+ ir.actions.act_window
+ hr.recruitment.stage
+ form
+ tree,form
+ Check if the following stages are matching your recruitment process. Don't forget to specify the department if your recruitment process is different according to the job position.
+
+
-
-
-
- 3
-
+
+
+
+ 3
+
diff --git a/addons/hr_recruitment/hr_recruitment_menu.xml b/addons/hr_recruitment/hr_recruitment_menu.xml
index 9883e311fba..0bac3f8615a 100644
--- a/addons/hr_recruitment/hr_recruitment_menu.xml
+++ b/addons/hr_recruitment/hr_recruitment_menu.xml
@@ -6,7 +6,7 @@
Applicantshr.applicant
- tree,form,graph,calendar
+ tree,form,graph,calendar,kanban{"search_default_user_id":uid, 'search_default_current': 1,"search_default_department_id": department_id}
diff --git a/addons/hr_recruitment/hr_recruitment_view.xml b/addons/hr_recruitment/hr_recruitment_view.xml
index fce529731fc..e5905b16a77 100644
--- a/addons/hr_recruitment/hr_recruitment_view.xml
+++ b/addons/hr_recruitment/hr_recruitment_view.xml
@@ -132,7 +132,7 @@
-
+
@@ -172,7 +172,7 @@
icon="terp-mail-replied" type="action"/>
-
+
@@ -217,12 +217,6 @@
search
-
-
+
+
+ Hr Applicants kanban
+ hr.applicant
+ kanban
+
+
+
+
+
+
-
+
@@ -300,7 +300,7 @@
-
+
diff --git a/addons/mail/__openerp__.py b/addons/mail/__openerp__.py
index e9716be9e8e..47d731aa4e5 100644
--- a/addons/mail/__openerp__.py
+++ b/addons/mail/__openerp__.py
@@ -22,7 +22,7 @@
{
'name': 'Email Subsystem',
'version': '1.0',
- 'category': 'Tools',
+ 'category': 'Hidden',
'complexity': "easy",
'description': """
A generic email subsystem with message storage and queuing
@@ -62,6 +62,7 @@ The main features are:
"res_partner_view.xml",
'security/ir.model.access.csv',
'mail_data.xml',
+ 'mail_installer.xml',
],
'installable': True,
'active': False,
diff --git a/addons/mail/mail_installer.xml b/addons/mail/mail_installer.xml
new file mode 100644
index 00000000000..022bff6e53b
--- /dev/null
+++ b/addons/mail/mail_installer.xml
@@ -0,0 +1,17 @@
+
+
+
+
+ Configure Email Servers
+ ir.actions.act_window
+ ir.mail_server
+ form
+ tree,form
+
+
+
+
+
+
+
+
diff --git a/addons/mail/scripts/__init__.py b/addons/mail/static/scripts/__init__.py
similarity index 100%
rename from addons/mail/scripts/__init__.py
rename to addons/mail/static/scripts/__init__.py
diff --git a/addons/mail/scripts/openerp_mailgate/openerp_mailgate.py b/addons/mail/static/scripts/openerp_mailgate.py
similarity index 100%
rename from addons/mail/scripts/openerp_mailgate/openerp_mailgate.py
rename to addons/mail/static/scripts/openerp_mailgate.py
diff --git a/addons/mail/scripts/openerp_mailgate/__init__.py b/addons/mail/static/scripts/openerp_mailgate/__init__.py
similarity index 100%
rename from addons/mail/scripts/openerp_mailgate/__init__.py
rename to addons/mail/static/scripts/openerp_mailgate/__init__.py
diff --git a/addons/mail/wizard/mail_compose_message.py b/addons/mail/wizard/mail_compose_message.py
index 0bfaf06890a..93bf0b004d8 100644
--- a/addons/mail/wizard/mail_compose_message.py
+++ b/addons/mail/wizard/mail_compose_message.py
@@ -82,9 +82,9 @@ class mail_compose_message(osv.osv_memory):
else:
# default mode
result['model'] = context.get('active_model', False)
- if vals:
- for field in fields:
- result.update({field : vals.get(field, False)})
+ for field in vals:
+ if field in fields:
+ result.update({field : vals[field]})
# link to model and record if not done yet
if not result.get('model') or not result.get('res_id'):
diff --git a/addons/marketing/__init__.py b/addons/marketing/__init__.py
index c83787a6ef7..e68279cad8d 100644
--- a/addons/marketing/__init__.py
+++ b/addons/marketing/__init__.py
@@ -19,7 +19,6 @@
#
##############################################################################
-import marketing_wizard
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/marketing/__openerp__.py b/addons/marketing/__openerp__.py
index d9845cd957d..1f1995c52da 100644
--- a/addons/marketing/__openerp__.py
+++ b/addons/marketing/__openerp__.py
@@ -25,7 +25,7 @@
"version" : "1.1",
"depends" : ["base", "base_setup"],
"author" : "OpenERP SA",
- "category": 'Sales',
+ "category": 'Marketing',
'complexity': "expert",
"description": """
Menu for Marketing.
diff --git a/addons/marketing/i18n/sl.po b/addons/marketing/i18n/sl.po
new file mode 100644
index 00000000000..c3cba4b3f45
--- /dev/null
+++ b/addons/marketing/i18n/sl.po
@@ -0,0 +1,111 @@
+# Slovenian translation for openobject-addons
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR , 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2011-01-11 11:15+0000\n"
+"PO-Revision-Date: 2011-10-11 16:48+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Slovenian \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2011-10-12 04:40+0000\n"
+"X-Generator: Launchpad (build 14124)\n"
+
+#. module: marketing
+#: model:ir.module.module,description:marketing.module_meta_information
+msgid "Menu for Marketing"
+msgstr ""
+
+#. module: marketing
+#: help:marketing.installer,marketing_campaign:0
+msgid ""
+"Helps you to manage marketing campaigns and automate actions and "
+"communication steps."
+msgstr ""
+
+#. module: marketing
+#: field:marketing.installer,progress:0
+msgid "Configuration Progress"
+msgstr "Potek konfiguracije"
+
+#. module: marketing
+#: view:marketing.installer:0
+msgid "title"
+msgstr ""
+
+#. module: marketing
+#: field:marketing.installer,email_template:0
+msgid "Automated E-Mails"
+msgstr ""
+
+#. module: marketing
+#: field:marketing.installer,config_logo:0
+msgid "Image"
+msgstr "Slika"
+
+#. module: marketing
+#: view:marketing.installer:0
+msgid "Configure Your Marketing Application"
+msgstr ""
+
+#. module: marketing
+#: help:marketing.installer,email_template:0
+msgid ""
+"Helps you to design templates of emails and integrate them in your different "
+"processes."
+msgstr ""
+
+#. module: marketing
+#: model:ir.model,name:marketing.model_marketing_installer
+msgid "marketing.installer"
+msgstr ""
+
+#. module: marketing
+#: model:ir.module.module,shortdesc:marketing.module_meta_information
+msgid "Marketing"
+msgstr "Marketing"
+
+#. module: marketing
+#: field:marketing.installer,crm_profiling:0
+msgid "Profiling Tools"
+msgstr "Orodja za profiliranje"
+
+#. module: marketing
+#: view:marketing.installer:0
+msgid ""
+"OpenERP provides Addons to better manage your sales and marketing processes. "
+"Select the ones you would be interested in."
+msgstr ""
+
+#. module: marketing
+#: view:marketing.installer:0
+msgid "Marketing Application Configuration"
+msgstr ""
+
+#. module: marketing
+#: model:ir.actions.act_window,name:marketing.action_marketing_installer
+msgid "Marketing Modules Installation"
+msgstr ""
+
+#. module: marketing
+#: field:marketing.installer,marketing_campaign:0
+msgid "Marketing Campaigns"
+msgstr ""
+
+#. module: marketing
+#: help:marketing.installer,crm_profiling:0
+msgid ""
+"Helps you to perform segmentation of partners and design segmentation "
+"questionnaires"
+msgstr ""
+
+#. module: marketing
+#: view:marketing.installer:0
+msgid "Configure"
+msgstr "Nastavitve"
diff --git a/addons/marketing/marketing_view.xml b/addons/marketing/marketing_view.xml
index 9f70651e5ab..a697d586cd4 100644
--- a/addons/marketing/marketing_view.xml
+++ b/addons/marketing/marketing_view.xml
@@ -11,23 +11,5 @@
web_icon="images/marketing.png"
web_icon_hover="images/marketing-hover.png"/>
-
-
- marketing.installer.view
- base.setup.installer
- form
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/marketing_campaign/__openerp__.py b/addons/marketing_campaign/__openerp__.py
index 78060b1e571..44a2f1e30bd 100644
--- a/addons/marketing_campaign/__openerp__.py
+++ b/addons/marketing_campaign/__openerp__.py
@@ -21,7 +21,7 @@
{
- "name" : "Marketing Campaign",
+ "name" : "Marketing Campaigns",
"version" : "1.1",
"depends" : ["marketing",
"document",
@@ -29,7 +29,7 @@
"decimal_precision"
],
"author" : "OpenERP SA",
- "category": 'Sales',
+ "category": 'Marketing',
'complexity': "expert",
"description": """
This module provides leads automation through marketing campaigns (campaigns can in fact be defined on any resource, not just CRM Leads).
diff --git a/addons/marketing_campaign/marketing_campaign.py b/addons/marketing_campaign/marketing_campaign.py
index 27c91fcc3fe..547281911c4 100644
--- a/addons/marketing_campaign/marketing_campaign.py
+++ b/addons/marketing_campaign/marketing_campaign.py
@@ -113,7 +113,7 @@ this campaign to be run"),
Test in Realtime - It creates and processes all the activities directly but does not send emails or produce reports.
With Manual Confirmation - the campaigns runs normally, but the user has to validate all workitem manually.
Normal - the campaign runs normally and automatically sends all emails and reports (be very careful with this mode, you're live!)"""),
- 'state': fields.selection([('draft', 'Draft'),
+ 'state': fields.selection([('draft', 'New'),
('running', 'Running'),
('done', 'Done'),
('cancelled', 'Cancelled'),],
@@ -267,7 +267,7 @@ class marketing_campaign_segment(osv.osv):
'"No duplicates" prevents selecting records which have already entered the campaign previously.'\
'If the campaign has a "unique field" set, "no duplicates" will also prevent selecting records which have '\
'the same value for the unique field as other records that already entered the campaign.'),
- 'state': fields.selection([('draft', 'Draft'),
+ 'state': fields.selection([('draft', 'New'),
('running', 'Running'),
('done', 'Done'),
('cancelled', 'Cancelled')],
diff --git a/addons/marketing_campaign/marketing_campaign_view.xml b/addons/marketing_campaign/marketing_campaign_view.xml
index cd872e64635..a60b3943a41 100644
--- a/addons/marketing_campaign/marketing_campaign_view.xml
+++ b/addons/marketing_campaign/marketing_campaign_view.xml
@@ -36,7 +36,7 @@
-
+
@@ -161,7 +161,7 @@
-
+
@@ -382,7 +382,7 @@
-
+
diff --git a/addons/marketing_campaign_crm_demo/__openerp__.py b/addons/marketing_campaign_crm_demo/__openerp__.py
index 7fd9155bf9b..4841cc1a2e8 100644
--- a/addons/marketing_campaign_crm_demo/__openerp__.py
+++ b/addons/marketing_campaign_crm_demo/__openerp__.py
@@ -27,7 +27,7 @@
"crm",
],
"author" : "OpenERP SA",
- "category": 'Sales',
+ "category": 'Hidden',
"description": """
Demo data for the module marketing_campaign.
============================================
diff --git a/addons/membership/__openerp__.py b/addons/membership/__openerp__.py
index affcf0a0294..20d01b6a60e 100644
--- a/addons/membership/__openerp__.py
+++ b/addons/membership/__openerp__.py
@@ -23,7 +23,7 @@
{
'name': 'Membership',
'version': '0.1',
- 'category': 'Tools',
+ 'category': 'Hidden',
'description': """
This module allows you to manage all operations for managing memberships.
=========================================================================
diff --git a/addons/membership/report/report_membership_view.xml b/addons/membership/report/report_membership_view.xml
index 0e6ddc630f6..61a0a1d52ce 100644
--- a/addons/membership/report/report_membership_view.xml
+++ b/addons/membership/report/report_membership_view.xml
@@ -36,14 +36,19 @@
-
-
+
+
+
-
+
@@ -91,7 +96,7 @@
report.membershipform
- {"search_default_member":1, 'search_default_Revenue':1, 'search_default_salesman':1, }
+ {"search_default_member":1, 'search_default_Revenue':1, 'search_default_this_month':1, 'search_default_salesman':1, }
diff --git a/addons/mrp/__init__.py b/addons/mrp/__init__.py
index 30367ec35f8..52a5bdda77b 100644
--- a/addons/mrp/__init__.py
+++ b/addons/mrp/__init__.py
@@ -22,7 +22,6 @@
import mrp
import stock
import product
-import installer
import wizard
import report
import company
diff --git a/addons/mrp/__openerp__.py b/addons/mrp/__openerp__.py
index 0eb8c89c6c0..b7b97aef158 100644
--- a/addons/mrp/__openerp__.py
+++ b/addons/mrp/__openerp__.py
@@ -97,6 +97,7 @@ Dashboard provided by this module:
'test/mrp_packs.yml',
'test/mrp_phantom_bom.yml',
'test/mrp_production_order.yml',
+ 'test/mrp_production_cancel.yml',
'test/mrp_report.yml',
],
diff --git a/addons/mrp/i18n/da.po b/addons/mrp/i18n/da.po
new file mode 100644
index 00000000000..b1858f9621c
--- /dev/null
+++ b/addons/mrp/i18n/da.po
@@ -0,0 +1,2394 @@
+# Danish translation for openobject-addons
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR , 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2011-01-11 11:15+0000\n"
+"PO-Revision-Date: 2011-09-22 19:10+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Danish \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2011-09-23 04:38+0000\n"
+"X-Generator: Launchpad (build 14012)\n"
+
+#. module: mrp
+#: field:mrp.production,move_created_ids:0
+#: field:mrp.production,move_created_ids2:0
+msgid "Moves Created"
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,help:mrp.mrp_production_action
+msgid ""
+"Manufacturing Orders are usually proposed automatically by OpenERP based on "
+"the bill of materials and the procurement rules, but you can also create "
+"manufacturing orders manually. OpenERP will handle the consumption of the "
+"raw materials (stock decrease) and the production of the finished products "
+"(stock increase) when the order is processed."
+msgstr ""
+
+#. module: mrp
+#: help:mrp.production,location_src_id:0
+msgid "Location where the system will look for components."
+msgstr ""
+
+#. module: mrp
+#: field:mrp.production,workcenter_lines:0
+msgid "Work Centers Utilisation"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.routing.workcenter:0
+msgid "Routing Work Centers"
+msgstr ""
+
+#. module: mrp
+#: model:ir.module.module,shortdesc:mrp.module_meta_information
+msgid "Manufacturing Resource Planning"
+msgstr ""
+
+#. module: mrp
+#: report:mrp.production.order:0
+msgid "No. Of Cycles"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.routing.workcenter,cycle_nbr:0
+msgid "Number of Cycles"
+msgstr ""
+
+#. module: mrp
+#: model:process.transition,note:mrp.process_transition_minimumstockprocure0
+msgid ""
+"The 'Minimum stock rule' allows the system to create procurement orders "
+"automatically as soon as the minimum stock is reached."
+msgstr ""
+
+#. module: mrp
+#: field:mrp.production,picking_id:0
+#: field:mrp.production.order,picking_id:0
+msgid "Picking list"
+msgstr ""
+
+#. module: mrp
+#: code:addons/mrp/report/price.py:121
+#, python-format
+msgid "Hourly Cost"
+msgstr ""
+
+#. module: mrp
+#: code:addons/mrp/report/price.py:130
+#, python-format
+msgid "Cost Price per Uom"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "Scrap Products"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production.order:0
+#: field:mrp.production.order,day:0
+msgid "Day"
+msgstr "Dag"
+
+#. module: mrp
+#: model:ir.actions.act_window,name:mrp.mrp_routing_action
+#: model:ir.ui.menu,name:mrp.menu_mrp_routing_action
+msgid "Routings"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.workcenter,product_id:0
+msgid "Work Center Product"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.bom:0
+msgid "Search Bill Of Material"
+msgstr "Søg stykliste"
+
+#. module: mrp
+#: model:process.node,note:mrp.process_node_stockproduct1
+msgid "For stockable products and consumables"
+msgstr ""
+
+#. module: mrp
+#: model:process.transition,name:mrp.process_transition_stockproduction0
+msgid "To Produce"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.routing.workcenter,cycle_nbr:0
+msgid ""
+"Number of iterations this work center has to do in the specified operation "
+"of the routing."
+msgstr ""
+
+#. module: mrp
+#: view:mrp.bom:0
+#: field:mrp.bom,code:0
+#: view:mrp.production:0
+#: field:mrp.production,name:0
+msgid "Reference"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "Finished Products"
+msgstr ""
+
+#. module: mrp
+#: model:process.transition,name:mrp.process_transition_servicerfq0
+#: model:process.transition,name:mrp.process_transition_stockrfq0
+msgid "To Buy"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production.order:0
+msgid "Raw Material Location"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.installer,mrp_operations:0
+msgid ""
+"Enhances production orders with readiness states as well as the start date "
+"and end date of execution of the order."
+msgstr ""
+
+#. module: mrp
+#: model:process.transition,note:mrp.process_transition_purchaseprocure0
+msgid "The system launches automatically a RFQ to the preferred supplier."
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "Products to Finish"
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.bom,method:0
+msgid "Set / Pack"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.installer,mrp_subproduct:0
+msgid "MRP Subproducts"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+#: field:mrp.production,state:0
+#: view:mrp.production.order:0
+#: field:mrp.production.order,state:0
+msgid "State"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.workcenter,costs_hour:0
+msgid "Cost per hour"
+msgstr "Kost pr. time"
+
+#. module: mrp
+#: model:process.transition,note:mrp.process_transition_stockproduction0
+msgid ""
+"In case the Supply method of the product is Produce, the system creates a "
+"production order."
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "UOM"
+msgstr ""
+
+#. module: mrp
+#: field:change.production.qty,product_qty:0
+#: field:mrp.bom,product_qty:0
+#: field:mrp.production,product_qty:0
+#: view:mrp.production.order:0
+#: field:mrp.production.order,product_qty:0
+#: field:mrp.production.product.line,product_qty:0
+msgid "Product Qty"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.workcenter,product_id:0
+msgid ""
+"Fill this product to track easily your production costs in the analytic "
+"accounting."
+msgstr ""
+
+#. module: mrp
+#: model:process.node,note:mrp.process_node_purchaseprocure0
+msgid "For purchased material"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.bom.revision,indice:0
+msgid "Revision"
+msgstr ""
+
+#. module: mrp
+#: model:ir.ui.menu,name:mrp.next_id_77
+msgid "Reporting"
+msgstr "Rapportering"
+
+#. module: mrp
+#: field:mrp.workcenter,costs_cycle_account_id:0
+msgid "Cycle Account"
+msgstr ""
+
+#. module: mrp
+#: code:addons/mrp/report/price.py:121
+#, python-format
+msgid "Work Cost"
+msgstr ""
+
+#. module: mrp
+#: report:bom.structure:0
+msgid "["
+msgstr "["
+
+#. module: mrp
+#: model:process.transition,name:mrp.process_transition_procureserviceproduct0
+msgid "Procurement of services"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.workcenter:0
+msgid "Capacity Information"
+msgstr ""
+
+#. module: mrp
+#: report:mrp.production.order:0
+msgid "Destination Location"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.installer:0
+msgid "title"
+msgstr ""
+
+#. module: mrp
+#: model:ir.ui.menu,name:mrp.menu_mrp_bom
+msgid "Master Data"
+msgstr ""
+
+#. module: mrp
+#: model:process.transition,note:mrp.process_transition_stockmts0
+msgid ""
+"The system waits for the products to be available in the stock. These "
+"products are typically procured manually or through a minimum stock rule."
+msgstr ""
+
+#. module: mrp
+#: report:mrp.production.order:0
+msgid "Partner Ref"
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.workcenter.load,measure_unit:0
+msgid "Amount in hours"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.production,product_lines:0
+msgid "Scheduled goods"
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.bom,type:0
+msgid "Sets / Phantom"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.bom,position:0
+msgid "Reference to a position in an external plan."
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.production.order,month:0
+msgid "August"
+msgstr "August"
+
+#. module: mrp
+#: constraint:stock.move:0
+msgid "You try to assign a lot which is not from the same product"
+msgstr ""
+
+#. module: mrp
+#: model:ir.model,name:mrp.model_mrp_production_order
+msgid "Production Order Report"
+msgstr "Produktionsordre rapport"
+
+#. module: mrp
+#: selection:mrp.production.order,month:0
+msgid "June"
+msgstr "Juni"
+
+#. module: mrp
+#: model:ir.model,name:mrp.model_mrp_product_produce
+msgid "Product Produce"
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.production.order,month:0
+msgid "October"
+msgstr "Oktober"
+
+#. module: mrp
+#: code:addons/mrp/report/price.py:177
+#, python-format
+msgid "Components Cost of "
+msgstr ""
+
+#. module: mrp
+#: model:process.transition,name:mrp.process_transition_procurestockableproduct0
+msgid "Procurement of stockable Product"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.bom:0
+msgid "Default UOM"
+msgstr ""
+
+#. module: mrp
+#: code:addons/mrp/report/price.py:130
+#: report:bom.structure:0
+#: field:mrp.product_price,number:0
+#: report:mrp.production.order:0
+#, python-format
+msgid "Quantity"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.production.workcenter.line,hour:0
+msgid "Nbr of hours"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "Confirm Production"
+msgstr ""
+
+#. module: mrp
+#: model:process.transition,note:mrp.process_transition_stockproduct0
+msgid ""
+"The system creates an order (production or purchased) depending on the sold "
+"quantity and the products parameters."
+msgstr ""
+
+#. module: mrp
+#: model:process.transition,note:mrp.process_transition_servicemts0
+msgid ""
+"This is used in case of a service without any impact in the system, a "
+"training session for instance."
+msgstr ""
+
+#. module: mrp
+#: field:mrp.installer,mrp_repair:0
+msgid "Repairs"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.installer,stock_location:0
+msgid "Advanced Routes"
+msgstr ""
+
+#. module: mrp
+#: model:ir.ui.menu,name:mrp.menu_view_resource_calendar_search_mrp
+msgid "Working Time"
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,name:mrp.action_report_in_out_picking_tree
+msgid "Weekly Stock Value Variation"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.installer,mrp_repair:0
+msgid ""
+"Enables warranty and repair management (and their impact on stocks and "
+"invoicing)."
+msgstr ""
+
+#. module: mrp
+#: field:mrp.production,date_planned_date:0
+#: report:mrp.production.order:0
+#: field:mrp.production.order,date_planned:0
+msgid "Scheduled Date"
+msgstr ""
+
+#. module: mrp
+#: report:mrp.production.order:0
+msgid "Bill Of Material"
+msgstr "Stykliste"
+
+#. module: mrp
+#: help:mrp.routing,location_id:0
+msgid ""
+"Keep empty if you produce at the location where the finished products are "
+"needed.Set a location if you produce at a fixed location. This can be a "
+"partner location if you subcontract the manufacturing operations."
+msgstr ""
+
+#. module: mrp
+#: view:board.board:0
+msgid "Stock Value Variation"
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,name:mrp.action2
+msgid "Bill of Materials Structure"
+msgstr "Stykliste struktur"
+
+#. module: mrp
+#: model:process.node,note:mrp.process_node_serviceproduct0
+msgid "Product type is service"
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,help:mrp.mrp_property_group_action
+msgid ""
+"Define specific property groups that can be assigned to the properties of "
+"your bill of materials."
+msgstr ""
+
+#. module: mrp
+#: model:process.transition,name:mrp.process_transition_bom0
+msgid "Manufacturing decomposition"
+msgstr ""
+
+#. module: mrp
+#: model:process.node,note:mrp.process_node_serviceproduct1
+msgid "For Services."
+msgstr ""
+
+#. module: mrp
+#: field:mrp.bom.revision,date:0
+msgid "Modification Date"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.workcenter,costs_cycle_account_id:0
+#: help:mrp.workcenter,costs_hour_account_id:0
+msgid ""
+"Complete this only if you want automatic analytic accounting entries on "
+"production orders."
+msgstr ""
+
+#. module: mrp
+#: field:mrp.production.workcenter.line,cycle:0
+msgid "Nbr of cycles"
+msgstr ""
+
+#. module: mrp
+#: model:process.node,note:mrp.process_node_orderrfq0
+#: model:process.node,note:mrp.process_node_rfq0
+msgid "Request for Quotation."
+msgstr ""
+
+#. module: mrp
+#: model:process.transition,note:mrp.process_transition_billofmaterialrouting0
+msgid ""
+"The Bill of Material is linked to a routing, i.e. the succession of work "
+"centers."
+msgstr ""
+
+#. module: mrp
+#: constraint:product.product:0
+msgid "Error: Invalid ean code"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.routing:0
+#: field:mrp.routing,location_id:0
+msgid "Production Location"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "Change Qty"
+msgstr "Ændre antal"
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "Force Reservation"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.bom.revision,author_id:0
+msgid "Author"
+msgstr ""
+
+#. module: mrp
+#: field:report.mrp.inout,value:0
+msgid "Stock value"
+msgstr "Lager værdi"
+
+#. module: mrp
+#: model:ir.actions.act_window,name:mrp.action_product_bom_structure
+msgid "Product BoM Structure"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "Search Production"
+msgstr "Søg produktion"
+
+#. module: mrp
+#: code:addons/mrp/report/price.py:130
+#, python-format
+msgid "Supplier Price per Uom"
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.production.order,month:0
+msgid "March"
+msgstr "Marts"
+
+#. module: mrp
+#: field:mrp.bom,child_complete_ids:0
+msgid "BoM Hierarchy"
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,name:mrp.act_mrp_product_produce
+#: view:mrp.product.produce:0
+#: view:mrp.production:0
+msgid "Produce"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.workcenter,costs_cycle:0
+msgid "Specify Cost of Work Center per cycle."
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.production,state:0
+#: view:mrp.production.order:0
+#: selection:mrp.production.order,state:0
+msgid "Picking Exception"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.bom,bom_lines:0
+msgid "BoM Lines"
+msgstr "Stykliste linier"
+
+#. module: mrp
+#: field:mrp.workcenter,time_start:0
+msgid "Time before prod."
+msgstr ""
+
+#. module: mrp
+#: help:mrp.routing,active:0
+msgid ""
+"If the active field is set to False, it will allow you to hide the routing "
+"without removing it."
+msgstr ""
+
+#. module: mrp
+#: model:process.transition,name:mrp.process_transition_billofmaterialrouting0
+msgid "Material Routing"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+#: field:mrp.production,move_lines2:0
+#: report:mrp.production.order:0
+#: field:mrp.production.order,consumed_products:0
+msgid "Consumed Products"
+msgstr ""
+
+#. module: mrp
+#: constraint:mrp.bom:0
+msgid "Error ! You can not create recursive BoM."
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,name:mrp.action_mrp_workcenter_load_wizard
+#: model:ir.model,name:mrp.model_mrp_workcenter_load
+#: model:ir.model,name:mrp.model_report_workcenter_load
+msgid "Work Center Load"
+msgstr ""
+
+#. module: mrp
+#: code:addons/mrp/procurement.py:45
+#, python-format
+msgid "No BoM defined for this product !"
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,name:mrp.mrp_bom_form_action2
+#: model:ir.ui.menu,name:mrp.menu_mrp_bom_form_action2
+msgid "Bill of Material Components"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.production.order,nbr:0
+msgid "# of Lines"
+msgstr ""
+
+#. module: mrp
+#: model:ir.ui.menu,name:mrp.menu_mrp_planning
+msgid "Planning"
+msgstr "Planlægning"
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "Ready"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.production,routing_id:0
+msgid ""
+"The list of operations (list of work centers) to produce the finished "
+"product. The routing is mainly used to compute work center costs during "
+"operations and to plan future loads on work centers based on production "
+"plannification."
+msgstr ""
+
+#. module: mrp
+#: help:mrp.workcenter,time_cycle:0
+msgid "Time in hours for doing one cycle."
+msgstr ""
+
+#. module: mrp
+#: report:bom.structure:0
+msgid "BOM Ref"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+#: selection:mrp.production,state:0
+#: view:mrp.production.order:0
+#: selection:mrp.production.order,state:0
+msgid "In Production"
+msgstr ""
+
+#. module: mrp
+#: model:ir.ui.menu,name:mrp.menu_mrp_property
+msgid "Master Bill of Materials"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.bom,product_uos:0
+msgid ""
+"Product UOS (Unit of Sale) is the unit of measurement for the invoicing and "
+"promotion of stock."
+msgstr ""
+
+#. module: mrp
+#: view:mrp.product_price:0
+#: view:mrp.workcenter.load:0
+msgid "Print"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.bom:0
+#: view:mrp.workcenter:0
+msgid "Type"
+msgstr ""
+
+#. module: mrp
+#: code:addons/mrp/report/price.py:150
+#: code:addons/mrp/report/price.py:201
+#, python-format
+msgid "Total Cost of "
+msgstr ""
+
+#. module: mrp
+#: model:process.node,note:mrp.process_node_minimumstockrule0
+msgid "Linked to the 'Minimum stock rule' supplying method."
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.workcenter.load,time_unit:0
+msgid "Per month"
+msgstr "Pr. måned"
+
+#. module: mrp
+#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/wizard/change_production_qty.py:77
+#: code:addons/mrp/wizard/change_production_qty.py:82
+#, python-format
+msgid "Couldn't find bill of material for product"
+msgstr ""
+
+#. module: mrp
+#: report:bom.structure:0
+msgid "Product Name"
+msgstr ""
+
+#. module: mrp
+#: code:addons/mrp/mrp.py:495
+#, python-format
+msgid "Invalid action !"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.bom,product_efficiency:0
+msgid "A factor of 0.9 means a loss of 10% within the production process."
+msgstr ""
+
+#. module: mrp
+#: view:mrp.installer:0
+msgid ""
+"Add more functionalities to the core Manufacturing Application with the "
+"following addons."
+msgstr ""
+
+#. module: mrp
+#: report:mrp.production.order:0
+msgid "Printing date"
+msgstr ""
+
+#. module: mrp
+#: model:process.node,name:mrp.process_node_orderrfq0
+#: model:process.node,name:mrp.process_node_rfq0
+msgid "RFQ"
+msgstr ""
+
+#. module: mrp
+#: model:process.transition,name:mrp.process_transition_producttostockrules0
+msgid "Procurement rule"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.workcenter,costs_hour:0
+msgid "Specify Cost of Work center per hour."
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "Partial"
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.production.order,month:0
+msgid "September"
+msgstr "September"
+
+#. module: mrp
+#: report:mrp.production.order:0
+msgid "WorkCenter"
+msgstr ""
+
+#. module: mrp
+#: model:process.transition,note:mrp.process_transition_procureserviceproduct0
+msgid ""
+"Depending on the chosen method to 'supply' the service, the procurement "
+"order creates a RFQ for a subcontracting purchase order or waits until the "
+"service is done (= the delivery of the products)."
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.production,priority:0
+#: selection:mrp.production.order,priority:0
+msgid "Urgent"
+msgstr ""
+
+#. module: mrp
+#: model:ir.model,name:mrp.model_mrp_routing_workcenter
+msgid "Work Center Usage"
+msgstr ""
+
+#. module: mrp
+#: model:ir.model,name:mrp.model_mrp_production
+msgid "Manufacturing Order"
+msgstr ""
+
+#. module: mrp
+#: model:process.transition,name:mrp.process_transition_productionprocureproducts0
+msgid "Procurement of raw material"
+msgstr "Indkøb af råmaterialer"
+
+#. module: mrp
+#: help:mrp.routing.workcenter,hour_nbr:0
+msgid ""
+"Time in hours for this work center to achieve the operation of the specified "
+"routing."
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+#: field:mrp.production,cycle_total:0
+msgid "Total Cycles"
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.production,state:0
+#: view:mrp.production.order:0
+#: selection:mrp.production.order,state:0
+msgid "Ready to Produce"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.bom.revision,name:0
+msgid "Modification name"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.bom:0
+#: view:mrp.production:0
+#: field:mrp.production.order,date:0
+msgid "Date"
+msgstr "Dato"
+
+#. module: mrp
+#: field:mrp.bom,type:0
+msgid "BoM Type"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production.order:0
+msgid "Extended Filters..."
+msgstr ""
+
+#. module: mrp
+#: code:addons/mrp/procurement.py:47
+#, python-format
+msgid ""
+"Procurement '%s' has an exception: 'No BoM defined for this product !'"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production.order:0
+#: view:mrp.property:0
+msgid "Search"
+msgstr "Søg"
+
+#. module: mrp
+#: field:report.workcenter.load,cycle:0
+msgid "Nbr of cycle"
+msgstr ""
+
+#. module: mrp
+#: model:ir.model,name:mrp.model_res_company
+msgid "Companies"
+msgstr "Virksomheder"
+
+#. module: mrp
+#: model:process.node,name:mrp.process_node_minimumstockrule0
+#: model:process.node,name:mrp.process_node_productminimumstockrule0
+msgid "Minimum Stock"
+msgstr "Minimum lager"
+
+#. module: mrp
+#: model:ir.ui.menu,name:mrp.menus_dash_mrp
+msgid "Dashboard"
+msgstr "Oversigt"
+
+#. module: mrp
+#: view:board.board:0
+msgid "Work Center Future Load"
+msgstr ""
+
+#. module: mrp
+#: model:process.node,name:mrp.process_node_stockproduct0
+#: model:process.node,name:mrp.process_node_stockproduct1
+#: model:process.process,name:mrp.process_process_stockableproductprocess0
+msgid "Stockable Product"
+msgstr ""
+
+#. module: mrp
+#: code:addons/mrp/report/price.py:121
+#, python-format
+msgid "Work Center name"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.routing,code:0
+msgid "Code"
+msgstr ""
+
+#. module: mrp
+#: report:mrp.production.order:0
+msgid "No. Of Hours"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.installer,mrp_jit:0
+msgid "Just In Time Scheduling"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.property:0
+#: view:mrp.property.group:0
+msgid "Property Group"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "Qty"
+msgstr "Antal"
+
+#. module: mrp
+#: model:process.node,note:mrp.process_node_production0
+msgid "Manufacturing Plan."
+msgstr ""
+
+#. module: mrp
+#: view:mrp.routing:0
+#: view:mrp.workcenter:0
+msgid "Inactive"
+msgstr "Inaktiv"
+
+#. module: mrp
+#: help:mrp.installer,mrp_subproduct:0
+msgid ""
+"Enables multiple product output from a single production order: without "
+"this, a production order can have only one output product."
+msgstr ""
+
+#. module: mrp
+#: view:change.production.qty:0
+#: view:mrp.product.produce:0
+#: view:mrp.product_price:0
+#: view:mrp.production:0
+#: view:mrp.workcenter.load:0
+msgid "Cancel"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "Split in production lots"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.workcenter,capacity_per_cycle:0
+msgid ""
+"Number of operations this Work Center can do in parallel. If this Work "
+"Center represents a team of 5 workers, the capacity per cycle is 5."
+msgstr ""
+
+#. module: mrp
+#: model:process.transition,note:mrp.process_transition_servicerfq0
+msgid ""
+"If the service has a 'Buy' supply method, this creates a RFQ, a "
+"subcontracting demand for instance."
+msgstr ""
+
+#. module: mrp
+#: field:mrp.production,move_prod_id:0
+msgid "Move product"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "Late"
+msgstr ""
+
+#. module: mrp
+#: model:process.node,name:mrp.process_node_servicemts0
+msgid "Make to stock"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.routing.workcenter,sequence:0
+msgid ""
+"Gives the sequence order when displaying a list of routing work centers."
+msgstr ""
+
+#. module: mrp
+#: report:bom.structure:0
+msgid "BOM Name"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "Start Production"
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,name:mrp.open_board_manufacturing
+#: model:ir.ui.menu,name:mrp.menu_board_manufacturing
+msgid "Production Dashboard"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "Source Loc."
+msgstr ""
+
+#. module: mrp
+#: field:mrp.bom,position:0
+msgid "Internal Reference"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.installer,stock_location:0
+msgid ""
+"Manages product routes and paths within and between locations (e.g. "
+"warehouses)."
+msgstr ""
+
+#. module: mrp
+#: model:process.node,note:mrp.process_node_billofmaterial0
+msgid "Product's structure"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.bom,name:0
+#: report:mrp.production.order:0
+#: field:mrp.production.product.line,name:0
+#: field:mrp.routing,name:0
+#: field:mrp.routing.workcenter,name:0
+msgid "Name"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.installer:0
+msgid "MRP Application Configuration"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.installer,mrp_jit:0
+msgid ""
+"Enables Just In Time computation of procurement orders.\n"
+"\n"
+"While it's more resource intensive than the default setup, the JIT computer "
+"avoids having to wait for the procurement scheduler to run or having to run "
+"the procurement scheduler manually."
+msgstr ""
+
+#. module: mrp
+#: field:mrp.product.produce,mode:0
+msgid "Mode"
+msgstr ""
+
+#. module: mrp
+#: report:bom.structure:0
+msgid "]"
+msgstr "]"
+
+#. module: mrp
+#: field:mrp.workcenter.load,measure_unit:0
+msgid "Amount measuring unit"
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,help:mrp.mrp_production_action_planning
+msgid ""
+"Manufacturing Orders describe the operations that need to be carried out and "
+"the raw materials usage for each production stage. You use specifications "
+"(bills of materials or BoM) to work out the raw material requirements and "
+"the manufacturing orders needed for the finished products. Once the bills of "
+"materials have been defined, OpenERP is capable of automatically deciding on "
+"the manufacturing route depending on the needs of the company."
+msgstr ""
+
+#. module: mrp
+#: constraint:mrp.production:0
+msgid "Order quantity cannot be negative or zero !"
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,name:mrp.mrp_production_action3
+msgid "Manufacturing Orders in Progress"
+msgstr "Igangværende produktionsordre"
+
+#. module: mrp
+#: model:ir.module.module,description:mrp.module_meta_information
+msgid ""
+"\n"
+" This is the base module to manage the manufacturing process in OpenERP.\n"
+"\n"
+" Features:\n"
+" * Make to Stock / Make to Order (by line)\n"
+" * Multi-level BoMs, no limit\n"
+" * Multi-level routing, no limit\n"
+" * Routing and work center integrated with analytic accounting\n"
+" * Scheduler computation periodically / Just In Time module\n"
+" * Multi-pos, multi-warehouse\n"
+" * Different reordering policies\n"
+" * Cost method by product: standard price, average price\n"
+" * Easy analysis of troubles or needs\n"
+" * Very flexible\n"
+" * Allows to browse Bill of Materials in complete structure\n"
+" that include child and phantom BoMs\n"
+" It supports complete integration and planification of stockable goods,\n"
+" consumable of services. Services are completely integrated with the "
+"rest\n"
+" of the software. For instance, you can set up a sub-contracting service\n"
+" in a BoM to automatically purchase on order the assembly of your "
+"production.\n"
+"\n"
+" Reports provided by this module:\n"
+" * Bill of Material structure and components\n"
+" * Load forecast on Work Centers\n"
+" * Print a production order\n"
+" * Stock forecasts\n"
+" Dashboard provided by this module::\n"
+" * List of next production orders\n"
+" * List of deliveries (out picking)\n"
+" * Graph of work center load\n"
+" * List of procurement in exception\n"
+" "
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,name:mrp.mrp_production_action4
+msgid "Manufacturing Orders Waiting Products"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.bom:0
+#: view:mrp.production:0
+#: view:mrp.production.order:0
+#: view:mrp.property:0
+#: view:mrp.routing:0
+#: view:mrp.workcenter:0
+msgid "Group By..."
+msgstr ""
+
+#. module: mrp
+#: code:addons/mrp/report/price.py:121
+#, python-format
+msgid "Cycles Cost"
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.workcenter.load,measure_unit:0
+msgid "Amount in cycles"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.production,location_dest_id:0
+#: view:mrp.production.order:0
+#: field:mrp.production.order,location_dest_id:0
+msgid "Finished Products Location"
+msgstr ""
+
+#. module: mrp
+#: model:ir.ui.menu,name:mrp.menu_pm_resources_config
+msgid "Resources"
+msgstr "Ressourcer"
+
+#. module: mrp
+#: field:mrp.workcenter,costs_journal_id:0
+msgid "Analytic Journal"
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,name:mrp.mrp_workcenter_action
+#: model:ir.ui.menu,name:mrp.menu_view_resource_search_mrp
+#: field:mrp.routing,workcenter_lines:0
+msgid "Work Centers"
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.workcenter.load,time_unit:0
+msgid "Per week"
+msgstr "Pr. uge"
+
+#. module: mrp
+#: model:ir.actions.act_window,help:mrp.mrp_routing_action
+msgid ""
+"Routings allow you to create and manage the manufacturing operations that "
+"should be followed within your work centers in order to produce a product. "
+"They are attached to bills of materials that will define the required raw "
+"materials."
+msgstr ""
+
+#. module: mrp
+#: field:report.workcenter.load,hour:0
+msgid "Nbr of hour"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.routing:0
+msgid "Work Center Operations"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.routing:0
+msgid "Notes"
+msgstr "Noter"
+
+#. module: mrp
+#: model:ir.model,name:mrp.model_mrp_bom
+#: view:mrp.bom:0
+#: field:mrp.production,bom_id:0
+#: field:mrp.production.order,bom_id:0
+#: model:process.node,name:mrp.process_node_billofmaterial0
+msgid "Bill of Material"
+msgstr "Stykliste"
+
+#. module: mrp
+#: view:mrp.workcenter.load:0
+msgid "Select time unit"
+msgstr ""
+
+#. module: mrp
+#: view:report.workcenter.load:0
+msgid "Work Center load"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.production,location_dest_id:0
+msgid "Location where the system will stock the finished products."
+msgstr ""
+
+#. module: mrp
+#: help:mrp.production,picking_id:0
+msgid ""
+"This is the internal picking list that brings the finished product to the "
+"production plan"
+msgstr ""
+
+#. module: mrp
+#: field:stock.change.standard.price,change_parent_price:0
+msgid "Change Parent Price"
+msgstr ""
+
+#. module: mrp
+#: model:ir.model,name:mrp.model_stock_move
+msgid "Stock Move"
+msgstr ""
+
+#. module: mrp
+#: model:process.transition,note:mrp.process_transition_producttostockrules0
+msgid ""
+"The Minimum Stock Rule is an automatic procurement rule based on a mini and "
+"maxi quantity. It's available in the Inventory management menu and "
+"configured by product."
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.workcenter.load,time_unit:0
+msgid "Day by day"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.bom:0
+msgid "Revisions"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.installer:0
+msgid "Configure Your Manufacturing Resource Planning Application"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.production,priority:0
+#: field:mrp.production.order,priority:0
+msgid "Priority"
+msgstr "Prioritet"
+
+#. module: mrp
+#: model:ir.model,name:mrp.model_stock_picking
+msgid "Picking List"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production.order:0
+msgid "Month -1"
+msgstr ""
+
+#. module: mrp
+#: code:addons/mrp/mrp.py:924
+#, python-format
+msgid "Manufacturing order '%s' is scheduled for the %s."
+msgstr ""
+
+#. module: mrp
+#: report:mrp.production.order:0
+msgid "Production Order N° :"
+msgstr ""
+
+#. module: mrp
+#: code:addons/mrp/mrp.py:640
+#, python-format
+msgid "Manufacturing order '%s' is ready to produce."
+msgstr ""
+
+#. module: mrp
+#: model:ir.model,name:mrp.model_mrp_production_product_line
+msgid "Production Scheduled Product"
+msgstr ""
+
+#. module: mrp
+#: help:res.company,manufacturing_lead:0
+msgid "Security days for each manufacturing operation."
+msgstr ""
+
+#. module: mrp
+#: model:process.node,name:mrp.process_node_mts0
+#: model:process.transition,name:mrp.process_transition_servicemts0
+#: model:process.transition,name:mrp.process_transition_stockmts0
+msgid "Make to Stock"
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.production.order,month:0
+msgid "July"
+msgstr "Juli"
+
+#. module: mrp
+#: model:ir.actions.act_window,help:mrp.mrp_bom_form_action
+msgid ""
+"Master Bills of Materials allow you to create and manage the list of "
+"necessary raw materials used to make a finished product. OpenERP will use "
+"these BoMs to automatically propose manufacturing orders according to "
+"product needs. You can either create a bill of materials to define specific "
+"production steps or define a single multi-level bill of materials."
+msgstr ""
+
+#. module: mrp
+#: model:process.transition,note:mrp.process_transition_stockrfq0
+msgid ""
+"In case the Supply method of the product is Buy, the system creates a "
+"purchase order."
+msgstr ""
+
+#. module: mrp
+#: model:ir.model,name:mrp.model_procurement_order
+msgid "Procurement"
+msgstr "Indkøb"
+
+#. module: mrp
+#: model:ir.actions.act_window,name:mrp.action_view_mrp_product_price_wizard
+#: view:mrp.product_price:0
+msgid "Product Cost Structure"
+msgstr ""
+
+#. module: mrp
+#: code:addons/mrp/report/price.py:130
+#, python-format
+msgid "Components suppliers"
+msgstr ""
+
+#. module: mrp
+#: model:ir.model,name:mrp.model_mrp_installer
+msgid "mrp.installer"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "Production Work Centers"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production.order:0
+#: field:mrp.production.order,month:0
+msgid "Month"
+msgstr "Måned"
+
+#. module: mrp
+#: code:addons/mrp/wizard/change_production_qty.py:62
+#, python-format
+msgid "Active Id is not found"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.workcenter:0
+msgid "Search for mrp workcenter"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.bom:0
+msgid "BoM Structure"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.production,date_start:0
+#: field:mrp.production.order,date_start:0
+msgid "Start Date"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.workcenter,costs_hour_account_id:0
+msgid "Hour Account"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "Destination Loc."
+msgstr ""
+
+#. module: mrp
+#: field:mrp.production.order,product_id2:0
+msgid "Product Consumed"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "Pending"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.bom,active:0
+#: field:mrp.routing,active:0
+msgid "Active"
+msgstr "Aktiv"
+
+#. module: mrp
+#: model:process.node,name:mrp.process_node_procureproducts0
+msgid "Procure Products"
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,name:mrp.action_report_workcenter_load_tree
+#: view:report.workcenter.load:0
+msgid "Work Center Loads"
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,name:mrp.mrp_property_action
+#: model:ir.ui.menu,name:mrp.menu_mrp_property_action
+#: view:mrp.bom:0
+#: field:mrp.bom,property_ids:0
+#: view:mrp.property:0
+#: view:procurement.order:0
+#: field:procurement.order,property_ids:0
+msgid "Properties"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.production,origin:0
+msgid ""
+"Reference of the document that generated this production order request."
+msgstr ""
+
+#. module: mrp
+#: sql_constraint:mrp.bom:0
+msgid ""
+"All product quantities must be greater than 0.\n"
+"You should install the mrp_subproduct module if you want to manage extra "
+"products on BoMs !"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "Extra Information"
+msgstr ""
+
+#. module: mrp
+#: model:ir.model,name:mrp.model_change_production_qty
+msgid "Change Quantity of Products"
+msgstr ""
+
+#. module: mrp
+#: model:process.node,note:mrp.process_node_productionorder0
+msgid "Drives the procurement orders for raw material."
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production.order:0
+msgid "Current"
+msgstr "Nuværende"
+
+#. module: mrp
+#: field:mrp.workcenter,costs_general_account_id:0
+msgid "General Account"
+msgstr ""
+
+#. module: mrp
+#: report:mrp.production.order:0
+msgid "SO Number"
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.production,state:0
+#: view:mrp.production.order:0
+#: selection:mrp.production.order,state:0
+msgid "Done"
+msgstr "Udført!"
+
+#. module: mrp
+#: model:ir.model,name:mrp.model_stock_change_standard_price
+msgid "Change Standard Price"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.production,origin:0
+#: report:mrp.production.order:0
+#: field:mrp.production.order,origin:0
+msgid "Source Document"
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.production,priority:0
+#: selection:mrp.production.order,priority:0
+msgid "Not urgent"
+msgstr ""
+
+#. module: mrp
+#: help:stock.change.standard.price,change_parent_price:0
+msgid ""
+"This will change the price of parent products also according to the BoM "
+"structure specified for the product."
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,name:mrp.mrp_production_action2
+msgid "Manufacturing Orders To Start"
+msgstr ""
+
+#. module: mrp
+#: code:addons/mrp/mrp.py:495
+#, python-format
+msgid "Cannot delete Production Order(s) which are in %s State!"
+msgstr ""
+
+#. module: mrp
+#: model:ir.model,name:mrp.model_mrp_workcenter
+#: field:mrp.production.workcenter.line,workcenter_id:0
+#: field:mrp.routing.workcenter,workcenter_id:0
+#: view:mrp.workcenter:0
+#: field:report.workcenter.load,workcenter_id:0
+msgid "Work Center"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.workcenter,capacity_per_cycle:0
+msgid "Capacity per Cycle"
+msgstr ""
+
+#. module: mrp
+#: model:ir.model,name:mrp.model_product_product
+#: view:mrp.bom:0
+#: field:mrp.bom,product_id:0
+#: view:mrp.production:0
+#: field:mrp.production,product_id:0
+#: report:mrp.production.order:0
+#: view:mrp.production.order:0
+#: field:mrp.production.order,product_id:0
+#: field:mrp.production.product.line,product_id:0
+msgid "Product"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+#: field:mrp.production,hour_total:0
+msgid "Total Hours"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.production,location_src_id:0
+#: field:mrp.production.order,location_src_id:0
+msgid "Raw Materials Location"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.product_price:0
+msgid "Print Cost Structure of Product."
+msgstr ""
+
+#. module: mrp
+#: field:mrp.bom,product_uos:0
+#: field:mrp.production.product.line,product_uos:0
+msgid "Product UOS"
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,help:mrp.mrp_workcenter_action
+msgid ""
+"Work Centers allow you to create and manage manufacturing units consisting "
+"of one or more persons and/or machines that can be considered as a unit for "
+"capacity and planning forecasting."
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "Consume Products"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.bom,product_uom:0
+#: field:mrp.production,product_uom:0
+#: field:mrp.production.order,product_uom:0
+#: field:mrp.production.product.line,product_uom:0
+msgid "Product UOM"
+msgstr ""
+
+#. module: mrp
+#: model:process.node,name:mrp.process_node_stock0
+#: model:process.transition,name:mrp.process_transition_servicemto0
+#: model:process.transition,name:mrp.process_transition_stockproduct0
+msgid "Make to Order"
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,name:mrp.action_report_mrp_production_order
+#: model:ir.ui.menu,name:mrp.menu_report_mrp_production_orders_tree
+msgid "Production Analysis"
+msgstr ""
+
+#. module: mrp
+#: code:addons/mrp/mrp.py:349
+#, python-format
+msgid "Copy"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production.lot.line:0
+msgid "Production Products"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.production,date_finished:0
+#: field:mrp.production.order,date_finished:0
+msgid "End Date"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.workcenter,resource_id:0
+msgid "Resource"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.bom,date_start:0
+#: help:mrp.bom,date_stop:0
+msgid "Validity of this BoM or component. Keep empty if it's always valid."
+msgstr ""
+
+#. module: mrp
+#: field:mrp.production,product_uos:0
+msgid "Product UoS"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production.order:0
+msgid "#Line Orders"
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.production,priority:0
+#: selection:mrp.production.order,priority:0
+msgid "Very Urgent"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.bom,routing_id:0
+msgid ""
+"The list of operations (list of work centers) to produce the finished "
+"product. The routing is mainly used to compute work center costs during "
+"operations and to plan future loads on work centers based on production "
+"planning."
+msgstr ""
+
+#. module: mrp
+#: view:change.production.qty:0
+msgid "Approve"
+msgstr "Godkend"
+
+#. module: mrp
+#: view:mrp.property.group:0
+msgid "Properties categories"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.production.workcenter.line,sequence:0
+msgid "Gives the sequence order when displaying a list of work orders."
+msgstr ""
+
+#. module: mrp
+#: report:mrp.production.order:0
+msgid "Source Location"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+#: view:mrp.production.product.line:0
+msgid "Scheduled Products"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production.lot.line:0
+msgid "Production Products Consommation"
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,name:mrp.mrp_production_action
+#: model:ir.actions.act_window,name:mrp.mrp_production_action_planning
+#: model:ir.ui.menu,name:mrp.menu_mrp_production_action
+#: model:ir.ui.menu,name:mrp.menu_mrp_production_order_action
+#: view:mrp.production:0
+msgid "Manufacturing Orders"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.product.produce,mode:0
+msgid ""
+"'Consume only' mode will only consume the products with the quantity "
+"selected.\n"
+"'Consume & Produce' mode will consume as well as produce the products with "
+"the quantity selected and it will finish the production order when total "
+"ordered quantities are produced."
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+#: report:mrp.production.order:0
+msgid "Work Orders"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.workcenter,costs_cycle:0
+msgid "Cost per cycle"
+msgstr ""
+
+#. module: mrp
+#: model:process.node,name:mrp.process_node_serviceproduct0
+#: model:process.node,name:mrp.process_node_serviceproduct1
+msgid "Service"
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.production,state:0
+#: selection:mrp.production.order,state:0
+msgid "Cancelled"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production.order:0
+msgid "BOM"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.bom,product_uom:0
+msgid ""
+"UoM (Unit of Measure) is the unit of measurement for the inventory control"
+msgstr ""
+
+#. module: mrp
+#: model:process.transition,note:mrp.process_transition_bom0
+msgid ""
+"The Bill of Material is the product's decomposition. The components (that "
+"are products themselves) can also have their own Bill of Material (multi-"
+"level)."
+msgstr ""
+
+#. module: mrp
+#: field:mrp.bom,company_id:0
+#: field:mrp.production,company_id:0
+#: view:mrp.production.order:0
+#: field:mrp.production.order,company_id:0
+#: field:mrp.routing,company_id:0
+#: field:mrp.routing.workcenter,company_id:0
+#: view:mrp.workcenter:0
+msgid "Company"
+msgstr "Virksomhed"
+
+#. module: mrp
+#: field:mrp.workcenter,time_cycle:0
+msgid "Time for 1 cycle (hour)"
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.report.xml,name:mrp.report_mrp_production_report
+#: field:mrp.production.product.line,production_id:0
+#: field:mrp.production.workcenter.line,production_id:0
+#: model:process.node,name:mrp.process_node_production0
+#: model:process.node,name:mrp.process_node_productionorder0
+msgid "Production Order"
+msgstr "Produktionsordre"
+
+#. module: mrp
+#: model:process.node,note:mrp.process_node_productminimumstockrule0
+msgid "Automatic procurement rule"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "Compute Data"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.production,product_uos_qty:0
+msgid "Product UoS Qty"
+msgstr ""
+
+#. module: mrp
+#: code:addons/mrp/report/price.py:130
+#: view:mrp.bom:0
+#, python-format
+msgid "Components"
+msgstr ""
+
+#. module: mrp
+#: report:bom.structure:0
+#: model:ir.actions.report.xml,name:mrp.report_bom_structure
+msgid "BOM Structure"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.bom,date_stop:0
+msgid "Valid Until"
+msgstr "Gyldig indtil"
+
+#. module: mrp
+#: field:mrp.bom,date_start:0
+msgid "Valid From"
+msgstr "Gyldig fra"
+
+#. module: mrp
+#: selection:mrp.bom,type:0
+msgid "Normal BoM"
+msgstr ""
+
+#. module: mrp
+#: field:res.company,manufacturing_lead:0
+msgid "Manufacturing Lead Time"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.bom,product_uos_qty:0
+#: field:mrp.production.product.line,product_uos_qty:0
+msgid "Product UOS Qty"
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,help:mrp.action_report_in_out_picking_tree
+msgid ""
+"Weekly Stock Value Variation enables you to track the stock value evolution "
+"linked to manufacturing activities, receptions of products and delivery "
+"orders."
+msgstr ""
+
+#. module: mrp
+#: view:mrp.product.produce:0
+msgid "Confirm"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.bom,product_efficiency:0
+msgid "Manufacturing Efficiency"
+msgstr ""
+
+#. module: mrp
+#: constraint:res.company:0
+msgid "Error! You can not create recursive companies."
+msgstr ""
+
+#. module: mrp
+#: help:mrp.bom,active:0
+msgid ""
+"If the active field is set to False, it will allow you to hide the bills of "
+"material without removing it."
+msgstr ""
+
+#. module: mrp
+#: field:mrp.bom,product_rounding:0
+msgid "Product Rounding"
+msgstr ""
+
+#. module: mrp
+#: model:ir.model,name:mrp.model_mrp_production_workcenter_line
+#: field:mrp.production.workcenter.line,name:0
+msgid "Work Order"
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,help:mrp.action_report_mrp_production_order
+msgid ""
+"This reporting allows you to analyse your manufacturing activities and "
+"performance."
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.product.produce,mode:0
+msgid "Consume Only"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "Recreate Picking"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.bom,type:0
+msgid ""
+"If a sub-product is used in several products, it can be useful to create its "
+"own BoM. Though if you don't want separated production orders for this sub-"
+"product, select Set/Phantom as BoM type. If a Phantom BoM is used for a root "
+"product, it will be sold and shipped as a set of components, instead of "
+"being produced."
+msgstr ""
+
+#. module: mrp
+#: field:mrp.bom,method:0
+msgid "Method"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.production,state:0
+msgid ""
+"When the production order is created the state is set to 'Draft'.\n"
+" If the order is confirmed the state is set to 'Waiting Goods'.\n"
+" If any exceptions are there, the state is set to 'Picking Exception'. "
+" \n"
+"If the stock is available then the state is set to 'Ready to Produce'.\n"
+" When the production gets started then the state is set to 'In Production'.\n"
+" When the production is over, the state is set to 'Done'."
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.bom,method:0
+msgid "On Order"
+msgstr ""
+
+#. module: mrp
+#: model:ir.ui.menu,name:mrp.menu_mrp_configuration
+#: view:res.company:0
+msgid "Configuration"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.workcenter,time_stop:0
+msgid "Time after prod."
+msgstr ""
+
+#. module: mrp
+#: field:mrp.workcenter.load,time_unit:0
+msgid "Type of period"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "Total Qty"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.routing.workcenter,hour_nbr:0
+msgid "Number of Hours"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.workcenter:0
+msgid "Costing Information"
+msgstr ""
+
+#. module: mrp
+#: model:process.node,name:mrp.process_node_purchaseprocure0
+msgid "Procurement Orders"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.bom,product_rounding:0
+msgid "Rounding applied on the product quantity."
+msgstr ""
+
+#. module: mrp
+#: model:process.node,note:mrp.process_node_stock0
+msgid "Assignment from Production or Purchase Order."
+msgstr ""
+
+#. module: mrp
+#: field:mrp.routing.workcenter,routing_id:0
+msgid "Parent Routing"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.installer:0
+msgid "Configure"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.workcenter,time_start:0
+msgid "Time in hours for the setup."
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.production.order,month:0
+msgid "December"
+msgstr "December"
+
+#. module: mrp
+#: field:mrp.installer,config_logo:0
+msgid "Image"
+msgstr "Billede"
+
+#. module: mrp
+#: field:mrp.bom.revision,bom_id:0
+#: field:procurement.order,bom_id:0
+msgid "BoM"
+msgstr ""
+
+#. module: mrp
+#: model:ir.model,name:mrp.model_report_mrp_inout
+#: view:report.mrp.inout:0
+msgid "Stock value variation"
+msgstr ""
+
+#. module: mrp
+#: model:process.node,note:mrp.process_node_mts0
+#: model:process.node,note:mrp.process_node_servicemts0
+msgid "Assignment from stock."
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.production,state:0
+#: view:mrp.production.order:0
+#: selection:mrp.production.order,state:0
+msgid "Waiting Goods"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.bom.revision,last_indice:0
+msgid "last indice"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.bom,revision_ids:0
+#: view:mrp.bom.revision:0
+msgid "BoM Revisions"
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.production,state:0
+#: selection:mrp.production.order,state:0
+msgid "Draft"
+msgstr ""
+
+#. module: mrp
+#: field:report.mrp.inout,date:0
+#: field:report.workcenter.load,name:0
+msgid "Week"
+msgstr "Uge"
+
+#. module: mrp
+#: field:mrp.installer,progress:0
+msgid "Configuration Progress"
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.production,priority:0
+#: selection:mrp.production.order,priority:0
+msgid "Normal"
+msgstr ""
+
+#. module: mrp
+#: model:process.node,note:mrp.process_node_routing0
+msgid "Manufacturing Steps."
+msgstr ""
+
+#. module: mrp
+#: code:addons/mrp/report/price.py:136
+#: model:ir.actions.report.xml,name:mrp.report_cost_structure
+#, python-format
+msgid "Cost Structure"
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.product.produce,mode:0
+msgid "Consume & Produce"
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.production.order,month:0
+msgid "November"
+msgstr "November"
+
+#. module: mrp
+#: field:mrp.bom,bom_id:0
+msgid "Parent BoM"
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,help:mrp.mrp_bom_form_action2
+msgid ""
+"Bills of materials components are components and sub-products used to create "
+"master bills of materials. Use this menu to search in which BoM a specific "
+"component is used."
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.production.order,month:0
+msgid "January"
+msgstr "Januar"
+
+#. module: mrp
+#: model:process.node,note:mrp.process_node_stockproduct0
+msgid "Product type is Stockable or Consumable."
+msgstr ""
+
+#. module: mrp
+#: code:addons/mrp/mrp.py:595
+#: code:addons/mrp/wizard/change_production_qty.py:77
+#: code:addons/mrp/wizard/change_production_qty.py:82
+#, python-format
+msgid "Error"
+msgstr "Fejl"
+
+#. module: mrp
+#: field:mrp.product.produce,product_qty:0
+msgid "Select Quantity"
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,name:mrp.act_product_product_2_mrp_bom
+#: model:ir.actions.act_window,name:mrp.mrp_bom_form_action
+#: model:ir.ui.menu,name:mrp.menu_mrp_bom_form_action
+#: field:product.product,bom_ids:0
+msgid "Bill of Materials"
+msgstr "Stykliste"
+
+#. module: mrp
+#: help:mrp.routing.workcenter,routing_id:0
+msgid ""
+"Routing indicates all the Work Centers used, for how long and/or cycles.If "
+"Routing is indicated then,the third tab of a production order (Work Centers) "
+"will be automatically pre-completed."
+msgstr ""
+
+#. module: mrp
+#: model:ir.model,name:mrp.model_mrp_bom_revision
+msgid "Bill of Material Revision"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.routing.workcenter:0
+#: view:mrp.workcenter:0
+msgid "General Information"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+msgid "Productions"
+msgstr "Produktioner"
+
+#. module: mrp
+#: code:addons/mrp/report/price.py:194
+#, python-format
+msgid "Work Cost of "
+msgstr ""
+
+#. module: mrp
+#: help:mrp.workcenter,note:0
+msgid ""
+"Description of the Work Center. Explain here what's a cycle according to "
+"this Work Center."
+msgstr ""
+
+#. module: mrp
+#: model:ir.model,name:mrp.model_mrp_routing
+#: view:mrp.bom:0
+#: field:mrp.bom,routing_id:0
+#: view:mrp.production:0
+#: field:mrp.production,routing_id:0
+#: field:mrp.production.order,routing_id:0
+#: view:mrp.routing:0
+#: model:process.node,name:mrp.process_node_routing0
+msgid "Routing"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.installer,mrp_operations:0
+msgid "Manufacturing Operations"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.production,date_planned:0
+msgid "Scheduled date"
+msgstr ""
+
+#. module: mrp
+#: constraint:stock.move:0
+msgid "You must assign a production lot for this product"
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,help:mrp.mrp_property_action
+msgid ""
+"The Properties in OpenERP are used to select the right bill of materials for "
+"manufacturing a product when you have different ways of building the same "
+"product. You can assign several properties to each Bill of Materials. When a "
+"sales person creates a sales order, he can relate it to several properties "
+"and OpenERP will automatically select the BoM to use according the the needs."
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production.order:0
+#: field:stock.move,production_id:0
+msgid "Production"
+msgstr "Produktion"
+
+#. module: mrp
+#: view:board.board:0
+msgid "Procurements in Exception"
+msgstr ""
+
+#. module: mrp
+#: model:process.transition,name:mrp.process_transition_minimumstockprocure0
+msgid "'Minimum stock rule' material"
+msgstr ""
+
+#. module: mrp
+#: model:ir.model,name:mrp.model_mrp_product_price
+msgid "Product Price"
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,name:mrp.action_mrp_installer
+msgid "MRP Applications Configuration"
+msgstr ""
+
+#. module: mrp
+#: model:ir.model,name:mrp.model_stock_move_split
+msgid "Split in Production lots"
+msgstr ""
+
+#. module: mrp
+#: view:change.production.qty:0
+msgid "Change Quantity"
+msgstr ""
+
+#. module: mrp
+#: view:change.production.qty:0
+#: model:ir.actions.act_window,name:mrp.action_change_production_qty
+msgid "Change Product Qty"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.bom.revision:0
+#: field:mrp.bom.revision,description:0
+#: view:mrp.property:0
+#: view:mrp.property.group:0
+#: field:mrp.routing,note:0
+#: view:mrp.routing.workcenter:0
+#: field:mrp.routing.workcenter,note:0
+#: view:mrp.workcenter:0
+#: field:mrp.workcenter,note:0
+msgid "Description"
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.production.order,month:0
+msgid "May"
+msgstr "Maj"
+
+#. module: mrp
+#: view:board.board:0
+msgid "Manufacturing board"
+msgstr ""
+
+#. module: mrp
+#: field:mrp.production,date_planned_end:0
+msgid "Scheduled End Date"
+msgstr ""
+
+#. module: mrp
+#: model:ir.actions.act_window,help:mrp.action_report_workcenter_load_tree
+msgid ""
+"Work Center Loads gives you a projection of work center loads over a "
+"specified period. It is expressed in number of hours and machine related "
+"cycles."
+msgstr ""
+
+#. module: mrp
+#: model:process.node,note:mrp.process_node_procureproducts0
+msgid "The way to procurement depends on the product type."
+msgstr ""
+
+#. module: mrp
+#: model:ir.ui.menu,name:mrp.menu_mrp_manufacturing
+msgid "Manufacturing"
+msgstr ""
+
+#. module: mrp
+#: view:board.board:0
+msgid "Next Production Orders"
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.production.order,month:0
+msgid "February"
+msgstr "Februar"
+
+#. module: mrp
+#: model:ir.actions.act_window,name:mrp.mrp_property_group_action
+#: model:ir.ui.menu,name:mrp.menu_mrp_property_group_action
+msgid "Property Groups"
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.production.order,month:0
+msgid "April"
+msgstr "April"
+
+#. module: mrp
+#: model:process.transition,note:mrp.process_transition_procurestockableproduct0
+msgid ""
+"Depending on the chosen method to supply the stockable products, the "
+"procurement order creates a RFQ, a production order, ... "
+msgstr ""
+
+#. module: mrp
+#: help:mrp.workcenter,time_stop:0
+msgid "Time in hours for the cleaning."
+msgstr ""
+
+#. module: mrp
+#: model:process.transition,name:mrp.process_transition_purchaseprocure0
+msgid "Automatic RFQ"
+msgstr ""
+
+#. module: mrp
+#: model:process.transition,note:mrp.process_transition_servicemto0
+msgid ""
+"If the service has a 'Produce' supply method, this creates a task in the "
+"project management module of OpenERP."
+msgstr ""
+
+#. module: mrp
+#: model:process.transition,note:mrp.process_transition_productionprocureproducts0
+msgid ""
+"In order to supply raw material (to be purchased or produced), the "
+"production order creates as much procurement orders as components listed in "
+"the BOM, through a run of the schedulers (MRP)."
+msgstr ""
+
+#. module: mrp
+#: help:mrp.product_price,number:0
+msgid ""
+"Specify quantity of products to produce or buy. Report of Cost structure "
+"will be displayed base on this quantity."
+msgstr ""
+
+#. module: mrp
+#: selection:mrp.bom,method:0
+msgid "On Stock"
+msgstr "På lager"
+
+#. module: mrp
+#: field:mrp.bom,sequence:0
+#: report:mrp.production.order:0
+#: field:mrp.production.workcenter.line,sequence:0
+#: field:mrp.routing.workcenter,sequence:0
+msgid "Sequence"
+msgstr "Rækkefølge"
+
+#. module: mrp
+#: model:ir.ui.menu,name:mrp.menu_view_resource_calendar_leaves_search_mrp
+msgid "Resource Leaves"
+msgstr ""
+
+#. module: mrp
+#: help:mrp.bom,sequence:0
+msgid "Gives the sequence order when displaying a list of bills of material."
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production:0
+#: field:mrp.production,move_lines:0
+#: report:mrp.production.order:0
+#: field:mrp.production.order,products_to_consume:0
+msgid "Products to Consume"
+msgstr ""
+
+#. module: mrp
+#: view:mrp.production.order:0
+#: field:mrp.production.order,year:0
+msgid "Year"
+msgstr "År"
diff --git a/addons/mrp/i18n/fr.po b/addons/mrp/i18n/fr.po
index a1ad6c25fa4..6582e283c5d 100644
--- a/addons/mrp/i18n/fr.po
+++ b/addons/mrp/i18n/fr.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-05-24 16:08+0000\n"
+"PO-Revision-Date: 2011-09-26 12:16+0000\n"
"Last-Translator: lholivier \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:59+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-09-27 04:47+0000\n"
+"X-Generator: Launchpad (build 14028)\n"
#. module: mrp
#: field:mrp.bom,product_uos:0
@@ -91,8 +91,8 @@ msgid ""
"The 'Minimum stock rule' allows the system to create procurement orders "
"automatically as soon as the minimum stock is reached."
msgstr ""
-"La \"règle de stock minimum\" permet au système d'enregistrer "
-"automatiquement les besoins dès que le stock minimum est atteint."
+"La \"règle de stock minimum\" permet au système de créer automatiquement les "
+"approvisionnements dès que le stock minimum est atteint."
#. module: mrp
#: field:mrp.production,picking_id:0
@@ -232,8 +232,8 @@ msgid ""
"In case the Supply method of the product is Produce, the system creates a "
"production order."
msgstr ""
-"Dans le cas où la méthode d'approvisionnement de ce produit est Produire, le "
-"système crée un ordre de fabrication"
+"Dans le cas où la méthode de fourniture de ce produit est \"Produire\", le "
+"système crée un ordre de fabrication."
#. module: mrp
#: view:mrp.production:0
@@ -293,7 +293,7 @@ msgstr "["
#. module: mrp
#: model:process.transition,name:mrp.process_transition_procureserviceproduct0
msgid "Procurement of services"
-msgstr "Besoin de services"
+msgstr "Approvisionnement de services"
#. module: mrp
#: view:mrp.workcenter:0
@@ -322,8 +322,8 @@ msgid ""
"products are typically procured manually or through a minimum stock rule."
msgstr ""
"Le système attend que les produits soient disponibles en stock. Typiquement, "
-"les besoins en ces produits sont traités manuellement ou avec une règle de "
-"stock minimum."
+"les approvisionnements de ces produits sont traités manuellement ou avec une "
+"règle de stock minimum."
#. module: mrp
#: report:mrp.production.order:0
@@ -389,7 +389,7 @@ msgstr "Coût des composants de "
#. module: mrp
#: model:process.transition,name:mrp.process_transition_procurestockableproduct0
msgid "Procurement of stockable Product"
-msgstr "Besoin de produit stocké"
+msgstr "Approvisionnement de produit stocké"
#. module: mrp
#: view:mrp.bom:0
@@ -621,7 +621,7 @@ msgstr "Fabriquer"
#. module: mrp
#: help:mrp.workcenter,costs_cycle:0
msgid "Specify Cost of Work Center per cycle."
-msgstr ""
+msgstr "Précisez le coût du poste de charge par cycle"
#. module: mrp
#: selection:mrp.production,state:0
@@ -852,9 +852,9 @@ msgid ""
"order creates a RFQ for a subcontracting purchase order or waits until the "
"service is done (= the delivery of the products)."
msgstr ""
-"En fonction de la méthode choisie pour \"l'approvisionnement\" du service, "
-"le besoin va générer un appel d'offres pour une commande de sous-traitance, "
-"ou va attendre jusqu'à ce que le service soit effectué (= la livraison des "
+"En fonction de la méthode de fourniture du service, l'approvisionnement va "
+"générer un appel d'offres pour une commande de sous-traitance, ou va "
+"attendre jusqu'à ce que le service soit effectué (= la livraison des "
"produits)."
#. module: mrp
@@ -866,7 +866,7 @@ msgstr "Urgent"
#. module: mrp
#: model:ir.model,name:mrp.model_mrp_routing_workcenter
msgid "Work Center Usage"
-msgstr ""
+msgstr "Utilisation du poste de charge"
#. module: mrp
#: model:ir.model,name:mrp.model_mrp_production
@@ -876,7 +876,7 @@ msgstr "Ordre de fabrication"
#. module: mrp
#: model:process.transition,name:mrp.process_transition_productionprocureproducts0
msgid "Procurement of raw material"
-msgstr "Besoin de matière première"
+msgstr "Approvisionnement de matière première"
#. module: mrp
#: help:mrp.routing.workcenter,hour_nbr:0
@@ -1043,6 +1043,9 @@ msgid ""
"Number of operations this Work Center can do in parallel. If this Work "
"Center represents a team of 5 workers, the capacity per cycle is 5."
msgstr ""
+"Nombre d'opérations simultanées que ce poste de charge peut réaliser. Si ce "
+"poste de charge représente une équipe de 5 personnes, la capacité par cycle "
+"est de 5."
#. module: mrp
#: model:process.transition,note:mrp.process_transition_servicerfq0
@@ -1050,8 +1053,8 @@ msgid ""
"If the service has a 'Buy' supply method, this creates a RFQ, a "
"subcontracting demand for instance."
msgstr ""
-"Si la méthode d'approvisionnement du service est \"Acheter\", ceci va créer "
-"un appel d'offres, par exemple une demande de sous-traitance."
+"Si la méthode de fourniture du service est \"Acheter\", ceci va créer un "
+"appel d'offres, par exemple une demande de sous-traitance."
#. module: mrp
#: field:mrp.production,move_prod_id:0
@@ -1066,7 +1069,7 @@ msgstr "En retard"
#. module: mrp
#: model:process.node,name:mrp.process_node_servicemts0
msgid "Make to stock"
-msgstr "Sur stock"
+msgstr "Production sur stock"
#. module: mrp
#: help:mrp.routing.workcenter,sequence:0
@@ -1139,7 +1142,7 @@ msgid ""
"avoids having to wait for the procurement scheduler to run or having to run "
"the procurement scheduler manually."
msgstr ""
-"Permet le calcul en Juste-à-temps des besoins.\n"
+"Permet le calcul en Juste-à-temps des approvisionnements.\n"
"\n"
"Bien que cela soit plus gourmand en ressources que le fonctionnement "
"standard, le calcul en Juste-à-Temps permet d'éviter d'attendre l'activation "
@@ -1225,6 +1228,41 @@ msgid ""
" * List of procurement in exception\n"
" "
msgstr ""
+"\n"
+" Ceci est la module de base de la gestion de fabrication d'OpenERP.\n"
+"\n"
+" Fonctionnalités :\n"
+" * Fabrication pour stockage / Fabrication pour commande (par ligne)\n"
+" * Nomenclatures multi-niveaux (sans limitations)\n"
+" * Gammes multi-niveaux (sans limitations)\n"
+" * Gamme et poste de charge intégrés avec la comptabilité analytique\n"
+" * Re-planification périodique / module juste à temps\n"
+" * Multi-points de vente, multi-stocks\n"
+" * Différentes Stratégies d'ordonnancement\n"
+" * Méthode des coûts par produit : prix standard , prix moyen\n"
+" * Analyse facilitée des besoins et des incidents\n"
+" * Grande flexibilité\n"
+" * Permet de parcourir la totalité des nomenclatures\n"
+" y compris les nomenclatures filles et les nomenclatures fantômes\n"
+" Il intègre complètement la planification des marchandises stockables,\n"
+" et des services consommables. Les services sont integratés avec le "
+"reste\n"
+" du logiciel. Par exemple, on peut placer un service dans une "
+"nomenclature\n"
+" afin de déclencher automatiquement un achat lors d'un ordre de "
+"fabrication.\n"
+"\n"
+" Rapports fournis par ce module :\n"
+" * Structure et composants de nomenclature\n"
+" * Pévision de la charge pour les postes de charge\n"
+" * Impression des ordres de fabrication\n"
+" * Prévision des stocks\n"
+" Tableau de bord de ce module :\n"
+" * Liste des prochains ordres de production\n"
+" * Liste des livraisons (en sortie de colisage)\n"
+" * Graphique de charge des postes de charge\n"
+" * Liste des approvisionnements en défaut\n"
+" "
#. module: mrp
#: model:ir.actions.act_window,name:mrp.mrp_production_action4
@@ -1359,9 +1397,10 @@ msgid ""
"maxi quantity. It's available in the Inventory management menu and "
"configured by product."
msgstr ""
-"La règle du stock minimum est une règle de gestion automatique des besoins, "
-"basée sur des quantités minimum et maximum. Cette règle est disponible dans "
-"le menu de gestion des stocks, et paramétrable pour chaque produit."
+"La règle du stock minimum est une règle de gestion automatique des "
+"approvisionnements, basée sur des quantités minimum et maximum. Cette règle "
+"est disponible dans le menu de gestion des stocks, et paramétrable pour "
+"chaque produit."
#. module: mrp
#: selection:mrp.workcenter.load,time_unit:0
@@ -1455,13 +1494,13 @@ msgid ""
"In case the Supply method of the product is Buy, the system creates a "
"purchase order."
msgstr ""
-"Dans le cas où la méthode d'approvisionnement est \"Acheter\", le système va "
-"créer un Ordre d'Achat"
+"Dans le cas où la méthode de fourniture est \"Acheter\", le système va créer "
+"un ordre d'achat."
#. module: mrp
#: model:ir.model,name:mrp.model_procurement_order
msgid "Procurement"
-msgstr "Besoin"
+msgstr "Approvisionnement"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.action_view_mrp_product_price_wizard
@@ -1542,7 +1581,7 @@ msgstr "Actif"
#. module: mrp
#: model:process.node,name:mrp.process_node_procureproducts0
msgid "Procure Products"
-msgstr "Satisfaire le besoin de produit"
+msgstr "Approvisionner les produits"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.action_report_workcenter_load_tree
@@ -1592,7 +1631,7 @@ msgstr "Modifier les quantités de produit"
#. module: mrp
#: model:process.node,note:mrp.process_node_productionorder0
msgid "Drives the procurement orders for raw material."
-msgstr "Pilote la gestion des besoins de matières premières"
+msgstr "Pilote la gestion des approvisionnement en matières premières"
#. module: mrp
#: view:mrp.production.order:0
@@ -1719,7 +1758,7 @@ msgstr "Produits consommés"
#: model:process.transition,name:mrp.process_transition_servicemto0
#: model:process.transition,name:mrp.process_transition_stockproduct0
msgid "Make to Order"
-msgstr "Fabrication à la commande"
+msgstr "Production à la demande"
#. module: mrp
#: model:ir.actions.act_window,name:mrp.action_report_mrp_production_order
@@ -1914,7 +1953,7 @@ msgstr "Ordre de Production"
#. module: mrp
#: model:process.node,note:mrp.process_node_productminimumstockrule0
msgid "Automatic procurement rule"
-msgstr "Règle de gestion automatique des besoins"
+msgstr "Règle de gestion automatique des approvisionnements"
#. module: mrp
#: view:mrp.production:0
@@ -2110,7 +2149,7 @@ msgstr "Information de coût"
#. module: mrp
#: model:process.node,name:mrp.process_node_purchaseprocure0
msgid "Procurement Orders"
-msgstr "Besoins"
+msgstr "Ordre d'approvisionnement"
#. module: mrp
#: help:mrp.bom,product_rounding:0
@@ -2315,6 +2354,8 @@ msgid ""
"Description of the Work Center. Explain here what's a cycle according to "
"this Work Center."
msgstr ""
+"Description du poste de charge. Expliquer ici ce qu'est un cycle pour un tel "
+"poste de charge."
#. module: mrp
#: model:ir.model,name:mrp.model_mrp_routing
@@ -2368,7 +2409,7 @@ msgstr "Production"
#. module: mrp
#: view:board.board:0
msgid "Procurements in Exception"
-msgstr "Besoins en exception"
+msgstr "Approvisionnements en exception"
#. module: mrp
#: model:process.transition,name:mrp.process_transition_minimumstockprocure0
@@ -2443,7 +2484,7 @@ msgstr ""
#. module: mrp
#: model:process.node,note:mrp.process_node_procureproducts0
msgid "The way to procurement depends on the product type."
-msgstr "Le moyen de satisfaire le besoin dépend du type de produit"
+msgstr "Le moyen d’approvisionnement dépend du type de produit"
#. module: mrp
#: model:ir.ui.menu,name:mrp.menu_mrp_manufacturing
@@ -2477,8 +2518,8 @@ msgid ""
"Depending on the chosen method to supply the stockable products, the "
"procurement order creates a RFQ, a production order, ... "
msgstr ""
-"Selon la méthode d'approvisionnement choisie pour les produits suivis en "
-"stock, le besoin générera un appel d'offres, un ordre de fabrication, ... "
+"Selon la méthode de fourniture choisie pour les produits suivis en stock, "
+"l'approvisionnement générera un appel d'offres, un ordre de fabrication, ... "
#. module: mrp
#: help:mrp.workcenter,time_stop:0
@@ -2496,8 +2537,8 @@ msgid ""
"If the service has a 'Produce' supply method, this creates a task in the "
"project management module of OpenERP."
msgstr ""
-"Si la méthode d'approvisionnement du service est \"Produire\", ceci va créer "
-"une tâche dans le module de gestion de projets."
+"Si la méthode de fourniture du service est \"Produire\", ceci va créer une "
+"tâche dans le module de gestion de projets."
#. module: mrp
#: model:process.transition,note:mrp.process_transition_productionprocureproducts0
@@ -2506,9 +2547,9 @@ msgid ""
"production order creates as much procurement orders as components listed in "
"the BOM, through a run of the schedulers (MRP)."
msgstr ""
-"Afin de s'approvisionner en matières premières (à acheter ou à fabriquer), "
-"l'ordre de fabrication crée autant de besoins que de composants présents "
-"dans la nomenclature, par le biais des planificateurs (MRP)."
+"Afin de fournir les matières premières (à acheter ou à fabriquer), l'ordre "
+"de fabrication crée autant d'ordres d'approvisionnement que de composants "
+"présents dans la nomenclature, par le biais des planificateurs (MRP)."
#. module: mrp
#: help:mrp.product_price,number:0
@@ -3323,6 +3364,15 @@ msgstr "Année"
#~ msgid "Specify Cost of Work center per cycle."
#~ msgstr "Spécifie le coût par cycle d'un poste de charges."
+#~ msgid ""
+#~ "Routing indicates all the workcenters used, for how long and/or cycles.If "
+#~ "Routing is indicated then,the third tab of a production order (workcenters) "
+#~ "will be automatically pre-completed."
+#~ msgstr ""
+#~ "La gamme indique tous les postes de charge utilisés, la durée et/ou le "
+#~ "nombre de cycles. Quand \"Gamme\" est indiqué, le troisième onglet des "
+#~ "ordres de fabrication (postes de charge) est automatiquement pré-rempli."
+
#~ msgid ""
#~ "\n"
#~ " This is the base module to manage the manufacturing process in OpenERP.\n"
@@ -3364,7 +3414,7 @@ msgstr "Année"
#~ "fabrication.\n"
#~ "\n"
#~ " Fonctionnalités:\n"
-#~ " * Fabrication pour stock/ Fabrication à la commande (par ligne)\n"
+#~ " * Production sur stock / à la demande (par ligne)\n"
#~ " * Nomenclatures multi-niveaux, sans limitation\n"
#~ " * Gammes multi-niveaux, sans limitation\n"
#~ " * Gammes et postes de charge intégrés dans la comptabilité analytique\n"
@@ -3396,12 +3446,3 @@ msgstr "Année"
#~ " * Graphique de la charge des postes\n"
#~ " * Liste des approvisionnements ayant subit un incident\n"
#~ " "
-
-#~ msgid ""
-#~ "Routing indicates all the workcenters used, for how long and/or cycles.If "
-#~ "Routing is indicated then,the third tab of a production order (workcenters) "
-#~ "will be automatically pre-completed."
-#~ msgstr ""
-#~ "La gamme indique tous les postes de charge utilisés, la durée et/ou le "
-#~ "nombre de cycles. Quand \"Gamme\" est indiqué, le troisième onglet des "
-#~ "ordres de fabrication (postes de charge) est automatiquement pré-rempli."
diff --git a/addons/mrp/installer.py b/addons/mrp/installer.py
deleted file mode 100644
index 7fc7fea9c1e..00000000000
--- a/addons/mrp/installer.py
+++ /dev/null
@@ -1,52 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2009 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-from osv import fields, osv
-
-class mrp_installer(osv.osv_memory):
- _inherit = 'base.setup.installer'
-
- _columns = {
- # Manufacturing Resource Planning
- 'stock_location': fields.boolean('Advanced Routes',
- help="Manages product routes and paths within and between "
- "locations (e.g. warehouses)."),
- 'mrp_jit': fields.boolean('Just In Time Scheduling',
- help="Enables Just In Time computation of procurement orders."
- "\n\nWhile it's more resource intensive than the default "
- "setup, the JIT computer avoids having to wait for the "
- "procurement scheduler to run or having to run the "
- "procurement scheduler manually."),
- 'mrp_operations': fields.boolean('Manufacturing Operations',
- help="Enhances production orders with readiness states as well "
- "as the start date and end date of execution of the order."),
- 'mrp_subproduct': fields.boolean('MRP Subproducts',
- help="Enables multiple product output from a single production "
- "order: without this, a production order can have only one "
- "output product."),
- 'mrp_repair': fields.boolean('Repairs',
- help="Enables warranty and repair management (and their impact "
- "on stocks and invoicing)."),
- }
-
- _defaults = {
- 'mrp_jit': lambda self,cr,uid,*a: self.pool.get('res.users').browse(cr, uid, uid).view == 'simple',
- }
-mrp_installer()
diff --git a/addons/mrp/mrp.py b/addons/mrp/mrp.py
index 7b9d403a95d..422700710d8 100644
--- a/addons/mrp/mrp.py
+++ b/addons/mrp/mrp.py
@@ -477,7 +477,7 @@ class mrp_production(osv.osv):
'move_created_ids2': fields.one2many('stock.move', 'production_id', 'Produced Products', domain=[('state','in', ('done', 'cancel'))]),
'product_lines': fields.one2many('mrp.production.product.line', 'production_id', 'Scheduled goods'),
'workcenter_lines': fields.one2many('mrp.production.workcenter.line', 'production_id', 'Work Centers Utilisation'),
- 'state': fields.selection([('draft','Draft'),('picking_except', 'Picking Exception'),('confirmed','Waiting Goods'),('ready','Ready to Produce'),('in_production','In Production'),('cancel','Cancelled'),('done','Done')],'State', readonly=True,
+ 'state': fields.selection([('draft','New'),('picking_except', 'Picking Exception'),('confirmed','Waiting Goods'),('ready','Ready to Produce'),('in_production','Production Started'),('cancel','Cancelled'),('done','Done')],'State', readonly=True,
help='When the production order is created the state is set to \'Draft\'.\n If the order is confirmed the state is set to \'Waiting Goods\'.\n If any exceptions are there, the state is set to \'Picking Exception\'.\
\nIf the stock is available then the state is set to \'Ready to Produce\'.\n When the production gets started then the state is set to \'In Production\'.\n When the production is over, the state is set to \'Done\'.'),
'hour_total': fields.function(_production_calc, type='float', string='Total Hours', multi='workorder', store=True),
diff --git a/addons/mrp/mrp_installer.xml b/addons/mrp/mrp_installer.xml
index 7eabd5a45b1..b4d4551bda8 100644
--- a/addons/mrp/mrp_installer.xml
+++ b/addons/mrp/mrp_installer.xml
@@ -1,23 +1,43 @@
-
- mrp.installer.view
- base.setup.installer
- form
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+ MRP Management
+ 6
-
+
+
+ Configure your work centers
+ ir.actions.act_window
+ mrp.workcenter
+ form,tree
+ form
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Create or Import Products
+ ir.actions.act_window
+ product.product
+ form
+ tree,form
+
+ Create a product form for everything you buy or sell. Specify a supplier if the product can be purchased.
+
+
+
+
+
+ 20
+
+
diff --git a/addons/mrp/mrp_view.xml b/addons/mrp/mrp_view.xml
index 19e25438cad..cec6fd42687 100644
--- a/addons/mrp/mrp_view.xml
+++ b/addons/mrp/mrp_view.xml
@@ -700,7 +700,7 @@
-
+
@@ -808,7 +808,7 @@
help="Manufacturing Orders which are currently in production."/>
diff --git a/addons/mrp/report/mrp_production_order.py b/addons/mrp/report/mrp_production_order.py
index 3ad4184c413..4bb525db1ff 100644
--- a/addons/mrp/report/mrp_production_order.py
+++ b/addons/mrp/report/mrp_production_order.py
@@ -19,118 +19,4 @@
#
##############################################################################
-from osv import fields,osv
-import tools
-
-
-class mrp_production_order(osv.osv):
- _name = "mrp.production.order"
- _description = "Production Order Report"
- _auto = False
- _columns = {
- 'year': fields.char('Year',size=64,readonly=True),
- 'month':fields.selection([('01','January'), ('02','February'), ('03','March'), ('04','April'), ('05','May'), ('06','June'),
- ('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')],'Month',readonly=True),
- 'day': fields.char('Day',size=64,readonly=True),
- 'origin': fields.char('Source Document', size=64),
- 'nbr': fields.integer('# of Lines', readonly=True),
- 'products_to_consume': fields.integer('Products to Consume', readonly=True),
- 'consumed_products': fields.integer('Consumed Products', readonly=True),
- 'date': fields.date('Date', readonly=True),
- 'product_id': fields.many2one('product.product', 'Product', readonly=True),
- 'product_id2': fields.many2one('product.product', 'Product Consumed', readonly=True),
- 'product_qty': fields.float('Product Qty', readonly=True),
- 'state': fields.selection([('draft','Draft'),
- ('picking_except', 'Picking Exception'),
- ('confirmed','Waiting Goods'),
- ('ready','Ready to Produce'),
- ('in_production','In Production'),
- ('cancel','Cancelled'),
- ('done','Done')],
- 'State', readonly=True),
- 'date_planned':fields.date('Scheduled Date'),
- 'location_src_id': fields.many2one('stock.location', 'Raw Materials Location', readonly=True),
- 'date_start': fields.datetime('Start Date',readonly=True),
- 'date_finished': fields.datetime('End Date',readonly=True),
- 'location_dest_id': fields.many2one('stock.location', 'Finished Products Location', readonly=True),
- 'company_id': fields.many2one('res.company','Company',readonly=True),
- 'bom_id': fields.many2one('mrp.bom', 'Bill of Material',readonly=True),
- 'routing_id': fields.many2one('mrp.routing', string='Routing',readonly=True),
- 'picking_id': fields.many2one('stock.picking', 'Picking list', readonly=True),
- 'product_uom': fields.many2one('product.uom', 'Product UOM', readonly=True),
- 'priority': fields.selection([('0','Not urgent'),
- ('1','Normal'),
- ('2','Urgent'),
- ('3','Very Urgent')],
- 'Priority',readonly=True),
-
-
- }
- def init(self, cr):
- tools.drop_view_if_exists(cr, 'mrp_production_order')
- cr.execute("""
- create or replace view mrp_production_order as (
- select
- min(l.id) as id,
- to_date(to_char(s.create_date, 'MM-dd-YYYY'),'MM-dd-YYYY') as date,
- to_char(s.create_date, 'YYYY') as year,
- to_char(s.create_date, 'MM') as month,
- to_char(s.create_date, 'YYYY-MM-DD') as day,
- s.product_id as product_id,
- l.product_id as product_id2,
- l.product_uom,
- sum(l.product_qty * u.factor) as product_qty,
- s.company_id as company_id,
- (select 1) as nbr,
- (select sum(sm.product_qty) from stock_move as sm
- left join mrp_production_move_ids as mv on (sm.id=mv.move_id)
- left join mrp_production_product_line as ll on (ll.production_id=mv.production_id)
- where sm.product_id=ll.product_id and ll.id=l.id
- and sm.state not in ('done','cancel')
- group by sm.product_id) as products_to_consume,
- (select sum(sm.product_qty)/2 from stock_move as sm
- left join mrp_production_move_ids as mv on (sm.id=mv.move_id)
- left join mrp_production_product_line as ll on (ll.production_id=mv.production_id)
- where sm.product_id=ll.product_id and ll.id=l.id
- and sm.state in ('done','cancel')
- group by sm.product_id) as consumed_products,
- s.location_src_id,
- s.location_dest_id,
- s.bom_id,
- s.routing_id,
- s.picking_id,
- s.date_start,
- s.date_finished,
- to_date(to_char(s.date_planned, 'dd-MM-YYYY'),'dd-MM-YYYY') as date_planned,
- s.origin,
- s.priority,
- s.state
- from mrp_production_product_line l
- left join mrp_production s on (s.id=l.production_id)
- left join product_uom u on (u.id=l.product_uom)
- group by
- to_char(s.create_date, 'YYYY'),
- to_char(s.create_date, 'MM'),
- to_char(s.create_date, 'YYYY-MM-DD'),
- to_date(to_char(s.create_date, 'MM-dd-YYYY'),'MM-dd-YYYY'),
- l.product_id,
- s.product_id,
- l.product_uom,
- s.id,
- l.id,
- s.bom_id,
- s.routing_id,
- s.picking_id,
- s.priority,
- s.location_src_id,
- s.location_dest_id,
- s.state,
- to_date(to_char(s.date_planned, 'dd-MM-YYYY'),'dd-MM-YYYY'),
- s.origin,
- s.date_start,
- s.date_finished,
- s.company_id
- )""")
-mrp_production_order()
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/mrp/report/mrp_production_order_view.xml b/addons/mrp/report/mrp_production_order_view.xml
index dfcf41d9333..140170e4906 100644
--- a/addons/mrp/report/mrp_production_order_view.xml
+++ b/addons/mrp/report/mrp_production_order_view.xml
@@ -1,133 +1,6 @@
-
-
-
- mrp.production.order.tree
- mrp.production.order
- tree
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- mrp.production.order.graph
- mrp.production.order
- graph
-
-
-
-
-
-
-
-
-
- mrp.production.order.select
- mrp.production.order
- search
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Production Analysis
- mrp.production.order
- form
- tree,graph
-
-
- {'search_default_Product': 1,'search_default_month':1,'group_by_no_leaf':1,'group_by':[]}
- This reporting allows you to analyse your manufacturing activities and performance.
-
-
-
-
- tree
-
-
-
-
-
-
- graph
-
-
-
-
-
diff --git a/addons/mrp/report/price.py b/addons/mrp/report/price.py
index 733312ba799..5027bd372ea 100644
--- a/addons/mrp/report/price.py
+++ b/addons/mrp/report/price.py
@@ -19,6 +19,7 @@
#
##############################################################################
+import time
import pooler
from report.interface import report_rml
#from report.interface import toxml
@@ -39,6 +40,7 @@ class report_custom(report_rml):
workcenter_pool = pool.get('mrp.workcenter')
user_pool = pool.get('res.users')
bom_pool = pool.get('mrp.bom')
+ pricelist_pool = pool.get('product.pricelist')
rml_obj=report_sxw.rml_parse(cr, uid, product_pool._name,context)
rml_obj.localcontext.update({'lang':context.get('lang',False)})
company_currency = user_pool.browse(cr, uid, uid).company_id.currency_id
@@ -56,8 +58,12 @@ class report_custom(report_rml):
if prod.seller_id:
main_sp_name = "%s\r\n" %(prod.seller_id.name)
- price = supplier_info_pool.price_get(cr, uid, prod.seller_id.id, prod.id, number*prod_qtty)[prod.seller_id.id]
- price = product_uom_pool._compute_price(cr, uid, prod.uom_id.id, price, to_uom_id=product_uom.id)
+ pricelist = prod.seller_id.property_product_pricelist_purchase
+ price = pricelist_pool.price_get(cr,uid,[pricelist.id],
+ prod.id, number*prod_qtty or 1.0, prod.seller_id.id, {
+ 'uom': prod.uom_po_id.id,
+ 'date': time.strftime('%Y-%m-%d'),
+ })[pricelist.id]
main_sp_price = """"""+rml_obj.formatLang(price)+' '+ company_currency.symbol+"""\r\n"""
sum += prod_qtty*price
std_price = product_uom_pool._compute_price(cr, uid, prod.uom_id.id, prod.standard_price, to_uom_id=product_uom.id)
@@ -65,8 +71,12 @@ class report_custom(report_rml):
sum_strd = prod_qtty*std_price
for seller_id in prod.seller_ids:
sellers += '- '+ seller_id.name.name +'\r\n'
- price = supplier_info_pool.price_get(cr, uid, seller_id.name.id, prod.id, number*prod_qtty)[seller_id.name.id]
- price = product_uom_pool._compute_price(cr, uid, prod.uom_id.id, price, to_uom_id=product_uom.id)
+ pricelist = seller_id.name.property_product_pricelist_purchase
+ price = pricelist_pool.price_get(cr,uid,[pricelist.id],
+ prod.id, number*prod_qtty or 1.0, seller_id.name.id, {
+ 'uom': prod.uom_po_id.id,
+ 'date': time.strftime('%Y-%m-%d'),
+ })[pricelist.id]
sellers_price += """"""+rml_obj.formatLang(price) +' '+ company_currency.symbol +"""\r\n"""
xml += """
"""+ prod_name +"""
"""+ main_sp_name + sellers + """
diff --git a/addons/mrp/security/ir.model.access.csv b/addons/mrp/security/ir.model.access.csv
index 4af31e9c902..1d93fb460b5 100644
--- a/addons/mrp/security/ir.model.access.csv
+++ b/addons/mrp/security/ir.model.access.csv
@@ -29,7 +29,6 @@
"access_procurement_stock_worker","procurement.order stock_worker","model_procurement_order","stock.group_stock_user",1,1,1,1
"access_procurement_user","procurement.order.user","model_procurement_order","base.group_user",1,1,1,1
"access_mrp_production_stock_worker","mrp.production stock_worker","model_mrp_production","stock.group_stock_user",1,0,0,0
-"access_mrp_production_order","mrp.production.order","model_mrp_production_order","mrp.group_mrp_manager",1,1,1,1
"access_report_workcenter_load","report.workcenter.load","model_report_workcenter_load","mrp.group_mrp_manager",1,1,1,1
"access_report_mrp_inout","report.mrp.inout","model_report_mrp_inout","mrp.group_mrp_manager",1,1,1,1
"access_product_product_manager","product.product manager","product.model_product_product","mrp.group_mrp_manager",1,0,0,0
diff --git a/addons/mrp/stock.py b/addons/mrp/stock.py
index a8dc4aecc89..a486e0b332a 100644
--- a/addons/mrp/stock.py
+++ b/addons/mrp/stock.py
@@ -138,14 +138,15 @@ class StockMove(osv.osv):
wf_service = netsvc.LocalService("workflow")
for move in self.browse(cr, uid, ids, context=context):
new_moves = super(StockMove, self).action_scrap(cr, uid, [move.id], product_qty, location_id, context=context)
- self.write(cr, uid, [move.id], {'prodlot_id': False, 'tracking_id': False})
+ #If we are not scrapping our whole move, tracking and lot references must not be removed
+ #self.write(cr, uid, [move.id], {'prodlot_id': False, 'tracking_id': False})
production_ids = production_obj.search(cr, uid, [('move_lines', 'in', [move.id])])
for prod_id in production_ids:
wf_service.trg_validate(uid, 'mrp.production', prod_id, 'button_produce', cr)
for new_move in new_moves:
production_obj.write(cr, uid, production_ids, {'move_lines': [(4, new_move)]})
res.append(new_move)
- return {}
+ return res
StockMove()
diff --git a/addons/mrp/test/mrp_packs.yml b/addons/mrp/test/mrp_packs.yml
index eb386ef6b85..800d4f56476 100644
--- a/addons/mrp/test/mrp_packs.yml
+++ b/addons/mrp/test/mrp_packs.yml
@@ -1,7 +1,7 @@
-
In order to test the Packs in OpenERP, we will try to sell a "Pack of 24
beers" which is composed of 24 "Beers" and a "Beers Pack".
-- |
+-
I start by creating the Beers product.
-
!record {model: product.product, id: product_product_beers0}:
@@ -16,7 +16,7 @@
type: product
uom_id: product.product_uom_unit
uom_po_id: product.product_uom_unit
-- |
+-
I create the "Beers Pack" product.
-
!record {model: product.product, id: product_product_beerspack0}:
@@ -31,7 +31,7 @@
type: product
uom_id: product.product_uom_unit
uom_po_id: product.product_uom_unit
-- |
+-
I create the "Pack of 24 beers" product
-
!record {model: product.product, id: product_product_packofbeers0}:
@@ -42,7 +42,7 @@
type: product
uom_id: product.product_uom_unit
uom_po_id: product.product_uom_unit
-- |
+-
I define the Phantom Bill of Material for the "Pack of 24 beers"
-
!record {model: mrp.bom, id: mrp_bom_packofbeers0}:
@@ -64,10 +64,10 @@
product_qty: 1.0
product_uom: product.product_uom_unit
type: phantom
-- |
+-
As all my data are created, I will create an outgoing order picking for a
"Pack of 24 Beers"
--
+-
!record {model: stock.picking, id: picking_out}:
address_id: base.res_partner_address_tang
company_id: base.main_company
@@ -82,15 +82,15 @@
product_uom: product.product_uom_unit
move_type: direct
type: out
-- |
+-
I validate the newly created picking.
--
+-
!python {model: stock.picking}: |
self.draft_validate(cr, uid, [ref("picking_out")], {
"active_ids": [ref("stock.menu_action_picking_tree")],
"active_id": ref("stock.menu_action_picking_tree"), }
)
-- |
+-
I check that my Picking of a "Pack of 24 beers" has been automatically
converted to a picking of 24 beers and a pack of beer, so that my
stock of beers remains exact.
diff --git a/addons/mrp/test/mrp_phantom_bom.yml b/addons/mrp/test/mrp_phantom_bom.yml
index 6bb297fbcfb..41f1920dc2d 100644
--- a/addons/mrp/test/mrp_phantom_bom.yml
+++ b/addons/mrp/test/mrp_phantom_bom.yml
@@ -96,6 +96,12 @@
product_qty: 1.0
product_uom: product_uom_litre0
type: phantom
+-
+ changes UOM and name if product change.
+-
+ !python {model: mrp.bom}: |
+ production_id = self.browse(cr, uid, [ref('mrp_bom_orangejuice0')], context=context)[0]
+ self.onchange_product_id(cr, uid, [ref('mrp_bom_orangejuice0')], production_id.product_id.id, False)
-
I create bom lines for BoM for Orange Juice.
-
@@ -205,9 +211,8 @@
I am checking Procurement orders. There are 3 orders generated for Oranges, Sugar and Water.
-
!python {model: procurement.order}: |
- from tools.translate import _
proc_ids = self.search(cr, uid, [('product_id','in',[ref('product_product_orange0'),ref('product_product_sugar0'),ref('product_product_water0')])])
- assert proc_ids, _('No Procurements!')
+ assert proc_ids, 'No Procurements!'
-
The scheduler runs.
-
@@ -219,9 +224,8 @@
stock moves for Oranges, Sugar and Water made correctly.
-
!python {model: stock.picking}: |
- from tools.translate import _
pick_ids = self.search(cr, uid, [('type','=','internal')])
- assert pick_ids, _('No Internal Pickings!')
+ assert pick_ids, 'No Internal Pickings!'
-
According to minimum stock rules. I have 2 purchase orders for
Sugar with 6 Kg from Axelor and Orange 60 Kg from ASUStek.
@@ -229,50 +233,24 @@
I confirm the purchase order of Sugar and Orange.
-
!python {model: purchase.order}: |
- from tools.translate import _
import netsvc
purch_ids = self.search(cr, uid, [('state','=','draft')])
- assert purch_ids, _('No Purchase Orders were made!')
+ assert purch_ids, 'No Purchase Orders were made!'
wf_service = netsvc.LocalService("workflow")
for p_id in purch_ids:
wf_service.trg_validate(uid, 'purchase.order', p_id, 'purchase_confirm', cr)
-
- I see two incoming pickings for Orange and Sugar.
+ I see two incoming pickings for Orange and Sugar, and receive them.
-
!python {model: stock.picking}: |
- from tools.translate import _
pick_ids = self.search(cr, uid, [('type','=','in')])
- assert pick_ids, _('No Incoming Shipments found!')
--
- I receive both the products. My incoming pickings are done.
--
- I create record for the incoming picking wizard.
--
- !record {model: stock.partial.picking, id: stock_partial_picking0}:
- date: !eval datetime.today().strftime("%Y-%m-%d %H:%M:%S")
--
- I make my pickings done.
--
- !python {model: stock.partial.picking}: |
- pick_obj = self.pool.get('stock.picking')
- picking_ids = pick_obj.search(cr, uid, [('type','=','in'),('state','=','assigned')])
- partial = self.browse(cr, uid, 1, context)
- partial_datas = {
- 'delivery_date': partial.date
- }
- for pick in pick_obj.browse(cr, uid, picking_ids):
- for m in pick.move_lines:
- partial_datas['move%s'%(m.id)] = {
- 'product_id': m.product_id.id,
- 'product_qty': m.product_qty,
- 'product_uom': m.product_uom.id
- }
- if (pick.type == 'in') and (m.product_id.cost_method == 'average'):
- partial_datas['move%s'%(m.id)].update({
- 'product_price': m.product_price,
- 'product_currency': m.product_currency
- })
- pick_obj.do_partial(cr, uid, picking_ids, partial_datas, context=context)
+ assert pick_ids, 'No Incoming Shipments found!'
+ stock_partial_picking = self.pool.get('stock.partial.picking')
+ for pick_id in pick_ids:
+ partial_id = stock_partial_picking.create(cr, uid, {},
+ context={'active_model': 'stock.picking',
+ 'active_ids': [pick_id]})
+ stock_partial_picking.do_partial(cr, uid, [partial_id])
-
Again the scheduler runs.
-
@@ -283,19 +261,15 @@
I check my internal picking of "Orange Juice" is done.
-
!python {model: stock.picking}: |
- from tools.translate import _
pick_ids = self.search(cr, uid, [('type','=','internal'),('state','=','done')])
- assert pick_ids, _('Internal Picking is not done yet!')
+ assert pick_ids, 'Internal Picking is not done yet!'
-
I check my manufacturing order for "Orange Juice" is ready or not.
-
!python {model: mrp.production}: |
- from tools.translate import _
- pick_ids = self.search(cr, uid, [('state','=','ready'),('id','=',ref('mrp_production_mo0'))])
- assert pick_ids, _('Manufacturing order is not ready!')
+ prod_ids = self.search(cr, uid, [('state','=','ready'),('id','=',ref('mrp_production_mo0'))])
+ assert prod_ids, 'Manufacturing order is not ready!'
-
I start the production order.
-
!workflow {model: mrp.production, action: button_produce, ref: mrp_production_mo0}
-
-
diff --git a/addons/mrp/test/mrp_procurement.yml b/addons/mrp/test/mrp_procurement.yml
index 568a5f0b0e8..4aaf1560432 100644
--- a/addons/mrp/test/mrp_procurement.yml
+++ b/addons/mrp/test/mrp_procurement.yml
@@ -195,74 +195,26 @@
I Check incoming shipments for cloth. And receive products.
-
!python {model: stock.picking}: |
- from tools.translate import _
pick_ids = self.search(cr, uid, [('address_id.name','=','Wong'),('state','=','assigned')])
- assert pick_ids, _('No Incoming Shipments found!')
--
- I create record for partial picking.
--
- !record {model: stock.partial.picking, id: stock_partial_picking0}:
- date: !eval datetime.today().strftime("%Y-%m-%d %H:%M:%S")
-
--
- I make my picking done.
--
- !python {model: stock.partial.picking}: |
- pick_obj = self.pool.get('stock.picking')
- picking_ids = pick_obj.search(cr, uid, [('address_id.name','=','Wong'),('state','=','assigned')])
- partial = self.browse(cr, uid, 1, context)
- partial_datas = {
- 'delivery_date' : partial.date
- }
- for pick in pick_obj.browse(cr, uid, picking_ids):
- for m in pick.move_lines:
- partial_datas['move%s'%(m.id)] = {
- 'product_id' : m.product_id.id,
- 'product_qty' : m.product_qty,
- 'product_uom' : m.product_uom.id
- }
- if (pick.type == 'in') and (m.product_id.cost_method == 'average'):
- partial_datas['move%s'%(m.id)].update({
- 'product_price' : m.product_price,
- 'product_currency': m.product_currency
- })
- pick_obj.do_partial(cr, uid, picking_ids, partial_datas, context=context)
+ assert pick_ids, 'No Incoming Shipments found!'
+ stock_partial_picking = self.pool.get('stock.partial.picking')
+ for pick_id in pick_ids:
+ partial_id = stock_partial_picking.create(cr, uid, {},
+ context={'active_model': 'stock.picking',
+ 'active_ids': [pick_id]})
+ stock_partial_picking.do_partial(cr, uid, [partial_id])
-
I Check incoming shipments for buttons and receive products.
-
!python {model: stock.picking}: |
- from tools.translate import _
pick_ids = self.search(cr, uid, [('address_id.name','=','Tang'),('state','=','assigned')])
- assert pick_ids, _('No Incoming Shipments found!')
--
- I create record for partial picking.
--
- !record {model: stock.partial.picking, id: stock_partial_picking0}:
- date: !eval datetime.today().strftime("%Y-%m-%d %H:%M:%S")
-
--
- I make my picking done.
--
- !python {model: stock.partial.picking}: |
- pick_obj = self.pool.get('stock.picking')
- picking_ids = pick_obj.search(cr, uid, [('address_id.name','=','Tang'),('state','=','assigned')])
- partial = self.browse(cr, uid, 1, context)
- partial_datas = {
- 'delivery_date': partial.date
- }
- for pick in pick_obj.browse(cr, uid, picking_ids):
- for m in pick.move_lines:
- partial_datas['move%s'%(m.id)] = {
- 'product_id': m.product_id.id,
- 'product_qty': m.product_qty,
- 'product_uom': m.product_uom.id
- }
- if (pick.type == 'in') and (m.product_id.cost_method == 'average'):
- partial_datas['move%s'%(m.id)].update({
- 'product_price': m.product_price,
- 'product_currency': m.product_currency
- })
- pick_obj.do_partial(cr, uid, picking_ids, partial_datas, context=context)
+ assert pick_ids, 'No Incoming Shipments found!'
+ stock_partial_picking = self.pool.get('stock.partial.picking')
+ for pick_id in pick_ids:
+ partial_id = stock_partial_picking.create(cr, uid, {},
+ context={'active_model': 'stock.picking',
+ 'active_ids': [pick_id]})
+ stock_partial_picking.do_partial(cr, uid, [partial_id])
-
Run scheduler again.
-
@@ -297,7 +249,6 @@
I produce 2 products with 5.00 quantities each.
-
!python {model: mrp.product.produce}: |
- from tools.translate import _
prod_obj = self.pool.get('mrp.production')
prod_ids = prod_obj.search(cr, uid, [('product_id.name','=','Shirt')])
self.do_produce(cr, uid, [ref('mrp_product_produce0')], context={'active_ids': prod_ids})
@@ -321,8 +272,7 @@
And finally production order is done.
-
!python {model: mrp.product.produce}: |
- from tools.translate import _
prod_obj = self.pool.get('mrp.production')
prod_ids = prod_obj.search(cr, uid, [('product_id.name','=','Shirt')])
- self.do_produce(cr, uid, [1], context={'active_ids': prod_ids})
+ self.do_produce(cr, uid, [ref('mrp_product_produce0')], context={'active_ids': prod_ids})
diff --git a/addons/mrp/test/mrp_production_cancel.yml b/addons/mrp/test/mrp_production_cancel.yml
new file mode 100644
index 00000000000..1dc20a215d1
--- /dev/null
+++ b/addons/mrp/test/mrp_production_cancel.yml
@@ -0,0 +1,29 @@
+-
+ In order to test the manufacturing order in Openerp,
+ I am creating one manufacturing order
+-
+ !record {model: mrp.production, id: mrp_production_mo1}:
+ company_id: base.main_company
+ date_planned: !eval datetime.today().strftime("%Y-%m-%d %H:%M:%S")
+ location_dest_id: stock.stock_location_stock
+ location_src_id: stock.stock_location_stock
+ product_id: product.product_product_pc1
+ name: MO/01234
+ product_qty: 5.0
+ product_uom: product.product_uom_unit
+ product_uos_qty: 0.0
+-
+ I confirm the order.
+-
+ !workflow {model: mrp.production, action: button_confirm, ref: mrp_production_mo1}
+-
+ In order to cancel the MO, I first cancel its picking.
+-
+ !python {model: stock.picking}: |
+ mrp_obj = self.pool.get('mrp.production')
+ mo = mrp_obj.browse(cr, uid, ref("mrp_production_mo1"))
+ self.action_cancel(cr, uid, [mo.picking_id.id], context=None)
+-
+ Then I Cancel the production order and related stock moves.
+-
+ !workflow {model: mrp.production, action: button_cancel, ref: mrp_production_mo1}
\ No newline at end of file
diff --git a/addons/mrp/test/mrp_production_order.yml b/addons/mrp/test/mrp_production_order.yml
index 6c1a2a4403e..c765809af1e 100644
--- a/addons/mrp/test/mrp_production_order.yml
+++ b/addons/mrp/test/mrp_production_order.yml
@@ -11,6 +11,7 @@
location_dest_id: stock.stock_location_stock
location_src_id: stock.stock_location_stock
product_id: product.product_product_pc1
+ name: MO/0123
product_qty: 5.0
product_uom: product.product_uom_unit
product_uos_qty: 0.0
@@ -18,14 +19,28 @@
I compute the data.
-
!python {model: mrp.production}: |
- self.action_compute(cr, uid, [ref("mrp_production_mo1")], {"lang": "en_US", "tz":
- False, "search_default_current": 1, "active_model": "ir.ui.menu", "active_ids":
- [ref("mrp.menu_mrp_production_action")], "active_id": ref("mrp.menu_mrp_production_action"),
- })
+ self.action_compute(cr, uid, [ref("mrp_production_mo1")])
-
I confirm the order.
-
!workflow {model: mrp.production, action: button_confirm, ref: mrp_production_mo1}
+-
+ I create record for changing production quantity to 6.00
+-
+ !record {model: change.production.qty, id: mrp_production_qty}:
+ product_qty: 6.0
+-
+ Changes the Quantity of Product.
+-
+ !python {model: change.production.qty}: |
+ context = {"lang": 'en_US', "active_model":"mrp.production", "active_ids": [ref("mrp_production_mo1")], "tz": False, "active_id":ref('mrp_production_mo1')}
+ self.default_get(cr, uid, ["product_qty"], context)
+ self.change_prod_qty(cr, uid, [ref("mrp_production_qty")], context=context)
+-
+ I check now quantity of the production order is 6 or not.
+-
+ !assert {model: mrp.production, id: mrp_production_mo1}:
+ - product_qty == 6
-
I am checking Procurement orders for components of PC1.
-
@@ -50,28 +65,28 @@
pick_ids = self.search(cr, uid, [('type','=','internal')])
assert pick_ids, _('No Internal Pickings!')
-
- I see that there is a manufacturing order for the sub product of PC1 with ready state.
+ I see that there is a manufacturing order for the sub product CPU_GEN with ready state and I start production of it.
-
!python {model: mrp.production}: |
from tools.translate import _
- order_ids = self.search(cr, uid, [('state','=','ready')])
+ order_ids = self.search(cr, uid, [('state','=','ready'), ('product_id', '=', ref('product.product_product_cpu_gen'))])
assert order_ids, _('No manufacturing order in Ready state!')
+ import netsvc
+ wf_service = netsvc.LocalService("workflow")
+ for order in order_ids:
+ wf_service.trg_validate(uid, 'mrp.production', order, 'button_produce', cr)
-
- I start producing that product first. So I marked it as started.
--
- !workflow {model: mrp.production, action: button_produce, ref: mrp_production_mo1}
--
- I create record for producing products with quantity 5.00.
+ I create record for producing products with quantity 6.00.
-
!record {model: mrp.product.produce, id: mrp_product_produce0}:
- product_qty: 5.00
+ product_qty: 6.00
mode: 'consume_produce'
-
I produce the product.
-
!python {model: mrp.product.produce}: |
prod_obj = self.pool.get('mrp.production')
- prod_ids = prod_obj.search(cr, uid, [('state','=','confirmed')])
+ prod_ids = prod_obj.search(cr, uid, [('state','=','in_production'), ('product_id', '=', ref('product.product_product_cpu_gen'))])
self.do_produce(cr, uid, [ref('mrp_product_produce0')], context={'active_ids': prod_ids})
-
Now the manufacturing order for subproduct CPU_GEN is done and manufacturing
@@ -79,23 +94,26 @@
-
!python {model: mrp.production}: |
from tools.translate import _
- prod_ids = self.search(cr, uid, [('state','=','done')])
- assert prod_ids, _('Manufacturing order is yet not done!')
+ prod_ids = self.search(cr, uid, [('state','=','done'), ('product_id', '=', ref('product.product_product_cpu_gen'))])
+ assert prod_ids, _('Manufacturing order for CPU_GEN is yet not done!')
-
I start producing the product PC1.
-
!workflow {model: mrp.production, action: button_produce, ref: mrp_production_mo1}
-
- I create record for producing products with quantity 5.00.
+ I create record for producing products with quantity 6.00.
-
!record {model: mrp.product.produce, id: mrp_product_produce1}:
- product_qty: 5.00
+ product_qty: 6.00
mode: 'consume_produce'
-
Finally my production order is done.
-
!python {model: mrp.product.produce}: |
- from tools.translate import _
- prod_obj = self.pool.get('mrp.production')
- prod_ids = prod_obj.search(cr, uid, [('product_id.default_code','=','PC1')])
- self.do_produce(cr, uid, [ref('mrp_product_produce1')], context={'active_ids': prod_ids})
+ context = {"lang": 'en_US', "active_model":"mrp.production", "active_ids": [ref("mrp_production_mo1")], "tz": False, "active_id":ref('mrp_production_mo1')}
+ self.do_produce(cr, uid, [ref('mrp_product_produce1')], context=context)
+-
+ I check now the production order for PC1 is done.
+-
+ !assert {model: mrp.production, id: mrp_production_mo1}:
+ - state == 'done'
diff --git a/addons/mrp_jit/__openerp__.py b/addons/mrp_jit/__openerp__.py
index 77bece7cfd6..72ef35ebc4b 100644
--- a/addons/mrp_jit/__openerp__.py
+++ b/addons/mrp_jit/__openerp__.py
@@ -21,7 +21,7 @@
{
- 'name': 'MRP JIT',
+ 'name': 'Just In Time Scheduling',
'version': '1.0',
'category': 'Manufacturing',
'complexity': "easy",
diff --git a/addons/mrp_operations/__openerp__.py b/addons/mrp_operations/__openerp__.py
index 08f8f5b7f5b..d965ca5160c 100644
--- a/addons/mrp_operations/__openerp__.py
+++ b/addons/mrp_operations/__openerp__.py
@@ -21,7 +21,7 @@
{
- 'name': 'Work Center Production start end workflow',
+ 'name': 'Manufacturing Operations',
'version': '1.0',
'category': 'Manufacturing',
'complexity': "easy",
@@ -65,7 +65,7 @@ So that we can compare the theoretic delay and real delay.
'process/mrp_operation_process.xml'
],
'demo_xml': ['mrp_operation_data.xml'],
- 'test': ['test/mrp_operations.yml', 'test/mrp_operations_report.yml'],
+ 'test': ['test/mrp_operations.yml', 'test/mrp_operations_report.yml','test/mrp_operation_test.yml'],
'installable': True,
'active': False,
'certificate': '0056233813133',
diff --git a/addons/mrp_operations/mrp_operations.py b/addons/mrp_operations/mrp_operations.py
index 4e665b3f9dc..7dc93731b03 100644
--- a/addons/mrp_operations/mrp_operations.py
+++ b/addons/mrp_operations/mrp_operations.py
@@ -235,6 +235,8 @@ class mrp_production(osv.osv):
obj = self.browse(cr, uid, ids)[0]
wf_service = netsvc.LocalService("workflow")
for workcenter_line in obj.workcenter_lines:
+ if workcenter_line.state == 'draft':
+ wf_service.trg_validate(uid, 'mrp.production.workcenter.line', workcenter_line.id, 'button_start_working', cr)
wf_service.trg_validate(uid, 'mrp.production.workcenter.line', workcenter_line.id, 'button_done', cr)
return super(mrp_production,self).action_production_end(cr, uid, ids)
@@ -243,9 +245,11 @@ class mrp_production(osv.osv):
@return: True
"""
obj = self.browse(cr, uid, ids)[0]
+ workcenter_pool = self.pool.get('mrp.production.workcenter.line')
wf_service = netsvc.LocalService("workflow")
- for workcenter_line in obj.workcenter_lines:
- wf_service.trg_validate(uid, 'mrp.production.workcenter.line', workcenter_line.id, 'button_start_working', cr)
+ for prod in self.browse(cr, uid, ids):
+ if prod.workcenter_lines:
+ wf_service.trg_validate(uid, 'mrp.production.workcenter.line', prod.workcenter_lines[0].id, 'button_start_working', cr)
return super(mrp_production,self).action_in_production(cr, uid, ids)
def action_cancel(self, cr, uid, ids, context=None):
diff --git a/addons/mrp_operations/mrp_operations_view.xml b/addons/mrp_operations/mrp_operations_view.xml
index a80a1a41a9c..2484345de9a 100644
--- a/addons/mrp_operations/mrp_operations_view.xml
+++ b/addons/mrp_operations/mrp_operations_view.xml
@@ -140,7 +140,7 @@
domain="[('state','=','pause')]"/>
diff --git a/addons/mrp_operations/test/mrp_operation_test.yml b/addons/mrp_operations/test/mrp_operation_test.yml
new file mode 100644
index 00000000000..9cb81abebde
--- /dev/null
+++ b/addons/mrp_operations/test/mrp_operation_test.yml
@@ -0,0 +1,56 @@
+-
+ In order to test mrp_operations module in OpenERP,
+ I create a production order.
+-
+ !record {model: mrp.production, id: mrp_production_mo1}:
+ company_id: base.main_company
+ date_planned: !eval datetime.today().strftime("%Y-%m-%d %H:%M:%S")
+ location_dest_id: stock.stock_location_stock
+ location_src_id: stock.stock_location_stock
+ name: MO/01234567
+ product_id: product.product_product_pc1
+ product_qty: 5.0
+ product_uom: product.product_uom_unit
+ product_uos_qty: 5.0
+-
+ Now I confirm the production order.
+-
+ !workflow {model: mrp.production, action: button_confirm, ref: mrp_production_mo1}
+-
+ I check that there is one Work order generated related to the production order.
+-
+ !python {model: mrp.production.workcenter.line}: |
+ from tools.translate import _
+ order_id = self.search(cr, uid, [('production_id','=', ref('mrp_production_mo1')),('state','=','draft')])
+ assert order_id, _('No work order defined for this production order!')
+-
+ The scheduler runs.
+-
+ !function {model: procurement.order, name: run_scheduler}:
+ - model: procurement.order
+ search: "[('state','=','confirmed')]"
+-
+ I am checking Internal picking.
+-
+ !python {model: mrp.production}: |
+ from tools.translate import _
+ pick_ids = self.browse(cr, uid, ref("mrp_production_mo1"))
+ assert pick_ids.picking_id.id, _('No Internal Picking generated!')
+-
+ In order to cancel the MO, first cancel its picking
+-
+ !python {model: stock.picking}: |
+ mrp_obj = self.pool.get('mrp.production')
+ mo = mrp_obj.browse(cr, uid, ref("mrp_production_mo1"))
+ self.action_cancel(cr, uid, [mo.picking_id.id], context=None)
+-
+ Then cancel The Manufacturing order.
+-
+ !workflow {model: mrp.production, action: button_cancel, ref: mrp_production_mo1}
+-
+ I check that there is one Work order generated related to the production order that is cancelled or not.
+-
+ !python {model: mrp.production.workcenter.line}: |
+ from tools.translate import _
+ order_id = self.search(cr, uid, [('production_id','=', ref('mrp_production_mo1')),('state','=','cancel')])
+ assert order_id, _('Work order is not cancelled for this production order!')
diff --git a/addons/mrp_operations/test/mrp_operations.yml b/addons/mrp_operations/test/mrp_operations.yml
index dc193186341..ce6aac5cdbf 100644
--- a/addons/mrp_operations/test/mrp_operations.yml
+++ b/addons/mrp_operations/test/mrp_operations.yml
@@ -14,6 +14,7 @@
product_qty: 5.0
product_uom: product.product_uom_unit
product_uos_qty: 5.0
+ allow_reorder: True
-
I am computing the data.
-
@@ -32,7 +33,7 @@
!python {model: mrp.production.workcenter.line}: |
from tools.translate import _
order_id = self.search(cr, uid, [('production_id','=', ref('mrp_production_mo0')),('state','=','draft')])
- assert order_id, _('No Work order!')
+ assert order_id, _('No Work order define for this production order!')
-
The scheduler runs.
-
@@ -61,7 +62,7 @@
prod_obj = self.pool.get('mrp.production')
prod_order_ids = prod_obj.search(cr, uid, [('state','=','ready'),('origin','like','%MO/0123456')])
workorder_id = self.search(cr, uid, [('production_id','=', prod_order_ids[0]),('state','=','draft')])
- assert workorder_id, _('No Work order!')
+ assert workorder_id, _('No Work order define for this production order!')
-
I start the second production order of the CPU_GEN product.
-
@@ -144,3 +145,14 @@
from tools.translate import _
order_id = self.search(cr, uid, [('production_id','=', ref('mrp_production_mo0')),('state','=','done')])
assert order_id, _('Work order not done yet!')
+-
+ Calculates start date for stock moves finding interval from resource calendar.
+-
+ !python {model: mrp.production}: |
+ self._move_pass(cr, uid, [ref('mrp_production_mo0')], context=None)
+-
+ Calculates planned end date of production order.
+-
+ !python {model: mrp.production}: |
+ mo = self.browse(cr, uid, ref("mrp_production_mo0"))
+ self._production_date_end(cr, uid, [ref("mrp_production_mo0")], mo.date_planned, False, context=None)
diff --git a/addons/mrp_repair/__openerp__.py b/addons/mrp_repair/__openerp__.py
index 134b16542a5..e8cf4f07e66 100644
--- a/addons/mrp_repair/__openerp__.py
+++ b/addons/mrp_repair/__openerp__.py
@@ -21,9 +21,9 @@
{
- 'name': 'Products Repairs Module - Manage All products Repairs',
+ 'name': 'Repairs',
'version': '1.0',
- 'category': 'Tools',
+ 'category': 'Manufacturing',
'description': """
The aim is to have a complete module to manage all products repairs. The following topics should be covered by this module:
===========================================================================================================================
@@ -48,7 +48,7 @@ The aim is to have a complete module to manage all products repairs. The followi
'mrp_repair_report.xml',
],
'demo_xml': [],
- 'test': ['test/test_mrp_repair.yml', 'test/mrp_repair_report.yml'],
+ 'test': ['test/test_mrp_repair.yml', 'test/mrp_repair_report.yml','test/mrp_repair_cancel.yml'],
'installable': True,
'active': False,
'certificate': '0060814381277',
diff --git a/addons/mrp_repair/mrp_repair.py b/addons/mrp_repair/mrp_repair.py
index 3a538590d10..6e5543dbadd 100644
--- a/addons/mrp_repair/mrp_repair.py
+++ b/addons/mrp_repair/mrp_repair.py
@@ -68,12 +68,15 @@ class mrp_repair(osv.osv):
val = 0.0
cur = repair.pricelist_id.currency_id
for line in repair.operations:
+ #manage prices with tax included use compute_all instead of compute
if line.to_invoice:
- for c in tax_obj.compute(cr, uid, line.tax_id, line.price_unit, line.product_uom_qty, repair.partner_invoice_id.id, line.product_id, repair.partner_id):
+ tax_calculate = tax_obj.compute_all(cr, uid, line.tax_id, line.price_unit, line.product_uom_qty, repair.partner_invoice_id.id, line.product_id, repair.partner_id)
+ for c in tax_calculate['taxes']:
val += c['amount']
for line in repair.fees_lines:
if line.to_invoice:
- for c in tax_obj.compute(cr, uid, line.tax_id, line.price_unit, line.product_uom_qty, repair.partner_invoice_id.id, line.product_id, repair.partner_id):
+ tax_calculate = tax_obj.compute_all(cr, uid, line.tax_id, line.price_unit, line.product_uom_qty, repair.partner_invoice_id.id, line.product_id, repair.partner_id)
+ for c in tax_calculate['taxes']:
val += c['amount']
res[repair.id] = cur_obj.round(cr, uid, cur, val)
return res
@@ -105,8 +108,6 @@ class mrp_repair(osv.osv):
return res
def _get_lines(self, cr, uid, ids, context=None):
- if context is None:
- context = {}
result = {}
for line in self.pool.get('mrp.repair.line').browse(cr, uid, ids, context=context):
result[line.repair_id.id] = True
@@ -462,13 +463,6 @@ class mrp_repair(osv.osv):
self.write(cr, uid, [repair.id], {'state': 'ready'})
return True
- def action_invoice_cancel(self, cr, uid, ids, context=None):
- """ Writes repair order state to 'Exception in invoice'
- @return: True
- """
- self.write(cr, uid, ids, {'state': 'invoice_except'})
- return True
-
def action_repair_start(self, cr, uid, ids, context=None):
""" Writes repair order state to 'Under Repair'
@return: True
@@ -480,22 +474,6 @@ class mrp_repair(osv.osv):
repair.write({'state': 'under_repair'})
return True
- def action_invoice_end(self, cr, uid, ids, context=None):
- """ Writes repair order state to 'Ready' if invoice method is Before repair.
- @return: True
- """
- repair_line = self.pool.get('mrp.repair.line')
- for order in self.browse(cr, uid, ids, context=context):
- val = {}
- if (order.invoice_method == 'b4repair'):
- val['state'] = 'ready'
- repair_line.write(cr, uid, [l.id for
- l in order.operations], {'state': 'confirmed'}, context=context)
- else:
- pass
- self.write(cr, uid, [order.id], val, context=context)
- return True
-
def action_repair_end(self, cr, uid, ids, context=None):
""" Writes repair order state to 'To be invoiced' if invoice method is
After repair else state is set to 'Ready'.
diff --git a/addons/mrp_repair/test/mrp_repair_cancel.yml b/addons/mrp_repair/test/mrp_repair_cancel.yml
new file mode 100644
index 00000000000..682a70fde5f
--- /dev/null
+++ b/addons/mrp_repair/test/mrp_repair_cancel.yml
@@ -0,0 +1,100 @@
+-
+ In order to test repair orders I have created stock move line record.
+-
+ !record {model: stock.move, id: stock_move_pcbasicpc0}:
+ company_id: base.main_company
+ date: !eval datetime.today().strftime("%Y-%m-%d %H:%M:%S")
+ date_expected: !eval datetime.today().strftime("%Y-%m-%d %H:%M:%S")
+ location_dest_id: stock.stock_location_14
+ location_id: stock.stock_location_stock
+ name: '[PC1] Basic PC'
+ product_id: product.product_product_pc1
+ product_qty: 1.0
+ product_uom: product.product_uom_unit
+ product_uos_qty: 1.0
+
+-
+ I start by creating new Repair order for "Basic PC" product and Invoice Method is "No Invoice".
+-
+ !record {model: mrp.repair, id: mrp_repair_rma2}:
+ address_id: base.res_partner_address_1
+ guarantee_limit: !eval datetime.today().strftime("%Y-%m-%d")
+ invoice_method: 'none'
+ partner_invoice_id: base.res_partner_address_1
+ location_dest_id: stock.stock_location_14
+ location_id: stock.stock_location_14
+ move_id: 'stock_move_pcbasicpc0'
+ name: RMA000055
+ operations:
+ - location_dest_id: stock.location_production
+ location_id: stock.stock_location_stock
+ name: '[HDD1] HDD Seagate 7200.8 80GB'
+ price_unit: 50.0
+ product_id: product.product_product_hdd1
+ product_uom: product.product_uom_unit
+ product_uom_qty: 1.0
+ state: draft
+ to_invoice: 1
+ type: add
+ fees_lines:
+ - name: 'HDD1 Seagate repair fees'
+ product_id: product.product_product_hdd1
+ product_uom_qty: 1.0
+ product_uom: product.product_uom_unit
+ price_unit: 50.0
+ partner_id: base.res_partner_9
+ product_id: product.product_product_pc1
+-
+ I confirm this Repair order.
+-
+ !workflow {model: mrp.repair, action: repair_confirm, ref: mrp_repair_rma2}
+-
+ I Cancel this Repair order.
+-
+ !python {model: mrp.repair.cancel}: |
+ context = {"lang": 'en_US', "active_model":"mrp.repair", "active_ids": [ref("mrp_repair_rma2")], "tz": False, "active_id":ref('mrp_repair_rma2')}
+ self.fields_view_get(cr, uid, False, "form", context)
+ self.cancel_repair(cr, uid, [ref("mrp_repair_rma2")], context=context)
+-
+ I check that Repair order is in "Cancel" state.
+-
+ !assert {model: mrp.repair, id: mrp_repair_rma2}:
+ - state == 'cancel'
+-
+ I Reopen the repair order as new.
+-
+ !python {model: mrp.repair}: |
+ self.action_cancel_draft(cr, uid, [ref('mrp_repair_rma2')])
+-
+ I change the Invoice method of the repair order to Before repair.
+-
+ !python {model: mrp.repair}: |
+ self.write(cr, uid, [ref('mrp_repair_rma2')], {'invoice_method': 'b4repair'})
+-
+ I confirm the Repair order again.
+-
+ !workflow {model: mrp.repair, action: repair_confirm, ref: mrp_repair_rma2}
+-
+ Repair order state to 'Ready'.
+-
+ !python {model: mrp.repair}: |
+ self.action_repair_ready(cr, uid, [ref('mrp_repair_rma2')], context=None)
+-
+ I click on "Create Invoice" button of this wizard to make invoice.
+-
+ !workflow {model: mrp.repair, action: action_invoice_create, ref: mrp_repair_rma2}
+-
+ I check that Invoice is created for this repair order.
+-
+ !python {model: mrp.repair}: |
+ repair_id = self.browse(cr, uid, [ref('mrp_repair_rma2')], context=context)[0]
+ assert repair_id.invoice_id.id, _("No invoice exists for this repair order.")
+-
+ I start the repairing process by click on "Start Repair" Button.
+-
+ !workflow {model: mrp.repair, action: action_repair_start, ref: mrp_repair_rma2}
+-
+ Repairing Process for product is Done and I End Repair process by click on "End Repair" button For Invoice Type b4repair.
+-
+ !workflow {model: mrp.repair, action: action_repair_end, ref: mrp_repair_rma2}
+
diff --git a/addons/mrp_repair/test/test_mrp_repair.yml b/addons/mrp_repair/test/test_mrp_repair.yml
index 881ef449405..e8010cc1bdc 100644
--- a/addons/mrp_repair/test/test_mrp_repair.yml
+++ b/addons/mrp_repair/test/test_mrp_repair.yml
@@ -1,14 +1,13 @@
-- |
+-
In order to test "mrp_repair" module, I start with creating repair order, confirm it, and start repair.
-
-- |
+-
Given that I have already stock move line created.
-
!record {model: stock.move, id: stock_move_pcbasicpc0}:
company_id: base.main_company
date: !eval datetime.today().strftime("%Y-%m-%d %H:%M:%S")
date_expected: !eval datetime.today().strftime("%Y-%m-%d %H:%M:%S")
- location_dest_id: stock.stock_location_stock
+ location_dest_id: stock.stock_location_14
location_id: stock.stock_location_stock
name: '[PC1] Basic PC'
product_id: product.product_product_pc1
@@ -16,8 +15,8 @@
product_uom: product.product_uom_unit
product_uos_qty: 1.0
-- |
- I start by creating new Repair order for "Basic Pc" product.
+-
+ I start by creating new Repair order for "Basic PC" product.
-
!record {model: mrp.repair, id: mrp_repair_rma0}:
address_id: base.res_partner_address_1
@@ -39,53 +38,81 @@
state: draft
to_invoice: 1
type: add
+ fees_lines:
+ - name: 'HDD1 Seagate repair fees'
+ product_id: product.product_product_hdd1
+ product_uom_qty: 1.0
+ product_uom: product.product_uom_unit
+ price_unit: 50.0
partner_id: base.res_partner_9
product_id: product.product_product_pc1
-
-- |
+-
+ On change of product sets some values
+-
+ !python {model: mrp.repair}: |
+ self.onchange_product_id(cr, uid, [ref('mrp_repair_rma0')], product_id=False)
+-
+ On change of move id sets values of guarantee limit, source location, destination location, partner and partner address.
+-
+ !python {model: mrp.repair}: |
+ repair_id = self.browse(cr, uid, [ref('mrp_repair_rma0')], context=context)[0]
+ self.onchange_move_id(cr, uid, [ref('mrp_repair_rma0')], False, repair_id.move_id)
+-
+ On change of operation type it sets source location, destination location and to invoice field
+-
+ !python {model: mrp.repair.line}: |
+ self.onchange_operation_type(cr, uid, [ref('mrp_repair_rma0')], type, False)
+-
+ On change of partner sets the values of partner address, partner invoice address and pricelist.
+-
+ !python {model: mrp.repair}: |
+ repair_id = self.browse(cr, uid, [ref('mrp_repair_rma0')], context=context)[0]
+ self.onchange_partner_id(cr, uid, [ref('mrp_repair_rma0')], False, repair_id.address_id)
+-
+ On change of production lot sets the values of source location, destination location, move and guarantee limit
+-
+ !python {model: mrp.repair}: |
+ repair_id = self.browse(cr, uid, [ref('mrp_repair_rma0')], context=context)[0]
+ self.onchange_lot_id(cr, uid, [ref('mrp_repair_rma0')], False, repair_id.product_id)
+-
I check that Repair order is in "Draft" state.
-
!assert {model: mrp.repair, id: mrp_repair_rma0}:
- state == 'draft'
-
-- |
+-
I confirm This Repair order.
-
!workflow {model: mrp.repair, action: repair_confirm, ref: mrp_repair_rma0}
-- |
- I start the repairing process by click on "Start Repair" Button.
+-
+ I start the repairing process by click on "Start Repair" Button For Invoice Type After repair.
-
!workflow {model: mrp.repair, action: repair_ready, ref: mrp_repair_rma0}
-- |
+-
I check that state is "Under Repair".
-
!assert {model: mrp.repair, id: mrp_repair_rma0}:
- state == 'under_repair'
-- |
+-
Repairing Process for product is Done and I End Repair process by click on "End Repair" button.
-
!workflow {model: mrp.repair, action: action_repair_end, ref: mrp_repair_rma0}
-- |
+
+-
I select invoiced after repair option in this "RMA00004" Repair order.
so I create Invoice by click on "Make Invoice" wizard.
-
!record {model: mrp.repair.make_invoice, id: mrp_repair_make_invoice_0}:
group: 1
-- |
+-
I click on "Create Invoice" button of this wizard to make invoice.
-
!python {model: mrp.repair.make_invoice}: |
self.make_invoices(cr, uid, [ref("mrp_repair_make_invoice_0")], {"active_ids": [ref("mrp_repair.mrp_repair_rma0")]})
-- |
+-
I check that Invoice is created for this repair order.
-
!python {model: mrp.repair}: |
- obj_lines = self.pool.get('account.invoice.line')
- inv_obj = self.pool.get('account.invoice')
repair_id = self.browse(cr, uid, [ref('mrp_repair_rma0')], context=context)[0]
- invoice_ids = inv_obj.search(cr, uid, [('partner_id', '=', repair_id.partner_id.id)])
- invoice_id = inv_obj.browse(cr, uid, invoice_ids)[0]
-
- assert repair_id.partner_id.id == invoice_id.partner_id.id, "No invoice existing for the same partner"
+ assert repair_id.invoice_id.id, _("No invoice exists for this repair order")
diff --git a/addons/mrp_subproduct/__openerp__.py b/addons/mrp_subproduct/__openerp__.py
index 52fd3758fbc..5c3db5436d5 100644
--- a/addons/mrp_subproduct/__openerp__.py
+++ b/addons/mrp_subproduct/__openerp__.py
@@ -21,7 +21,7 @@
{
- 'name': 'MRP Sub Product - To produce several products from one production order',
+ 'name': 'MRP Subproducts',
'version': '1.0',
'category': 'Manufacturing',
'description': """
diff --git a/addons/multi_company/__openerp__.py b/addons/multi_company/__openerp__.py
index d82f0e1eb7c..636ff1cac29 100644
--- a/addons/multi_company/__openerp__.py
+++ b/addons/multi_company/__openerp__.py
@@ -23,7 +23,7 @@
{
'name': 'Multi-Company',
'version': '1.0',
- 'category': 'Tools',
+ 'category': 'Hidden',
'complexity': "expert",
'description': """
This module is for managing a multicompany environment.
diff --git a/addons/multi_company/multi_company_demo.xml b/addons/multi_company/multi_company_demo.xml
index d3b46e6d112..5248a26f4f9 100644
--- a/addons/multi_company/multi_company_demo.xml
+++ b/addons/multi_company/multi_company_demo.xml
@@ -267,7 +267,7 @@
-
+
Expenses Credit Notes Journal - (OpenERP IN)ECNJ-OpenERP IN
diff --git a/addons/outlook/__openerp__.py b/addons/outlook/__openerp__.py
index e376bcfa34a..beab5aca648 100644
--- a/addons/outlook/__openerp__.py
+++ b/addons/outlook/__openerp__.py
@@ -21,12 +21,12 @@
{
- 'name' : 'Outlook Interface',
+ 'name' : 'Outlook Plug-In',
'version' : '1.0',
'author' : 'OpenERP SA',
'website' : 'http://www.openerp.com/',
'depends' : ['base', 'mail'],
- 'category' : 'Tools',
+ 'category' : 'Customer Relationship Management',
'description': '''
This module provides the Outlook Plug-in.
=========================================
diff --git a/addons/outlook/installer.py b/addons/outlook/installer.py
index 4d0ac1e1971..2be0c243037 100644
--- a/addons/outlook/installer.py
+++ b/addons/outlook/installer.py
@@ -41,7 +41,7 @@ class outlook_installer(osv.osv_memory):
'doc_name':fields.char('File name', size=64),
'outlook':fields.boolean('Outlook Plug-in ', help="Allows you to select an object that you would like to add to your email and its attachments."),
'plugin_file':fields.binary('Outlook Plug-in', readonly=True, help="outlook plug-in file. Save as this file and install this plug-in in outlook."),
- 'doc_file':fields.char('Installation Manual',size="264",help="The documentation file :- how to install Outlook Plug-in.", readonly=True),
+ 'doc_file':fields.char('Installation Manual',size=264,help="The documentation file :- how to install Outlook Plug-in.", readonly=True),
'description':fields.text('Description', readonly=True)
}
diff --git a/addons/outlook/outlook_installer.xml b/addons/outlook/outlook_installer.xml
index 7eb6e2b0d68..bb2aeb31fd2 100644
--- a/addons/outlook/outlook_installer.xml
+++ b/addons/outlook/outlook_installer.xml
@@ -8,20 +8,18 @@
-
- ''' + output[form_insertion_point:]
diff --git a/addons/point_of_sale/__openerp__.py b/addons/point_of_sale/__openerp__.py
index 3bd0f188581..1f6a808d2a0 100644
--- a/addons/point_of_sale/__openerp__.py
+++ b/addons/point_of_sale/__openerp__.py
@@ -23,7 +23,7 @@
{
'name': 'Point Of Sale',
'version': '1.0',
- 'category': 'Sales',
+ 'category': 'Point Of Sale',
'description': """
This module provides a quick and easy sale process.
===================================================
@@ -39,17 +39,15 @@ Main features :
""",
'author': 'OpenERP SA',
'images': ['images/cash_registers.jpeg', 'images/pos_analysis.jpeg','images/register_analysis.jpeg','images/sale_order_pos.jpeg','images/product_pos.jpeg'],
- 'depends': ['sale', 'delivery'],
+ 'depends': ['sale'],
'init_xml': [],
'update_xml': [
'security/point_of_sale_security.xml',
'security/ir.model.access.csv',
'wizard/pos_details.xml',
- 'wizard/pos_add_product.xml',
'wizard/pos_confirm.xml',
'wizard/pos_discount.xml',
- 'wizard/pos_get_sale.xml',
'wizard/pos_open_statement.xml',
'wizard/pos_close_statement.xml',
'wizard/pos_box_entries.xml',
@@ -57,15 +55,10 @@ Main features :
'wizard/pos_payment_report_date_view.xml',
'wizard/pos_box_out.xml',
'wizard/pos_sales_user.xml',
- 'wizard/all_closed_cashbox_of_the_day.xml',
- 'wizard/pos_sales_user_current_user.xml',
- 'wizard/pos_sale_user_today.xml',
'wizard/pos_receipt_view.xml',
'wizard/pos_payment_report_user.xml',
'wizard/pos_payment_report.xml',
'wizard/pos_payment.xml',
- 'wizard/pos_scan_product_view.xml',
- 'wizard/pos_return_view.xml',
'point_of_sale_report.xml',
'point_of_sale_view.xml',
'report/pos_order_report_view.xml',
@@ -75,9 +68,15 @@ Main features :
'account_statement_view.xml',
'account_statement_report.xml',
],
- 'demo_xml': ['point_of_sale_demo.xml','account_statement_demo.xml'],
- 'test': ['test/point_of_sale_test.yml',
- 'test/point_of_sale_report.yml',
+ 'demo_xml': [
+ 'point_of_sale_demo.xml',
+ 'account_statement_demo.xml',
+ 'test/00_register_open.yml'
+ ],
+ 'test': [
+ 'test/01_order_to_payment.yml',
+ 'test/02_order_to_invoice.yml',
+ 'test/point_of_sale_report.yml'
],
'installable': True,
'certificate' : '001156338024966477869',
diff --git a/addons/point_of_sale/account_bank_statement.py b/addons/point_of_sale/account_bank_statement.py
index 706cd50a84b..9cc39ced45c 100644
--- a/addons/point_of_sale/account_bank_statement.py
+++ b/addons/point_of_sale/account_bank_statement.py
@@ -25,10 +25,9 @@ from osv import fields, osv
class account_journal(osv.osv):
_inherit = 'account.journal'
_columns = {
- 'auto_cash': fields.boolean('Automatic Opening', help="This field authorize the automatic creation of the cashbox"),
- 'special_journal': fields.boolean('Special Journal', help="Will put all the orders in waiting status till being accepted"),
- 'check_dtls': fields.boolean('Check Details', help="This field authorize Validation of Cashbox without checking ending details"),
- 'journal_users': fields.many2many('res.users', 'pos_journal_users', 'journal_id', 'user_id', 'Users'),
+ 'auto_cash': fields.boolean('Automatic Opening', help="This field authorize the automatic creation of the cashbox, without control of the initial balance."),
+ 'check_dtls': fields.boolean('Control Balance Before Closing', help="This field authorize Validation of Cashbox without controlling the closing balance."),
+ 'journal_user': fields.boolean('PoS Payment Method', help="Check this box if this journal define a payment method that can be used in point of sales."),
}
_defaults = {
'check_dtls': False,
@@ -49,14 +48,6 @@ class account_cash_statement(osv.osv):
else:
return True
- def _user_allow(self, cr, uid, statement_id, context=None):
- statement = self.browse(cr, uid, statement_id, context=context)
- if (not statement.journal_id.journal_users) and uid == 1: return True
- for user in statement.journal_id.journal_users:
- if uid == user.id:
- return True
- return False
-
def _get_cash_open_box_lines(self, cr, uid, context=None):
res = super(account_cash_statement,self)._get_cash_open_box_lines(cr, uid, context)
curr = [0.01, 0.02, 0.05, 0.10, 0.20, 0.50]
diff --git a/addons/point_of_sale/account_statement_demo.xml b/addons/point_of_sale/account_statement_demo.xml
index 7cdbbf99596..e8ee0a7c349 100644
--- a/addons/point_of_sale/account_statement_demo.xml
+++ b/addons/point_of_sale/account_statement_demo.xml
@@ -1,75 +1,17 @@
-
- Visa Journal
- VIJ
- cash
-
-
-
-
-
-
-
-
-
-
-
-
- Bancontact Journal
- BACJ
- cash
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
-
-
-
-
-
+
-
+
diff --git a/addons/point_of_sale/account_statement_view.xml b/addons/point_of_sale/account_statement_view.xml
index d6bfa4eda66..16cc953d9ef 100644
--- a/addons/point_of_sale/account_statement_view.xml
+++ b/addons/point_of_sale/account_statement_view.xml
@@ -11,28 +11,15 @@
-
+
-
+
-
-
-
-
-
-
account.bank.statement.inheritaccount.bank.statement
@@ -66,7 +53,7 @@
-
+
@@ -141,14 +128,6 @@
-
-
+
+
+
+
+
+
diff --git a/addons/point_of_sale/account_statement_wizard.xml b/addons/point_of_sale/account_statement_wizard.xml
deleted file mode 100644
index 25f099810b4..00000000000
--- a/addons/point_of_sale/account_statement_wizard.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
-
diff --git a/addons/point_of_sale/i18n/et.po b/addons/point_of_sale/i18n/et.po
index 3d295b74c53..3d7af321ef2 100644
--- a/addons/point_of_sale/i18n/et.po
+++ b/addons/point_of_sale/i18n/et.po
@@ -7,17 +7,17 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-03 16:58+0000\n"
-"PO-Revision-Date: 2010-10-30 09:04+0000\n"
-"Last-Translator: OpenERP Administrators \n"
+"PO-Revision-Date: 2011-10-11 18:22+0000\n"
+"Last-Translator: Aare Vesi \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 05:05+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-12 04:39+0000\n"
+"X-Generator: Launchpad (build 14124)\n"
#. module: point_of_sale
-#: code:addons/point_of_sale/point_of_sale.py:1206
+#: code:addons/point_of_sale/point_of_sale.py:1202
#, python-format
msgid "Create line failed !"
msgstr "Rea loomine ebaõnnestus!"
@@ -29,7 +29,7 @@ msgid "Invalid action !"
msgstr "Vigane tegevus !"
#. module: point_of_sale
-#: code:addons/point_of_sale/point_of_sale.py:1214
+#: code:addons/point_of_sale/point_of_sale.py:1210
#, python-format
msgid "Modify line failed !"
msgstr "Rea muutmine ebaõnnestus!"
@@ -73,7 +73,7 @@ msgstr "Kassa"
#. module: point_of_sale
#: view:report.pos.order:0
msgid "Today"
-msgstr ""
+msgstr "Täna"
#. module: point_of_sale
#: view:pos.add.product:0
@@ -121,7 +121,7 @@ msgstr "Scanneeri toodet"
#: view:report.pos.order:0
#: field:report.pos.order,day:0
msgid "Day"
-msgstr ""
+msgstr "Päev"
#. module: point_of_sale
#: view:pos.make.payment:0
@@ -132,7 +132,7 @@ msgstr "Lisa maksmine :"
#: view:report.cash.register:0
#: view:report.pos.order:0
msgid "My Sales"
-msgstr ""
+msgstr "Minu müügid"
#. module: point_of_sale
#: model:ir.actions.act_window,name:point_of_sale.action_box_out
@@ -163,7 +163,7 @@ msgstr "Käibemaks"
#. module: point_of_sale
#: report:pos.invoice:0
msgid "Origin"
-msgstr ""
+msgstr "Päritolu"
#. module: point_of_sale
#: report:pos.invoice:0
@@ -196,7 +196,7 @@ msgstr "Päevasumma"
#: view:report.pos.order:0
#: field:report.pos.order,average_price:0
msgid "Average Price"
-msgstr ""
+msgstr "Keskmine hind"
#. module: point_of_sale
#: report:pos.lines:0
@@ -248,24 +248,24 @@ msgstr ""
#: field:pos.box.entries,ref:0
#: field:pos.box.out,ref:0
msgid "Ref"
-msgstr ""
+msgstr "Viide"
#. module: point_of_sale
#: view:report.pos.order:0
#: field:report.pos.order,price_total:0
msgid "Total Price"
-msgstr ""
+msgstr "Hind kokku"
#. module: point_of_sale
#: view:product.product:0
msgid "Miscelleanous"
-msgstr ""
+msgstr "Mitmesugune"
#. module: point_of_sale
#: model:ir.actions.report.xml,name:point_of_sale.pos_sales_user
#: report:pos.sales.user:0
msgid "Sales Report"
-msgstr ""
+msgstr "Müügiaruanne"
#. module: point_of_sale
#: code:addons/point_of_sale/wizard/pos_discount.py:52
@@ -276,18 +276,18 @@ msgstr ""
#. module: point_of_sale
#: view:pos.order:0
msgid "Other Information"
-msgstr ""
+msgstr "Muu info"
#. module: point_of_sale
#: view:product.product:0
msgid "Product Type"
-msgstr ""
+msgstr "Toote tüüp"
#. module: point_of_sale
#: view:pos.order:0
#: view:pos.payment.report.date:0
msgid "Dates"
-msgstr ""
+msgstr "Kuupäevad"
#. module: point_of_sale
#: field:res.company,company_discount:0
@@ -300,8 +300,8 @@ msgid "Cash register management"
msgstr ""
#. module: point_of_sale
-#: code:addons/point_of_sale/point_of_sale.py:1056
-#: code:addons/point_of_sale/point_of_sale.py:1075
+#: code:addons/point_of_sale/point_of_sale.py:1057
+#: code:addons/point_of_sale/point_of_sale.py:1076
#, python-format
msgid "No valid pricelist line found !"
msgstr "Kehtiv hinnakirja rida ei ole leitud !"
@@ -314,13 +314,13 @@ msgstr "Kehtiv hinnakirja rida ei ole leitud !"
#: report:pos.payment.report.user:0
#: report:pos.user.product:0
msgid "["
-msgstr ""
+msgstr "["
#. module: point_of_sale
#: field:report.sales.by.margin.pos,total:0
#: field:report.sales.by.margin.pos.month,total:0
msgid "Margin"
-msgstr ""
+msgstr "Kate"
#. module: point_of_sale
#: field:pos.order.line,discount:0
@@ -380,13 +380,13 @@ msgstr ""
#: selection:report.cash.register,month:0
#: selection:report.pos.order,month:0
msgid "August"
-msgstr ""
+msgstr "August"
#. module: point_of_sale
#: selection:report.cash.register,month:0
#: selection:report.pos.order,month:0
msgid "June"
-msgstr ""
+msgstr "Juuni"
#. module: point_of_sale
#: model:ir.actions.act_window,name:point_of_sale.action_report_sales_by_user_pos_month
@@ -409,7 +409,7 @@ msgstr ""
#: selection:report.cash.register,month:0
#: selection:report.pos.order,month:0
msgid "October"
-msgstr ""
+msgstr "Oktoober"
#. module: point_of_sale
#: field:account.bank.statement.line,am_out:0
@@ -425,7 +425,7 @@ msgstr "Üldistus"
#. module: point_of_sale
#: view:pos.order:0
msgid "Quotations"
-msgstr ""
+msgstr "Pakkumised"
#. module: point_of_sale
#: field:report.pos.order,delay_payment:0
@@ -450,7 +450,7 @@ msgstr ""
#. module: point_of_sale
#: view:account.bank.statement:0
msgid "Period"
-msgstr ""
+msgstr "Periood"
#. module: point_of_sale
#: report:pos.invoice:0
@@ -466,7 +466,7 @@ msgstr "Rea kirjeldus"
#. module: point_of_sale
#: view:product.product:0
msgid "Codes"
-msgstr ""
+msgstr "Koodid"
#. module: point_of_sale
#: view:pos.box.out:0
@@ -483,7 +483,7 @@ msgstr ""
#: view:pos.sales.user.today:0
#: view:pos.sales.user.today.current_user:0
msgid "Print Report"
-msgstr ""
+msgstr "Trüki aruanne"
#. module: point_of_sale
#: report:pos.invoice:0
@@ -509,7 +509,7 @@ msgstr ""
#: model:ir.model,name:point_of_sale.model_pos_add_product
#, python-format
msgid "Add Product"
-msgstr ""
+msgstr "Lisa toode"
#. module: point_of_sale
#: field:report.transaction.pos,invoice_am:0
@@ -581,7 +581,7 @@ msgstr ""
#. module: point_of_sale
#: constraint:product.product:0
msgid "Error: Invalid ean code"
-msgstr ""
+msgstr "Viga: vigane EAN kood"
#. module: point_of_sale
#: model:ir.model,name:point_of_sale.model_pos_open_statement
@@ -626,7 +626,7 @@ msgstr ""
#: selection:report.cash.register,month:0
#: selection:report.pos.order,month:0
msgid "March"
-msgstr ""
+msgstr "Märts"
#. module: point_of_sale
#: model:ir.actions.report.xml,name:point_of_sale.pos_users_product_re
@@ -635,8 +635,8 @@ msgid "User's Product"
msgstr ""
#. module: point_of_sale
-#: code:addons/point_of_sale/point_of_sale.py:1042
-#: code:addons/point_of_sale/point_of_sale.py:1067
+#: code:addons/point_of_sale/point_of_sale.py:1043
+#: code:addons/point_of_sale/point_of_sale.py:1068
#, python-format
msgid ""
"You have to select a pricelist in the sale form !\n"
@@ -749,7 +749,7 @@ msgstr "Kokku :"
#: field:report.sales.by.margin.pos,product_name:0
#: field:report.sales.by.margin.pos.month,product_name:0
msgid "Product Name"
-msgstr ""
+msgstr "Toote nimi"
#. module: point_of_sale
#: field:pos.make.payment,pricelist_id:0
@@ -767,7 +767,7 @@ msgstr "Kokku arves"
#: view:report.pos.order:0
#: field:report.pos.order,product_qty:0
msgid "# of Qty"
-msgstr ""
+msgstr "Kogus"
#. module: point_of_sale
#: model:ir.model,name:point_of_sale.model_pos_return
@@ -786,7 +786,7 @@ msgstr ""
#: field:report.sales.by.user.pos,date_order:0
#: field:report.sales.by.user.pos.month,date_order:0
msgid "Order Date"
-msgstr ""
+msgstr "Tellimuse Kuupäev"
#. module: point_of_sale
#: report:all.closed.cashbox.of.the.day:0
@@ -825,7 +825,7 @@ msgstr ""
#: selection:report.cash.register,month:0
#: selection:report.pos.order,month:0
msgid "September"
-msgstr ""
+msgstr "September"
#. module: point_of_sale
#: report:account.statement:0
@@ -836,7 +836,7 @@ msgstr ""
#. module: point_of_sale
#: report:pos.lines:0
msgid "Taxes :"
-msgstr ""
+msgstr "Maksud :"
#. module: point_of_sale
#: field:report.transaction.pos,disc:0
@@ -859,7 +859,6 @@ msgid "Receipt :"
msgstr ""
#. module: point_of_sale
-#: field:account.bank.statement.line,pos_statement_id:0
#: field:pos.order,amount_return:0
msgid "unknown"
msgstr "teadmata"
@@ -878,7 +877,7 @@ msgstr ""
#. module: point_of_sale
#: field:pos.order,num_sale:0
msgid "Internal Note"
-msgstr ""
+msgstr "Sisemine märkus"
#. module: point_of_sale
#: model:ir.model,name:point_of_sale.model_res_company
@@ -916,7 +915,7 @@ msgstr ""
#. module: point_of_sale
#: report:pos.invoice:0
msgid "Your Reference"
-msgstr ""
+msgstr "Teie viide"
#. module: point_of_sale
#: field:report.transaction.pos,no_trans:0
@@ -948,7 +947,7 @@ msgstr "Müük (üldistus)"
#. module: point_of_sale
#: view:product.product:0
msgid "Information"
-msgstr ""
+msgstr "informatsioon"
#. module: point_of_sale
#: model:ir.ui.menu,name:point_of_sale.menu_wizard_enter_jrnl
@@ -974,7 +973,7 @@ msgstr ""
#. module: point_of_sale
#: field:pos.order,first_name:0
msgid "First Name"
-msgstr ""
+msgstr "Eesnimi"
#. module: point_of_sale
#: view:res.company:0
@@ -1002,7 +1001,7 @@ msgstr ""
#: view:account.journal:0
#: field:account.journal,journal_users:0
msgid "Users"
-msgstr ""
+msgstr "Kasutajad"
#. module: point_of_sale
#: report:pos.details:0
@@ -1028,7 +1027,7 @@ msgstr "POS"
#. module: point_of_sale
#: field:report.cash.register,date:0
msgid "Create Date"
-msgstr ""
+msgstr "Loomise kuupäev"
#. module: point_of_sale
#: model:ir.ui.menu,name:point_of_sale.menu_wizard_enter_jrnl2
@@ -1047,7 +1046,7 @@ msgstr ""
#: report:pos.sales.user.today:0
#: report:pos.sales.user.today.current.user:0
msgid "Name"
-msgstr ""
+msgstr "Nimi"
#. module: point_of_sale
#: model:ir.ui.menu,name:point_of_sale.menu_open_statement
@@ -1062,7 +1061,7 @@ msgstr ""
#: report:pos.payment.report.user:0
#: report:pos.user.product:0
msgid "]"
-msgstr ""
+msgstr "]"
#. module: point_of_sale
#: sql_constraint:account.journal:0
@@ -1080,7 +1079,7 @@ msgstr "Tarnija tagasimakse"
#: view:report.cash.register:0
#: view:report.pos.order:0
msgid "Group By..."
-msgstr ""
+msgstr "Grupeeri..."
#. module: point_of_sale
#: view:pos.order:0
@@ -1093,8 +1092,8 @@ msgid "All Closed CashBox"
msgstr ""
#. module: point_of_sale
-#: code:addons/point_of_sale/point_of_sale.py:1041
-#: code:addons/point_of_sale/point_of_sale.py:1066
+#: code:addons/point_of_sale/point_of_sale.py:1042
+#: code:addons/point_of_sale/point_of_sale.py:1067
#, python-format
msgid "No Pricelist !"
msgstr "Puudub hinnakiri !"
@@ -1118,7 +1117,7 @@ msgstr "Baas"
#. module: point_of_sale
#: view:product.product:0
msgid "Account"
-msgstr ""
+msgstr "Konto"
#. module: point_of_sale
#: field:pos.order,sale_manager:0
@@ -1161,7 +1160,7 @@ msgstr "Tootekood"
#: model:ir.ui.menu,name:point_of_sale.menu_point_of_sale_product
#: model:ir.ui.menu,name:point_of_sale.menu_pos_products
msgid "Products"
-msgstr ""
+msgstr "Tooted"
#. module: point_of_sale
#: model:ir.actions.report.xml,name:point_of_sale.pos_payment_report
@@ -1250,15 +1249,15 @@ msgid "Sale by User"
msgstr ""
#. module: point_of_sale
-#: code:addons/point_of_sale/point_of_sale.py:555
-#: code:addons/point_of_sale/point_of_sale.py:743
-#: code:addons/point_of_sale/point_of_sale.py:851
+#: code:addons/point_of_sale/point_of_sale.py:558
+#: code:addons/point_of_sale/point_of_sale.py:744
+#: code:addons/point_of_sale/point_of_sale.py:852
#: code:addons/point_of_sale/report/pos_invoice.py:46
#: code:addons/point_of_sale/wizard/pos_box_entries.py:103
#: code:addons/point_of_sale/wizard/pos_box_entries.py:107
-#: code:addons/point_of_sale/wizard/pos_box_out.py:95
-#: code:addons/point_of_sale/wizard/pos_box_out.py:99
+#: code:addons/point_of_sale/wizard/pos_box_out.py:97
#: code:addons/point_of_sale/wizard/pos_box_out.py:101
+#: code:addons/point_of_sale/wizard/pos_box_out.py:103
#, python-format
msgid "Error !"
msgstr "Viga !"
@@ -1282,10 +1281,10 @@ msgstr ""
#: selection:report.cash.register,month:0
#: selection:report.pos.order,month:0
msgid "July"
-msgstr ""
+msgstr "Juuli"
#. module: point_of_sale
-#: code:addons/point_of_sale/point_of_sale.py:544
+#: code:addons/point_of_sale/point_of_sale.py:547
#, python-format
msgid "Please provide an account for the product: %s"
msgstr ""
@@ -1338,7 +1337,7 @@ msgstr ""
#: view:report.pos.order:0
#: field:report.pos.order,month:0
msgid "Month"
-msgstr ""
+msgstr "Kuu"
#. module: point_of_sale
#: view:pos.order:0
@@ -1386,7 +1385,7 @@ msgid "Customer Note"
msgstr ""
#. module: point_of_sale
-#: code:addons/point_of_sale/point_of_sale.py:337
+#: code:addons/point_of_sale/point_of_sale.py:340
#, python-format
msgid "No order lines defined for this sale."
msgstr ""
@@ -1595,7 +1594,7 @@ msgid "Yes"
msgstr ""
#. module: point_of_sale
-#: code:addons/point_of_sale/point_of_sale.py:743
+#: code:addons/point_of_sale/point_of_sale.py:744
#, python-format
msgid "There is no income account defined for this product: \"%s\" (id:%d)"
msgstr ""
@@ -1696,8 +1695,8 @@ msgid "Invoice Date"
msgstr "Arve Kuupäev"
#. module: point_of_sale
-#: code:addons/point_of_sale/point_of_sale.py:1057
-#: code:addons/point_of_sale/point_of_sale.py:1076
+#: code:addons/point_of_sale/point_of_sale.py:1058
+#: code:addons/point_of_sale/point_of_sale.py:1077
#, python-format
msgid ""
"Couldn't find a pricelist line matching this product and quantity.\n"
@@ -1715,9 +1714,9 @@ msgid "Reprint"
msgstr ""
#. module: point_of_sale
-#: code:addons/point_of_sale/point_of_sale.py:555
+#: code:addons/point_of_sale/point_of_sale.py:558
#: code:addons/point_of_sale/wizard/pos_box_entries.py:103
-#: code:addons/point_of_sale/wizard/pos_box_out.py:101
+#: code:addons/point_of_sale/wizard/pos_box_out.py:103
#, python-format
msgid "You have to open at least one cashbox"
msgstr ""
@@ -1907,8 +1906,8 @@ msgid "Validation Date"
msgstr ""
#. module: point_of_sale
-#: code:addons/point_of_sale/point_of_sale.py:504
-#: code:addons/point_of_sale/point_of_sale.py:506
+#: code:addons/point_of_sale/point_of_sale.py:507
+#: code:addons/point_of_sale/point_of_sale.py:509
#, python-format
msgid "You don't have enough access to validate this sale!"
msgstr ""
@@ -2027,13 +2026,13 @@ msgid "PRO-FORMA"
msgstr "Ettemaks"
#. module: point_of_sale
-#: code:addons/point_of_sale/point_of_sale.py:637
+#: code:addons/point_of_sale/point_of_sale.py:638
#, python-format
msgid "Please provide a partner for the sale."
msgstr "Palun lisa müügipartnerit"
#. module: point_of_sale
-#: code:addons/point_of_sale/point_of_sale.py:852
+#: code:addons/point_of_sale/point_of_sale.py:853
#, python-format
msgid ""
"There is no receivable account defined for this journal: \"%s\" (id:%d)"
@@ -2091,13 +2090,13 @@ msgid "POS Orders lines"
msgstr ""
#. module: point_of_sale
-#: code:addons/point_of_sale/point_of_sale.py:337
-#: code:addons/point_of_sale/point_of_sale.py:504
-#: code:addons/point_of_sale/point_of_sale.py:506
-#: code:addons/point_of_sale/point_of_sale.py:544
-#: code:addons/point_of_sale/point_of_sale.py:637
-#: code:addons/point_of_sale/point_of_sale.py:1206
-#: code:addons/point_of_sale/point_of_sale.py:1214
+#: code:addons/point_of_sale/point_of_sale.py:340
+#: code:addons/point_of_sale/point_of_sale.py:507
+#: code:addons/point_of_sale/point_of_sale.py:509
+#: code:addons/point_of_sale/point_of_sale.py:547
+#: code:addons/point_of_sale/point_of_sale.py:638
+#: code:addons/point_of_sale/point_of_sale.py:1202
+#: code:addons/point_of_sale/point_of_sale.py:1210
#, python-format
msgid "Error"
msgstr "Viga"
@@ -2193,7 +2192,7 @@ msgid "Please fill these fields for entries to the box:"
msgstr ""
#. module: point_of_sale
-#: code:addons/point_of_sale/wizard/pos_box_out.py:99
+#: code:addons/point_of_sale/wizard/pos_box_out.py:101
#, python-format
msgid "please check that account is set to %s"
msgstr ""
diff --git a/addons/point_of_sale/point_of_sale.py b/addons/point_of_sale/point_of_sale.py
index 04610463203..bccb8d7fb1f 100644
--- a/addons/point_of_sale/point_of_sale.py
+++ b/addons/point_of_sale/point_of_sale.py
@@ -42,125 +42,23 @@ class pos_config_journal(osv.osv):
pos_config_journal()
-
-class pos_company_discount(osv.osv):
- """ Company Discount and Cashboxes """
- _inherit = 'res.company'
-
- _columns = {
- 'company_discount': fields.float('Max Discount(%)', digits_compute=dp.get_precision('Point Of Sale')),
- 'max_diff': fields.float('Max Difference for Cashboxes', digits_compute=dp.get_precision('Point Of Sale Discount')),
- }
-
-pos_company_discount()
-
class pos_order(osv.osv):
- """ Point of sale gives business owners a convenient way of checking out customers
- and of recording sales """
-
_name = "pos.order"
_description = "Point of Sale"
- _order = "date_order, create_date desc"
+ _order = "id desc"
def unlink(self, cr, uid, ids, context=None):
for rec in self.browse(cr, uid, ids, context=context):
- for rec_statement in rec.statement_ids:
- if (rec_statement.statement_id and rec_statement.statement_id.state == 'confirm') or rec.state == 'done':
- raise osv.except_osv(_('Invalid action !'), _('Cannot delete a point of sale which is closed or contains confirmed cashboxes!'))
+ if rec.state not in ('draft','cancel'):
+ raise osv.except_osv(_('Unable to Delete !'), _('In order to delete a sale, it must be new or cancelled.'))
return super(pos_order, self).unlink(cr, uid, ids, context=context)
- def onchange_partner_pricelist(self, cr, uid, ids, part=False, context=None):
-
- """ Changed price list on_change of partner_id"""
+ def onchange_partner_id(self, cr, uid, ids, part=False, context=None):
if not part:
return {'value': {}}
pricelist = self.pool.get('res.partner').browse(cr, uid, part, context=context).property_product_pricelist.id
return {'value': {'pricelist_id': pricelist}}
- def _amount_total(self, cr, uid, ids, field_name, arg, context=None):
- """ Calculates amount_tax of order line
- @param field_names: Names of fields.
- @return: Dictionary of values """
- cr.execute("""
- SELECT
- p.id,
- COALESCE(SUM(
- l.price_unit*l.qty*(1-(l.discount/100.0)))::decimal(16,2), 0
- ) AS amount
- FROM pos_order p
- LEFT OUTER JOIN pos_order_line l ON (p.id = l.order_id)
- WHERE p.id IN %s GROUP BY p.id """,(tuple(ids),))
- res = dict(cr.fetchall())
- for rec in self.browse(cr, uid, ids, context=context):
- if rec.partner_id \
- and rec.partner_id.property_account_position \
- and rec.partner_id.property_account_position.tax_ids:
- res[rec.id] = res[rec.id] - rec.amount_tax
- else :
- res[rec.id] = res[rec.id] + rec.amount_tax
- return res
-
- def _get_date_payment2(self, cr, uid, ids, context=None, *a):
- # Todo need to check this function
- """ Find payment Date
- @param field_names: Names of fields.
- @return: Dictionary of values """
- res = {}
- val = None
- for order in self.browse(cr, uid, ids, context=context):
- cr.execute("SELECT date_payment FROM pos_order WHERE id = %s", (order.id,))
- date_p = cr.fetchone()
- date_p = date_p and date_p[0] or None
- if date_p:
- res[order.id] = date_p
- return res
- if order.invoice_id:
- cr.execute(" SELECT MAX(l.date) "
- " FROM account_move_line l, account_move m, account_invoice i, account_move_reconcile r, pos_order o "
- " WHERE i.move_id = m.id AND l.move_id = m.id AND l.reconcile_id = r.id AND o.id = %s AND o.invoice_id = i.id",
- (order.id,))
- else:
- cr.execute("SELECT MAX(l.date) from account_move_line l "
- "left join account_bank_statement abs on (l.statement_id=abs.id)"
- "left join account_bank_statement_line absl on (absl.statement_id=abs.id) "
- "left join pos_order p on (p.id=absl.pos_statement_id) "
- "left join account_account a on (a.id=absl.account_id) "
- "where p.id=%s and l.reconcile_id is not NULL and a.reconcile=True", (order.id,))
- val = cr.fetchone()
- val = val and val[0] or None
- if val:
- res[order.id] = val
- return res
-
- def _get_date_payment(self, cr, uid, ids, context, *a):
- """ Find Validation Date
- @return: Dictionary of values """
- res = {}
- val = None
- for order in self.browse(cr, uid, ids):
- cr.execute("SELECT date_validation FROM pos_order WHERE id = %s", (order.id,))
- date_p = cr.fetchone()
- date_p = date_p and date_p[0] or None
- if date_p:
- res[order.id] = date_p
- return res
- discount_allowed = order.company_id.company_discount
- for line in order.lines:
- if line.discount > discount_allowed:
- return {order.id: None }
- if order.amount_paid == order.amount_total and not date_p:
- cr.execute("SELECT MAX(date) FROM account_bank_statement_line WHERE pos_statement_id = %s", (order.id,))
- val = cr.fetchone()
- val = val and val[0] or None
- if order.invoice_id and order.invoice_id.move_id and not date_p and not val:
- for o in order.invoice_id.move_id.line_id:
- if o.balance == 0:
- if val < o.date_created:
- val = o.date_created
- if val:
- res[order.id] = val
- return res
-
def _amount_all(self, cr, uid, ids, name, args, context=None):
tax_obj = self.pool.get('account.tax')
cur_obj = self.pool.get('res.currency')
@@ -171,325 +69,147 @@ class pos_order(osv.osv):
'amount_return':0.0,
'amount_tax':0.0,
}
- val = val1 = 0.0
+ val1 = val2 = 0.0
cur = order.pricelist_id.currency_id
for payment in order.statement_ids:
res[order.id]['amount_paid'] += payment.amount
res[order.id]['amount_return'] += (payment.amount < 0 and payment.amount or 0)
for line in order.lines:
val1 += line.price_subtotal_incl
- if order.price_type != 'tax_excluded':
- res[order.id]['amount_tax'] = reduce(lambda x, y: x+round(y['amount'], 2),
- tax_obj.compute_inv(cr, uid, line.product_id.taxes_id,
- line.price_unit * \
- (1-(line.discount or 0.0)/100.0), line.qty),
- res[order.id]['amount_tax'])
- elif line.qty != 0.0:
- for c in tax_obj.compute_all(cr, uid, line.product_id.taxes_id, \
- line.price_unit * (1-(line.discount or 0.0)/100.0), \
- line.qty, line.product_id, line.order_id.partner_id)['taxes']:
- val += c.get('amount', 0.0)
- res[order.id]['amount_tax'] = cur_obj.round(cr, uid, cur, val)
- res[order.id]['amount_total'] = res[order.id]['amount_tax'] + cur_obj.round(cr, uid, cur, val1)
+ val2 += line.price_subtotal
+ res[order.id]['amount_tax'] = cur_obj.round(cr, uid, cur, val1-val2)
+ res[order.id]['amount_total'] = cur_obj.round(cr, uid, cur, val1)
return res
- def _sale_journal_get(self, cr, uid, context=None):
- """ To get sale journal for this order
- @return: journal """
- journal_obj = self.pool.get('account.journal')
- res = journal_obj.search(cr, uid, [('type', '=', 'sale')], limit=1)
+ def _default_sale_journal(self, cr, uid, context=None):
+ res = self.pool.get('account.journal').search(cr, uid, [('type', '=', 'sale')], limit=1)
return res and res[0] or False
- def _shop_get(self, cr, uid, context=None):
- """ To get Shop for this order
- @return: Shop id """
+ def _default_shop(self, cr, uid, context=None):
res = self.pool.get('sale.shop').search(cr, uid, [])
return res and res[0] or False
def copy(self, cr, uid, id, default=None, context=None):
if not default:
default = {}
- default.update({
+ d = {
'state': 'draft',
- 'partner_id': False,
'invoice_id': False,
'account_move': False,
'picking_id': False,
'statement_ids': [],
'nb_print': 0,
- 'pickings': [],
'name': self.pool.get('ir.sequence').get(cr, uid, 'pos.order'),
- })
- return super(pos_order, self).copy(cr, uid, id, default, context=context)
-
- def _get_v( self, cr, uid, ids, *args):
- """ Changed the Validation state of order
- @return: State """
- res_obj = self.pool.get('res.users')
- company_disc = self.browse(cr, uid, ids)
- list_jrnl = []
- r = {}
- if not company_disc:
- comp = res_obj.browse(cr, uid, uid).company_id.company_discount or 0.0
- else:
- comp = company_disc[0] and company_disc[0].company_id and company_disc[0].company_id.company_discount or 0.0
- cr.execute("SELECT discount FROM pos_order_line WHERE order_id = %s AND discount <= %s", (ids[0], comp))
- res = cr.fetchone()
- cr.execute("SELECT discount FROM pos_order_line WHERE order_id = %s AND discount > %s", (ids[0], comp))
- res2 = cr.fetchone()
- cr.execute("SELECT journal_id FROM account_bank_statement_line WHERE pos_statement_id = %s ", (ids[0], ))
- res3 = cr.fetchall()
- for r in res3:
- cr.execute("SELECT id FROM account_journal WHERE name = '%s' AND special_journal = 't'", (r[0], ))
- res3 = cr.fetchone()
- is_special = res3 and res3[0] or None
- if is_special:
- list_jrnl.append(is_special)
- for order in self.browse(cr, uid, ids):
- if order.state in ('paid', 'done', 'invoiced') and res and not res2 and not len(list_jrnl):
- r[order.id] = 'accepted'
- return r
+ }
+ d.update(default)
+ return super(pos_order, self).copy(cr, uid, id, d, context=context)
_columns = {
- 'name': fields.char('Order Description', size=64, required=True,
+ 'name': fields.char('Order Ref', size=64, required=True,
states={'draft': [('readonly', False)]}, readonly=True),
'company_id':fields.many2one('res.company', 'Company', required=True, readonly=True),
- 'num_sale': fields.char('Internal Note', size=64),
'shop_id': fields.many2one('sale.shop', 'Shop', required=True,
states={'draft': [('readonly', False)]}, readonly=True),
'date_order': fields.datetime('Date Ordered', readonly=True, select=True),
- 'date_validation': fields.function(_get_date_payment,
- string='Validation Date',
- type='date', select=True, store=True),
- 'date_payment': fields.function(_get_date_payment2,
- string='Payment Date',
- type='date', select=True, store=True),
- 'date_validity': fields.date('Validity Date', required=True),
'user_id': fields.many2one('res.users', 'Connected Salesman', help="Person who uses the the cash register. It could be a reliever, a student or an interim employee."),
- 'user_salesman_id': fields.many2one('res.users', 'Cashier', required=True, help="User who is logged into the system."),
- 'sale_manager': fields.many2one('res.users', 'Salesman Manager'),
'amount_tax': fields.function(_amount_all, string='Taxes', digits_compute=dp.get_precision('Point Of Sale'), multi='all'),
'amount_total': fields.function(_amount_all, string='Total', multi='all'),
'amount_paid': fields.function(_amount_all, string='Paid', states={'draft': [('readonly', False)]}, readonly=True, digits_compute=dp.get_precision('Point Of Sale'), multi='all'),
'amount_return': fields.function(_amount_all, 'Returned', digits_compute=dp.get_precision('Point Of Sale'), multi='all'),
'lines': fields.one2many('pos.order.line', 'order_id', 'Order Lines', states={'draft': [('readonly', False)]}, readonly=True),
- 'price_type': fields.selection([
- ('tax_excluded','Tax excluded')],
- 'Price Method', required=True),
'statement_ids': fields.one2many('account.bank.statement.line', 'pos_statement_id', 'Payments', states={'draft': [('readonly', False)]}, readonly=True),
'pricelist_id': fields.many2one('product.pricelist', 'Pricelist', required=True, states={'draft': [('readonly', False)]}, readonly=True),
'partner_id': fields.many2one('res.partner', 'Customer', change_default=True, select=1, states={'draft': [('readonly', False)], 'paid': [('readonly', False)]}),
- 'state': fields.selection([('draft', 'Quotation'),
- ('payment', 'Payment'),
- ('advance','Advance'),
- ('paid', 'Paid'),
- ('done', 'Done'),
+
+ 'state': fields.selection([('draft', 'New'),
+ ('paid', 'Done'),
+ ('done', 'Posted'),
('invoiced', 'Invoiced'),
- ('cancel', 'Cancel')],
+ ('cancel', 'Cancelled')],
'State', readonly=True),
+
'invoice_id': fields.many2one('account.invoice', 'Invoice'),
- 'account_move': fields.many2one('account.move', 'Account Entry', readonly=True),
- 'pickings': fields.one2many('stock.picking', 'pos_order', 'Picking', readonly=True),
- 'picking_id': fields.many2one('stock.picking', 'Last Output Picking', readonly=True),
- 'first_name': fields.char('First Name', size=64),
+ 'account_move': fields.many2one('account.move', 'Journal Entry', readonly=True),
+ 'picking_id': fields.many2one('stock.picking', 'Picking', readonly=True),
'note': fields.text('Internal Notes'),
'nb_print': fields.integer('Number of Print', readonly=True),
'sale_journal': fields.many2one('account.journal', 'Journal', required=True, states={'draft': [('readonly', False)]}, readonly=True),
- 'invoice_wanted': fields.boolean('Create Invoice'),
- 'note_2': fields.char('Customer Note', size=64),
- 'type_rec': fields.char('Type of Receipt', size=64),
- 'remboursed': fields.boolean('Remboursed'),
- 'contract_number': fields.char('Contract Number', size=512, select=1),
- 'journal_entry': fields.boolean('Journal Entry'),
}
- def _select_pricelist(self, cr, uid, context=None):
- """ To get default pricelist for the order
- @param name: Names of fields.
- @return: pricelist ID
- """
+ def _default_pricelist(self, cr, uid, context=None):
res = self.pool.get('sale.shop').search(cr, uid, [], context=context)
if res:
shop = self.pool.get('sale.shop').browse(cr, uid, res[0], context=context)
return shop.pricelist_id and shop.pricelist_id.id or False
return False
- def _journal_default(self, cr, uid, context=None):
- """ To get default pricelist for the order
- @param name: Names of fields.
- @return: journal ID
- """
- journal_list = self.pool.get('account.journal').search(cr, uid, [('type', '=', 'cash')])
- return journal_list and journal_list[0] or False
-
_defaults = {
- 'user_salesman_id':lambda self, cr, uid, context: uid,
'user_id': lambda self, cr, uid, context: uid,
- 'sale_manager': lambda self, cr, uid, context: uid,
'state': 'draft',
- 'price_type': 'tax_excluded',
'name': lambda obj, cr, uid, context: obj.pool.get('ir.sequence').get(cr, uid, 'pos.order'),
'date_order': lambda *a: time.strftime('%Y-%m-%d %H:%M:%S'),
- 'date_validity': lambda *a: (datetime.today() + relativedelta(months=+6)).strftime('%Y-%m-%d'),
'nb_print': 0,
'company_id': lambda self,cr,uid,c: self.pool.get('res.users').browse(cr, uid, uid, c).company_id.id,
- 'sale_journal': _sale_journal_get,
- 'invoice_wanted': False,
- 'shop_id': _shop_get,
- 'pricelist_id': _select_pricelist,
+ 'sale_journal': _default_sale_journal,
+ 'shop_id': _default_shop,
+ 'pricelist_id': _default_pricelist,
}
-
- def test_order_lines(self, cr, uid, order, context=None):
- """ Test order line is created or not for the order
- @param name: Names of fields.
- @return: True
- """
- if not order.lines:
- raise osv.except_osv(_('Error'), _('No order lines defined for this sale.'))
-
- wf_service = netsvc.LocalService("workflow")
- wf_service.trg_validate(uid, 'pos.order', order.id, 'paid', cr)
- return True
-
- def dummy_button(self, cr, uid, order, context=None):
- return True
-
def test_paid(self, cr, uid, ids, context=None):
- """ Test all amount is paid for this order
+ """A Point of Sale is paid when the sum
@return: True
"""
for order in self.browse(cr, uid, ids, context=context):
if order.lines and not order.amount_total:
return True
if (not order.lines) or (not order.statement_ids) or \
- Decimal(str(order.amount_total)) != Decimal(str(order.amount_paid)):
+ (abs(order.amount_total-order.amount_paid) > 0.00001):
return False
return True
- def _get_qty_differences(self, orders, old_picking):
- """check if the customer changed the product quantity """
- order_dict = {}
- for order in orders:
- for line in order.lines:
- order_dict[line.product_id.id] = line
-
- # check the quantity differences:
- diff_dict = {}
- for line in old_picking.move_lines:
- order_line = order_dict.get(line.product_id.id)
- if not order_line:
- deleted = True
- qty_to_delete_from_original_picking = line.product_qty
- diff_dict[line.product_id.id] = (deleted, qty_to_delete_from_original_picking)
- elif line.product_qty != order_line.qty:
- deleted = False
- qty_to_delete_from_original_picking = line.product_qty - order_line.qty
- diff_dict[line.product_id.id] = (deleted, qty_to_delete_from_original_picking)
-
- return diff_dict
-
- def _split_picking(self, cr, uid, ids, context, old_picking, diff_dict):
- """if the customer changes the product quantity, split the picking in two"""
- # create a copy of the original picking and adjust the product qty:
- picking_model = self.pool.get('stock.picking')
- defaults = {
- 'note': "Partial picking from customer", # add a note to tell why we create a new picking
- 'name': self.pool.get('ir.sequence').get(cr, uid, 'stock.picking.out'), # increment the sequence
- }
-
- new_picking_id = picking_model.copy(cr, uid, old_picking.id, defaults) # state = 'draft'
- new_picking = picking_model.browse(cr, uid, new_picking_id, context=context)
-
- for line in new_picking.move_lines:
- p_id = line.product_id.id
- if p_id in diff_dict:
- diff = diff_dict[p_id]
- deleted = diff[0]
- qty_to_del = diff[1]
- if deleted: # product has been deleted (customer didn't took it):
- # delete this product from old picking:
- for old_line in old_picking.move_lines:
- if old_line.product_id.id == p_id:
- old_line.write({'state': 'draft'}, context=context) # cannot delete if not draft
- old_line.unlink(context=context)
- elif qty_to_del > 0: # product qty has been modified (customer took less than the ordered quantity):
- # subtract qty from old picking:
- for old_line in old_picking.move_lines:
- if old_line.product_id.id == p_id:
- old_line.write({'product_qty': old_line.product_qty - qty_to_del}, context=context)
- # add qty to new picking:
- line.write({'product_qty': qty_to_del}, context=context)
- else: # product hasn't changed (customer took it without any change):
- # delete this product from new picking:
- line.unlink(context=context)
- else:
- # delete it in the new picking:
- line.unlink(context=context)
-
def create_picking(self, cr, uid, ids, context=None):
"""Create a picking for each order and validate it."""
picking_obj = self.pool.get('stock.picking')
- property_obj = self.pool.get("ir.property")
- move_obj = self.pool.get('stock.move')
- pick_name = self.pool.get('ir.sequence').get(cr, uid, 'stock.picking.out')
- orders = self.browse(cr, uid, ids, context=context)
partner_obj = self.pool.get('res.partner')
- for order in orders:
+ move_obj = self.pool.get('stock.move')
+
+ for order in self.browse(cr, uid, ids, context=context):
addr = order.partner_id and partner_obj.address_get(cr, uid, [order.partner_id.id], ['delivery']) or {}
- if not order.picking_id:
- new = True
- picking_id = picking_obj.create(cr, uid, {
- 'name': pick_name,
- 'origin': order.name,
- 'address_id': addr.get('delivery',False),
- 'type': 'out',
+ picking_id = picking_obj.create(cr, uid, {
+ 'origin': order.name,
+ 'address_id': addr.get('delivery',False),
+ 'type': 'out',
+ 'company_id': order.company_id.id,
+ 'move_type': 'direct',
+ 'note': order.note or "",
+ 'invoice_state': 'none',
+ 'auto_picking': True,
+ }, context=context)
+ self.write(cr, uid, [order.id], {'picking_id': picking_id}, context=context)
+ location_id = order.shop_id.warehouse_id.lot_stock_id.id
+ output_id = order.shop_id.warehouse_id.lot_output_id.id
+
+ for line in order.lines:
+ if line.product_id and line.product_id.type == 'service':
+ continue
+ if line.qty < 0:
+ location_id, output_id = output_id, location_id
+
+ move_obj.create(cr, uid, {
+ 'name': line.name,
+ 'product_uom': line.product_id.uom_id.id,
+ 'product_uos': line.product_id.uom_id.id,
+ 'picking_id': picking_id,
+ 'product_id': line.product_id.id,
+ 'product_uos_qty': abs(line.qty),
+ 'product_qty': abs(line.qty),
+ 'tracking_id': False,
'state': 'draft',
- 'move_type': 'direct',
- 'note': 'POS notes ' + (order.note or ""),
- 'invoice_state': 'none',
- 'auto_picking': True,
- 'pos_order': order.id,
+ 'location_id': location_id,
+ 'location_dest_id': output_id,
}, context=context)
- self.write(cr, uid, [order.id], {'picking_id': picking_id}, context=context)
- else:
- picking_id = order.picking_id.id
- picking_obj.write(cr, uid, [picking_id], {'auto_picking': True}, context=context)
- picking = picking_obj.browse(cr, uid, [picking_id], context=context)[0]
- new = False
-
- # split the picking (if product quantity has changed):
- diff_dict = self._get_qty_differences(orders, picking)
- if diff_dict:
- self._split_picking(cr, uid, ids, context, picking, diff_dict)
-
- if new:
- for line in order.lines:
- if line.product_id and line.product_id.type == 'service':
- continue
- prop_ids = property_obj.search(cr, uid, [('name', '=', 'property_stock_customer')], context=context)
- val = property_obj.browse(cr, uid, prop_ids[0], context=context).value_reference
- cr.execute("SELECT s.id FROM stock_location s, stock_warehouse w WHERE w.lot_stock_id = s.id AND w.id = %s", (order.shop_id.warehouse_id.id, ))
- res = cr.fetchone()
- location_id = res and res[0] or None
- stock_dest_id = val.id
- if line.qty < 0:
- location_id, stock_dest_id = stock_dest_id, location_id
- move_obj.create(cr, uid, {
- 'name': '(POS %d)' % (order.id, ),
- 'product_uom': line.product_id.uom_id.id,
- 'product_uos': line.product_id.uom_id.id,
- 'picking_id': picking_id,
- 'product_id': line.product_id.id,
- 'product_uos_qty': abs(line.qty),
- 'product_qty': abs(line.qty),
- 'tracking_id': False,
- 'pos_line_id': line.id,
- 'state': 'waiting',
- 'location_id': location_id,
- 'location_dest_id': stock_dest_id,
- 'prodlot_id': line.prodlot_id and line.prodlot_id.id or False
- }, context=context)
+ if line.qty < 0:
+ location_id, output_id = output_id, location_id
wf_service = netsvc.LocalService("workflow")
wf_service.trg_validate(uid, 'stock.picking', picking_id, 'button_confirm', cr)
@@ -497,36 +217,27 @@ class pos_order(osv.osv):
return True
def set_to_draft(self, cr, uid, ids, *args):
- """ Changes order state to draft
- @return: True
- """
if not len(ids):
return False
+ for order in self.browse(cr, uid, ids, context=context):
+ if order.state<>'cancel':
+ raise osv.except_osv(_('Error!'), _('In order to set to draft a sale, it must be cancelled.'))
self.write(cr, uid, ids, {'state': 'draft'})
wf_service = netsvc.LocalService("workflow")
for i in ids:
wf_service.trg_create(uid, 'pos.order', i, cr)
return True
- def button_invalidate(self, cr, uid, ids, *args):
- """ Check the access for the sale order
- @return: True
- """
- res_obj = self.pool.get('res.company')
- try:
- part_company = res_obj.browse(cr, uid, uid) and res_obj.browse(cr, uid, uid).parent_id and res_obj.browse(cr, uid, uid).parent_id.id or None
- except Exception:
- raise osv.except_osv(_('Error'), _('You don\'t have enough access to validate this sale!'))
- if part_company:
- raise osv.except_osv(_('Error'), _('You don\'t have enough access to validate this sale!'))
- return True
-
def cancel_order(self, cr, uid, ids, context=None):
""" Changes order state to cancel
@return: True
"""
+ stock_picking_obj = self.pool.get('stock.picking')
+ for order in self.browse(cr, uid, ids, context=context):
+ wf_service.trg_validate(uid, 'stock.picking', order.picking_id.id, 'button_cancel', cr)
+ if stock_picking_obj.browse(cr, uid, order.picking_id.id, context=context).state <> 'cancel':
+ raise osv.except_osv(_('Error!'), _('Unable to cancel the picking.'))
self.write(cr, uid, ids, {'state': 'cancel'}, context=context)
- self.cancel_picking(cr, uid, ids, context=context)
return True
def add_payment(self, cr, uid, order_id, data, context=None):
@@ -538,31 +249,29 @@ class pos_order(osv.osv):
curr_c = self.pool.get('res.users').browse(cr, uid, uid, context=context).company_id
curr_company = curr_c.id
order = self.browse(cr, uid, order_id, context=context)
- if not order.num_sale and data['num_sale']:
- self.write(cr, uid, order_id, {'num_sale': data['num_sale']}, context=context)
ids_new = []
args = {
'amount': data['amount'],
}
if 'payment_date' in data.keys():
args['date'] = data['payment_date']
- if 'payment_name' in data.keys():
- args['name'] = data['payment_name'] + ' ' + order.name
+ args['name'] = order.name
+ if data.get('payment_name', False):
+ args['name'] = args['name'] + ': ' + data['payment_name']
account_def = property_obj.get(cr, uid, 'property_account_receivable', 'res.partner', context=context)
- args['account_id'] = order.partner_id and order.partner_id.property_account_receivable \
- and order.partner_id.property_account_receivable.id or account_def.id or curr_c.account_receivable.id
- if data.get('is_acc', False):
- args['is_acc'] = data['is_acc']
- args['account_id'] = prod_obj.browse(cr, uid, data['product_id'], context=context).property_account_income \
- and prod_obj.browse(cr, uid, data['product_id'], context=context).property_account_income.id
- if not args['account_id']:
- raise osv.except_osv(_('Error'), _('Please provide an account for the product: %s')% \
- (prod_obj.browse(cr, uid, data['product_id'], context=context).name))
+ args['account_id'] = (order.partner_id and order.partner_id.property_account_receivable \
+ and order.partner_id.property_account_receivable.id) or (account_def and account_def.id) or False
args['partner_id'] = order.partner_id and order.partner_id.id or None
- args['ref'] = order.contract_number or None
+
+ if not args['account_id']:
+ if not args['partner_id']:
+ msg = _('There is no receivable account defined to make payment')
+ else:
+ msg = _('There is no receivable account defined to make payment for the partner: "%s" (id:%d)') % (order.partner_id.name, order.partner_id.id,)
+ raise osv.except_osv(_('Configuration Error !'), msg)
statement_id = statement_obj.search(cr,uid, [
- ('journal_id', '=', data['journal']),
+ ('journal_id', '=', int(data['journal'])),
('company_id', '=', curr_company),
('user_id', '=', uid),
('state', '=', 'open')], context=context)
@@ -572,7 +281,7 @@ class pos_order(osv.osv):
statement_id = statement_id[0]
args['statement_id'] = statement_id
args['pos_statement_id'] = order_id
- args['journal_id'] = data['journal']
+ args['journal_id'] = int(data['journal'])
args['type'] = 'customer'
args['ref'] = order.name
statement_line_obj.create(cr, uid, args, context=context)
@@ -584,58 +293,39 @@ class pos_order(osv.osv):
return statement_id
- def add_product(self, cr, uid, order_id, product_id, qty, context=None):
-
- """Create a new order line the order"""
-
- line_obj = self.pool.get('pos.order.line')
- values = self.read(cr, uid, order_id, ['partner_id', 'pricelist_id'])
-
- pricelist = values['pricelist_id'] and values['pricelist_id'][0]
- product = values['partner_id'] and values['partner_id'][0]
-
- price = line_obj.price_by_product(cr, uid, [],
- pricelist, product_id, qty, product)
-
- order_line_id = line_obj.create(cr, uid, {
- 'order_id': order_id,
- 'product_id': product_id,
- 'qty': qty,
- 'price_unit': price,
- }, context=context)
- return order_line_id, price
-
def refund(self, cr, uid, ids, context=None):
-
"""Create a copy of order for refund order"""
-
clone_list = []
line_obj = self.pool.get('pos.order.line')
-
for order in self.browse(cr, uid, ids, context=context):
clone_id = self.copy(cr, uid, order.id, {
'name': order.name + ' REFUND',
- 'date_order': time.strftime('%Y-%m-%d'),
- 'state': 'draft',
- 'note': 'REFUND\n'+ (order.note or ''),
- 'invoice_id': False,
- 'nb_print': 0,
- 'statement_ids': False,
- }, context=context)
+ }, context=context)
clone_list.append(clone_id)
-
for clone in self.browse(cr, uid, clone_list, context=context):
for order_line in clone.lines:
line_obj.write(cr, uid, [order_line.id], {
'qty': -order_line.qty
- }, context=context)
- return clone_list
+ }, context=context)
+
+ new_order = ','.join(map(str,clone_list))
+ abs = {
+ #'domain': "[('id', 'in', ["+new_order+"])]",
+ 'name': _('Return Products'),
+ 'view_type': 'form',
+ 'view_mode': 'form',
+ 'res_model': 'pos.order',
+ 'res_id':clone_list[0],
+ 'view_id': False,
+ 'context':context,
+ 'type': 'ir.actions.act_window',
+ 'nodestroy': True,
+ 'target': 'current',
+ }
+ return abs
def action_invoice(self, cr, uid, ids, context=None):
-
- """Create a invoice of order """
-
inv_ref = self.pool.get('account.invoice')
inv_line_ref = self.pool.get('account.invoice.line')
product_obj = self.pool.get('product.product')
@@ -675,35 +365,51 @@ class pos_order(osv.osv):
'quantity': line.qty,
}
inv_name = product_obj.name_get(cr, uid, [line.product_id.id], context=context)[0][1]
-
inv_line.update(inv_line_ref.product_id_change(cr, uid, [],
line.product_id.id,
line.product_id.uom_id.id,
line.qty, partner_id = order.partner_id.id,
fposition_id=order.partner_id.property_account_position.id)['value'])
+ if line.product_id.description_sale:
+ inv_line['note'] = line.product_id.description_sale
inv_line['price_unit'] = line.price_unit
inv_line['discount'] = line.discount
inv_line['name'] = inv_name
inv_line['invoice_line_tax_id'] = ('invoice_line_tax_id' in inv_line)\
and [(6, 0, inv_line['invoice_line_tax_id'])] or []
inv_line_ref.create(cr, uid, inv_line, context=context)
+ inv_ref.button_reset_taxes(cr, uid, [inv_id], context=context)
- for i in inv_ids:
- wf_service = netsvc.LocalService("workflow")
- wf_service.trg_validate(uid, 'account.invoice', i, 'invoice_open', cr)
- return inv_ids
+ if not inv_ids: return {}
+ mod_obj = self.pool.get('ir.model.data')
+ res = mod_obj.get_object_reference(cr, uid, 'account', 'invoice_form')
+ res_id = res and res[1] or False
+ return {
+ 'name': _('PoS Invoices'),
+ 'view_type': 'form',
+ 'view_mode': 'form',
+ 'view_id': res_id,
+ 'res_model': 'account.invoice',
+ 'context': "{'type':'out_invoice'}",
+ 'type': 'ir.actions.act_window',
+ 'nodestroy': True,
+ 'target': 'current',
+ 'res_id': inv_ids and inv_ids[0] or False,
+ }
def create_account_move(self, cr, uid, ids, context=None):
- """Create a account move line of order """
+ """Create a account move line of order grouped by products or not."""
account_move_obj = self.pool.get('account.move')
account_move_line_obj = self.pool.get('account.move.line')
account_period_obj = self.pool.get('account.period')
+ period = account_period_obj.find(cr, uid, context=context)[0]
account_tax_obj = self.pool.get('account.tax')
res_obj=self.pool.get('res.users')
property_obj=self.pool.get('ir.property')
- period = account_period_obj.find(cr, uid, context=context)[0]
for order in self.browse(cr, uid, ids, context=context):
+ if order.state<>'paid': continue
+
curr_c = res_obj.browse(cr, uid, uid).company_id
comp_id = res_obj.browse(cr, order.user_id.id, order.user_id.id).company_id
comp_id = comp_id and comp_id.id or False
@@ -716,19 +422,14 @@ class pos_order(osv.osv):
# Create an entry for the sale
move_id = account_move_obj.create(cr, uid, {
'journal_id': order.sale_journal.id,
- 'period_id': period,
- }, context=context)
+ }, context=context)
# Create an move for each order line
for line in order.lines:
tax_amount = 0
taxes = [t for t in line.product_id.taxes_id]
- if order.price_type == 'tax_excluded':
- computed_taxes = account_tax_obj.compute_all(
- cr, uid, taxes, line.price_unit, line.qty)['taxes']
- else:
- computed_taxes = account_tax_obj.compute_inv(
- cr, uid, taxes, line.price_unit, line.qty)
+ computed = account_tax_obj.compute_all(cr, uid, taxes, line.price_unit * (100.0-line.discount) / 100.0, line.qty)
+ computed_taxes = computed['taxes']
for tax in computed_taxes:
tax_amount += round(tax['amount'], 2)
@@ -740,10 +441,7 @@ class pos_order(osv.osv):
group_tax[group_key] += round(tax['amount'], 2)
else:
group_tax[group_key] = round(tax['amount'], 2)
- if order.price_type != 'tax_excluded':
- amount = line.price_subtotal - tax_amount
- else:
- amount = line.price_subtotal
+ amount = line.price_subtotal
# Search for the income account
if line.product_id.property_account_income.id:
@@ -773,11 +471,12 @@ class pos_order(osv.osv):
if tax_code_id:
break
+
# Create a move for the line
account_move_line_obj.create(cr, uid, {
- 'name': "aa"+order.name,
+ 'name': line.name,
'date': order.date_order[:10],
- 'ref': order.contract_number or order.name,
+ 'ref': order.name,
'quantity': line.qty,
'product_id': line.product_id.id,
'move_id': move_id,
@@ -804,9 +503,9 @@ class pos_order(osv.osv):
continue
account_move_line_obj.create(cr, uid, {
- 'name': "bb" + order.name,
+ 'name': "Tax" + line.name,
'date': order.date_order[:10],
- 'ref': order.contract_number or order.name,
+ 'ref': order.name,
'product_id':line.product_id.id,
'quantity': line.qty,
'move_id': move_id,
@@ -825,9 +524,9 @@ class pos_order(osv.osv):
(tax_code_pos, base_code_pos, account_pos)= (0, 1, 2)
for key, amount in group_tax.items():
account_move_line_obj.create(cr, uid, {
- 'name': "cc" + order.name,
+ 'name': 'Tax',
'date': order.date_order[:10],
- 'ref': order.contract_number or order.name,
+ 'ref': order.name,
'move_id': move_id,
'company_id': comp_id,
'quantity': line.qty,
@@ -843,9 +542,9 @@ class pos_order(osv.osv):
# counterpart
to_reconcile.append(account_move_line_obj.create(cr, uid, {
- 'name': "dd" + order.name,
+ 'name': order.name,
'date': order.date_order[:10],
- 'ref': order.contract_number or order.name,
+ 'ref': order.name,
'move_id': move_id,
'company_id': comp_id,
'account_id': order_account,
@@ -857,71 +556,16 @@ class pos_order(osv.osv):
'period_id': period,
'partner_id': order.partner_id and order.partner_id.id or False
}, context=context))
-
-
- # search the account receivable for the payments:
- account_receivable = order.sale_journal.default_credit_account_id.id
- if not account_receivable:
- raise osv.except_osv(_('Error !'),
- _('There is no receivable account defined for this journal:'\
- ' "%s" (id:%d)') % (order.sale_journal.name, order.sale_journal.id, ))
- for payment in order.statement_ids:
- # Create one entry for the payment
- if payment.is_acc:
- continue
- account_move_obj.create(cr, uid, {
- 'journal_id': payment.statement_id.journal_id.id,
- 'period_id': period,
- }, context=context)
-
- for stat_l in order.statement_ids:
- if stat_l.is_acc and len(stat_l.move_ids):
- for st in stat_l.move_ids:
- for s in st.line_id:
- if s.credit:
- account_move_line_obj.copy(cr, uid, s.id, {
- 'debit': s.credit,
- 'statement_id': False,
- 'credit': s.debit
- })
- account_move_line_obj.copy(cr, uid, s.id, {
- 'statement_id': False,
- 'account_id': order_account
- })
-
- self.write(cr, uid, order.id, {'state':'done'}, context=context)
+ self.write(cr, uid, order.id, {'state':'done', 'account_move': move_id}, context=context)
return True
- def cancel_picking(self, cr, uid, ids, context=None):
- stock_picking_obj = self.pool.get('stock.picking')
- for order in self.browse(cr, uid, ids, context=context):
- for picking in order.pickings:
- stock_picking_obj.unlink(cr, uid, [picking.id], context=context)
- return True
-
-
def action_payment(self, cr, uid, ids, context=None):
- vals = {'state': 'payment'}
- sequence_obj = self.pool.get('ir.sequence')
- for pos in self.browse(cr, uid, ids, context=context):
- create_contract_nb = False
- for line in pos.lines:
- if line.product_id.product_type == 'MD':
- create_contract_nb = True
- break
- if create_contract_nb:
- seq = sequence_obj.get(cr, uid, 'pos.user_%s' % pos.user_salesman_id.login)
- vals['contract_number'] = '%s-%s' % (pos.user_salesman_id.login, seq)
- self.write(cr, uid, ids, vals, context=context)
+ return self.write(cr, uid, ids, {'state': 'payment'}, context=context)
def action_paid(self, cr, uid, ids, context=None):
- if context is None:
- context = {}
- if context.get('flag', False):
- self.create_picking(cr, uid, ids, context=None)
- self.write(cr, uid, ids, {'state': 'paid'}, context=context)
- else:
- context['flag'] = True
+ context = context or {}
+ self.create_picking(cr, uid, ids, context=None)
+ self.write(cr, uid, ids, {'state': 'paid'}, context=context)
return True
def action_cancel(self, cr, uid, ids, context=None):
@@ -929,43 +573,25 @@ class pos_order(osv.osv):
return True
def action_done(self, cr, uid, ids, context=None):
- for order in self.browse(cr, uid, ids, context=context):
- if not order.journal_entry:
- self.create_account_move(cr, uid, ids, context=None)
+ self.create_account_move(cr, uid, ids, context=context)
return True
- def compute_state(self, cr, uid, id):
- cr.execute("SELECT act.id, act.name FROM wkf_activity act "
- "INNER JOIN wkf_workitem item ON act.id = item.act_id "
- "INNER JOIN wkf_instance inst ON item.inst_id = inst.id "
- "INNER JOIN wkf ON inst.wkf_id = wkf.id "
- "WHERE wkf.osv = 'pos.order' AND inst.res_id = %s "
- "ORDER BY act.name", (id, ))
- return [name for id, name in cr.fetchall()]
-
pos_order()
class account_bank_statement(osv.osv):
_inherit = 'account.bank.statement'
_columns= {
- 'user_id': fields.many2one('res.users', ondelete='cascade', string='User', readonly=True),
+ 'user_id': fields.many2one('res.users', 'User', readonly=True),
}
_defaults = {
- 'user_id': lambda self,cr,uid,c: self.pool.get('res.users').browse(cr, uid, uid, c).id
+ 'user_id': lambda self,cr,uid,c={}: uid
}
account_bank_statement()
class account_bank_statement_line(osv.osv):
_inherit = 'account.bank.statement.line'
- def _get_statement_journal(self, cr, uid, ids, context, *a):
- res = {}
- for line in self.browse(cr, uid, ids):
- res[line.id] = line.statement_id and line.statement_id.journal_id and line.statement_id.journal_id.name or None
- return res
_columns= {
- 'journal_id': fields.function(_get_statement_journal,store=True, string='Journal', type='char', size=64),
- 'am_out': fields.boolean("To count"),
- 'is_acc': fields.boolean("Is accompte"),
+ 'journal_id': fields.related('statement_id','journal_id','name', store=True, string='Journal', type='char', size=64),
'pos_statement_id': fields.many2one('pos.order', ondelete='cascade'),
}
account_bank_statement_line()
@@ -973,296 +599,102 @@ account_bank_statement_line()
class pos_order_line(osv.osv):
_name = "pos.order.line"
_description = "Lines of Point of Sale"
-
- def _get_amount(self, cr, uid, ids, field_name, arg, context=None):
- res = {}
- for line in self.browse(cr, uid, ids, context=context):
- price = self.price_by_product(cr, uid, ids, line.order_id.pricelist_id.id, line.product_id.id, line.qty, line.order_id.partner_id.id)
- res[line.id] = price
- return res
-
- def _amount_line_ttc(self, cr, uid, ids, field_name, arg, context=None):
- res = dict.fromkeys(ids, 0.0)
- account_tax_obj = self.pool.get('account.tax')
- self.price_by_product_multi(cr, uid, ids)
- for line in self.browse(cr, uid, ids, context=context):
- tax_amount = 0.0
- taxes = [t for t in line.product_id.taxes_id]
- if line.qty == 0.0:
- continue
- computed_taxes = account_tax_obj.compute_all(cr, uid, taxes, line.price_unit, line.qty)['taxes']
- for tax in computed_taxes:
- tax_amount += tax['amount']
- if line.discount != 0.0:
- res[line.id] = line.price_unit * line.qty * (1 - (line.discount or 0.0) / 100.0)
- else:
- res[line.id] = line.price_unit*line.qty
- res[line.id] = res[line.id] + tax_amount
- return res
-
- def _amount_line(self, cr, uid, ids, field_name, arg, context=None):
- res = {}
- self.price_by_product_multi(cr, uid, ids)
- for line in self.browse(cr, uid, ids, context=context):
- if line.discount!=0.0:
- res[line.id] = line.price_unit * line.qty * (1 - (line.discount or 0.0) / 100.0)
- else:
- res[line.id] = line.price_unit * line.qty
- return res
+ _rec_name = "product_id"
def _amount_line_all(self, cr, uid, ids, field_names, arg, context=None):
res = dict([(i, {}) for i in ids])
account_tax_obj = self.pool.get('account.tax')
-
- self.price_by_product_multi(cr, uid, ids)
+ cur_obj = self.pool.get('res.currency')
for line in self.browse(cr, uid, ids, context=context):
- for f in field_names:
- if f == 'price_subtotal':
- if line.discount != 0.0:
- res[line.id][f] = line.price_unit * line.qty * (1 - (line.discount or 0.0) / 100.0)
- else:
- res[line.id][f] = line.price_unit * line.qty
- elif f == 'price_subtotal_incl':
- taxes = [t for t in line.product_id.taxes_id]
- if line.qty == 0.0:
- res[line.id][f] = 0.0
- continue
- price = line.price_unit * (1 - (line.discount or 0.0) / 100.0)
- computed_taxes = account_tax_obj.compute_all(cr, uid, taxes, price, line.qty)
- cur = line.order_id.pricelist_id.currency_id
- res[line.id][f] = self.pool.get('res.currency').round(cr, uid, cur, computed_taxes['total'])
+ taxes = line.product_id.taxes_id
+ price = line.price_unit * (1 - (line.discount or 0.0) / 100.0)
+ taxes = account_tax_obj.compute_all(cr, uid, line.product_id.taxes_id, price, line.qty, product=line.product_id, partner=line.order_id.partner_id or False)
+
+ cur = line.order_id.pricelist_id.currency_id
+ res[line.id]['price_subtotal'] = cur_obj.round(cr, uid, cur, taxes['total'])
+ res[line.id]['price_subtotal_incl'] = cur_obj.round(cr, uid, cur, taxes['total_included'])
return res
- def price_by_product_multi(self, cr, uid, ids, context=None):
- if context is None:
- context = {}
- res = {}.fromkeys(ids, 0.0)
- lines = self.browse(cr, uid, ids, context=context)
+ def onchange_product_id(self, cr, uid, ids, pricelist, product_id, qty=0, partner_id=False, context=None):
+ context = context or {}
+ if not product_id:
+ return {}
+ if not pricelist:
+ raise osv.except_osv(_('No Pricelist !'),
+ _('You have to select a pricelist in the sale form !\n' \
+ 'Please set one before choosing a product.'))
- pricelist_ids = [line.order_id.pricelist_id.id for line in lines]
- products_by_qty_by_partner = [(line.product_id.id, line.qty, line.order_id.partner_id.id) for line in lines]
+ price = self.pool.get('product.pricelist').price_get(cr, uid, [pricelist],
+ product_id, qty or 1.0, partner_id)[pricelist]
- price_get_multi_res = self.pool.get('product.pricelist').price_get_multi(cr, uid, pricelist_ids, products_by_qty_by_partner, context=context)
+ result = self.onchange_qty(cr, uid, ids, product_id, 0.0, qty, price, context=context)
+ result['value']['price_unit'] = price
+ return result
- for line in lines:
- pricelist = line.order_id.pricelist_id.id
- product_id = line.product_id
+ def onchange_qty(self, cr, uid, ids, product, discount, qty, price_unit, context=None):
+ result = {}
+ if not product:
+ return result
+ account_tax_obj = self.pool.get('account.tax')
+ cur_obj = self.pool.get('res.currency')
- if not product_id:
- res[line.id] = 0.0
- continue
- if not pricelist:
- raise osv.except_osv(_('No Pricelist !'),
- _('You have to select a pricelist in the sale form !\n' \
- 'Please set one before choosing a product.'))
+ prod = self.pool.get('product.product').browse(cr, uid, product, context=context)
- #old_price = self.pool.get('product.pricelist').price_get(cr, uid, [pricelist], product_id.id, qty or 1.0, partner_id, {'uom': uom_id})[pricelist]
- #print "prod_id: %s, pricelist: %s, price: %s" % (product_id.id, pricelist, price)
- price = price_get_multi_res[line.product_id.id][pricelist]
- #print "prod_id: %s, pricelist: %s, price2: %s" % (product_id.id, pricelist, price2)
+ taxes = prod.taxes_id
+ price = price_unit * (1 - (discount or 0.0) / 100.0)
+ taxes = account_tax_obj.compute_all(cr, uid, prod.taxes_id, price, qty, product=prod, partner=False)
- #if old_price != price:
- # raise Exception('old_price != price')
-
- unit_price = price or product_id.list_price
- res[line.id] = unit_price
- if unit_price is False:
- raise osv.except_osv(_('No valid pricelist line found !'),
- _("Couldn't find a pricelist line matching this product" \
- " and quantity.\nYou have to change either the product," \
- " the quantity or the pricelist."))
- return res
-
- def price_by_product(self, cr, uid, ids, pricelist, product_id, qty=0, partner_id=False):
- if not product_id:
- return 0.0
- if not pricelist:
- raise osv.except_osv(_('No Pricelist !'),
- _('You have to select a pricelist in the sale form !\n' \
- 'Please set one before choosing a product.'))
- p_obj = self.pool.get('product.product').browse(cr, uid, [product_id])[0]
- uom_id = p_obj.uom_po_id.id
- price = self.pool.get('product.pricelist').price_get(cr, uid,
- [pricelist], product_id, qty or 1.0, partner_id, {'uom': uom_id})[pricelist]
- unit_price=price or p_obj.list_price
- if unit_price is False:
- raise osv.except_osv(_('No valid pricelist line found !'),
- _("Couldn't find a pricelist line matching this product" \
- " and quantity.\nYou have to change either the product," \
- " the quantity or the pricelist."))
- return unit_price
-
- def onchange_product_id(self, cr, uid, ids, pricelist, product_id, qty=0, partner_id=False):
- price = self.price_by_product(cr, uid, ids, pricelist, product_id, qty, partner_id)
- self.write(cr, uid, ids, {'price_unit':price})
- pos_stot = (price * qty)
- return {'value': {'price_unit': price, 'price_subtotal_incl': pos_stot}}
-
- def onchange_subtotal(self, cr, uid, ids, discount, price, pricelist, qty,partner_id, product_id, *a):
- prod_obj = self.pool.get('product.product')
- price_f = self.price_by_product(cr, uid, ids, pricelist, product_id, qty, partner_id)
- prod_id = ''
- if product_id:
- prod_id = prod_obj.browse(cr, uid, product_id).disc_controle
- disc = 0.0
- if (disc != 0.0 or prod_id) and price_f > 0:
- disc = 100 - (price/price_f*100)
- return {'value': {'discount': disc, 'price_unit': price_f}}
- return {}
-
- def onchange_ded(self, cr, uid, ids, val_ded, price_u, *a):
- res_obj = self.pool.get('res.users')
- comp = res_obj.browse(cr, uid, uid).company_id.company_discount or 0.0
- val = 0.0
- if val_ded and price_u:
- val=100.0 * val_ded / price_u
- if val > comp:
- return {'value': {'discount': val, 'notice': '' }}
- return {'value': {'discount': val}}
-
- def onchange_discount(self, cr, uid, ids, discount, price, *a):
- pos_order = self.pool.get('pos.order.line')
- res_obj = self.pool.get('res.users')
- company_disc = pos_order.browse(cr,uid,ids)
- if discount:
- if not company_disc:
- comp=res_obj.browse(cr,uid,uid).company_id.company_discount or 0.0
- else:
- comp= company_disc[0] and company_disc[0].order_id.company_id and company_disc[0].order_id.company_id.company_discount or 0.0
-
- if discount > comp :
- return {'value': {'notice': '', 'price_ded': price * discount * 0.01 or 0.0 }}
- else:
- return {'value': {'notice': 'Minimum Discount', 'price_ded': price * discount * 0.01 or 0.0 }}
- else :
- return {'value': {'notice': 'No Discount', 'price_ded': price * discount * 0.01 or 0.0}}
-
- def onchange_qty(self, cr, uid, ids, discount, qty, price, context=None):
- subtotal = qty * price
- if discount:
- subtotal = subtotal - (subtotal * discount / 100)
- return {'value': {'price_subtotal_incl': subtotal}}
+ result['price_subtotal'] = taxes['total']
+ result['price_subtotal_incl'] = taxes['total_included']
+ return {'value': result}
_columns = {
- 'name': fields.char('Line Description', size=512),
'company_id': fields.many2one('res.company', 'Company', required=True),
- 'notice': fields.char('Discount Notice', size=128, required=True),
- 'serial_number': fields.char('Serial Number', size=128),
+ 'name': fields.char('Line No', size=32, required=True),
+ 'notice': fields.char('Discount Notice', size=128),
'product_id': fields.many2one('product.product', 'Product', domain=[('sale_ok', '=', True)], required=True, change_default=True),
- 'price_unit': fields.function(_get_amount, string='Unit Price', store=True),
- 'price_ded': fields.float('Discount(Amount)', digits_compute=dp.get_precision('Point Of Sale')),
- 'qty': fields.float('Quantity'),
- 'qty_rfd': fields.float('Refunded Quantity'),
- 'price_subtotal': fields.function(_amount_line_all, multi='pos_order_line_amount', string='Subtotal w/o Tax'),
- 'price_subtotal_incl': fields.function(_amount_line_all, multi='pos_order_line_amount', string='Subtotal'),
+ 'price_unit': fields.float(string='Unit Price', digits=(16, 2)),
+ 'qty': fields.float('Quantity', digits=(16, 2)),
+ 'price_subtotal': fields.function(_amount_line_all, multi='pos_order_line_amount', string='Subtotal w/o Tax', store=True),
+ 'price_subtotal_incl': fields.function(_amount_line_all, multi='pos_order_line_amount', string='Subtotal', store=True),
'discount': fields.float('Discount (%)', digits=(16, 2)),
'order_id': fields.many2one('pos.order', 'Order Ref', ondelete='cascade'),
'create_date': fields.datetime('Creation Date', readonly=True),
- 'prodlot_id': fields.many2one('stock.production.lot', 'Production Lot', help="You can specify Production lot for stock move created when you validate the pos order"),
}
_defaults = {
'name': lambda obj, cr, uid, context: obj.pool.get('ir.sequence').get(cr, uid, 'pos.order.line'),
'qty': lambda *a: 1,
'discount': lambda *a: 0.0,
- 'price_ded': lambda *a: 0.0,
- 'notice': lambda *a: 'No Discount',
'company_id': lambda self,cr,uid,c: self.pool.get('res.users').browse(cr, uid, uid, c).company_id.id,
- }
+ }
- def create(self, cr, user, vals, context=None):
- if vals.get('product_id'):
- return super(pos_order_line, self).create(cr, user, vals, context=context)
- return False
-
- def write(self, cr, user, ids, values, context=None):
- if 'product_id' in values and not values['product_id']:
- return False
- return super(pos_order_line, self).write(cr, user, ids, values, context=context)
-
def copy_data(self, cr, uid, id, default=None, context=None):
if not default:
default = {}
default.update({
- 'prodlot_id': False,
'name': self.pool.get('ir.sequence').get(cr, uid, 'pos.order.line')
})
return super(pos_order_line, self).copy_data(cr, uid, id, default, context=context)
- def _scan_product(self, cr, uid, ean, qty, order):
- # search pricelist_id
- product_obj = self.pool.get('product.product')
- pricelist_id = self.pool.get('pos.order').read(cr, uid, [order], ['pricelist_id'] )
- if not pricelist_id:
- return False
-
- new_line = True
-
- product_id = product_obj.search(cr, uid, [('ean13','=', ean)])
- if not product_id:
- return False
-
- # search price product
- product = product_obj.read(cr, uid, product_id)
- product_name = product[0]['name']
- price = self.price_by_product(cr, uid, 0, pricelist_id[0]['pricelist_id'][0], product_id[0], 1)
-
- order_line_ids = self.search(cr, uid, [('name', '=', product_name), ('order_id', '=' ,order)])
- if order_line_ids:
- new_line = False
- order_line_id = order_line_ids[0]
- qty += self.read(cr, uid, order_line_ids[0], ['qty'])['qty']
-
- if new_line:
- vals = {'product_id': product_id[0],
- 'price_unit': price,
- 'qty': qty,
- 'name': product_name,
- 'order_id': order,
- }
- line_id = self.create(cr, uid, vals)
- if not line_id:
- raise osv.except_osv(_('Error'), _('Create line failed !'))
- else:
- vals = {
- 'qty': qty,
- 'price_unit': price
- }
- line_id = self.write(cr, uid, order_line_id, vals)
- if not line_id:
- raise osv.except_osv(_('Error'), _('Modify line failed !'))
- line_id = order_line_id
-
- price_line = float(qty) * float(price)
- return {
- 'name': product_name,
- 'product_id': product_id[0],
- 'price': price,
- 'price_line': price_line ,
- 'qty': qty
- }
-
pos_order_line()
+class pos_category(osv.osv):
+ _name = 'pos.category'
+ _inherit = 'product.category'
+ _columns = {
+ 'parent_id': fields.many2one('pos.category','Parent Category', select=True),
+ 'child_id': fields.one2many('pos.category', 'parent_id', string='Child Categories'),
+ }
+pos_category()
+
class product_product(osv.osv):
_inherit = 'product.product'
_columns = {
'income_pdt': fields.boolean('Product for Input'),
'expense_pdt': fields.boolean('Product for Output'),
- 'am_out': fields.boolean('Control for Output Operations'),
- 'disc_controle': fields.boolean('Discount Control'),
- }
- _defaults = {
- 'disc_controle': True,
+ 'img': fields.binary('Pos Image, must be 50x50'),
+ 'pos_categ_id': fields.many2one('pos.category','POS Category', change_default=True, domain="[('type','=','normal')]" ,help="Select a pos category for the current product")
}
product_product()
-class stock_picking(osv.osv):
- _inherit = 'stock.picking'
- _columns = {
- 'pos_order': fields.many2one('pos.order', 'Pos order'),
- }
-
-stock_picking()
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/point_of_sale/point_of_sale_demo.xml b/addons/point_of_sale/point_of_sale_demo.xml
index e95ce05256f..5e9c00ace54 100644
--- a/addons/point_of_sale/point_of_sale_demo.xml
+++ b/addons/point_of_sale/point_of_sale_demo.xml
@@ -4,185 +4,174 @@
-
-
+
+
+
+
+ buy
+
+ Cash In
+
+ Cash In
+
-
- buy
-
- Cash In
-
- Cash In
-
-
-
-
- buy
-
- Cash Out
-
- Cash Out
-
-
+
+ buy
+
+ Cash Out
+
+ Cash Out
+
+
-
- POS/019
- POS/019
- SAJ/2010/010
-
-
-
-
-
- none
-
- open
- out_invoice
- SAJ/2010/010
-
-
-
- /
-
-
-
-
-
-
- Invoice from POS: POS/019
-
-
-
-
- [PC1] Basic PC
-
-
-
-
-
-
-
-
-
-
-
-
- 2011-04-07
-
-
-
-
-
-
-
-
- paid
-
-
-
- POS/019
- tax_excluded
-
-
-
-
-
-
- 10
- open
-
-
-
-
-
-
-
-
- general
-
-
-
- Cash Journal - (test)
-
-
-
-
-
- Payment POS/019
-
-
-
-
- POS/019
-
-
-
- direct
-
- POS notes
- done
- out
-
-
- OUT/00019
- none
-
-
-
- POS/019
-
-
-
-
-
- 1
-
-
- done
-
-
-
- Stock move (POS 12)
-
-
-
-
-
-
-
- No Discount
-
-
-
-
-
- Order Line/07
-
-
+
+ POS/019
+ POS/019
+ SAJ/2010/010
+
+
+
+
+
+ none
+
+ open
+ out_invoice
+ SAJ/2010/010
+
+
+
+ /
+
+
+
+
+
+
+ Invoice from POS: POS/019
+
+
+
+
+ [PC1] Basic PC
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ paid
+
+ POS/019
+ tax_excluded
+
+
+
+
+
+ 10
+ open
+
+
+
+
+
+
+
+
+ general
+
+
+
+ Cash Journal - (test)
+
+
+
+ Payment POS/019
+
+
+
+
+ POS/019
+
+
+
+ direct
+
+ POS notes
+ done
+ out
+
+
+ OUT/00019
+ none
+
+
+
+ POS/019
+
+
+
+
+
+ 1
+
+
+ done
+
+
+
+ Stock move (POS 12)
+
+
+
+
+
+
+
+ No Discount
+
+
+
+
+
+ Order Line/07
+
+
-
+
- tax_excluded
-
-
-
+
+
+
- tax_excluded
-
-
-
-
-
+
+
+
+
+ [PC3] Medium PC
@@ -218,6 +207,739 @@
0.10Discount Applied
-
+
+
+
+
+ Beverages
+
+
+
+
+ Water
+
+
+
+ Plain Water
+
+
+
+ Sparkling Water
+
+
+
+
+ Soda
+
+
+
+ Coke
+
+
+
+
+
+
+
+ Orange
+
+
+
+
+ Beers
+
+
+
+ Pils
+
+
+
+ Fruity Beers
+
+
+
+ Special Beers
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Food
+
+
+
+ Pizza
+
+
+
+ Ice Cream
+
+
+
+ Chips
+
+
+
+
+
+ 1.49
+ Coca-Cola Regular 1L
+
+ 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
+
+
+ 2.38
+ Coca-Cola Regular 2L
+
+ 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
+
+
+ 0.97
+ Coca-Cola Regular 50cl
+
+ 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
+
+
+ 0.51
+ Coca-Cola Regular 33cl
+
+ /9j/4AAQSkZJRgABAAEBLAEsAAD/2wCEAAoHBwgHBgoICAgLCgoLDhgQDg0NDh0VFhEYIx8lJCIfIiEmKzcvJik0KSEiMEExNDk7Pj4+JS5ESUM8SDc9PjsBCwoKDg0OHBYWHCgoKCgoOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O//AABEIAGQAOAMBEQACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/APZSQoJJwByTQBCt1HIxVOSOvtQBBe36WkDyySLGqAse5wKB2M1fEqHDYkZCu7ds4xQFi/Zaql7brPCVdGzjBweDjvQFix9ujVgsmULdM9/oelAiwrB1DKcgjINAFTVL6DT9PluLggIqnI9amUlFXZrQoyrTUY7s5OLWpJbINIs1ozjO6ICRfy4IrGOIT3R3VsslGTUJJ/g/8jPkngaXzZ9Wif2nDrn8wRWqq031OZ4LEL7D+Wo0ahp6uP8AiYaf5f8Ac81cflt/pT9pDuifqtf+SX3MVby2kuPMg1aBPRYSzlfYYGKTq0+5SwWJ/kf3WNy4muLTTUkJkvGlQspYCNcYHXqT1/8A1UqlTlV0h4fC+1m1J2szY8NanHquiQTLtWRB5cqD+Fhwf8fxopT543FjsK8PWcenT0OU8dXUlx4gtNK8wJF5aytlsbiWI/p+PHpXPipNySPZyWlGGHnVtd3t+A6bakaqvQDArJhC7d2Ub1AkJ3gcrke4qZaG9F3locBfMr3blVGAalI+joxtBHVeFirWwIUD6CnHc8fMk1I76JkudJj3n/Uttb6dv6V2RtKHofNyTp13bqZWgXMVp4xbT7NgIZomeRAcjI6GppSSqWR242nKpg/aT3TsjG+IJ2+NLY562i/+hNWeJ+M7sj1wUv8AF+iOTGq3trd7VuJDGH5TOQRmsEe08NTnDZXsdHrtzLcaLbm2eJmMzCBVJHmxMMgjnOQwYEZJycdxW9SKcVY8bBJQry5r7a+TWmvk1Zp9vmZFjoNlqGhwXEt6LK7mkdUeUZicg8KT/C1KMFKCd7M66+ZVqOIlFR5opLbdefmixPpuqeH7Ge4VZ4kDKoUhXVSe+7HzAjoeOeo6ZU6TimzOljKOMqRi2np5p/d0f9INK1u9udL1qKe6dybVWUdMfOAcY/3qVOXuy9C8ThKcK1Fxj9r9H/kaPw+H/FXRe1q9PC/GYZ4/9jf+JFj4h/8AI52h/wCnVf8A0JqrE/GjPIv9yn/i/RHGSQNPfCNMbnfaM+5rnWrse4pqFO76I39X1TSdL1A6GbQ3OnQoI5+fmEo6uno3r64ronOMXy20PHw2GxFel7fm5Zt3Xa3Z9127Fy2tZlsprvSpIdas3wZrdx88o/2l7SD+8OuOmetxi7Nx1X9ficdWrH2ihVTpyWz6L0f8r7dPTavqlzYf8Ii8dn/aUQFwgNtOTtgP905/h7jryO1TUcfZO1zbCU6v11OfI/deq6+fr38jn9PJR7he0tuy/lhv/Za5oPf0PZrK6i+0l/l+p1Xw7GfFg9rVv5itsL8Z5We/7p/28S/Ec7PF1m3/AE7L/wChNV4n40TkCvhJr+9+hyDTJFeq8jFVWQEkdRzXNH4j2nFyptLsXte0uOXVJwkPkSPKQGVyyFzyA2c7d2chuhyOnONqsLs4MFipRoxu7pL52XVd7dVuvuvL4UiSVEax2LqFqWeSA5WS4XqArZGPQjp3welOgrrTdGGaScW1P4JWs+i9VZ+qf5Brl/4hutFf7S9wLRZQk0U8IV0bquWAG4e/HPXtkqSqOOuw8DQwdOuuVLmtdNO6a66X0fkZNm25tw/55t/6Ca51uepU0XzX5nWfDZt/it/a1b+a1vhfj+R5Gfq2FX+L/MsfEqPzPFOnrnG63A/8eNaYle+jPh+XLhaj8/0PPrknz5Of4j/Oudn0kPhXodLpUyeIrKKx+1my1i2TZbXAcqJ0/uMR3Hatov2itezPExcHg6jny81OTu1vZ90NstMaCJbGY2+n6rBIzYu0AW4B6bZOoI6cGiELK2zM6+JU5c6vODX2Xt6r/NEGq6vq2paNKj3Mnk28qpc28gBKNztO7GSuR3OQcdampOco7muEwuHo101FXabT799Nr+n4GXo5LX8cQ/jyv5g1lBXaPSxNlSb7HW/C47vFEv8A16v/AOhLW2G+P5HlcR6YVf4v0ZpfEhf+Km0pvWIj/wAerTEfGjkyF/7NV9Tzi5/4+JM/3j/OuZn1EPhXoafhq1mu5b6KGW3jLWpXNwPlyWULhv4WyQQfUVdKLd/Q87M6saag2m/e6b7O+nVW3RuJrerafbNZ+INMj1JIRl0mH7xF/vZIIYe4/E1sqk0rSVzyZYPD1Z8+HqOF+23p3T8vuMzVvEdpe6VJp+kaQllA7LJOwxlsHgce+KzqVU42irHbg8vqU6yqVajk9kUfC8XneI7KPrmT+hqKKvNHdmMuXCzfkdP8K+fFEx7C0b/0JK0w3x/I83iP/do/4v0Zp/EzP9u6QV67G7e4q8T8SOTh+3sK1/L9Tzi9QR3cqhg2G6iuaW59PSleCZo+GEuPt8skLwCOOL9+lxnZIhIBBwOnIOe2M1VK/McGaSh7NJp3b0tunvp/l12Oy0W4t5fM+yalA1rEGVrS+Ic2zYI+V8/Mvb0wetddNp7PTz6HzuMhONueD5nb3o6c3quj/U5e401IfAQvFaJXmvizYP3lG5QF9ccn8a55w/dX8z2KWIcsx5NbKH52eongGEzeLrQ44jDuf++SP5kVOGV6iNs7ny4Kfnb8zc+FA/4qS79rVv8A0Na0wy/efI5OJH/s8P8AF+jND4mNjxBpABx8jc/jV4j4kc+QL9xV+R59er5upugO3e4GW7Z71yvVn0dJ8tFPyNa10uXStUeay1FWktUdnjERMnysEZWjz05z16c1pGDjK6Z5lbExxFFKcNJNa301V00/61NaaDwta3gv5RcWnygSwxLuhcsuSmMZXr0OOlbctNO+x50amPqQ5FaXZvRqz38/VXOYvLoz+HrKGMkRW9xMAp9DtIz+ZrCbvBep69Cny4mbe7jH9U/0Oj+GNsDf318w4ghCA+7HP/staYRe82cHEdT91CHd/l/w5rfC3TZba/kvJAdtzbNs9MB1zVYaOt/Iw4hxMZpQX2WvyY74lRyHxLpUgU7PKOGxnkNk/pijEfGgyGUfq1VeZ57qY238w56965pbn0lB3pI6W1jm1+KLWNIl8vXLJQJ4sj9+AMBxnjJHBHf+eyTn70d0eHWccJJ0aqvSls+3l/kEGseG2upptV0y4srxlZLiGIHy5SeuVPQ559jzmqjOm3qrEVMJjVFKlNSj0b3XzOdtoTNpGpOisIYXikBPY5Kgfkx/KsbXiz1JS5a9NPdpr8L/AKHoHhi0/sXwBc3kg2yTwyTn6bcKP6/jXVQjyUmz57Mav1nMowWyaX46mv4Jkid7ZIoyPL06Pe/GCSE/wP5GrpWtH0OLMIy9rVb61P8AP/gHTappNnrFqba8i3qDlWBwyH1B7GrnBSVmcmHxFShLmgzzTxJ8OprWRri3vg6N084Yx9SOK5pYZ9GfQ4XiNRjacPu/yf8Amc1BpuoaTdJdW9zGssZyro+B/wCPYzUKjUi7o6amc4HEQcZ3s+6/yN3/AISa11CMJ4g0S2uZFGPNhljyfwzkfnW2sviieW1Sou9DEWXZ3/y/QjnuLXVUh0uysU0zS/NEk77wWkx9M/5xSlTcvdSsi6eMp0G6sqvPO1lo7I7prBPEejvp8BNvauFQyDBwoI4XqO2K3lFSjY8nD4mVGsqlrtfmbOi6HYaDZi1sItinlmJyzn1JpU6cYKyFisXVxM+abuaB6mrZziEBhggEHsaAM668PaPekm406Bye+3H8qVkO7M5vAPhlm3HTh9PMb/GiwcxetPDGh2JBt9MgUjoSu4/rmiyC7NQAKAFAAHQCmIUUIAAA/9k=
+
+
+
+ 1.49
+ Coca-Cola Light 1L
+
+ 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
+
+
+ 2.38
+ Coca-Cola Light 2L
+
+ /9j/4AAQSkZJRgABAAEBLAEsAAD/2wCEAAoHBwgHBgoICAgLCgoLDhgQDg0NDh0VFhEYIx8lJCIfIiEmKzcvJik0KSEiMEExNDk7Pj4+JS5ESUM8SDc9PjsBCwoKDg0OHBYWHCgoKCgoOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O//AABEIAGQAIAMBEQACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/APZqYGN4he6ESrbXktscE5jC5P5g0AN8OS3TwkXN3LckqDmQAYP4CgDboACccmgCne6bFfSI7u6FVK/IxGc/5/WkMSw0yKwJZHdyVCguScCgRdpgcX4o8TXdvr39l2lx9njghWS4kVAWJYnAGenApDOK1rxPrmn5ubfWZngzyHlYFf1osFx2heLNR1W4y2vzhY8F0BIJ/U8Ukhnb+HPEdzL4g/sq6nNxFPA0sErIAwZSMqcdeDnPtTEzmfFDZ8Wa23+1Av4CMf4mmgOM8UyZ0hx7r/OhgjJ8GymPVJBngx/1FJAz0/w45PizRD6tOp+nlMf6UAa2r+FZ9X1/V5bSdFkYwkpJkD7mOCPpTEcb4l8BeI305hDZrPkjGyZOfzIpDM3wp8PPE637SS2CxLsIy8yeo9CaEDPQNO8O3Oj+JdCe6mjLtJP8kfP/ACybqTQI6LT5x/wmGswE9Ibd/wBGz/SgDN1G/uIbBI45JI/Nk8yB3A/eKe3PGT1wcfrkc7k0j0Y0oyk7paLXy/r+vOXw/qU00E7TABkkMWdrKTxnoQMGrpybMMTRjBq3VXLWqS7vGWhQg8Bbhz/3wB/WtTlM97g2Xj++lbiOS3iVj+Bx/KhjILi8N5pdxbySRnyWWLa54PB6+insfX8q52/dsd8IpVFJX110/rddf6ZTkvhpOjylbUQsJdxjaQlnGAMgjOCPQ44GeKumrLYxxUryWt9DQsLkah4p028Qlo9k6qfUbV5/WtUcxY1e187VtScD5lhi/wDZqUgSuzEuI4rWDFyjAsN6ywyYcDuMHgj2/TqRz1LX1PSwyk4+732a0/rzH6jBA+jXNmk8lzcLLvLumSCFA4ABx07DseR1rSCt1OTEScmtEtDc0nTmsp9JRkVWjSUNt6ZIHP44rRGDLssYfWr1SOGgi/8AZ6JAtzm9UmLwh5pLeFHTZKXi3puB6EE8Mv68da5pO+56lGNnZJvXTWz/AOGf9WNiy0mymhmhmhVz57yFhwcsc8EexA/CtopK5wVpuTTfZfgamR/aFoo7Bz+n/wBerRkebeM/HOoeEvH13HFDHc200MRaJ8gg7f4T2/WnYCnN8UdHu2+0Ja6hY3TgCQRrHLHJ/vAkZPvwazlT1umb08RaPLJXX4r0Y+0+MGmWMUgWzvrud3LO0gSIZwBgYLYGAKqMWt2RVmpNWVkjT8BeN7/xd41dJoo7e2gs5HjiTk5LIMknr19qozOW+NFu0XjVZSOJrSNh74LD+lAI89LFeR1FADEyzE+poA9L+CCFvF9246LYvk/V0oBnTfGjw7Nf6Xa6zbIXayykwHXYxGD+B/nQxxPIrbQtRutKutSitJGtbXAlk2nC54H9PzouDTQzRNEvtbvfstjbyTOAWYIpJCjvx9R+dTUnyRbs2VCPNJK9j2/4WeDJ/DVpd3t6pS5uiFVCMFUH+JP6CpoVHUjzNWHXjGErRdzvXRZEKOoZWGCpGQRWpkQNYWjWL2RtohbOpRoQgClT1GBSAzfD3hDRfC/nHSrUxvPje7uWYgdsnoKLDbNqmIAA/9k=
+
+
+ 0.97
+ Coca-Cola Light 50cl
+
+ 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
+
+
+ 0.51
+ Coca-Cola Light 33cl
+
+ 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
+
+
+ 0.53
+ Coca-Cola Light Decaf 33cl
+
+ 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
+
+
+
+ 1.49
+ Coca-Cola Zero 1L
+
+ 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
+
+
+ 2.38
+ Coca-Cola Zero 2L
+
+ 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
+
+
+ 0.97
+ Coca-Cola Zero 50cl
+
+ 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
+
+
+ 0.51
+ Coca-Cola Zero 33cl
+
+ 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
+
+
+ 0.67
+ Coca-Cola Zero Decaf 33cl
+
+ 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
+
+
+
+ 2.83
+ Coca-Cola Light Lemon 2L
+
+ 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
+
+
+ 1.16
+ Coca-Cola Light Lemon 50cl
+
+ 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
+
+
+ 0.53
+ Coca-Cola Light Lemon 33cl
+
+ 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
+
+
+
+ 1.70
+ Pepsi 2L
+
+ /9j/4AAQSkZJRgABAAEBLAEsAAD/2wCEAAoHBwgHBgoICAgLCgoLDhgQDg0NDh0VFhEYIx8lJCIfIiEmKzcvJik0KSEiMEExNDk7Pj4+JS5ESUM8SDc9PjsBCwoKDg0OHBYWHCgoKCgoOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O//AABEIAGQAHQMBEQACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/APZqYHIeNJtbS8gXS5pY4/IYt5b7fmyK7MIqVnz23Mqrkti74Ll1OXTrj+1HkeRZ8J5hydu1e/1zUYtU1NcnYdNtrU6L04rkbaa0/wCAaBnAzVAREB3D88DA5p2AVCEJ6/McnmhoCSkBz3inxhp3hdrZL4SsbjcQIlBwBjryPX9KEAy78aaRYaTDqdwZkgmA2Zj+Y59qoLif8Jtoz6G2ro0z2y9cR8+nSizsK5oeHPEFl4k0z7bYl9iuY2EgwwI/+sRUsZ5T8YLoyeLYYScrDbIMfUkn+lMQ34gXbL4c0y24ABHA9gf/AK1XLRCRkaXq62/ge8tpWJEjlEAHcj/9dCfuh1O2+Ck5ax1SAnhJI3A+oYf+y1myjmPi2rL42lYc5hjI9uP/AK1MRy+ra9qGr28MN5sYQklWVcH6U22wsVIry4SxezXb5TtuORk5ou7AepfBJSDq7dsQj/0OpYGV8WlA8XhvW3T+tbUtiJ7mCNEhSBTdO5kIyY48Db7EkHn2xWNXFxi7JXPWwmSzqwUpStcbe+G5rfRxq8AZrQy+W24Dcp/qPf1rWjVVRXscWNwn1apy819DvPguMR6ufeL/ANnpVDngZfxYj8rxXbXLgMhiUbfXacn+dVT2CehWS3tZ7gve6hDbW5O4uzbnZTyCFGTyK5qGWYms7qLt3PpMRnmEoU1aSbtt/mS+JPElhd6QNL0qN1sLZDl3GDIxBCgfmW59PavYeB+q0G5bvRL8T5WeMlia1/mza+DA/wBH1Y/7UX8mrzqhtAw/i0T/AMJYgzwLdP61dJ6Ez3MqKxZV+zNeWspU7FjlGdpyR95TkAnpz36Cumli6tJe62jKdGE90UL+LdaNI9zGAh+S3VQuDx1AJycfU4xz2qKladR3k7lQhGKsj0f4Ow7NN1CXB/eOn6bq5qq2NYHP/FoD/hJlbPPkqKqm0kKaOCZumDWt0RZiKR60m0NI9h+D2DpF9j/novf/AHqwqM0ic/8AFWyNz4kLBypESY9OlJLQfU8+uNPuoSMjcp6EGnYQQafcSDOAo9zRYD2T4SW32bSr0bi26RP5GpkNGP8AEvnxHj/piv8AWnETOI1DzGgQxnGKYD4ARAM9aaA9V+FwP9kXbesoH6VMhoyvihp0/wDaVrexKfLki2FscBgen5H9DUSqKCuzSnSdSVkefTbvLCsBkHt0qoSUlciceWVgcXFu8aywPGjqGjZ1I3j1HqKdwUdD2X4eWT2nhaN3Qq1xI0gBHbgD+VKT1Ejp3RJFKuoZT2YZFIZnap4d0nWTEb+ySYw/cOSuB6cEce1CYFt7CzlgjgktYXijACI0YKrjpgHpQBOAAAAMAdqAAP/Z
+
+
+ 0.43
+ Pepsi 33cl
+
+ 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
+
+
+ 1.71
+ Pepsi Max 2L
+
+ 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
+
+
+ 0.40
+ Pepsi Max 33cl
+
+ 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
+
+
+ 0.61
+ Pepsi Max 50cl
+
+ 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
+
+
+ 0.40
+ Pepsi Max Cool Lemon 33cl
+
+ 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
+
+
+
+ 0.75
+ Spa et Fruit Orange 50cl
+
+ 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
+
+
+ 0.72
+ Orangina 33cl
+
+ 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
+
+
+ 2.42
+ Orangina 1.5L
+
+ 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
+
+
+ 0.98
+ Fanta Orange 50cl
+
+ /9j/4AAQSkZJRgABAAEBLAEsAAD/2wCEAAoHBwgHBgoICAgLCgoLDhgQDg0NDh0VFhEYIx8lJCIfIiEmKzcvJik0KSEiMEExNDk7Pj4+JS5ESUM8SDc9PjsBCwoKDg0OHBYWHCgoKCgoOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O//AABEIAGQAZAMBEQACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/APZqYBQAUAFABQBz3irVbvTTbLbSbBJuLHA5xj/GvKzTF1KHLyu17np5Zhadbm5le1jnB4n1JWyt42ffB/nXlRzLE3+I9SWXYe3wnoUTF4kYjBZQTX1MXdI+ZkrMdTEFABQAUAeZ/Fv/AJDHhr63X/oKUp/wK3/Xt/nEJ/w4/wDXyH5nplMAoAKACgAoAx9Ygtr64t4nyTG2WKn7o9KwrQpzsmrmtKpOGzM+fRbJInZVZmyCoPpnvWP1aivso2eJqvqzpLeWKaFWibK4x15H1rsi01ocrJKYgoAKACgDzP4t/wDIY8NfW6/9BSlP+BW/69v84hP+HH/r5D8z0ymAUAFABQBDeSNHbnacMeAfSubGV/Y07ounHmZUt0gSMl2w1ctHGU3C8tGXKDvoNWWJnAYEL3NRHMYN6obpMVdlveK0TZV+DjvV/XIqqktbi5G4mlXpmIUAFABQB5n8W/8AkMeGvrdf+gpSn/Arf9e3+cQn/Dj/ANfIfmemUwCgAoAKAIrmPzIT3xzXNjKXtKTRdOVpGewXHIrwuRHRdjAq5pciHcmgjEky8dOa6sJR56i8iJysjSr3TmCgAoAKAPM/i3/yGPDX1uv/AEFKU/4Fb/r2/wA4hP8Ahx/6+Q/M9MpgFABQAUAFAGVKwErqOxIr5ytaNSSXc646pEQfmslIdi/p5DBz3BxXrZak1JmNboW69IxCgAoAKAPM/i3/AMhjw19br/0FKU/4Fb/r2/ziE/4cf+vkPzPTKYBQAUAFAAxCqWPQDNKTSV2CVzKtozcPJIenJ/Gvn8PTdecpHVN8qSI4cGbBGfXH9Kxo2c7MqWxZsSY7uWE969DL58laUGZVVeKZoV65gFABQAUAeZ/Fv/kMeGvrdf8AoKUp/wACt/17f5xCf8OP/XyH5nplMAoAKACgCtqDlbUhf4jiuHMqjhh3bqaUVeRUtbmO3iZWU5POa8vB4yFCDTTuzapTcmQxTBLnzCCRntXNTrqFXm8y5QvGxJJMGvEljBHIrZ4hSxKnHuSoWhZmtX0pyBQAUAFAHmfxb/5DHhr63X/oKUp/wK3/AF7f5xCf8OP/AF8h+Z6ZTAKACgAoAo6xMbewMgUNhgME461w5nf6u/kdGEhz1EjGN+yQ+ZLEsanuzdT7dzXz7p1Ixu7Jep3+wTdk7kSaqsn+pjWRh/CGwfyOM1klOXw2foW8Lbd2GjXCL2OA2rglgCSeOa1ouXtYXtqweEXI3fY66vrjxQoAKACgDzP4t/8AIY8NfW6/9BSlP+BW/wCvb/OIT/hx/wCvkPzPTKYBQAUAFAGb4gYJpTMRkB1JH41x5h/AfqvzOvAq9ZLyZxl/eJ9quUZcJbRIxbIyd3OQvGQM8kH8K5f7DWJpxqKWvRdLL9Wbzx8qbcFp59SpELg3USW0i3GFLOSuDnLqDwRjDJyOeD+WkspwdGF6rs76NadtiIY2vJ2hqrddTaumzPauyqC5QlR2ORk/qa8luP1uNno3/X3nfTv7GV+x21fUHghQAUAFAHmfxb/5DHhr63X/AKClKf8AArf9e3+cQn/Dj/18h+Z6ZTAKACgAoAoa2gfTGUnALqCfxFcmOipUWvT8zpwcnGqn6/kcxcadBPP50ThplQIcttDgdPxwSOexPWuOdfFUqLp0WnZ691/l0f6nSo0Z1OaomrjNrxziEOqFFDEnB3EjJH07cV50Yuy5ndtat6noxUOW6Wl/QkEySXdr54OBgkKMDgkf0FaUqlJVYxlvp/X4HJWoVOZuOyv9/wDTO1r6Q8cKACgAoA8z+Lf/ACGPDX1uv/QUpT/gVv8Ar2/ziE/4cf8Ar5D8z0ymAUAFABQBXv0EloyMoYEjIIrhzLXDtGtBtTujG/s+36+VyeuGIr5uNNxd1v62PQdeTVmxn9m2xIJhztGBlz0/OpXMtNfvK+s1O5NFZwxyq6xLkHgnnFaU4NVE7dTOVack1c3hyK+vR5gUwCgAoA8z+Lf/ACGPDX1uv/QUpT/gVv8Ar2/ziE/4cf8Ar5D8z0ymAUAFABQBHcIXgYDr1rnxdNzpNIum7SM3IxXzjOsjEilivpULfYZNGvmSKoGcnn6V0Yen7SokiJOyualfTHGFABQAUAeZ/Fv/AJDHhr63X/oKUp/wK3/Xt/nEJ/w4/wDXyH5nplMAoAKACgAoAje3ikOWQZ9uK56mEo1HeUS1UkuorQRMgQoNo6D0qpYelKKi4qyEpyTvcVI0jGEUCqpUYUlaKsKUnLcdWggoAKACgDzP4t/8hjw19br/ANBSlP8AgVv+vb/OIT/hx/6+Q/MAAP/Z
+
+
+ 2.28
+ Fanta Orange 2L
+
+ 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
+
+
+ 0.51
+ Fanta Orange 33cl
+
+ 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
+
+
+ 0.84
+ Fanta Orange 25cl
+
+ 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
+
+
+ 2.08
+ Fanta Zero Orange 1.5L
+
+ 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
+
+
+ 0.53
+ Fanta Zero Orange 33cl
+
+ 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
+
+
+
+ 0.52
+ Evian 50cl
+
+ /9j/4AAQSkZJRgABAAEBLAEsAAD/2wCEAAoHBwgHBgoICAgLCgoLDhgQDg0NDh0VFhEYIx8lJCIfIiEmKzcvJik0KSEiMEExNDk7Pj4+JS5ESUM8SDc9PjsBCwoKDg0OHBYWHCgoKCgoOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O//AABEIAGQAMQMBEQACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/APZqYGZ4h1yHw/pn22aNpAXCKoOOTn/CqhBzdkJtI4eb4o3Y5W3t4weg2M365H8q1+ryJ50RxfFieJwZ4reWPuFRlb+ZodBhzo9F0vUI9V0u2v4lKpcRhwp6jPasWrOxaLVIBF4H4n+dY0FaL9X+bGxa2Ech8TQD4UBLBcXCHk47Gt8L/EM6vwnkdzaylV2q7AjqFJFegYNlJrOYDc8ciqP4mUgfnUNX2GpI9/8AB6hPCOmKM8QL1rzanxM6Y7GzUjEXp17msqN+XV31f5v+v8xsWtRGL4qvre20iSCby2a5GxVfp7n8Kukm5aEVGkjizBon2dVMdvuzkkoB/SuvnmcvLEljg0kWzGNbYMhycICQPrjNS5zKUYncaJqcWo2Q2MvmRfK6jt6GuWcXFnTCSaNGpKETp+J/nWOH+B/4pfmxsJHWKNpHIVVBJJ7CthHAahfxaxdtcTLgKxWIE4wvauhwcFoc/MpvUha3VsbWIx6qf6VPOyuUsWcS+aUd0YSKVPH+JNJzfYaih9hfRaNeBg3LNtYetXyyqLUm6gzuY5FliWRDlXAIPtXObjh0/Gopqy+b/MbM/XpBHo1wCQPMXYPx4rWGjInscvpFrbwzKDEZFAxsJJH171c6jkRCCiN1TT4Tes0W6OPAwmNv4+tKM7IbhqOsEaGdQgUj0PP9alu40rBeQpPJ5zKQ7DDcY/CqjUaFKCZ1GhSiTS41zlo/lb+dRLVlx2NADFRGPKtxnP8AirzGNpGrYQliwx1xj/GtYNJMid9CDR2MBkbbHzj7zgf/AF6ljiU79/MvZGOM5xwcigBluxWZSCBz1NAFi52SsuG3e+c0IGaPh5PJuJ0y3zKGORjvTk7pBFWN2pKMLxMAPsr5IwzDj6D/AAq4K9yJ6WMVpwqkEdqfIxcxXEu4nik42BSuSI47j9KLDuTI4JxnaPoaFEVzW8PlTez7ckBByeM80SVkOJv1BZh+KCRbW5Az+8/pV07XInsYiRGXgDr0qyUjH1XVG025hiESy+c5UHzMBenoD61pTo+0vraxLlylnR78anaJOV2bmYbd2ehI/pWdWn7OVioy5kaDxFB8rD+dSmNo0vC4xd3PzEkqM+1KbvYcDpKgsxvEyhrOEE4Hm/0NXTdmRPYyIIVG0ocMOhAquYSRg+JnkE9lEgVUNzuOw4JwPw966aFrS9DOW6DwzHtsVB4IkfOP941niX7/AMiqa0NyYpHC0m5gFBJwOwrnW5bLnhXeLq43hclAfl7c9Kc2ELHTVBZl6+gezjDDP7wcH6Gqi7MmexkxIMEKrEY5x2obYkjnvFUTlLTykdgs4YheSMDP4V04WWrv2IqLYXw3DKLEmRWT985wRjv71OJa5/kOmtDdeETRPEwADgqfoa507Mtl7w/ataXTo0hdmjJJ247inOV9RQjY36ksoazF5lohzgLICf1H9acRS2MOSIxtkN16GgkgkYA5Yk/rTSBsarI3K8/hQ0wuXrBFZ2Yrkr0FIZc0dzc6lczhspGgQfXOf6Vc48qSJg7ts2qzNCO4hFxbyQscB1xn0oTsJq5xGr391pTeXd27DaOHxlW9wa6IUoy2ZjKconJ32uy3cu6QMkI4wv8A+sV106SjojGbcitDqwtnWSAzsQSCD39KupFbNExjLozotK1++1FTBb2UrTMMZiU8e/t+NckqcI6m/NJ6HeaBpsmmaYsMzbpnJdz6E9q56k+aVzWEeWNjSqCwoAbJGkqFJEV1PUMMg0AZ03hvRJyS+l22T/djC/yq1VmurJ5I9hI/DGhxY26Xbcf3kz/Oh1ZvqHJHsaMNvDbR+XBCkSD+FFCj9Khu5Q+gAoAAAP/Z
+
+
+ 0.70
+ Evian 1L
+
+ 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
+
+
+ 1.26
+ Evian 2L
+
+ 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
+
+
+ 0.40
+ Spa Reine 33cl
+
+ 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
+
+
+ 0.46
+ Spa Reine 50cl
+
+ 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
+
+
+ 0.65
+ Spa Reine 1L
+
+ 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
+
+
+ 1.30
+ Spa Reine 2L
+
+ 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
+
+
+ 0.34
+ Chaudfontaine 33cl
+
+ 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
+
+
+ 0.44
+ Chaudfontaine 50cl
+
+ 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
+
+
+ 0.86
+ Chaudfontaine 1.5l
+
+ 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
+
+
+
+ 0.38
+ Spa Barisart 33cl
+
+ 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
+
+
+ 0.49
+ Spa Barisart 50cl
+
+ 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
+
+
+ 1.00
+ Spa Barisart 1.5l
+
+ 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
+
+
+ 0.41
+ Chaudfontaine Petillante 33cl
+
+ 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
+
+
+ 0.57
+ Chaudfontaine Petillante 50cl
+
+ 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
+
+
+ 0.98
+ Chaudfontaine Petillante 1.5l
+
+ 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
+
+
+ 0.71
+ Perrier 50cl
+
+ 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
+
+
+ 0.96
+ Perrier 1L
+
+ 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
+
+
+ 0.98
+ San Pellegrino 1L
+
+ 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
+
+
+
+ 1.19
+ Stella Artois 50cl
+
+ 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
+
+
+ 0.82
+ Stella Artois 33cl
+
+ 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
+
+
+ 0.95
+ Maes 50cl
+
+ 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
+
+
+ 0.77
+ Maes 33cl
+
+ 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
+
+
+ 0.97
+ Jupiler 50cl
+
+ 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
+
+
+ 0.77
+ Jupiler 33cl
+
+ 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
+
+
+
+ 2.53
+ Boon Framboise 37.5cl
+
+ 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
+
+
+ 1.54
+ Timmermans Geuze 37.5cl
+
+ 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
+
+
+ 1.7
+ Timmermans Kriek 37.5cl
+
+ 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
+
+
+ 1.56
+ Timmermans Faro 37.5cl
+
+ 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
+
+
+ 1.94
+ Lindemans Pecheresse 37.5cl
+
+ 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
+
+
+ 1.51
+ Lindemans Kriek 37.5cl
+
+ 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
+
+
+ 1.04
+ Grisette Cerise 25cl
+
+ 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
+
+
+ 0.83
+ Belle-Vue Kriek 25cl
+
+ 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
+
+
+
+ 1.00
+ Leffe Brune 33cl
+
+ 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
+
+
+ 1.00
+ Leffe Blonde 33cl
+
+ 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
+
+
+ 1.16
+ Leffe Brune "9" 33cl
+
+ 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
+
+
+ 1.59
+ Orval 33cl
+
+ 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
+
+
+ 1.75
+ Rochefort "8" 33cl
+
+ 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
+
+
+ 1.46
+ Chimay Bleu 33cl
+
+ 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
+
+
+ 3.57
+ Chimay Bleu 75cl
+
+ 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
+
+
+ 1.02
+ Chimay Rouge 33cl
+
+ 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
+
+
+
+ 2.86
+ Dr. Oetker Ristorante Mozzarella
+
+ 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
+
+
+ 2.86
+ Dr. Oetker Ristorante Bolognese
+
+ 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
+
+
+ 2.86
+ Dr. Oetker Ristorante Funghi
+
+ /9j/4AAQSkZJRgABAAEBLAEsAAD/2wCEAAoHBwgHBgoICAgLCgoLDhgQDg0NDh0VFhEYIx8lJCIfIiEmKzcvJik0KSEiMEExNDk7Pj4+JS5ESUM8SDc9PjsBCwoKDg0OHBYWHCgoKCgoOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O//AABEIAGQAZAMBEQACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/APSpZUgjLyHCj2J/lWVjRK5WXVLRjhWlOBniB/8ACh3XRlqjJ9vvX+Y2PWbCV9kczO391Y2J/lUqSZcsLVirtfih39q2f99/+/T/AOFVZ9n9xn7N9196/wAxf7UtP77/APfp/wDCiz7P7g9m+6+9f5h/adp/ff8A79t/hRZ9n9wezfdfev8AMP7TtP77f9+2/wAKLPs/uD2b7r71/mL/AGla/wB9v+/bf4UWfZ/cHs33X3r/ADD+0rX++/8A37b/AAos+z+4PZvuvvX+Yf2la/33/wC/bf4UWfZ/cHs33X3r/MP7Stf77/8Aftv8KLPs/uD2b7r71/mOjvreVwiOxY9Mow/mKLPsxODXb70cT8SP+QtoX/XO8/8ARYq1/Arf4P8A26JyY/8A3b/uJD8zuLqFZ4djZxnPBI/lUxV2dSk4u6OW1G0sv7cjgv2j+zSIuxbqZ1iY5O7HIBbGOD7e9DjT5nz9tD0aNXE+xvS3Td7JXtpb5blRYNEdI2NloqIVZw7O8e5VbaSDns3GO/UU+XCMr2uaJ7yetu+6v+RtaJZwz2RkHmNC0hMTOz5K/wDAjnGc4z2xShGNvIwxdapGaTavZXtbf5fj5mpHplsx/wBVn3yarlT6HM69RdSX+yrQdYh+Zo5EL6zU7irplnkf6Op+tHJEHiavcnbTtPSPc9vGBkDJHcnAo5Ygq9VvdnmnifxTdabrlzY29paokDYB2ZLAgH1964KtWSm0j6fL8vp1cPGcpS18ynYeM9QuHES21gXHOZUIBHccGpjXknqXiMspqN4ykeqw6fYSwpKtvGVcBhx2r0Ixi1ex8tKtVi2m2K1lZw/PHAisDwQOaHFJEutUlo2zgfiR/wAhbQv+ud5/6LFNfwK3+D/26JyY/wD3b/uJD8zvtobg0obnQyG5063vITDcQxzRnqrqGFW0pLUqnVnTleLaZzt7FpNvfx6fbWCXlzENxjOWWAE9W4bBPYAE9+OtL2UErv8AzOhYrEyvaT136FgarfnU3sYIUka2hE9xujKbFP3VyWPJweo4A6c1oopxvZ7nM9HuaNhq7av5q6abctEEMgctlN6hlzxjoQeDUThUj2HH2fW5DPe6nDrFrpkl7YrPdq7xxpayMdq4ySd+B1FJQqOLd1/XzNOfDpfDL71/kay298E5lhL+uw4/LNK0u5neF9n9/wDwCjf2+uTW7wrc6ftYcExOGB6g53evtUyjNq10b0amHjJPll96/wAjz3xF4Q1y+1B7lhbl3ADFHPOOM8j0rglTkpan0OGzLDxo8iuVtM8G6hpiPNd7UjdsyzqCfKjAyT0/zgVTozm0kjD6/RTk29loj1PSL621XS4LuxlBt3QFB3AxxkduK9FxcXbsfOyve7W5YlVVHXJzUSSBNnn3xI/5C2hf9c7z/wBFimv4Fb/B/wC3RObH/wC7f9xIfmd1M5SMsO1KG50sga5tVsjd3kjeSBlgScemMDrzxjnNaKPMHM47EOlNb6Ja309xCYInmkunmKBVEZGVyOowoC4xnirkr2SIbb1ZzXhe4/taDU5dUka0Org6jJj77WuSipn+EBVHPUh+CK2qrlat00+YkWLLXtQTw3o9y8scNxqmpQrKscSBoYJCRGMYxnaqDJGcGh04ubXZBcZdahPa+IdV1tZDc3FuYdHsEYALJM+GfPHQMwzjn5TQopxUfmwLHiHXtasbdtPsXJvJbiG1hnlCFmkbLOwUAgLsGeemRxUQjFu72tceoxrzUv7evLWbV5RaWFuLq9m8uMBCQdsaccDALEnJ4Az1qFBSgnbVuy/zNHLlZHYajrs2meHbV7lRqWqytdTs0SkR24BbGMehQevPWtHSppydtF+ZHPJkV7qV9qnhO8sVvXlOqaqdPsZSqBnhyFcnaACBiTnHQCrjCMZp22V3/X3Et3NfRidT1SUWy7LDTpTaIyoFLiMYJ3gAn5sKAOMKSeorGpBJa7vUqM5LRPQ2pHVbryVZmAAJJPT2rlluarWNzhfiR/yFtC/653n/AKLFWv4Fb/B/7dE48f8A7t/3Eh+Z2167R2xZV3HIAFKO51JXMhJmQLHOm1rebzljcbQwwRjnuM5+uKpTs2XKndXRW1tzryx2c+6LTtwa4iRhvnx0QkHhfXHJ9q87FZ1TwdXl5W3Y0p4NzV72Ib6yFxrhuWRls59JlsJIojhlUkNkfhxRDPEqa9z+8tV0WonhNdy95FrM1ks/nNFaulysOVVS6LhScDOAADj2HWpWeq9lDdX36A8HpuMW106KMHyZzm8a9hZnU+XKW3MRxzycc54rOXEVoKTpuzVt+xSwN21zbE80NjLqlpqEkUxms98iAuNrNIApZuOTjgegq/7baTjybpPfo7W/Mn6p5kdxZafey30kkVwY9VjWKeJZFCthSoPTIIB9cdDinDPJOEGqe7016/0geE1a5ie3Szi1VtTWKeSdLYWwLyDaqcvwABjOP0FKOeOomlT6338n5eQPCW3kUbbT9MsINMiiW6H9mlmtmMikqGDAj7uP4jz16c1nU4lS1dP4lff+uxSwLf2tjV06LT9Ptv8ARXaKJ5XmWFmysbMSWxx6k9fWvSp4329KM9roxdBxk0T2xEjNKclpGzn0HakncuasrHGfEj/kLaF/1zvP/RYrZfwK3+D/ANuicGP/AN2/7iQ/M79CAwLDpSjudDHS7GX95GCPcZrQSKU2m28x8wDHHrxXFiMtw+InzTjd+rNoYipBWTMue+0q1maJyZZFGCqOc49K53l2Ci9b7W3e3bc3g68l/wAAa160iedb6Y+wpne0zHj0wPp0rKeGwy1UZbd3/n5GqjLZyW/YyBrnm2zOlvCuz/lnJIy4PH9P6VyyoYdqzjp6v/M29nJPf8EatrI09mt0yqqmMGQlyAox69COlXChh9XyO9tfee3TqZS5lKyfpojHj8SxoZGNqJoo2++kxXHp1qKVDD8qvF/ezedGfNZP8DYs9X0m7SMq7iSUZ2hi3YgdPauuOEwu/vJ+r/zOeUKyvorIb59u93PBIrw+Udil2+8e20c5Fc0sDhm/eVraLVlKc0k1qWorkuzQLE6KnQjBX8TXbQcYx5YrRESit29y5bxXIkQtgRg5wO9dcYyMakoWdtzj/iR/yFtC/wCud5/6LFbr+BW/wf8At0Tzcf8A7t/3Eh+Z3jOY13DtShudDKV1feWMntyWJwBVtpIqMLmReeIp57J47Jxajd800ke4uvfaO31rgqY2+kTvo4OMJXnr5f5mDcrDbxRzWGptLHJgSDeJOQDzk9DjmuOrojrg3OTukinaX91ptxFJaiS9ZjtbzZtxfJwBgHj6mlCrzaNDnh092bF0r7i11DFG7cH93kKfTceh5rD2coNpIUXDpdmpdG0bQGHmMYsASfPgtjnHPFdKUfZ3776nNHn9ttr0KAEmnWCz2NvC5IBCSe/pjofxqVL2fwotrnlaTJINbWFI3nX/AEoDDRxkBY/Yse/0pTxfLotX5A8NdvXTz/yKura00llLfWW1ZomRmjYqysAex9af1jmd9UVDD2dnroUbbXW+zNcGMiRm3+Wpzk1hSnGFRmk6Mtjb8Oa/I11FYPFI3nA7snPl4GRn9R+Vd2ErO9lqmc+Kwy9nz9vxM34kf8hbQv8Arnef+ixXpr+BW/wf+3RPDx/+7f8AcSH5nfBQxwRn2pR3OhnO6xq9jDd+VIjSojBSqLkluOffFcleupT5XsdtHDyUObuYZivJ7toIrsKsoPlhwOfoMZHHua8+0pO0Tr5oRjdozp/D02m2BnkKmVzjySRjHt9aclyxTZvTxHPKyLWm3MUdu8j6ZNCoH7tihcM2eRjrUqOl7+hNXm5rXv3JppbjUrryLtiIZQBGe6H157fypQqurKzuTyqnG6Ks8WpK8kbSvOjyBY44QAcE49MfU804yhUmlYNErpl7V7ybS5poRASgTbC6DKwkjqRnLH+VdFVxgmjKjF1LO5l6PchrWSG8G7zckAINuO+T6flXHJwhqjecJyZYsbOJbM2a2irC7khWHDAdOu3P4Nz6V2Q9+KlL8f6X5mUr05aPX+vX8jZ0rRTcxsFZYnC5BjPy5H1DY/BjWscDSm9Fb+v66nPPFzj5/wBeVvyG6G2nPqStEZYbsXDpPE53EsoKnn044/lWkcJKnJW2RnLFOpTaf/DFH4kf8hbQv+ud5/6LFdi/gVv8H/t0Ty8f/u3/AHEh+Z3rP5aPIP4VJ/SovY6bXOROmC7tC8jCJw+UYsT5fXkdOOK8zkTgm2etOryystdDM1DR7SKN/Mum+1qi+XPGoaQnPGFHPr1NU4cr8hU6jl0Q/VdTjig+y3qCUoCA/lHAI5BPp6VlUld2uaUqL3iFla2sjRDdNNcPGsgaOQoqggkA85OfpSVKMYW6sc68r7KxLb6jHY3k1rcwKiNGxaVySSB23E9Paphzwg721JmlUs43uhkcN3NqzR28gSOL96rA8bccAdsnNFNe9q9hza9mn30KaWl/IZHvpR5ZmboASoznBYHAp1Yc+qRcJKKsv6+Ran1nSrOPMcTyFRtxBHvPXuTgfkTWcsPBtczS/EiMZv8Ar+mNa+1Gyuv9HsFgM4yXklLFh7gYX9DV08VTorRMJU1VWslp5f0zW03xBfWN2YdT0opGwG2eD0/2l/wrthj4R0cbHJUwnOrxlcqeFLe6i1K4muUQm5uXl3NwRuJOF9cZxziumOKp1NEc0sPKmtSv8SP+QtoX/XO8/wDRYrZfwK3+D/26Jw4//dv+4kPzO9OMHPQipjudDOJLXmmSXttPIhMh/dZJ5APGPXg/nXlVounzQZ7cHTrxhJX03LkOmW1zKEmUysgBWRmC47gEAZ4+uKdOEr2v+JhUnZXMe60iCCKSaJpGHV5HkLDPoK5qiUlojenUknqS6BrQmRbe9WQSYOGYDIAOOc9q0jBp6t6E1qSa5olyfTLTUdVjS9s3SNlODgBWHXqPU9quMU566ExnKFJuLVx2rBrObyo5xCkmWQJCGb6c+mPyFKrTcW2rE0ZqS1/Mx/7Ke/vYPtMV7LwX86QMpXjgD9KzVWVrS7G3PGN7WLEWnokT3C+c723yhM7jnPYev+Nc9P312KqSadu42wsLmf7Rdukybyqlu2BnOPQ9M/SrteK7Jmc5pNK5q2ctpbaX5VxKnlqTgTsScjry3NdTUZRs7GDU3LRMzNI1KDUfE1pHZxiVI5Gk80HhV2kYx65xSwq5Kiv1Z24nDOnhpSk9bfqO+JH/ACFtC/653n/osV7K/gVv8H/t0T5jH/7t/wBxIfmd1O5jgZwMkdqUdzpZn3OnwaxAGABdehPVfxqcRQjWjZl0K86Mro5+6urnQ7draODdGjbmR13Ajpx3NeVzVKD5JL/Jnr0o08U+a+pqW8ltHJHLPCqlMFY1OFD4/wATVudKnO76HJJTlFpFXxDJAtuNzf6xxswOo71wuTvJp6N6G2Gg5O1tkVBrNpaQNdTzRCYptBDgufQAVtTq8ye9xyoS5rWHvdLq6rM5Yq6oAqj542PAPA9R+Fbe1TfvGbpunoaemt5MbPcnfIONxXBJ9OO2frWanRT5rGc03ojI1G40+RDC1yqzOyuyhfm4PfHT8/zpK1OHMjaKm2kLHf38lm9tbGAW6MFLzPjqM4FLD0cRiKT5WrDqOhTmnO9/Ixta0Se/nhEF5GsY4ffISAc9vWumll9aC1SNcNmeHp3bR0HhfRLfS2jMLo3z/MwOdxx/niujD4SUPfqW5vyOPG494l2Wxn/Ej/kLaF/1zvP/AEWK7F/Arf4P/bonkY//AHb/ALiQ/M7qYFoWCjJNTHc6TP8AstzE/mQAq3cZ4NacyELJA97Hsu7Qg/3gRUzVOorSVxxlKDvFmdeeG5Z2TEheNeNuccV5s8sgneEreTO6lmEorVFCfQtVSB1jt1lY/KrGTlU9ACcZ461g8HUiuVRW+rR1wxlCUk22v8/kVI/D+otHCIdNkt3iBJeZkfJ9OG/Wl9VqRvaO5tPGUru8079rr9C5Ba6xZt5KaVNJHIMvIJIxg+wzVLDVeVqxhKeHlrzq/wAyKa38R28CLa2M0x8zcwYxjgdvvf59qmGDmtErCUsPNvmml6X/AMjOl0PxNf3zzf2eLUO2cyTAhfoATTeDnrdXN44jCU4/Hf0Ru6L4butPs3t5AHDP5h3gdcdua9LBxlTg1K255ePrwrzTitkWrnTp4h+5sElY88KAPz3V1c6ONQRVt9Mv5tZ06WWwNvDaSvISGXGShUcA+9TOSsbRUYxepmfEj/kLaF/1zvP/AEWKS/gVv8H/ALdE4sf/ALt/3Eh+Z31QdIUAFABQAUAFABQAUAFABQAUAFAHA/Ej/kLaF/1zvP8A0WKtfwK3+D/26JzY/wD3b/uJD8wA/9k=
+
+
+ 2.86
+ Dr. Oetker Ristorante Hawaii
+
+ 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
+
+
+ 2.86
+ Dr. Oetker Ristorante Pollo
+
+ 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
+
+
+ 2.86
+ Dr. Oetker Ristorante Prosciutto
+
+ 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
+
+
+ 2.86
+ Dr. Oetker Ristorante Quattro Formaggi
+
+ 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
+
+
+ 2.86
+ Dr. Oetker Ristorante Speciale
+
+ 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
+
+
+ 2.86
+ Dr. Oetker Ristorante Spinaci
+
+ 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
+
+
+ 2.86
+ Dr. Oetker Ristorante Tonno
+
+ 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
+
+
+ 2.86
+ Dr. Oetker Ristorante Vegetale
+
+ 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
+
+
+ 2.67
+ Dr. Oetker La Margherita
+
+ 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
+
+
+
+ 0.33
+ Croky Paprika 45g
+
+ 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
+
+
+ 0.39
+ Croky Naturel 45g
+
+ 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
+
+
+ 1.78
+ Croky Bolognaise 250g
+
+ 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
+
+
+ 1.48
+ Lays Pickels 250g
+
+ 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
+
+
+ 1.48
+ Lays Ketchup 250g
+
+ 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
+
+
+ 1.58
+ Lays Sel et Poivre Oven Baked 150g
+
+ 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
+
+
+
+ 1.54
+ Lays Paprika Oven Baked 150g
+
+ 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
+
+
+ 1.55
+ Lays Paprika XXL 300g
+
+ /9j/4AAQSkZJRgABAAEBLAEsAAD/2wCEAAoHBwgHBgoICAgLCgoLDhgQDg0NDh0VFhEYIx8lJCIfIiEmKzcvJik0KSEiMEExNDk7Pj4+JS5ESUM8SDc9PjsBCwoKDg0OHBYWHCgoKCgoOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O//AABEIAGQAQQMBEQACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/APWK0AKAAUwFxQAlAgoAKACkBZj+4MVlBJLTu/z/AK9RkG2tRnLaJ4mTVWntPtJhvbeRo5IXAJypwSvHI4/Cu6eH5UpW0ZzRq3bV9TT86dmKpqOGXqDCOKy5F2L533I7qbVo4TJaXEMxXHyvFjPPPIPp7VUIU27NNEynJK6Ft5NQmwZLwxMPvRtbjI/HPI96UoQWy/EalJ9Rz35jn+z/ANoK8oH3FRcimqV1flBz1tcztW8Tx6NNbW8ty8t5dyLHDb4XPzHG44HApxoqSbtsJza6nU4rjNiZOFFZpW+8CMCtCjxjxPZSWXjzUUhZ0d5BMhQkEblBOCPcmvfy+anQszw8xbhVujrfDEviK4KrdGO4t1H35l+YenIxn8c1yY1UKSbTsb4Odapujr0KADzIVLL0K9jXz1XNacW+W7PVjQ7lad5ZFZDcrCTwgKjn8ajDZ7hZTUZJp+YTw1Rp2ZyOsprGiQMbC5S3hU8KEVmc+udvP4/nX0+HnRrvXU8msq1JaaHK+F7S+134hWc1zI0zRP8AaZ3b/Z6frtGK1x0lSo8sdLjwbdWd2e24rw7npj0xtGKxpuLTt3f56/iNgorVjOF8V6XH/wAJvYXsgxFLbMJD/uHJ/Qj8q78LX5KE/I4MTQ9pXgu5LYXdzqXhzUL4NJEEYR2kUDFAGPA6deWWvClOWIjKU9ddD6WeHo4WpTpxS21vqUXt9esILyY69uksUV54SS+0t91ckYJrneEVntodHtsLUlFey0k7J7GmZNXEtxb3ZspTb2ouJGKMMZz8vB68VxV8lp1ZPVqyMG8PyqUVJXlboVNZ1B7TVIbK7lgiiZlSS1ETEsGGN28jBx14+nNerhE8JKKUnp/W5g8LHEYeTUW99fTyNDwToKae2oX7AGSeXy19lXr+ufyFe1jq3PJLsjwsHS5It92dURiuM6xV6Cs4JJfN/mMVatjMTxdZmfTRMo+eISKCPR0Zf57aqL92S7oUUvaQfaSMrQd8PhXSI7MwTy+atxPGZlU7eT3PX7v5VxQ92CSsenXlGeIm53StZaBqKm1sdQeTSZ2inuVuC32mMmUhshDgk4zgADJok0k3br3Cm+eUEprRW2enmP1ue1h0C/1C4hnjbUZo45U3qXVRjKjHA4Dce/NObSg2+osLCcq8YRafLe3Y4/WdZGs2Npp1lHd3L27ExzTqpk5wAvHb3+lYSqqVkenHDSoylOXKk1stvU9E8Kzedp1yc523ko/XP9a9aumpL0R8rSd0/VmyRWRoC8Cogml83+f9f8HcYq1TGzI8V6gdO0QyDG6SVEGfrk/oDW2HhzzsY1p8sTN8OWdrbWiR2tsixtlg4wGB9D614mZ5TUnfk3OyOMdXWTNYusL7mtRuHQhQa+dWIxOFmlKGzNVFSWjMy6hur544Y18qGPJUKCME9STnk/412PF4nGWjTg16fqzWHs6N23djNSaPTNNaKGRjIw5cnJzX1WVYB0Y+++Z9f+AeXjMS57aDvh6S2g3DE/eu3P6LXXjf4nyMcJ8HzOnNcx0CKcj8aiEuZfN/n5/091oMVatgzC8bxPJ4akMcRlZJY2CgZP3gP61vhJqFVNuxhioc1O1jn0+32NrA0JkZ8fNhQeoJ9fat/b0KkmuZGSp1YRWhcTxXMF2PEoYD+8ecHGBx19qcsJCQ1Xkhi+JbhixkiwuFIPIAJ7Zx/nmmsNFbC9tJlTVLhrjRftXyKwmTPmZPynGRwDzz6V8xnGPxWHx6pQk1FwvpbfXq/wDM6sPShOndrqdB4GAHhxOF3GRt5WMpk8c4IFdeCqzqU+aTb16u5bjGOiRvtXYSIKlK3UAWqYzL8U3ZsvD9xKqbydqgfUis6rtBvyLppOaRzVpq3k28m4sqqM8HJxXhOqt0dvsnJpBNcW19GNjLFJnOe5+tejhc3dFe9qjlxGActtCkZ2hDpncE4yvQ1ric/i9Ka+bJoZU38bILvU327EkkTzB/CSOcUsHiaWMrxVanGTto7fgPF4F0aTlCT03R1ngIP/wjKs7FmaaQ5Y5PXH9K9LFQjCpaKSVuhx4Vt07s6NqwRsNFAAtNlHL/ABCvDb6RaRAkedcgEg9gpq4JezqN9Is5sRPl5fU88tHuptvnOfsyygBuQ+0Hk+9eNKjG90j18qc3CTfyOguDawWqSWo3IoA243Fj2wax+rRqO0XZl2k5N1P+GK7SXChpp4JI42bIRxyRXFiML7GfLdP0OmhUjVjpdDY5YLhXknxHGg+93/CurLsNXlVThujLGuFOm1J6M7fwLcQ3HhmNrff5ayyKpYY3fN1/WvpsUpKprvZHhYdxcNNrnQNXOjZjRQALTY2cV8T9q2OnO5baszfd652114KiqynB9UcWOmoKLfc4qy230iJ5j4jA3ArgMfb+eK8nH5dXozk9eU97K8fh5UIxi1zWOmt4AUwyDA6EnFeZKPRG85EzpHcKVZll2cZ38Zrqp5TOrBNu1/U4J4+NObSWxm32lpd2nlSwzKHchfKIKrgcFvb8quFSrluKglytW8+r/MipKOOoSTurPy6fodV8O5hJ4caJQQsE7RgNjI4B7fWvbx8Wqt+6PPwck6dl0djqGrkR0saKYCqKTGch8RbX+0LOzsonUT+YZQrHGVAwf1YV35dNU5tvaxxY+k6kElvc5MaTLZ2+No2p1Oa7vbRmzkVGVOPoRMm4ckn8aFSgn8KL9tUt8TLdnfG0txEjYw2eVBGPyrgxVDESq3jtY1o1YJajL3XrplcLJGA3dkAyPwrGWAxE2ndaFuvBXt1Og+F80jQ6pA+3Cyo42jAGQen5CunMV8De9hYCLjzLzO6NecdzG0CFFDGc/regapqs0UsWrxW5iUhQtrnrjP8AF7Ct6daMFblMp03Lqc7d/DjXL18zeKyUB+4LTA/9CrZY3l2ijN4ZPdsgX4V6uOP+ErwPayH9WoePm+iBYSCGr8KNWB58WFh/tWY/+KoWYTXRA8JBk6/Cm4KES+IWY9iLUDH/AI9Q8fN9ENYaKL+gfDcaJqyaj/bdzNIvGwII1bnvg81E8W5xs0io0VF3R25rlNhh60CAGmxikkUgYgY0NCDcaLALk0WAQsaLAKpJoBCmgY09aEIAAP/Z
+
+
+ 1.48
+ Lays Light Paprika 170g
+
+ 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
+
+
+ 1.48
+ Lays Light Paprika 170g
+
+ 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
+
+
+ 0.39
+ Lays Paprika 45g
+
+ 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
+
+
+
+ 1.54
+ Lays Naturel Oven Baked 150g
+
+ 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
+
+
+ 1.55
+ Lays Naturel XXL 300g
+
+ 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
+
+
+ 1.48
+ Lays Light Naturel 170g
+
+ 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
+
+
+ 1.48
+ Lays Light Naturel 170g
+
+ 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
+
+
+ 0.39
+ Lays Naturel 45g
+
+ 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
+
+
+
+ 7.60
+ ijsboerke Chocolat 2.5L
+
+ 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
+
+
+ 7.60
+ ijsboerke Moka 2.5L
+
+ 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
+
+
+ 7.40
+ ijsboerke Vanille 2.5L
+
+ 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
+
+
+ 8.40
+ ijsboerke Stracciatella 2.5L
+
+ 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
+
+
+ 7.60
+ ijsboerke Dame Blanche 2.5L
+
+ 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
+
+
diff --git a/addons/point_of_sale/point_of_sale_report.xml b/addons/point_of_sale/point_of_sale_report.xml
index 3e6a265b34e..b8d5456f1cd 100644
--- a/addons/point_of_sale/point_of_sale_report.xml
+++ b/addons/point_of_sale/point_of_sale_report.xml
@@ -96,17 +96,6 @@
menu="False"
rml="point_of_sale/report/pos_payment_report_user.rml"
/>
-
-
diff --git a/addons/point_of_sale/point_of_sale_sequence.xml b/addons/point_of_sale/point_of_sale_sequence.xml
index 399dccc634f..bf83fe17942 100644
--- a/addons/point_of_sale/point_of_sale_sequence.xml
+++ b/addons/point_of_sale/point_of_sale_sequence.xml
@@ -13,8 +13,8 @@
POS Orderpos.order
- POS/
- 3
+ POS
+ 4
@@ -24,8 +24,8 @@
POS order linepos.order.line
- Order Line/
- 2
+ POSL
+ 4
diff --git a/addons/point_of_sale/point_of_sale_view.xml b/addons/point_of_sale/point_of_sale_view.xml
index a8552cddc15..4f1019e602e 100644
--- a/addons/point_of_sale/point_of_sale_view.xml
+++ b/addons/point_of_sale/point_of_sale_view.xml
@@ -13,51 +13,47 @@
form
-
+
-
-
-
+
+
-
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
+
+
-
-
+
+
-
-
@@ -74,22 +70,25 @@
-
-
-
-
+
+
+
-
-
+
+
+
+
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
@@ -116,8 +115,6 @@
-
-
@@ -132,13 +129,17 @@
search
-
-
+
+
+
+
+
+
+
+
-
-
@@ -153,65 +154,11 @@
-
+
-
-
- Point of Sale
- ir.actions.act_window
- pos.order
- form
- tree,form
-
- ['|',('state','=','advance')]
- {"search_default_user_id":uid}
-
-
-
-
-
- Accepted Sales
- ir.actions.act_window
- pos.order
- form
- tree,form
- [('state','=', 'paid')]
- {"search_default_user_id":uid}
-
-
-
- Point of Sale
- ir.actions.act_window
- pos.order
- form
- tree,form
- [('date_order','<=', time.strftime('%Y-%m-%d 23:59:59'))]
- {"search_default_user_id":uid}
-
-
-
-
- Point of Sale
- ir.actions.act_window
- pos.order
- form
- tree,form
- {"search_default_user_id":uid}
-
-
-
- Opened Sales
- ir.actions.act_window
- pos.order
- form
- form,tree
- {"search_default_user_id":uid}
-
-
-
Sale linespos.order.line
@@ -632,20 +579,6 @@
tree,calendar,form,graph[('date_order','like',time.strftime('%Y-%m'))]
-
-
- view.company.form.pos
- res.company
- form
-
-
-
-
-
-
-
-
- product.normal.form.inherit
@@ -657,12 +590,34 @@
-
-
+
+
+ pos.category.tree
+ pos.category
+ tree
+ child_id
+
+
+
+
+
+
+
+ Products by POS-Category
+ ir.actions.act_window
+ pos.category
+ [('parent_id','=',False)]
+ tree
+
+ Here is a list of all your products classified by POS category. You can click a category to get the list of all products linked to this category or to a child of this category.
+
+
+
+
product.normal.form.inheritproduct.product
@@ -693,8 +648,6 @@
-
-
@@ -712,7 +665,7 @@
id="menu_point_config_product" sequence="25" groups="group_pos_manager"/>
- Products
+ Products 'Take Money Out'ir.actions.act_windowproduct.productform
@@ -731,14 +684,14 @@
-
+
- Products
+ Products 'Put Money In'ir.actions.act_windowproduct.productform
@@ -757,24 +710,37 @@
-
+
+
+ Payment Methods
+ account.journal
+ form
+ tree,form
+ {'default_journal_user': 1}
+ [('journal_user','=', 1)]
+ Payment methods are defined by accounting journals having the field Payment Method checked.
+
+
+
+
POS Sales Linespos.order.line
@@ -782,7 +748,6 @@
-
@@ -802,6 +767,16 @@
+
+ All Sales Orders
+ ir.actions.act_window
+ pos.order
+ form
+ tree,form
+ []
+
+
+
Invoicesir.actions.act_window
diff --git a/addons/point_of_sale/point_of_sale_workflow.xml b/addons/point_of_sale/point_of_sale_workflow.xml
index c325c4951c9..4058af2696f 100644
--- a/addons/point_of_sale/point_of_sale_workflow.xml
+++ b/addons/point_of_sale/point_of_sale_workflow.xml
@@ -69,7 +69,7 @@
-
+ cancel
diff --git a/addons/point_of_sale/report/__init__.py b/addons/point_of_sale/report/__init__.py
index d7355af0357..171f323e337 100644
--- a/addons/point_of_sale/report/__init__.py
+++ b/addons/point_of_sale/report/__init__.py
@@ -32,11 +32,8 @@ import pos_sales_user
import pos_sales_user_today
import pos_payment_report_date
import pos_payment_report_user
-import pos_sales_user_today_current_user
-import pos_receipt_with_remboursment
-import pos_receipt_without_remboursment
import pos_report
import pos_order_report
import report_cash_register
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/point_of_sale/report/pos_details.py b/addons/point_of_sale/report/pos_details.py
index 84f3de8258f..4c23a005674 100644
--- a/addons/point_of_sale/report/pos_details.py
+++ b/addons/point_of_sale/report/pos_details.py
@@ -97,7 +97,7 @@ class pos_details(report_sxw.rml_parse):
def _get_sum_dis_2(self,form,user):
res4=[]
- self.cr.execute ("select sum(pol.price_ded * pol.qty)" \
+ self.cr.execute ("select sum(pol.qty)" \
"from pos_order as po,pos_order_line as pol,product_product as pp,product_template as pt, res_users as ru,res_company as rc " \
"where pt.id=pp.product_tmpl_id and pp.id=pol.product_id and po.id = pol.order_id and po.state IN ('paid') " \
"and to_char(date_trunc('day',po.date_order),'YYYY-MM-DD')::date >= %s and to_char(date_trunc('day',po.date_order),'YYYY-MM-DD')::date <= %s " \
@@ -215,4 +215,4 @@ class pos_details(report_sxw.rml_parse):
report_sxw.report_sxw('report.pos.details', 'pos.order', 'addons/point_of_sale_singer/report/pos_details.rml', parser=pos_details, header='internal')
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/point_of_sale/report/pos_invoice.py b/addons/point_of_sale/report/pos_invoice.py
index 7a89b101956..0e1cd98fb47 100644
--- a/addons/point_of_sale/report/pos_invoice.py
+++ b/addons/point_of_sale/report/pos_invoice.py
@@ -55,4 +55,4 @@ class pos_invoice(report_sxw.rml_parse):
report_sxw.report_sxw('report.pos.invoice', 'pos.order', 'addons/account/report/account_print_invoice.rml', parser= pos_invoice)
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/point_of_sale/report/pos_order_report.py b/addons/point_of_sale/report/pos_order_report.py
index 00681457495..ceb20a11a36 100644
--- a/addons/point_of_sale/report/pos_order_report.py
+++ b/addons/point_of_sale/report/pos_order_report.py
@@ -35,9 +35,7 @@ class pos_order_report(osv.osv):
'day': fields.char('Day', size=128, readonly=True),
'partner_id':fields.many2one('res.partner', 'Partner', readonly=True),
'product_id':fields.many2one('product.product', 'Product', readonly=True),
- 'state': fields.selection([('draft', 'Draft'), ('payment', 'Payment'),
- ('advance','Advance'),
- ('paid', 'Paid'), ('done', 'Done'), ('invoiced', 'Invoiced'), ('cancel', 'Cancel')],
+ 'state': fields.selection([('draft', 'New'), ('paid', 'Closed'), ('done', 'Synchronized'), ('invoiced', 'Invoiced'), ('cancel', 'Cancelled')],
'State'),
'user_id':fields.many2one('res.users', 'Salesman', readonly=True),
'price_total':fields.float('Total Price', readonly=True),
@@ -49,9 +47,6 @@ class pos_order_report(osv.osv):
'product_qty':fields.integer('# of Qty', readonly=True),
'journal_id': fields.many2one('account.journal', 'Journal'),
'delay_validation': fields.integer('Delay Validation'),
- 'delay_payment': fields.integer('Delay Payment'),
- 'date_validation': fields.date('Validation Date', required=True),
- 'date_payment': fields.date('Payment Date', required=True),
}
_order = 'date desc'
@@ -65,10 +60,9 @@ class pos_order_report(osv.osv):
to_date(to_char(s.date_order, 'dd-MM-YYYY'),'dd-MM-YYYY') as date,
sum(l.qty * u.factor) as product_qty,
sum(l.qty * l.price_unit) as price_total,
- sum(l.qty * l.price_ded) as total_discount,
+ sum(l.qty * l.discount) as total_discount,
(sum(l.qty*l.price_unit)/sum(l.qty * u.factor))::decimal(16,2) as average_price,
- sum(cast(to_char(date_trunc('day',s.date_validation) - date_trunc('day',s.date_order),'DD') as int)) as delay_validation,
- sum(cast(to_char(date_trunc('day',s.date_payment) - date_trunc('day',s.date_order),'DD') as int)) as delay_payment,
+ sum(cast(to_char(date_trunc('day',s.date_order) - date_trunc('day',s.create_date),'DD') as int)) as delay_validation,
to_char(s.date_order, 'YYYY') as year,
to_char(s.date_order, 'MM') as month,
to_char(s.date_order, 'YYYY-MM-DD') as day,
@@ -78,9 +72,7 @@ class pos_order_report(osv.osv):
s.shop_id as shop_id,
s.company_id as company_id,
s.sale_journal as journal_id,
- l.product_id as product_id,
- s.date_validation,
- s.date_payment
+ l.product_id as product_id
from pos_order_line as l
left join pos_order s on (s.id=l.order_id)
left join product_template pt on (pt.id=l.product_id)
@@ -88,11 +80,10 @@ class pos_order_report(osv.osv):
group by
to_char(s.date_order, 'dd-MM-YYYY'),to_char(s.date_order, 'YYYY'),to_char(s.date_order, 'MM'),
to_char(s.date_order, 'YYYY-MM-DD'), s.partner_id,s.state,
- s.user_id,s.shop_id,s.company_id,s.sale_journal,l.product_id,s.date_validation,
- s.date_payment
+ s.user_id,s.shop_id,s.company_id,s.sale_journal,l.product_id,s.create_date
having
sum(l.qty * u.factor) != 0)""")
pos_order_report()
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/point_of_sale/report/pos_order_report_view.xml b/addons/point_of_sale/report/pos_order_report_view.xml
index 8b18bf0b57a..41fe2c3b4d6 100644
--- a/addons/point_of_sale/report/pos_order_report_view.xml
+++ b/addons/point_of_sale/report/pos_order_report_view.xml
@@ -2,65 +2,62 @@
- report.pos.order.tree
- report.pos.order
- tree
-
-
-
-
-
-
-
-
-
-
-
-
-
+ report.pos.order.tree
+ report.pos.order
+ tree
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
- report.pos.order.search
- report.pos.order
- search
-
-
-
-
-
-
-
- report.pos.order.search
+ report.pos.order
+ search
+
+
+
+
+
+
+
+
-
+
-
+
@@ -69,36 +66,31 @@
help="My Sales"
domain="[('user_id','=',uid)]"/>
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
+
+
+
- Point of Sale Analysis
- report.pos.order
- form
- tree,graph
-
- {'search_default_today':1,'search_default_User':1,'group_by_no_leaf':1,'group_by':[]}
-
+ Point of Sale Analysis
+ report.pos.order
+ form
+ tree,graph
+
+ {'search_default_today':1,'search_default_User':1,'group_by_no_leaf':1,'group_by':[]}
+
-
-
+
+
diff --git a/addons/point_of_sale/report/pos_receipt.rml b/addons/point_of_sale/report/pos_receipt.rml
index b9da3f5e9a6..e3b5583a499 100644
--- a/addons/point_of_sale/report/pos_receipt.rml
+++ b/addons/point_of_sale/report/pos_receipt.rml
@@ -77,7 +77,6 @@
Tel : [[ address and address.phone ]]E-mail : [[ address and address.email ]]Shop : [[ o.shop_id.name ]]
- Vendeur : [[ o.user_salesman_id.name ]]Date : [[ o.date_order ]]
@@ -85,12 +84,10 @@
- [[o.type_rec]]N° : [[ o.name ]]
- Contract : [[ o.contract_number ]]
@@ -165,6 +162,5 @@
- [[o.note_2]]
diff --git a/addons/point_of_sale/report/pos_receipt_with_remboursment.py b/addons/point_of_sale/report/pos_receipt_with_remboursment.py
deleted file mode 100644
index c600a9e2754..00000000000
--- a/addons/point_of_sale/report/pos_receipt_with_remboursment.py
+++ /dev/null
@@ -1,83 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-import time
-from report import report_sxw
-import pooler
-
-class order(report_sxw.rml_parse):
-
- def __init__(self, cr, uid, name, context):
- super(order, self).__init__(cr, uid, name, context=context)
-
- user = pooler.get_pool(cr.dbname).get('res.users').browse(cr, uid, uid)
- partner = user.company_id.partner_id
-
- self.localcontext.update({
- 'time': time,
- 'disc': self.discount,
- 'net': self.netamount,
- 'get_journal_amt': self._get_journal_amt,
- 'address': partner.address and partner.address[0] or False,
- })
-
- def netamount(self, order_line_id):
- sql = 'select (qty*price_unit) as net_price from pos_order_line where id = %s'
- self.cr.execute(sql, (order_line_id,))
- res = self.cr.fetchone()
- return res[0]
-
- def discount(self, order_id):
- sql = 'select discount, price_unit, qty from pos_order_line where order_id = %s '
- self.cr.execute(sql, (order_id,))
- res = self.cr.fetchall()
- dsum = 0
- for line in res:
- if line[0] != 0:
- dsum = dsum +(line[2] * (line[0]*line[1]/100))
- return dsum
-
- def _get_journal_amt(self, order_id):
- lst=[]
- sql = """ select aj.name from account_bank_statement as abs
- LEFT JOIN account_bank_statement_line as absl ON abs.id = absl.statement_id
- LEFT JOIN account_journal as aj ON aj.id = abs.journal_id
- WHERE absl.pos_statement_id = %d"""%(order_id.id)
- self.cr.execute(sql)
- res = self.cr.fetchone()
- if not res:
- return ['', 0.0]
- lst.append(res[0]) # todo: improve
- sql2 = """ select sum(absl.amount) as amt from account_bank_statement as abs
- LEFT JOIN account_bank_statement_line as absl ON abs.id = absl.statement_id
- LEFT JOIN account_journal as aj ON aj.id = abs.journal_id
- where aj.name = '%s' """%(res[0])
- self.cr.execute(sql2)
- res1 = self.cr.fetchone()
- if res1:
- lst.append(res1[0])
- else:
- lst.append(0.0)
- return lst
-
-report_sxw.report_sxw('report.pos.receipt.with.remboursment', 'pos.order', 'addons/point_of_sale/report/pos_receipt_with_remboursment.rml', parser=order, header=False)
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
diff --git a/addons/point_of_sale/report/pos_receipt_with_remboursment.rml b/addons/point_of_sale/report/pos_receipt_with_remboursment.rml
deleted file mode 100644
index 9c25d5f4a89..00000000000
--- a/addons/point_of_sale/report/pos_receipt_with_remboursment.rml
+++ /dev/null
@@ -1,131 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- [[ repeatIn(objects,'o') ]]
- [[ repeatIn(objects,'o') ]]
- [[o.user_id.company_id.name]]
- [[ address and address.street ]], [[ address and address.zip ]] [[ address and address.city ]]
- [[ address and address.country_id.name ]]
- Tel : [[ address and address.phone ]]
- E-mail : [[ address and address.email ]]
- Salesman : [[ o.user_id.name ]]
- Sale Date : [[ o.date_order ]]
- Refund Receipt: [[o.name]]
-
-
-
-
-
-
-
- Description
-
-
- Qty
-
-
- Price
-
-
-
-
- [[ repeatIn(o.lines,'line') ]]
-
-
-
-
- [[ line.product_id.name ]]
-
-
- [[o.state=='cancel' and o.statement_ids and '-' or '']][['%.f' % line.qty ]]
-
-
- [[o.state=='cancel' and o.statement_ids and '-' or '']][[ '%.2f' % net(line.id) ]] [[ line and line.discount == 0.0 and removeParentNode('font') ]] ([[ '%.f' % line.discount ]]%)
-
-
-
-
-
-
-
- Disc :
-
-
- [[o.state=='cancel' and o.statement_ids and '-' or '']][[ '%.2f' % (disc(o.id) or 0.0,) ]]
-
-
-
-
- Total :
-
-
- [[o.state=='cancel' and o.statement_ids and '-' or '']][['%.2f' % o.amount_total ]] [[ o.pricelist_id.currency_id.name ]]
-
-
-
- [[ get_journal_amt(o)[1] ]]
-
-
-
diff --git a/addons/point_of_sale/report/pos_receipt_without_remboursment.py b/addons/point_of_sale/report/pos_receipt_without_remboursment.py
deleted file mode 100644
index d2fe0f1d542..00000000000
--- a/addons/point_of_sale/report/pos_receipt_without_remboursment.py
+++ /dev/null
@@ -1,83 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-import time
-from report import report_sxw
-import pooler
-
-class order(report_sxw.rml_parse):
-
- def __init__(self, cr, uid, name, context):
- super(order, self).__init__(cr, uid, name, context=context)
-
- user = pooler.get_pool(cr.dbname).get('res.users').browse(cr, uid, uid)
- partner = user.company_id.partner_id
-
- self.localcontext.update({
- 'time': time,
- 'disc': self.discount,
- 'net': self.netamount,
- 'get_journal_amt': self._get_journal_amt,
- 'address': partner.address and partner.address[0] or False,
- })
-
- def netamount(self, order_line_id):
- sql = 'select (qty*price_unit) as net_price from pos_order_line where id = %s'
- self.cr.execute(sql, (order_line_id,))
- res = self.cr.fetchone()
- return res[0]
-
- def discount(self, order_id):
- sql = 'select discount, price_unit, qty from pos_order_line where order_id = %s '
- self.cr.execute(sql, (order_id,))
- res = self.cr.fetchall()
- dsum = 0
- for line in res:
- if line[0] != 0:
- dsum = dsum +(line[2] * (line[0]*line[1]/100))
- return dsum
-
- def _get_journal_amt(self, order_id):
- lst=[]
- sql = """ select aj.name from account_bank_statement as abs
- LEFT JOIN account_bank_statement_line as absl ON abs.id = absl.statement_id
- LEFT JOIN account_journal as aj ON aj.id = abs.journal_id
- WHERE absl.pos_statement_id = %d"""%(order_id.id)
- self.cr.execute(sql)
- res = self.cr.fetchone()
- if not res:
- return ['', 0.0]
- lst.append(res[0]) # todo: improve
- sql2 = """ select sum(absl.amount) as amt from account_bank_statement as abs
- LEFT JOIN account_bank_statement_line as absl ON abs.id = absl.statement_id
- LEFT JOIN account_journal as aj ON aj.id = abs.journal_id
- where aj.name = '%s' """%(res[0])
- self.cr.execute(sql2)
- res1 = self.cr.fetchone()
- if res1:
- lst.append(res1[0])
- else:
- lst.append(0.0)
- return lst
-
-report_sxw.report_sxw('report.pos.receipt.without.remboursment', 'pos.order', 'addons/point_of_sale/report/pos_receipt_without_remboursment.rml', parser=order, header=False)
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
diff --git a/addons/point_of_sale/report/pos_receipt_without_remboursment.rml b/addons/point_of_sale/report/pos_receipt_without_remboursment.rml
deleted file mode 100644
index ff6ebc3132c..00000000000
--- a/addons/point_of_sale/report/pos_receipt_without_remboursment.rml
+++ /dev/null
@@ -1,138 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- [[ repeatIn(objects,'o') ]]
- [[ repeatIn(objects,'o') ]]
- [[o.user_id.company_id.name]]
- [[ address and address.street ]], [[ address and address.zip ]] [[ address and address.city ]]
- [[ address and address.country_id.name ]]
- Tel : [[ address and address.phone ]]
- E-mail : [[ address and address.email ]]
- Salesman : [[ o.user_id.name ]]
- Sale Date : [[ str(o.date_order) ]]
- Purchase Voucher : [[o.name]]
-
-
-
-
-
-
-
- Description
-
-
- Qty
-
-
- Price
-
-
-
-
- [[ repeatIn(o.lines,'line') ]]
-
-
-
-
- [[ line.product_id.name ]]
-
-
- [[o.state=='cancel' and o.statement_ids and '-' or '']][['%.f' % line.qty ]]
-
-
- [[o.state=='cancel' and o.statement_ids and '-' or '']][[ '%.2f' % net(line.id) ]] [[ line and line.discount == 0.0 and removeParentNode('font') ]] ([[ '%.f' % line.discount ]]%)
-
-
-
-
-
-
-
- Disc :
-
-
- [[o.state=='cancel' and o.statement_ids and '-' or '']][[ '%.2f' % (disc(o.id) or 0.0,) ]]
-
-
-
-
- Total :
-
-
- [[o.state=='cancel' and o.statement_ids and '-' or '']][['%.2f' % o.amount_total ]] [[ o.pricelist_id.currency_id.name ]]
-
-
-
- [[ get_journal_amt(o)[0] ]] : [[ get_journal_amt(o)[1] ]]
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/point_of_sale/report/pos_report.py b/addons/point_of_sale/report/pos_report.py
index cd41eb92944..1ecf80ea519 100644
--- a/addons/point_of_sale/report/pos_report.py
+++ b/addons/point_of_sale/report/pos_report.py
@@ -49,7 +49,7 @@ class report_transaction_pos(osv.osv):
min(absl.id) as id,
count(absl.id) as no_trans,
sum(absl.amount) as amount,
- sum(line.price_ded) as disc,
+ sum((100.0-line.discount) * line.price_unit * line.qty / 100.0) as disc,
to_char(date_trunc('day',absl.create_date),'YYYY-MM-DD')::text as date_create,
po.user_id as user_id,
po.sale_journal as journal_id,
@@ -236,4 +236,4 @@ class report_sales_by_margin_pos_month(osv.osv):
""")
report_sales_by_margin_pos_month()
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/point_of_sale/report/pos_sales_user_today_current_user.py b/addons/point_of_sale/report/pos_sales_user_today_current_user.py
deleted file mode 100644
index 07cbdcbc488..00000000000
--- a/addons/point_of_sale/report/pos_sales_user_today_current_user.py
+++ /dev/null
@@ -1,68 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-import time
-from report import report_sxw
-
-class pos_sales_user_today_current_user(report_sxw.rml_parse):
-
- def __init__(self, cr, uid, name, context):
- super(pos_sales_user_today_current_user, self).__init__(cr, uid, name, context=context)
- self.total = 0.0
- self.qty = 0.0
- self.localcontext.update({
- 'time': time,
- 'get_user':self._get_user,
- 'get_data_current_user':self._get_data_current_user,
- 'get_data_current_user_tot':self._get_data_current_user_tot,
- 'get_data_current_user_qty':self._get_data_current_user_qty,
- })
-
- def _get_user(self, user):
- pos_user={}
- self.cr.execute("select name from res_users where id = %s",str(self.uid))
- pos_user=self.cr.dictfetchone()
- return pos_user['name']
-
- def _get_data_current_user(self, user):
- data={}
- self.cr.execute("select po.name,po. state,sum(pol.qty)as Qty,sum((pol.price_unit * pol.qty * (1 - (pol.discount) / 100.0))) as Total " \
- "from pos_order as po,pos_order_line as pol,product_product as pp,product_template as pt, res_users as ru,res_company as rc " \
- "where pt.id=pp.product_tmpl_id and pp.id=pol.product_id and po.id = pol.order_id " \
- "and to_char(date_trunc('day',po.date_order),'YYYY-MM-DD')::date = current_date and po.user_id = ru.id and rc.id = %s and ru.id = %s " \
- "group by po.name, po.state " \
- ,(str(user.company_id.id),str(self.uid)))
-
- data = self.cr.dictfetchall()
- for d in data:
- self.total += d['total']
- self.qty += d['qty']
- return data
-
- def _get_data_current_user_tot(self, user):
- return self.total
-
- def _get_data_current_user_qty(self, user):
- return self.qty
-
-report_sxw.report_sxw('report.pos.sales.user.today.current.user', 'pos.order', 'addons/point_of_sale/report/pos_sales_user_today_current_user.rml', parser=pos_sales_user_today_current_user,header='internal')
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
diff --git a/addons/point_of_sale/report/pos_sales_user_today_current_user.rml b/addons/point_of_sale/report/pos_sales_user_today_current_user.rml
deleted file mode 100644
index 7a94f5d6632..00000000000
--- a/addons/point_of_sale/report/pos_sales_user_today_current_user.rml
+++ /dev/null
@@ -1,204 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- [[ repeatIn(objects,'order') ]]
-
-
-
-
-
-
- Today's Sales By Current User
-
-
-
-
-
+
+
+
+
+
+
+
+
+ Order
+ X
+
+
\ No newline at end of file
diff --git a/addons/point_of_sale/test/00_register_open.yml b/addons/point_of_sale/test/00_register_open.yml
new file mode 100644
index 00000000000..7d5aabbcdc3
--- /dev/null
+++ b/addons/point_of_sale/test/00_register_open.yml
@@ -0,0 +1,17 @@
+-
+ In order to test the Point of Sale module, I will open all cash registers through the wizard
+-
+ I go to the window to open the cash registers as admin
+-
+ !record {model: pos.open.statement, id: new_statement_open}:
+-
+ I click on the button to open all statements/cash registers
+-
+ !python {model: pos.open.statement}: |
+ self.open_statement(cr, uid, [ref('new_statement_open')], context={})
+-
+ I check that I have some bank statements open for the admin user
+-
+ !python {model: account.bank.statement}: |
+ ids = self.search(cr, uid, [('state', 'in', ('open','new')), ('user_id', '=', 1)])
+ assert (len(ids)>0), 'No statement open for the admin user!'
diff --git a/addons/point_of_sale/test/01_order_to_payment.yml b/addons/point_of_sale/test/01_order_to_payment.yml
new file mode 100644
index 00000000000..fd8ffbaa3e0
--- /dev/null
+++ b/addons/point_of_sale/test/01_order_to_payment.yml
@@ -0,0 +1,124 @@
+- |
+ In order to test the Point of Sale in module, I will do a full flow from the sale to the payment and invoicing.
+ I will use two products, one with price including a 10% tax, the other one with 5% tax excluded from the price.
+- |
+ I create a VAT tax of 10%, included in the public price
+-
+ !record {model: account.tax, id: account_tax_10_incl}:
+ name: VAT 10 perc Incl
+ type: percent
+ amount: 0.10
+ account_paid_id: account.iva
+ account_collected_id: account.iva
+ price_include: 1
+-
+ I assign this 10 percent tax on the PC1 product as a sale tax
+-
+ !record {model: product.product, id: product.product_product_pc1}:
+ taxes_id: [account_tax_10_incl]
+- |
+ I create a VAT tax of 5%, which is added to the public price
+-
+ !record {model: account.tax, id: account_tax_05_incl}:
+ name: VAT 05 perc Excl
+ type: percent
+ amount: 0.05
+ account_paid_id: account.iva
+ account_collected_id: account.iva
+ price_include: 0
+-
+ I assign this 5 percent tax on the PC2 product as a sale tax
+-
+ !record {model: product.product, id: product.product_product_pc2}:
+ taxes_id: [account_tax_05_incl]
+-
+ I create a PoS order with 2 units of PC1 at 450 EUR (Tax Incl) and 3 units of PC2 at 300 EUR. (Tax Excl)
+-
+ !record {model: pos.order, id: pos_order_pos0}:
+ company_id: base.main_company
+ lines:
+ - name: OL/0001
+ product_id: product.product_product_pc1
+ price_unit: 450
+ discount: 0.0
+ qty: 2.0
+ - name: OL/0002
+ product_id: product.product_product_pc2
+ price_unit: 300
+ discount: 0.0
+ qty: 3.0
+-
+ I check that the total of the order is equal to 450*2 + 300*3*1.05 and the tax of the order is equal to 900 -(450 * 2 / 1.1) + 300*0.05*3
+-
+ !python {model: pos.order}: |
+ order = self.browse(cr, uid, ref('pos_order_pos0'))
+ assert(abs(order.amount_total - (450*2 + 300*3*1.05)) < 0.01), "The order has a wrong amount, tax included"
+ assert(abs(order.amount_tax - (900-(450*2/1.1) + 300*0.05*3)) < 0.01), "The order has a wrong tax amount"
+-
+ I want to add a global discount of 5 percent using the wizard
+-
+ !record {model: pos.discount, id: pos_discount_0}:
+ discount: 5.0
+-
+ I click the apply button to set the discount on all lines
+-
+ !python {model: pos.discount}: |
+ self.apply_discount(cr, uid, [ref("pos_discount_0")], {"active_model": "pos.order",
+ "active_ids": [ref("pos_order_pos0")], "active_id": ref("pos_order_pos0"), })
+-
+ I check that the total of the order is now equal to (450*2 + 300*3*1.05)*0.95
+-
+ !python {model: pos.order}: |
+ order = self.browse(cr, uid, ref('pos_order_pos0'))
+ assert(abs(order.amount_total - (450*2 + 300*3*1.05)*0.95) < 0.01), "The order has a wrong total including tax and discounts"
+-
+ I click on the "Make Payment" wizard to pay the PoS order with a partial amount of 100.0 EUR
+-
+ !record {model: pos.make.payment, id: pos_make_payment_0, context: {'active_id': ref('pos_order_pos0'), 'active_ids': [ref('pos_order_pos0')]} }:
+ amount: 100.0
+-
+ I click on the validate button to register the payment.
+-
+ !python {model: pos.make.payment}: |
+ self.check(cr, uid, [ref('pos_make_payment_0')], context={'active_id': ref('pos_order_pos0'), 'lang':'en_US', 'active_model': 'pos.order', 'tz': False, 'active_ids': [ref('pos_order_pos0')]} )
+- |
+ I check that the order is not marked as paid yet
+-
+ !assert {model: pos.order, id: pos_order_pos0}:
+ - state == 'draft'
+- |
+ On the second payment proposition, I check that it proposes me the remaining balance which is 1790.0 EUR
+-
+ !python {model: pos.make.payment}: |
+ defs = self.default_get(cr, uid, ['amount'], {'active_id': ref('pos_order_pos0')})
+ assert abs(defs['amount'] - ((450*2 + 300*3*1.05)*0.95-100.0)) < 0.01, "The remaining balance is incorrect"
+-
+ I pay the remaining balance.
+-
+ !record {model: pos.make.payment, id: pos_make_payment_1, context: {'active_id': [ref('pos_order_pos0')], 'active_ids': [ref('pos_order_pos0')]} }:
+ amount: !eval >
+ (450*2 + 300*3*1.05)*0.95-100.0
+-
+ I click on the validate button to register the payment.
+-
+ !python {model: pos.make.payment}: |
+ self.check(cr, uid, [ref('pos_make_payment_1')], context={'active_id': ref('pos_order_pos0')} )
+- |
+ I check that the order is marked as paid
+-
+ !assert {model: pos.order, id: pos_order_pos0}:
+ - state == 'paid'
+-
+ I generate the journal entries
+-
+ !python {model: pos.order}: |
+ self.create_account_move(cr, uid, [ref('pos_order_pos0')], {})
+-
+ I test that the generated journal entry is attached to the PoS order
+-
+ !assert {model: pos.order, id: pos_order_pos0}:
+ - bool(account_move)
+
+
+
+
diff --git a/addons/point_of_sale/test/02_order_to_invoice.yml b/addons/point_of_sale/test/02_order_to_invoice.yml
new file mode 100644
index 00000000000..3436e176678
--- /dev/null
+++ b/addons/point_of_sale/test/02_order_to_invoice.yml
@@ -0,0 +1,47 @@
+-
+ I create a new PoS order with 2 units of PC1 at 450 EUR (Tax Incl) and 3 units of PC2 at 300 EUR. (Tax Excl)
+-
+ !record {model: pos.order, id: pos_order_pos1}:
+ company_id: base.main_company
+ partner_id: base.res_partner_asus
+ lines:
+ - name: OL/0001
+ product_id: product.product_product_pc1
+ price_unit: 450
+ discount: 5.0
+ qty: 2.0
+ - name: OL/0002
+ product_id: product.product_product_pc2
+ price_unit: 300
+ discount: 5.0
+ qty: 3.0
+-
+ I click on the "Make Payment" wizard to pay the PoS order
+-
+ !record {model: pos.make.payment, id: pos_make_payment_2, context: {'active_id': ref('pos_order_pos1'), 'active_ids': [ref('pos_order_pos1')]} }:
+ amount: !eval >
+ (450*2 + 300*3*1.05)*0.95
+-
+ I click on the validate button to register the payment.
+-
+ !python {model: pos.make.payment}: |
+ self.check(cr, uid, [ref('pos_make_payment_2')], context={'active_id': ref('pos_order_pos1')} )
+- |
+ I check that the order is marked as paid and there is no invoice attached to it
+-
+ !python {model: pos.order}: |
+ order = self.browse(cr,uid,ref('pos_order_pos1'))
+-
+ !assert {model: pos.order, id: pos_order_pos1, string: State not correct}:
+ - state == 'paid'
+ - not invoice_id
+-
+ I generate the invoice by pressing the Invoice button that calls the workflow
+-
+ !workflow {model: pos.order, action: invoice, ref: pos_order_pos1}
+-
+ I test that the total of the attached invoice is correct
+-
+ !assert {model: pos.order, id: pos_order_pos1, string: Invoice not correct}:
+ - bool(invoice_id)
+ - invoice_id.amount_total == (450*2 + 300*3*1.05)*0.95
diff --git a/addons/point_of_sale/test/point_of_sale_report.yml b/addons/point_of_sale/test/point_of_sale_report.yml
index b821dc899df..f3ea5995b9e 100644
--- a/addons/point_of_sale/test/point_of_sale_report.yml
+++ b/addons/point_of_sale/test/point_of_sale_report.yml
@@ -35,23 +35,10 @@
file(os.path.join(tools.config['test_report_directory'], 'point_of_sale-receipt report'+format), 'wb+').write(data)
-
- In order to test the PDF reports defined on a Point of Sale, we will print a POS Receipt With Reimbursement Report
+ Create a record for the root user in pos.payment.report.user (used by the next python block).
-
- !python {model: pos.order}: |
- import netsvc, tools, os
- (data, format) = netsvc.LocalService('report.pos.receipt.with.remboursment').create(cr, uid, [ref('point_of_sale.order_pos1'), ref('point_of_sale.order_pos2')], {}, {})
- if tools.config['test_report_directory']:
- file(os.path.join(tools.config['test_report_directory'], 'point_of_sale-receipt with reimbursement report'+format), 'wb+').write(data)
-
--
- In order to test the PDF reports defined on a point of sale, we will print a POS Receipt Without Reimbursement Report
--
- !python {model: pos.order}: |
- import netsvc, tools, os
- (data, format) = netsvc.LocalService('report.pos.receipt.without.remboursment').create(cr, uid, [ref('point_of_sale.order_pos1'), ref('point_of_sale.order_pos2')], {}, {})
- if tools.config['test_report_directory']:
- file(os.path.join(tools.config['test_report_directory'], 'point_of_sale-receipt without reimbursement report'+format), 'wb+').write(data)
-
+ !record {model: pos.payment.report.user, id: pos_payment_report_user_1}:
+ user_id: []
-
Print the POS Payment Report through the wizard
-
@@ -74,56 +61,6 @@
from tools import test_reports
test_reports.try_report_action(cr, uid, 'action_report_pos_details',wiz_data=data_dict, context=ctx, our_module='point_of_sale')
--
- I create a cash journal.
--
- !record {model: account.journal, id: account_journal_cash0}:
- name: 'Cash Journal'
- code: 'CSJ'
- type: 'cash'
- view_id: account.account_journal_bank_view
- sequence_id: account.sequence_journal
--
- I create a record for Bank Statement.
--
- !record {model: account.bank.statement, id: account_bank_statement_st0}:
- name: St.05/19
- balance_end_real: 0.0
- date: !eval time.strftime('%Y-%m-%d')
- journal_id: account_journal_cash0
- line_ids:
- - name: statement
- date: !eval "(datetime.now() + timedelta(5*31)).strftime('%Y-%m-%d')"
- type: customer
- account_id: account_pos_account_sales
- amount: 100
- partner_id: base.res_partner_agrolait
- period_id: account.period_5
- state: 'draft'
--
- In order to test the PDF reports defined on a Point Of Sale, we will print a Account Statement Report
--
- !python {model: account.bank.statement}: |
- import netsvc, tools, os, time
- (data, format) = netsvc.LocalService('report.account.statement').create(cr, uid, [ref('point_of_sale.account_bank_statement_st0')], {}, {})
- if tools.config['test_report_directory']:
- file(os.path.join(tools.config['test_report_directory'], 'point_of_sale-account_statement_report'+format), 'wb+').write(data)
--
- In order to test the PDF reports defined on a Point Of Sale, we will print a POS User Product Report
--
- !python {model: account.bank.statement}: |
- import netsvc, tools, os, time
- (data, format) = netsvc.LocalService('report.pos.user.product').create(cr, uid, [ref('point_of_sale.account_bank_statement_st0')], {}, {})
- if tools.config['test_report_directory']:
- file(os.path.join(tools.config['test_report_directory'], 'point_of_sale-user_product_report'+format), 'wb+').write(data)
--
- In order to test the PDF reports defined on a Point Of Sale, we will print a POS All Close Cashbox Of the Day Report
--
- !python {model: account.bank.statement}: |
- import netsvc, tools, os, time
- (data, format) = netsvc.LocalService('report.all.closed.cashbox.of.the.day').create(cr, uid, [ref('point_of_sale.account_bank_statement_st0')], {}, {})
- if tools.config['test_report_directory']:
- file(os.path.join(tools.config['test_report_directory'], 'point_of_sale-all_closed_cash_box_of_the_day_report'+format), 'wb+').write(data)
-
In order to test the PDF reports defined on a Point of Sale, we will print a POS Sales User Report
-
@@ -133,15 +70,6 @@
(data, format) = netsvc.LocalService('report.pos.sales.user').create(cr, uid, [ref('point_of_sale.order_pos1'), ref('point_of_sale.order_pos2')], data_dict, {})
if tools.config['test_report_directory']:
file(os.path.join(tools.config['test_report_directory'], 'point_of_sale-sales_user_report'+format), 'wb+').write(data)
--
- In order to test the PDF reports defined on a Point of Sale, we will print a POS Sales User Today Report
--
- !python {model: pos.order}: |
- import netsvc, tools, os, time
- data_dict = {'model':'ir.ui.menu', 'form':{'user_id':[ref('base.user_root')] }}
- (data, format) = netsvc.LocalService('report.pos.sales.user.today').create(cr, uid, [ref('point_of_sale.order_pos1'), ref('point_of_sale.order_pos2')], data_dict, {})
- if tools.config['test_report_directory']:
- file(os.path.join(tools.config['test_report_directory'], 'point_of_sale-sales_user_today_report'+format), 'wb+').write(data)
-
In order to test the PDF reports defined on a Point of Sale, we will print a POS Payment Report
-
@@ -159,11 +87,3 @@
(data, format) = netsvc.LocalService('report.pos.payment.report.user').create(cr, uid, [ref('point_of_sale.order_pos1'), ref('point_of_sale.order_pos2')], data_dict, {})
if tools.config['test_report_directory']:
file(os.path.join(tools.config['test_report_directory'], 'point_of_sale-payment_user_report'+format), 'wb+').write(data)
--
- In order to test the PDF reports defined on a Point of Sale, we will print a POS Today's Sales of Current User Report
--
- !python {model: pos.order}: |
- import netsvc, tools, os, time
- (data, format) = netsvc.LocalService('report.pos.sales.user.today.current.user').create(cr, uid, [ref('point_of_sale.order_pos1'), ref('point_of_sale.order_pos2')], {}, {})
- if tools.config['test_report_directory']:
- file(os.path.join(tools.config['test_report_directory'], 'point_of_sale-sales_today_current_user_report'+format), 'wb+').write(data)
diff --git a/addons/point_of_sale/test/point_of_sale_test.yml b/addons/point_of_sale/test/point_of_sale_test.yml
deleted file mode 100644
index 6165e993240..00000000000
--- a/addons/point_of_sale/test/point_of_sale_test.yml
+++ /dev/null
@@ -1,437 +0,0 @@
--
- In order to test the POS in module, To give business owners a convenient way of checking out customers and of recording sales.
-
--
- I configure all details for the Customer, Salesman and Product, Account.
--
- I create View Account Type.
--
- !record {model: account.account.type, id: account_account_type_view0}:
- close_method: none
- code: View
- name: View
- sign: 1
--
- I create Income Account Type.
--
- !record {model: account.account.type, id: account_account_type_income0}:
- close_method: unreconciled
- code: Income
- name: Income
- sign: 1
--
- I create Expense Account Type.
--
- !record {model: account.account.type, id: account_account_type_expense0}:
- close_method: unreconciled
- code: Expense
- name: Expense
- sign: 1
--
- I create Cash Account Type.
--
- !record {model: account.account.type, id: account_account_type_cash0}:
- close_method: balance
- code: Cash
- name: Cash
- sign: 1
--
- I create Minimal Chart Account.
--
- !record {model: account.account, id: account_pos_account_minimalchart}:
- code: 'x_0'
- company_id: base.main_company
- currency_mode: current
- name: Minimal Chart
- parent_left: 1
- parent_right: 12
- type: view
- user_type: account_account_type_view0
--
- I create Payable Account.
--
- !record {model: account.account, id: account_pos_account_payable}:
- code: AP
- company_id: base.main_company
- currency_mode: current
- name: Payable
- parent_id: account_pos_account_minimalchart
- parent_left: 2
- parent_right: 3
- reconcile: true
- type: payable
- user_type: account_account_type_expense0
--
- I create Receivable Account.
--
- !record {model: account.account, id: account_pos_account_receivable}:
- code: AR
- company_id: base.main_company
- currency_mode: current
- name: Receivable
- parent_id: account_pos_account_minimalchart
- parent_left: 4
- parent_right: 5
- reconcile: true
- type: receivable
- user_type: account_account_type_income0
--
- I create Cash Account.
--
- !record {model: account.account, id: account_pos_account_cash}:
- code: C
- company_id: base.main_company
- currency_mode: current
- name: Cash
- parent_id: account_pos_account_minimalchart
- parent_left: 6
- parent_right: 7
- type: other
- user_type: account_account_type_cash0
--
- I create Purchases Account.
--
- !record {model: account.account, id: account_pos_account_purchases}:
- code: P
- company_id: base.main_company
- currency_mode: current
- name: Purchases
- parent_id: account_pos_account_minimalchart
- parent_left: 8
- parent_right: 9
- type: other
- user_type: account_account_type_expense0
--
- I create Sales Account.
--
- !record {model: account.account, id: account_pos_account_sales}:
- code: Sale
- company_id: base.main_company
- currency_mode: current
- name: Sales
- parent_id: account_pos_account_minimalchart
- parent_left: 10
- parent_right: 11
- type: other
- user_type: account_account_type_income0
--
- I create Purchase Journal - (test).
--
- !record {model: account.journal, id: account_pos_account_journal_purchasejournal}:
- code: PUJ
- company_id: base.main_company
- default_credit_account_id: account_pos_account_purchases
- default_debit_account_id: account_pos_account_purchases
- name: Purchase Journal - (test)
- sequence_id: account.sequence_purchase_journal
- type: purchase
- view_id: account.account_journal_view
--
- I create Sale Journal.
--
- !record {model: account.journal, id: account_pos_account_journal_salejournal}:
- code: SJ
- company_id: base.main_company
- default_credit_account_id: account_pos_account_sales
- default_debit_account_id: account_pos_account_sales
- name: Sale Journal
- sequence_id: account.sequence_sale_journal
- type: sale
- view_id: account.account_journal_view
--
- I create Bank Journal.
--
- !record {model: account.journal, id: account_pos_account_journal_bankjournal}:
- code: BNK
- company_id: base.main_company
- default_credit_account_id: account_pos_account_cash
- default_debit_account_id: account_pos_account_cash
- name: Bank Journal
- sequence_id: account.sequence_journal
- type: cash
- view_id: account.account_journal_bank_view
--
- I create property for account payable.
--
- !record {model: ir.property, id: ir_property_propertyaccountexpensecateg0}:
- company_id: base.main_company
- fields_id: account.field_res_partner_property_account_payable
- name: property_account_expense_categ
- value_reference: account.account,5
--
- I create property for account receivable.
--
- !record {model: ir.property, id: ir_property_propertyaccountincomecateg0}:
- company_id: base.main_company
- fields_id: account.field_res_partner_property_account_receivable
- name: property_account_income_categ
- value_reference: account.account,6
--
- I create Partner category Customers.
--
- !record {model: res.partner.category, id: res_partner_category_customers0}:
- name: Customers
--
- I create partner
--
- !record {model: res.partner, id: res_partner_cleartrail0}:
- category_id:
- - res_partner_category_customers0
- name: Cleartrail
--
- I create partner address.
--
- !record {model: res.partner.address, id: res_partner_address_1}:
- partner_id: res_partner_cleartrail0
- street: onam plaza, 14 B palasia A B Road
- type: contact
--
- I create partner invoice address.
--
- !record {model: res.partner.address, id: res_partner_address_2}:
- partner_id: res_partner_cleartrail0
- type: invoice
--
- I create partner delivery address.
--
- !record {model: res.partner.address, id: res_partner_address_3}:
- partner_id: res_partner_cleartrail0
- street: sangam house 15 B palasia, A B Road
- type: delivery
--
- I create product category.
--
- !record {model: product.category, id: product_category_allproductssellable0}:
- name: Mobile Products Sellable
--
- I create partner.
--
- !record {model: res.partner, id: res_partner_microlinktechnologies0}:
- address:
- - street: Kailash Vaibhav, Parksite
- name: Micro Link Technologies
- property_account_payable: account_pos_account_payable
- property_account_receivable: account_pos_account_receivable
- supplier: true
--
- I create partner address .
--
- !record {model: res.partner.address, id: res_partner_address_0}:
- country_id: base.in
- partner_id: res_partner_microlinktechnologies0
- street: Ash House, Ash Road
- title: base.res_partner_title_miss
--
- I create product category .
--
- !record {model: product.category, id: product_category_services0}:
- name: Mobile Services
--
- I create product Samsung Mobile.
--
- !record {model: product.product, id: product_product_samsungmobile0}:
- categ_id: product_category_allproductssellable0
- cost_method: standard
- list_price: 170.0
- mes_type: fixed
- name: Samsung Mobile
- procure_method: make_to_order
- property_account_expense: account_pos_account_payable
- property_account_income: account_pos_account_receivable
- seller_delay: '1'
- standard_price: 160.0
- supply_method: produce
- type: product
- uom_id: product.product_uom_unit
- uom_po_id: product.product_uom_unit
--
- I create product category .
--
- !record {model: product.category, id: product_category_computer0}:
- name: Computer
--
- I create product HP Pavilion Desktop PCs
--
- !record {model: product.product, id: product_product_hppaviliondesktoppcs0}:
- categ_id: product_category_computer0
- cost_method: standard
- mes_type: fixed
- list_price: 1000.0
- name: HP Pavilion Desktop PCs
- procure_method: make_to_stock
- seller_ids:
- - delay: 1
- name: res_partner_microlinktechnologies0
- min_qty: 5.0
- supply_method: buy
- type: product
- uom_id: product.product_uom_unit
- uom_po_id: product.product_uom_unit
- property_account_expense: account_pos_account_payable
- property_account_income: account_pos_account_receivable
--
- I create New Order by adding the details of Salesman and "Product" as Samsung Mobile Quantity as 10.
--
- !record {model: pos.order, id: pos_order_pos0}:
- company_id: base.main_company
- date_order: !eval time.strftime('%Y-%m-%d %H:%M:%S')
- date_validity: !eval "(datetime.now() + timedelta(6*1)).strftime('%Y-%m-%d')"
- lines:
- - company_id: base.main_company
- name: Order Line/01
- notice: No Discount
- product_id: product_product_samsungmobile0
- qty: 10.0
- qty_rfd: 0.0
- partner_id: base.res_partner_agrolait
- name: POS/001
- price_type: tax_excluded
- pricelist_id: product.list0
- sale_journal: account.sales_journal
- shop_id: sale.shop
- user_salesman_id: base.user_root
--
- I add discount.
--
- !record {model: pos.discount, id: pos_discount_0}:
- discount: 5.0
- discount_notes: More then 5 product
--
- I Apply the discount.
--
- !python {model: pos.discount}: |
- self.apply_discount(cr, uid, [ref("pos_discount_0")], {"lang": "en_US", "active_model":
- "pos.order", "active_ids": [ref("pos_order_pos0")], "tz": False, "active_id":
- ref("pos_order_pos0"), })
--
- I open the register.
--
- !record {model: pos.open.statement, id: pos_open_statement_0}:
- {}
--
- I open the statement.
--
- !python {model: pos.open.statement}: |
- jou_obj = self.pool.get('account.journal')
- statement_obj = self.pool.get('account.bank.statement')
- cr.execute("SELECT DISTINCT journal_id FROM pos_journal_users "
- "WHERE user_id = %s ORDER BY journal_id"% (uid, ))
- jou_ids = map(lambda x1: x1[0], cr.fetchall())
- journal_ids = jou_obj.search(cr, uid, [('auto_cash', '=', True), ('type', '=', 'cash'), ('id', 'in', jou_ids)], context=context)
- ids = statement_obj.search(cr, uid, [('state', '=', 'open'), ('user_id', '=', uid), ('journal_id', 'in', journal_ids)], context=context)
- if not ids:
- self.open_statement(cr, uid, [ref("pos_open_statement_0")], {"lang": "en_US", "active_model":
- "ir.ui.menu", "active_ids": [ref("point_of_sale.menu_open_statement")], "tz":
- False, "active_id": ref("point_of_sale.menu_open_statement"), })
--
- I click on the "Make Payment" wizard.
--
- !record {model: pos.make.payment, id: pos_make_payment_0}:
- amount: 1615.0
- journal: 7
- payment_date: !eval time.strftime("%Y-%m-%d")
- payment_name: Payment
- product_id: product_product_hppaviliondesktoppcs0
- pricelist_id: product.list0
- partner_id: base.res_partner_agrolait
--
- I make the payment.
--
- !python {model: pos.make.payment}: |
- self.check(cr, uid, [ref("pos_make_payment_0")], {"lang": "en_US", "active_model":
- "pos.order", "active_ids": [ref("point_of_sale.pos_order_pos0")], "tz":
- False, "active_id": ref("point_of_sale.pos_order_pos0"), })
--
- I check the Statement lines are created automatically when payment is done.
--
- !python {model: pos.order}: |
- order=self.browse(cr,uid,ref("pos_order_pos0"))
- assert(order.statement_ids!=[]), "Statement lines not created"
--
- When I click on Return picking button , I get three option.
--
- 1. Cancel 2.Return Goods and Exchange 3.Return without Refund
--
- When I click on Return Goods and Exchange.
--
- Then it allows me to define the quantity of products, which will return to the stock.
--
- I click on Return Picking button.
--
- !record {model: pos.return, id: pos_return_0}:
- pos_moves_ids:
- - product_id: product_product_hppaviliondesktoppcs0
- quantity: 5.0
--
- I Return the product.
--
- !python {model: pos.return}: |
- self.create_returns(cr, uid, [ref("pos_return_0")], {"lang": "en_US", "active_model":
- "pos.order", "active_ids": [ref("point_of_sale.pos_order_pos0")], "tz":
- False, "active_id": ref("point_of_sale.pos_order_pos0"), })
--
- Then it allows me to define the quantity of products, which will return to the stock.
--
- I select the HP Pavilion Desktop PCs for exchange.
--
- !record {model: pos.add.product, id: pos_add_product_0}:
- product_id: product_product_hppaviliondesktoppcs0
- quantity: 5.0
--
- I click on close button.
--
- !python {model: pos.add.product}: |
- return_obj = self.pool.get('pos.return')
- context['active_ids'] = [ref("pos_order_pos0")]
- return_obj.view_init(cr, uid, [],context=context)
- self.close_action(cr, uid, [ref("pos_add_product_0")], {"lang": "en_US", "active_model":
- "pos.order", "active_ids": [ref("pos_order_pos0")], "tz": False, "active_id": ref("pos_order_pos0"),
- })
--
- I create payment.
--
- !record {model: pos.make.payment, id: pos_make_payment_1}:
- amount: 680.0
- journal: 7
- payment_date: !eval time.strftime("%Y-%m-%d")
- payment_name: Payment
- product_id: product_product_hppaviliondesktoppcs0
- pricelist_id: product.list0
- partner_id: base.res_partner_agrolait
--
- For payment, I click on Make Payment.
--
- !python {model: pos.make.payment}: |
- self.check(cr, uid, [ref("pos_make_payment_1")], {"lang": "en_US", "active_model":
- "pos.order", "active_ids": [ref("pos_order_pos0")], "tz":
- False, "active_id": ref("pos_order_pos0"), })
--
- To check the Return without Refund . I click button "Return without Refund ".
--
- !record {model: pos.return, id: pos_return_0}:
- {}
--
- The quantity which is selected in Return lines wizard is refunded.
--
- !python {model: pos.return}: |
- self.create_returns2(cr, uid, [ref("pos_return_0")], {"lang": "en_US", "active_model":
- "pos.order", "active_ids": [ref("pos_order_pos0")], "tz":
- False, "active_id": ref("pos_order_pos0"), })
--
- To Close order, I use the wizard "Sale Confirm".
--
- !record {model: pos.confirm, id: pos_confirm_0}:
- {}
--
- I close this order.
--
- !python {model: pos.confirm}: |
- self.action_confirm(cr, uid, [ref("pos_confirm_0")], {"lang": "en_US", "active_model":
- "pos.order", "active_ids": [ref("pos_order_pos0")], "tz": False, "active_id": ref("pos_order_pos0"),
- })
--
- I check order state is done.
--
- !python {model: pos.order}: |
- order=self.browse(cr,uid,ref("pos_order_pos0"))
- assert(order.state=='done'), "Order is not done"
diff --git a/addons/point_of_sale/wizard/__init__.py b/addons/point_of_sale/wizard/__init__.py
index 4a131d5894b..0985ae906be 100644
--- a/addons/point_of_sale/wizard/__init__.py
+++ b/addons/point_of_sale/wizard/__init__.py
@@ -19,10 +19,8 @@
#
##############################################################################
-import pos_add_product
import pos_confirm
import pos_discount
-import pos_get_sale
import pos_open_statement
import pos_close_statement
import pos_box_entries
@@ -30,15 +28,11 @@ import pos_box_out
import pos_details
import pos_sales_user
import pos_sales_user_today
-import pos_sales_user_current_user
-import all_closed_cashbox_of_the_day
import pos_receipt
import pos_payment_report_user
import pos_payment_report_date
import pos_payment_report
import pos_payment
-import pos_scan_product
-import pos_return
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/point_of_sale/wizard/all_closed_cashbox_of_the_day.py b/addons/point_of_sale/wizard/all_closed_cashbox_of_the_day.py
deleted file mode 100644
index 330668548e4..00000000000
--- a/addons/point_of_sale/wizard/all_closed_cashbox_of_the_day.py
+++ /dev/null
@@ -1,48 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-from osv import osv
-
-class all_closed_cashbox_of_the_day(osv.osv_memory):
- _name = 'all.closed.cashbox.of.the.day'
- _description = 'All closed cashbox of the day'
-
- def print_report(self, cr, uid, ids, context=None):
- """
- To get the date and print the report
- @param self: The object pointer.
- @param cr: A database cursor
- @param uid: ID of the user currently logged in
- @param context: A standard dictionary
- @return : retrun report
- """
- if context is None:
- context = {}
- datas = {'ids': context.get('active_ids', [])}
- return {
- 'type': 'ir.actions.report.xml',
- 'report_name': 'all.closed.cashbox.of.the.day',
- 'datas': datas,
- }
-
-all_closed_cashbox_of_the_day()
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
diff --git a/addons/point_of_sale/wizard/all_closed_cashbox_of_the_day.xml b/addons/point_of_sale/wizard/all_closed_cashbox_of_the_day.xml
deleted file mode 100644
index e78ef5c6d6a..00000000000
--- a/addons/point_of_sale/wizard/all_closed_cashbox_of_the_day.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
-
-
-
-
- all closed cashbox of the day
- all.closed.cashbox.of.the.day
- form
-
-
-
-
-
-
-
-
-
-
-
- All Cashboxes Of the day
- all.closed.cashbox.of.the.day
- form
- form
- new
-
-
-
-
diff --git a/addons/point_of_sale/wizard/pos_add_product.py b/addons/point_of_sale/wizard/pos_add_product.py
deleted file mode 100644
index dfbb96a4514..00000000000
--- a/addons/point_of_sale/wizard/pos_add_product.py
+++ /dev/null
@@ -1,98 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-from osv import osv, fields
-from tools.translate import _
-
-
-class add_product(osv.osv_memory):
- _name = 'pos.add.product'
- _description = 'Add Product'
-
- _columns = {
- 'product_id': fields.many2one('product.product', 'Product', required=True),
- 'quantity': fields.float('Quantity', required=True),
- }
- _defaults = {
- 'quantity': 1,
- }
-
- def select_product(self, cr, uid, ids, context=None):
- """
- To get the product and quantity and add in order .
- @param self: The object pointer.
- @param cr: A database cursor
- @param uid: ID of the user currently logged in
- @param context: A standard dictionary
- @return : Return the add product form again for adding more product
- """
- if context is None:
- context = {}
- this = self.browse(cr, uid, ids[0], context=context)
- record_id = context and context.get('active_id', False)
- assert record_id, _('Active ID is not found')
- if record_id:
- order_obj = self.pool.get('pos.order')
- order_obj.add_product(cr, uid, record_id, this.product_id.id, this.quantity, context=context)
- return {
- 'name': _('Add Product'),
- 'view_type': 'form',
- 'view_mode': 'form',
- 'res_model': 'pos.add.product',
- 'view_id': False,
- 'target': 'new',
- 'views': False,
- 'type': 'ir.actions.act_window',
- }
-
- def close_action(self, cr, uid, ids, context=None):
- """
- To get the product and Make the payment .
- @param self: The object pointer.
- @param cr: A database cursor
- @param uid: ID of the user currently logged in
- @param context: A standard dictionary
- @return : Return the Make Payment
- """
- if context is None:
- context = {}
- record_id = context and context.get('active_id', False)
- order_obj= self.pool.get('pos.order')
- this = self.browse(cr, uid, ids[0], context)
- order_obj.add_product(cr, uid, record_id, this.product_id.id, this.quantity, context=context)
-
- order_obj.write(cr, uid, [record_id], {'state': 'done'}, context=context)
- return {
- 'name': _('Make Payment'),
- 'context': context and context.get('active_id', False),
- 'view_type': 'form',
- 'view_mode': 'form',
- 'res_model': 'pos.make.payment',
- 'view_id': False,
- 'target': 'new',
- 'views': False,
- 'type': 'ir.actions.act_window',
- }
-
-add_product()
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
diff --git a/addons/point_of_sale/wizard/pos_add_product.xml b/addons/point_of_sale/wizard/pos_add_product.xml
deleted file mode 100644
index ac5fd1c6f65..00000000000
--- a/addons/point_of_sale/wizard/pos_add_product.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-
-
-
-
-
-
- Add Product
- pos.add.product
- form
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Add Product
- ir.actions.act_window
- pos.add.product
- form
- form
- new
-
-
-
-
diff --git a/addons/point_of_sale/wizard/pos_box_entries.py b/addons/point_of_sale/wizard/pos_box_entries.py
index dcc9779a903..0b417d8b1cf 100644
--- a/addons/point_of_sale/wizard/pos_box_entries.py
+++ b/addons/point_of_sale/wizard/pos_box_entries.py
@@ -37,14 +37,13 @@ def get_journal(self, cr, uid, context=None):
journal_obj = self.pool.get('account.journal')
statement_obj = self.pool.get('account.bank.statement')
- cr.execute("SELECT DISTINCT journal_id FROM pos_journal_users WHERE user_id = %s ORDER BY journal_id", (uid, ))
- j_ids = map(lambda x1: x1[0], cr.fetchall())
- ids = journal_obj.search(cr, uid, [('type', '=', 'cash'), ('id', 'in', j_ids)], context=context)
- obj_ids = statement_obj.search(cr, uid, [('state', '!=', 'confirm'), ('user_id', '=', uid), ('journal_id', 'in', ids)], context=context)
- res_obj = journal_obj.read(cr, uid, ids, ['journal_id'], context=context)
- res_obj = [(r1['id']) for r1 in res_obj]
+
+ j_ids = journal_obj.search(cr, uid, [('journal_user','=',1)], context=context)
+ obj_ids = statement_obj.search(cr, uid, [('state', '=', 'open'), ('user_id', '=', uid), ('journal_id', 'in', j_ids)], context=context)
res = statement_obj.read(cr, uid, obj_ids, ['journal_id'], context=context)
res = [(r['journal_id']) for r in res]
+ if not len(res):
+ raise osv.except_osv(_('Error !'), _('You do not have any open cash register. You must create a payment method or open a cash register.'))
res.insert(0, ('', ''))
return res
@@ -69,12 +68,11 @@ class pos_box_entries(osv.osv_memory):
return res
-
_columns = {
- 'name': fields.char('Description', size=32, required=True),
+ 'name': fields.char('Reason', size=32, required=True),
'journal_id': fields.selection(get_journal, "Cash Register", required=True),
'product_id': fields.selection(_get_income_product, "Operation", required=True),
- 'amount': fields.float('Amount', digits=(16, 2)),
+ 'amount': fields.float('Amount', digits=(16, 2), required=True),
'ref': fields.char('Ref', size=32),
}
_defaults = {
@@ -122,9 +120,6 @@ class pos_box_entries(osv.osv_memory):
vals['amount'] = data['amount'] or 0.0
vals['ref'] = "%s" % (data['ref'] or '')
vals['name'] = "%s: %s " % (product_obj.browse(cr, uid, data['product_id'], context=context).name, data['name'].decode('utf8'))
- address_u = res_obj.browse(cr, uid, uid, context=context).address_id
- if address_u:
- vals['partner_id'] = address_u.partner_id and address_u.partner_id.id or None
bank_statement.create(cr, uid, vals, context=context)
return {}
diff --git a/addons/point_of_sale/wizard/pos_box_entries.xml b/addons/point_of_sale/wizard/pos_box_entries.xml
index e0af60a1f73..2db10e36aa8 100644
--- a/addons/point_of_sale/wizard/pos_box_entries.xml
+++ b/addons/point_of_sale/wizard/pos_box_entries.xml
@@ -3,31 +3,31 @@
-
+ Box Entriespos.box.entriesform
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
- Box Entries
+ Put Money Inir.actions.act_windowpos.box.entriesform
@@ -35,5 +35,5 @@
new
-
+
diff --git a/addons/point_of_sale/wizard/pos_box_out.py b/addons/point_of_sale/wizard/pos_box_out.py
index 74f1a968bc7..b4298745c35 100644
--- a/addons/point_of_sale/wizard/pos_box_out.py
+++ b/addons/point_of_sale/wizard/pos_box_out.py
@@ -49,11 +49,10 @@ class pos_box_out(osv.osv_memory):
return res
_columns = {
- 'name': fields.char('Description', size=32, required=True),
+ 'name': fields.char('Description / Reason', size=32, required=True),
'journal_id': fields.selection(pos_box_entries.get_journal, "Cash Register", required=True),
'product_id': fields.selection(_get_expense_product, "Operation", required=True),
- 'amount': fields.float('Amount', digits=(16, 2)),
- 'ref': fields.char('Ref', size=32),
+ 'amount': fields.float('Amount', digits=(16, 2), required=True),
}
_defaults = {
'journal_id': 1,
@@ -81,18 +80,8 @@ class pos_box_out(osv.osv_memory):
sunday = (datetime.today() + relativedelta(weekday=6)).strftime('%Y-%m-%d')
done_statmt = statement_obj.search(cr, uid, [('date', '>=', monday+' 00:00:00'), ('date', '<=', sunday+' 23:59:59'), ('journal_id', '=', data['journal_id']), ('company_id', '=', curr_company), ('user_id', '=', uid)], context=context)
stat_done = statement_obj.browse(cr, uid, done_statmt, context=context)
- address_u = res_obj.browse(cr, uid, uid, context=context).address_id
am = 0.0
product = product_obj.browse(cr, uid, data['product_id'], context=context)
- amount_check = product.am_out or False
- for st in stat_done:
- for s in st.line_ids:
- if address_u and s.partner_id == address_u.partner_id and s.am_out:
- am += s.amount
- if (-data['amount'] or 0.0) + am < -(res_obj.browse(cr, uid, uid, context=context).company_id.max_diff or 0.0) and amount_check:
- val = (res_obj.browse(cr, uid, uid).company_id.max_diff or 0.0) + am
- raise osv.except_osv(_('Error !'), _('The maximum value you can still withdraw is exceeded. \n Remaining value is equal to %d ')%(val))
-
acc_id = product.property_account_income
if not acc_id:
raise osv.except_osv(_('Error !'), _('please check that account is set to %s')%(product.name))
@@ -115,13 +104,7 @@ class pos_box_out(osv.osv_memory):
if data['amount'] > 0:
amount = -data['amount']
vals['amount'] = amount
- if product.am_out:
- vals['am_out'] = True
- vals['ref'] = data['ref'] or ''
vals['name'] = "%s: %s " % (product.name, data['name'])
- address_u = res_obj.browse(cr, uid, uid, context=context).address_id
- if address_u:
- vals['partner_id'] = address_u.partner_id and address_u.partner_id.id or None
statement_line_obj.create(cr, uid, vals, context=context)
return {}
diff --git a/addons/point_of_sale/wizard/pos_box_out.xml b/addons/point_of_sale/wizard/pos_box_out.xml
index 4647b1e66a7..4f19a407a38 100644
--- a/addons/point_of_sale/wizard/pos_box_out.xml
+++ b/addons/point_of_sale/wizard/pos_box_out.xml
@@ -3,31 +3,31 @@
-
+ Box Outpos.box.outform
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
- Box Out
+ Take Money Outir.actions.act_windowpos.box.outform
@@ -35,5 +35,5 @@
new
-
+
diff --git a/addons/point_of_sale/wizard/pos_close_statement.py b/addons/point_of_sale/wizard/pos_close_statement.py
index 222338f6e10..92dee2f8e4c 100644
--- a/addons/point_of_sale/wizard/pos_close_statement.py
+++ b/addons/point_of_sale/wizard/pos_close_statement.py
@@ -38,27 +38,27 @@ class pos_close_statement(osv.osv_memory):
mod_obj = self.pool.get('ir.model.data')
statement_obj = self.pool.get('account.bank.statement')
journal_obj = self.pool.get('account.journal')
- cr.execute("SELECT DISTINCT journal_id FROM pos_journal_users "
- "WHERE user_id=%s ORDER BY journal_id", (uid, ))
- j_ids = map(lambda x1: x1[0], cr.fetchall())
- journal_ids = journal_obj.search(cr, uid, [('auto_cash', '=', True), ('type', '=', 'cash'), ('id', 'in', j_ids)], context=context)
- ids = statement_obj.search(cr, uid, [('state', '!=', 'confirm'), ('user_id', '=', uid), ('journal_id', 'in', journal_ids)], context=context)
- for journal in journal_obj.browse(cr, uid, journal_ids, context=context):
- if not ids:
- raise osv.except_osv(_('Message'), _('Cash registers are already closed.'))
- else:
- if not journal.check_dtls:
- statement_obj.button_confirm_cash(cr, uid, ids, context=context)
- tree_res = mod_obj.get_object_reference(cr, uid, 'account', 'view_bank_statement_tree')
+ j_ids = journal_obj.search(cr, uid, [('journal_user','=',1)], context=context)
+ ids = statement_obj.search(cr, uid, [('state', '!=', 'confirm'), ('user_id', '=', uid), ('journal_id', 'in', j_ids)], context=context)
+ if not ids:
+ raise osv.except_osv(_('Message'), _('Cash registers are already closed.'))
+ for statement in statement_obj.browse(cr, uid, ids, context=context):
+ statement_obj.write(cr, uid, [statement.id], {
+ 'balance_end_real': statement.balance_end
+ }, context=context)
+ if not statement.journal_id.check_dtls:
+ statement_obj.button_confirm_cash(cr, uid, [statement.id], context=context)
+
+ tree_res = mod_obj.get_object_reference(cr, uid, 'point_of_sale', 'view_cash_statement_pos_tree')
tree_id = tree_res and tree_res[1] or False
form_res = mod_obj.get_object_reference(cr, uid, 'account', 'view_bank_statement_form2')
form_id = form_res and form_res[1] or False
search_id = mod_obj.get_object_reference(cr, uid, 'point_of_sale', 'view_pos_confirm_cash_statement_filter')
-
+
return {
'domain': "[('id', 'in', " + str(ids) + ")]",
- 'name': 'Close Statements',
+ 'name': _('Close Cash Registers'),
'view_type': 'form',
'view_mode': 'tree, form',
'search_view_id': search_id and search_id[1] or False,
@@ -66,7 +66,6 @@ class pos_close_statement(osv.osv_memory):
'views': [(tree_id, 'tree'), (form_id, 'form')],
'type': 'ir.actions.act_window'
}
-
pos_close_statement()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/point_of_sale/wizard/pos_close_statement.xml b/addons/point_of_sale/wizard/pos_close_statement.xml
index 7a9a5a0e23d..61c984c873e 100644
--- a/addons/point_of_sale/wizard/pos_close_statement.xml
+++ b/addons/point_of_sale/wizard/pos_close_statement.xml
@@ -1,15 +1,16 @@
-
+
-
-
+
+ Close Statementspos.close.statementform
-
-
+
+
+
@@ -22,15 +23,14 @@
-
-
-
+
+
Close Cash Registerir.actions.act_window
@@ -38,6 +38,6 @@
formformnew
-
-
-
+
+
+
diff --git a/addons/point_of_sale/wizard/pos_confirm.py b/addons/point_of_sale/wizard/pos_confirm.py
index c55209650ca..c80f3ed1dd6 100644
--- a/addons/point_of_sale/wizard/pos_confirm.py
+++ b/addons/point_of_sale/wizard/pos_confirm.py
@@ -25,36 +25,21 @@ from osv import osv
class pos_confirm(osv.osv_memory):
_name = 'pos.confirm'
- _description = 'Point of Sale Confirm'
+ _description = 'Post POS Journal Entries'
def action_confirm(self, cr, uid, ids, context=None):
- """
- Confirm the order and close the sales.
- @param self: The object pointer.
- @param cr: A database cursor
- @param uid: ID of the user currently logged in
- @param context: A standard dictionary
- @return :Blank dictionary
- """
- if context is None:
- context = {}
- record_id = context and context.get('active_id', False)
- if record_id:
- if isinstance(record_id, (int, long)):
- record_id = [record_id]
- if record_id:
- order_obj = self.pool.get('pos.order')
-
- for order_id in order_obj.browse(cr, uid, record_id, context=context):
- if order_id.state == 'paid':
- order_obj.write(cr, uid, [order_id.id], {'journal_entry': True}, context=context)
- order_obj.create_account_move(cr, uid, [order_id.id], context=context)
-
- wf_service = netsvc.LocalService("workflow")
- for i in record_id:
- wf_service.trg_validate(uid, 'pos.order', i, 'done', cr)
+ wf_service = netsvc.LocalService("workflow")
+ order_obj = self.pool.get('pos.order')
+ ids = order_obj.search(cr, uid, [('state','=','paid')], context=context)
+ for order in order_obj.browse(cr, uid, ids, context=context):
+ todo = True
+ for line in order.statement_ids:
+ if line.statement_id.state <> 'confirm':
+ todo = False
+ break
+ if todo:
+ wf_service.trg_validate(uid, 'pos.order', order.id, 'done', cr)
return {}
-
pos_confirm()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/point_of_sale/wizard/pos_confirm.xml b/addons/point_of_sale/wizard/pos_confirm.xml
index 1ea769cae49..85b43bd115d 100644
--- a/addons/point_of_sale/wizard/pos_confirm.xml
+++ b/addons/point_of_sale/wizard/pos_confirm.xml
@@ -1,32 +1,37 @@
-
+
-
-
- Sale Confirm
+
+ Post Journal Entriespos.confirmform
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
- Sale Confirm
+ Post Journal Entriesir.actions.act_windowpos.confirmformformnew
-
-
-
\ No newline at end of file
+
+
+
diff --git a/addons/point_of_sale/wizard/pos_discount.py b/addons/point_of_sale/wizard/pos_discount.py
index 928fe396f0b..aadd85b48eb 100644
--- a/addons/point_of_sale/wizard/pos_discount.py
+++ b/addons/point_of_sale/wizard/pos_discount.py
@@ -23,34 +23,28 @@ from osv import osv, fields
class pos_discount(osv.osv_memory):
_name = 'pos.discount'
- _description = 'Add Discount'
-
+ _description = 'Add a Global Discount'
_columns = {
- 'discount': fields.float('Discount ', required=True),
- 'discount_notes': fields.char('Discount Notes', size= 128, required=True),
+ 'discount': fields.float('Discount (%)', required=True, digits=(16,2)),
}
_defaults = {
'discount': 5,
}
-
- def view_init(self, cr, uid, fields_list, context=None):
- """
- Creates view dynamically and adding fields at runtime.
- @param self: The object pointer.
- @param cr: A database cursor
- @param uid: ID of the user currently logged in
- @param context: A standard dictionary
- @return: New arch of view with new columns.
- """
- if context is None:
- context = {}
- super(pos_discount, self).view_init(cr, uid, fields_list, context=context)
- record_id = context and context.get('active_id', False) or False
- order = self.pool.get('pos.order').browse(cr, uid, record_id, context=context)
- if not order.lines:
- raise osv.except_osv(_('Error!'), _('No Order Lines'))
- True
+# def view_init(self, cr, uid, fields_list, context=None):
+# """
+# Creates view dynamically and adding fields at runtime.
+# @param self: The object pointer.
+# @param cr: A database cursor
+# @param uid: ID of the user currently logged in
+# @param context: A standard dictionary
+# @return: New arch of view with new columns.
+# """
+# if context is None:
+# context = {}
+# super(pos_discount, self).view_init(cr, uid, fields_list, context=context)
+# record_id = context and context.get('active_id', False) or False
+# True
def apply_discount(self, cr, uid, ids, context=None):
"""
@@ -70,33 +64,8 @@ class pos_discount(osv.osv_memory):
record_id = context and context.get('active_id', False)
if isinstance(record_id, (int, long)):
record_id = [record_id]
-
for order in order_ref.browse(cr, uid, record_id, context=context):
- for line in order.lines:
- company_discount = order.company_id.company_discount
- applied_discount = this.discount
-
- if applied_discount == 0.00:
- notice = 'No Discount'
- elif company_discount >= applied_discount:
- notice = 'Minimum Discount'
- else:
- notice = this.discount_notes
- res_new = {}
- if this.discount <= company_discount:
- res_new = {
- 'discount': this.discount,
- 'notice': notice,
- 'price_ded': line.price_unit * line.qty * (this.discount or 0) * 0.01 or 0.0
- }
- else:
- res_new = {
- 'discount': this.discount,
- 'notice': notice,
- 'price_ded': line.price_unit * line.qty * (this.discount or 0) * 0.01 or 0.0
- }
-
- order_line_ref.write(cr, uid, [line.id], res_new, context=context)
+ order_line_ref.write(cr, uid, [x.id for x in order.lines], {'discount':this.discount}, context=context)
return {}
pos_discount()
diff --git a/addons/point_of_sale/wizard/pos_discount.xml b/addons/point_of_sale/wizard/pos_discount.xml
index a0a7c534a95..bb198e29acf 100644
--- a/addons/point_of_sale/wizard/pos_discount.xml
+++ b/addons/point_of_sale/wizard/pos_discount.xml
@@ -1,22 +1,21 @@
-
+
-
-
+
+ Apply Discountpos.discountform
-
-
-
-
-
-
+
+
+
+
+
@@ -29,6 +28,6 @@
formnew
-
-
-
\ No newline at end of file
+
+
+
diff --git a/addons/point_of_sale/wizard/pos_get_sale.py b/addons/point_of_sale/wizard/pos_get_sale.py
deleted file mode 100644
index 48bd89bce7f..00000000000
--- a/addons/point_of_sale/wizard/pos_get_sale.py
+++ /dev/null
@@ -1,81 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-from osv import osv, fields
-from tools.translate import _
-
-
-class pos_get_sale(osv.osv_memory):
- _name = 'pos.get.sale'
- _description = 'Get From Sale'
-
- _columns = {
- 'picking_id': fields.many2one('stock.picking', 'Sale Order', domain=[('state', 'in', ('assigned', 'confirmed')), ('type', '=', 'out')], context="{'contact_display': 'partner'}", required=True),
- }
-
- def sale_complete(self, cr, uid, ids, context=None):
- """
- Select the picking order and add the in Point of sale order
- @param self: The object pointer.
- @param cr: A database cursor
- @param uid: ID of the user currently logged in
- @param context: A standard dictionary
- @return : nothing
- """
- proxy_pos = self.pool.get('pos.order')
- proxy_pick = self.pool.get('stock.picking')
- proxy_order_line = self.pool.get('pos.order.line')
- if context is None:
- context = {}
- this = self.browse(cr, uid, ids[0], context=context)
- record_id = context and context.get('active_id', False)
-
- if record_id:
- order = proxy_pos.browse(cr, uid, record_id, context=context)
- if order.state in ('paid', 'invoiced'):
- raise osv.except_osv(_('UserError '), _("You can't modify this order. It has already been paid"))
-
- for pick in proxy_pick.browse(cr, uid, [this.picking_id.id], context=context):
- proxy_pos.write(cr, uid, record_id, {
- 'picking_id': this.picking_id.id,
- 'partner_id': pick.address_id and pick.address_id.partner_id.id
- }, context=context)
-
- order = proxy_pick.write(cr, uid, [this.picking_id.id], {
- 'invoice_state': 'none',
- 'pos_order': record_id
- }, context=context)
-
- for line in pick.move_lines:
- proxy_order_line.create(cr, uid, {
- 'name': line.sale_line_id.name,
- 'order_id': record_id,
- 'qty': line.product_qty,
- 'product_id': line.product_id.id,
- 'price_unit': line.sale_line_id.price_unit,
- 'discount': line.sale_line_id.discount,
- }, context=context)
- return {}
-
-pos_get_sale()
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
diff --git a/addons/point_of_sale/wizard/pos_get_sale.xml b/addons/point_of_sale/wizard/pos_get_sale.xml
deleted file mode 100644
index 9a28da548d2..00000000000
--- a/addons/point_of_sale/wizard/pos_get_sale.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
-
-
-
- Open Sale Order
- pos.get.sale
- form
-
-
-
-
-
-
-
-
-
-
-
-
- Select an Open Sale Order
- ir.actions.act_window
- pos.get.sale
- form
- form
- new
-
-
-
-
\ No newline at end of file
diff --git a/addons/point_of_sale/wizard/pos_open_statement.py b/addons/point_of_sale/wizard/pos_open_statement.py
index 241f0a6e1d0..47c5348943b 100644
--- a/addons/point_of_sale/wizard/pos_open_statement.py
+++ b/addons/point_of_sale/wizard/pos_open_statement.py
@@ -42,46 +42,48 @@ class pos_open_statement(osv.osv_memory):
journal_obj = self.pool.get('account.journal')
if context is None:
context = {}
- company_id = self.pool.get('res.users').browse(cr, uid, uid, context=context).company_id.id
- cr.execute("SELECT DISTINCT journal_id FROM pos_journal_users "
- "WHERE user_id = %s ORDER BY journal_id"% (uid, ))
- j_ids = map(lambda x1: x1[0], cr.fetchall())
- journal_ids = journal_obj.search(cr, uid, [('auto_cash', '=', True), ('type', '=', 'cash'), ('id', 'in', j_ids)], context=context)
- for journal in journal_obj.browse(cr, uid, journal_ids, context=context):
+ st_ids = []
+ j_ids = journal_obj.search(cr, uid, [('journal_user','=',1)], context=context)
+
+ for journal in journal_obj.browse(cr, uid, j_ids, context=context):
ids = statement_obj.search(cr, uid, [('state', '!=', 'confirm'), ('user_id', '=', uid), ('journal_id', '=', journal.id)], context=context)
if len(ids):
- raise osv.except_osv(_('Message'), _('You can not open a Cashbox for "%s".\nPlease close its related cash register.') %(journal.name))
+ st_ids += ids
+ continue
- number = ''
if journal.sequence_id:
- number = sequence_obj.get_id(cr, uid, journal.sequence_id.id)
+ number = sequence_obj.next_by_id(cr, uid, journal.sequence_id.id)
else:
- number = sequence_obj.get(cr, uid, 'account.cash.statement')
+ number = sequence_obj.next_by_code(cr, uid, 'account.cash.statement')
- data.update({'journal_id': journal.id,
- 'company_id': company_id,
- 'user_id': uid,
- 'state': 'draft',
- 'name': number })
+ data.update({
+ 'journal_id': journal.id,
+ 'user_id': uid,
+ 'state': 'draft',
+ 'name': number
+ })
statement_id = statement_obj.create(cr, uid, data, context=context)
- statement_obj.button_open(cr, uid, [statement_id], context)
+ st_ids.append(statement_id)
- tree_res = mod_obj.get_object_reference(cr, uid, 'account', 'view_bank_statement_tree')
+ if journal.auto_cash:
+ statement_obj.button_open(cr, uid, [statement_id], context)
+
+ tree_res = mod_obj.get_object_reference(cr, uid, 'point_of_sale', 'view_cash_statement_pos_tree')
tree_id = tree_res and tree_res[1] or False
form_res = mod_obj.get_object_reference(cr, uid, 'account', 'view_bank_statement_form2')
form_id = form_res and form_res[1] or False
search_id = mod_obj.get_object_reference(cr, uid, 'point_of_sale', 'view_pos_open_cash_statement_filter')
return {
- 'domain': "[('state', '=', 'open'),('user_id', '=', "+ str(uid) +")]",
- 'name': 'Open Statement',
+ 'domain': "[('id', 'in',[ "+','.join(map(str,st_ids))+"])]",
+ 'name': _('Open Cash Registers'),
'view_type': 'form',
'view_mode': 'tree, form',
'search_view_id': search_id and search_id[1] or False ,
'res_model': 'account.bank.statement',
'views': [(tree_id, 'tree'), (form_id, 'form')],
- 'context': {'search_default_open': 1},
+ 'context': {},
'type': 'ir.actions.act_window'
}
pos_open_statement()
diff --git a/addons/point_of_sale/wizard/pos_open_statement.xml b/addons/point_of_sale/wizard/pos_open_statement.xml
index 870d8f71e47..54a66c3c5f7 100644
--- a/addons/point_of_sale/wizard/pos_open_statement.xml
+++ b/addons/point_of_sale/wizard/pos_open_statement.xml
@@ -3,31 +3,31 @@
-
+ Open Statementspos.open.statementform
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
-
+ Open Cash Register
@@ -38,5 +38,5 @@
new
-
-
+
+
diff --git a/addons/point_of_sale/wizard/pos_payment.py b/addons/point_of_sale/wizard/pos_payment.py
index ea5bd2639d7..adf59e3cbce 100644
--- a/addons/point_of_sale/wizard/pos_payment.py
+++ b/addons/point_of_sale/wizard/pos_payment.py
@@ -29,188 +29,44 @@ import pos_box_entries
class pos_make_payment(osv.osv_memory):
_name = 'pos.make.payment'
_description = 'Point of Sale Payment'
-
- def default_get(self, cr, uid, fields, context=None):
- """
- To get default values for the object.
- @param self: The object pointer.
- @param cr: A database cursor
- @param uid: ID of the user currently logged in
- @param fields: List of fields for which we want default values
- @param context: A standard dictionary
- @return: A dictionary which of fields with values.
- """
- if context is None:
- context = {}
- journal_obj = self.pool.get('account.journal')
- order_obj = self.pool.get('pos.order')
- res = super(pos_make_payment, self).default_get(cr, uid, fields, context=context)
- active_id = context and context.get('active_id', False)
- if active_id:
- cr.execute("SELECT DISTINCT journal_id FROM pos_journal_users "
- "WHERE user_id = %d ORDER BY journal_id"% (uid, ))
- j_ids = map(lambda x1: x1[0], cr.fetchall())
- journal = journal_obj.search(cr, uid, [('type', '=', 'cash'), ('id', 'in', j_ids)], context=context)
- journal = journal and journal[0] or False
- order = order_obj.browse(cr, uid, active_id, context=context)
- #get amount to pay
- amount = order.amount_total - order.amount_paid
- if amount <= 0.0:
- context.update({'flag': True})
- order_obj.action_paid(cr, uid, [active_id], context)
- elif order.amount_paid > 0.0:
- order_obj.write(cr, uid, [active_id], {'state': 'advance'}, context=context)
- invoice_wanted_checked = False
-
- current_date = time.strftime('%Y-%m-%d')
-
- if 'journal' in fields:
- res.update({'journal': journal})
- if 'amount' in fields:
- res.update({'amount': amount})
- if 'invoice_wanted' in fields:
- res.update({'invoice_wanted': invoice_wanted_checked})
- if 'payment_date' in fields:
- res.update({'payment_date': current_date})
- if 'payment_name' in fields:
- res.update({'payment_name': 'Payment'})
- if 'partner_id' in fields:
- res.update({'partner_id': order.partner_id.id or False})
- if 'pricelist_id' in fields:
- res.update({'pricelist_id': order.pricelist_id.id or False})
- return res
-
- def view_init(self, cr, uid, fields_list, context=None):
- if context is None:
- context = {}
- super(pos_make_payment, self).view_init(cr, uid, fields_list, context=context)
- active_id = context and context.get('active_id', False) or False
- if active_id:
- order = self.pool.get('pos.order').browse(cr, uid, active_id, context=context)
- if not order.lines:
- raise osv.except_osv(_('Error!'),_('No order lines defined for this sale '))
- return True
-
- def fields_view_get(self, cr, uid, view_id=None, view_type='form', context=None, toolbar=False, submenu=False):
- """
- Changes the view dynamically
-
- @param self: The object pointer.
- @param cr: A database cursor
- @param uid: ID of the user currently logged in
- @param context: A standard dictionary
-
- @return: New arch of view.
-
- """
- result = super(pos_make_payment, self).fields_view_get(cr, uid, view_id=view_id, view_type=view_type, context=context, toolbar=toolbar,submenu=False)
- if context is None:
- context = {}
- active_model = context.get('active_model')
- active_id = context and context.get('active_id', False) or False
- if not active_id or (active_model and active_model != 'pos.order'):
- return result
-
- order = self.pool.get('pos.order').browse(cr, uid, active_id, context=context)
- if order.amount_total == order.amount_paid:
- result['arch'] = """
-
-
-
-
-
-
-
- """
- return result
-
- def onchange_product_id(self, cr, uid, ids, product_id, amount):
- """ Changes amount if product_id changes.
- @param product_id: Changed product_id
- @param amount: Amount to be paid
- @return: Dictionary of changed values
- """
- prod_obj = self.pool.get('product.product')
- if product_id:
- product = prod_obj.browse(cr, uid, product_id)
- amount = product.list_price
- return {'value': {'amount': amount}}
-
def check(self, cr, uid, ids, context=None):
"""Check the order:
if the order is not paid: continue payment,
- if the order is paid print invoice (if wanted) or ticket.
+ if the order is paid print ticket.
"""
+ context = context or {}
order_obj = self.pool.get('pos.order')
obj_partner = self.pool.get('res.partner')
- if context is None:
- context = {}
active_id = context and context.get('active_id', False)
+
order = order_obj.browse(cr, uid, active_id, context=context)
amount = order.amount_total - order.amount_paid
- data = self.read(cr, uid, ids, context=context)[0]
- for m2o_field in ['product_id','pricelist_id','partner_id']:
- data[m2o_field] = data.get(m2o_field, False) and data[m2o_field][0] or False
- if data['is_acc']:
- amount = self.pool.get('product.product').browse(cr, uid, data['product_id'], context=context).list_price
+ data = self.read(cr, uid, ids, context=context)[0]
+ # this is probably a problem of osv_memory as it's not compatible with normal OSV's
+ #data['journal'] = data['journal'][0]
if amount != 0.0:
- order_obj.write(cr, uid, [active_id], {'invoice_wanted': data['invoice_wanted'], 'partner_id': data['partner_id']}, context=context)
order_obj.add_payment(cr, uid, active_id, data, context=context)
if order_obj.test_paid(cr, uid, [active_id]):
- if data['partner_id'] and data['invoice_wanted']:
- partner = obj_partner.browse(cr, uid, data['partner_id'], context=context)
- if not partner.address:
- raise osv.except_osv(_('Error!'),_("Customer doesn't have an address to make the invoice"))
- order_obj.action_invoice(cr, uid, [active_id], context=context)
- order_obj.create_picking(cr, uid, [active_id], context=context)
- if context.get('return', False):
- order_obj.write(cr, uid, [active_id], {'state':'done'}, context=context)
- else:
- order_obj.write(cr, uid, [active_id],{'state':'paid'}, context=context)
- return self.create_invoice(cr, uid, ids, context=context)
- else:
- context.update({'flag': True})
- order_obj.action_paid(cr, uid, [active_id], context=context)
- if context.get('return', False):
- order_obj.write(cr, uid, [active_id], {'state':'done'}, context=context)
- else:
- order_obj.write(cr, uid, [active_id], {'state':'paid'}, context=context)
- return self.print_report(cr, uid, ids, context=context)
+ order_obj.action_paid(cr, uid, [active_id], context=context)
+ return self.print_report(cr, uid, ids, context=context)
- context.update({'flag': True})
- # Todo need to check
- order_obj.action_paid(cr, uid, [active_id], context=context)
- order_obj.write(cr, uid, [active_id], {'state': 'advance'}, context=context)
- return self.print_report(cr, uid, ids, context=context)
+ return self.launch_payment(cr, uid, ids, context=context)
-
- def create_invoice(self, cr, uid, ids, context=None):
- """
- Create a invoice
- """
- if context is None:
- context = {}
- active_ids = [context and context.get('active_id', False)]
- datas = {'ids': active_ids}
+ def launch_payment(self, cr, uid, ids, context=None):
return {
- 'type' : 'ir.actions.report.xml',
- 'report_name':'pos.invoice',
- 'datas' : datas,
+ 'name': _('Paiement'),
+ 'view_type': 'form',
+ 'view_mode': 'form',
+ 'res_model': 'pos.make.payment',
+ 'view_id': False,
+ 'target': 'new',
+ 'views': False,
+ 'type': 'ir.actions.act_window',
}
def print_report(self, cr, uid, ids, context=None):
- """
- @summary: To get the date and print the report
- @param self: The object pointer.
- @param cr: A database cursor
- @param uid: ID of the user currently logged in
- @param context: A standard dictionary
- @return : retrun report
- """
- if context is None:
- context = {}
active_id = context.get('active_id', [])
datas = {'ids' : [active_id]}
return {
@@ -219,19 +75,29 @@ class pos_make_payment(osv.osv_memory):
'datas': datas,
}
+ def _default_journal(self, cr, uid, context=None):
+ res = pos_box_entries.get_journal(self, cr, uid, context=context)
+ return len(res)>1 and res[1][0] or False
+
+ def _default_amount(self, cr, uid, context=None):
+ order_obj = self.pool.get('pos.order')
+ active_id = context and context.get('active_id', False)
+ if active_id:
+ order = order_obj.browse(cr, uid, active_id, context=context)
+ return order.amount_total - order.amount_paid
+ return False
+
_columns = {
- 'journal': fields.selection(pos_box_entries.get_journal, "Cash Register", required=True),
- 'product_id': fields.many2one('product.product', "Advance"),
+ 'journal': fields.selection(pos_box_entries.get_journal, "Payment Mode", required=True),
'amount': fields.float('Amount', digits=(16,2), required= True),
- 'payment_name': fields.char('Payment name', size=32, required=True),
- 'payment_date': fields.date('Payment date', required=True),
- 'is_acc': fields.boolean('Advance'),
- 'invoice_wanted': fields.boolean('Invoice'),
- 'num_sale': fields.char('Num.File', size=32),
- 'pricelist_id': fields.many2one('product.pricelist', 'Pricelist'),
- 'partner_id': fields.many2one('res.partner', 'Customer'),
+ 'payment_name': fields.char('Payment Reference', size=32),
+ 'payment_date': fields.date('Payment Date', required=True),
+ }
+ _defaults = {
+ 'payment_date': time.strftime('%Y-%m-%d %H:%M:%S'),
+ 'amount': _default_amount,
+ 'journal': _default_journal
}
pos_make_payment()
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/point_of_sale/wizard/pos_payment.xml b/addons/point_of_sale/wizard/pos_payment.xml
index a6757be6b78..212c0d8c412 100644
--- a/addons/point_of_sale/wizard/pos_payment.xml
+++ b/addons/point_of_sale/wizard/pos_payment.xml
@@ -2,57 +2,37 @@
-
-
-
+ Add payment :pos.make.paymentform
-
-
-
-
- Sale by Users
- ir.actions.act_window
- pos.sales.user.today
- form
- form
- new
-
-
-
-
\ No newline at end of file
diff --git a/addons/point_of_sale/wizard/pos_sales_user_current_user.xml b/addons/point_of_sale/wizard/pos_sales_user_current_user.xml
deleted file mode 100644
index e51ecfee760..00000000000
--- a/addons/point_of_sale/wizard/pos_sales_user_current_user.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
-
-
- Sales for Current User
- pos.sales.user.today.current_user
- form
-
-
-
-
-
-
-
-
-
-
-
-
- Sales for Current User
- ir.actions.act_window
- pos.sales.user.today.current_user
- form
- form
- new
-
-
-
-
-
\ No newline at end of file
diff --git a/addons/point_of_sale/wizard/pos_scan_product.py b/addons/point_of_sale/wizard/pos_scan_product.py
deleted file mode 100644
index 8e1e4aace86..00000000000
--- a/addons/point_of_sale/wizard/pos_scan_product.py
+++ /dev/null
@@ -1,51 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-from osv import osv,fields
-
-
-class pos_scan_product(osv.osv_memory):
- _name = 'pos.scan.product'
- _description = 'Scan product'
-
- _columns = {
- 'gencod': fields.char('Barcode', size=13, required=True)
- }
-
- def scan(self, cr, uid, ids, context=None):
- """
- To get the gencod and scan product
- @param self: The object pointer.
- @param cr: A database cursor
- @param uid: ID of the user currently logged in
- @param context: A standard dictionary
- @return : retrun gencod
- """
- if context is None:
- context = {}
- data=self.read(cr, uid, ids)[0]
- record_id = context and context.get('active_id', False)
- self. pool.get('pos.order.line')._scan_product(cr, uid, data['gencod'], 1, record_id)
- return {'gencod': False}
-
-pos_scan_product()
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
diff --git a/addons/point_of_sale/wizard/pos_scan_product_view.xml b/addons/point_of_sale/wizard/pos_scan_product_view.xml
deleted file mode 100644
index 3957c6c0415..00000000000
--- a/addons/point_of_sale/wizard/pos_scan_product_view.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
- Scan product
- pos.scan.product
- form
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Scan product
- ir.actions.act_window
- pos.scan.product
- form
- form
- new
-
-
-
-
-
\ No newline at end of file
diff --git a/addons/portal/__openerp__.py b/addons/portal/__openerp__.py
index 6bb69cd91c9..1b3be74c79f 100644
--- a/addons/portal/__openerp__.py
+++ b/addons/portal/__openerp__.py
@@ -24,7 +24,7 @@
'version' : "1.0",
'depends' : ["base", "share"],
'author' : "OpenERP SA",
- 'category': 'Tools',
+ 'category': 'Hidden',
'description': """
This module defines 'portals' to customize the access to your OpenERP database
for external users.
diff --git a/addons/portal/i18n/fr.po b/addons/portal/i18n/fr.po
index 99499a00149..19e685ebae1 100644
--- a/addons/portal/i18n/fr.po
+++ b/addons/portal/i18n/fr.po
@@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2011-07-04 14:16+0000\n"
-"PO-Revision-Date: 2011-07-11 09:51+0000\n"
-"Last-Translator: FULL NAME \n"
+"PO-Revision-Date: 2011-09-26 12:28+0000\n"
+"Last-Translator: Numérigraphe \n"
"Language-Team: French \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 05:59+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-09-27 04:47+0000\n"
+"X-Generator: Launchpad (build 14028)\n"
#. module: portal
#: code:addons/portal/wizard/share_wizard.py:55
@@ -73,7 +73,7 @@ msgstr ""
#. module: portal
#: constraint:res.users:0
msgid "The chosen company is not in the allowed companies for this user"
-msgstr ""
+msgstr "La société choisie n'est pas autorisée pour cet utilisateur."
#. module: portal
#: view:res.portal:0
@@ -207,12 +207,12 @@ msgstr ""
#: view:share.wizard:0
#: field:share.wizard,user_ids:0
msgid "Existing users"
-msgstr ""
+msgstr "Utilisateurs existants"
#. module: portal
#: field:res.portal.wizard.user,wizard_id:0
msgid "Wizard"
-msgstr ""
+msgstr "Assistant"
#. module: portal
#: help:res.portal.wizard.user,user_email:0
@@ -224,12 +224,12 @@ msgstr ""
#. module: portal
#: field:res.portal.wizard.user,lang:0
msgid "Language"
-msgstr ""
+msgstr "Langue"
#. module: portal
#: field:res.portal,url:0
msgid "URL"
-msgstr ""
+msgstr "URL"
#. module: portal
#: view:res.portal:0
@@ -249,7 +249,7 @@ msgstr "Annuler"
#. module: portal
#: view:res.portal:0
msgid "Website"
-msgstr ""
+msgstr "Site web"
#. module: portal
#: view:res.portal:0
@@ -271,7 +271,7 @@ msgstr ""
#. module: portal
#: model:ir.model,name:portal.model_res_users
msgid "res.users"
-msgstr ""
+msgstr "res.users"
#. module: portal
#: constraint:res.portal.wizard.user:0
@@ -288,7 +288,7 @@ msgstr ""
#. module: portal
#: model:ir.model,name:portal.model_ir_ui_menu
msgid "ir.ui.menu"
-msgstr ""
+msgstr "ir.ui.menu"
#. module: portal
#: help:res.portal,group_id:0
@@ -323,7 +323,7 @@ msgstr ""
#. module: portal
#: field:res.portal.widget,sequence:0
msgid "Sequence"
-msgstr ""
+msgstr "Séquence"
#. module: portal
#: field:res.users,partner_id:0
@@ -386,7 +386,7 @@ msgstr ""
#. module: portal
#: field:res.portal.wizard.user,partner_id:0
msgid "Partner"
-msgstr ""
+msgstr "Partenaire"
#. module: portal
#: model:ir.actions.act_window,help:portal.portal_list_action
diff --git a/addons/process/__openerp__.py b/addons/process/__openerp__.py
index 4af045ff6bb..e35ae2b06ae 100644
--- a/addons/process/__openerp__.py
+++ b/addons/process/__openerp__.py
@@ -23,7 +23,7 @@
{
'name': 'Enterprise Process',
'version': '1.0',
- 'category': 'Tools',
+ 'category': 'Hidden',
'description': """
This module shows the basic processes involved in the selected modules and in the sequence they occur.
======================================================================================================
diff --git a/addons/process/process.py b/addons/process/process.py
index 72c8bce10b4..524a3236e7b 100644
--- a/addons/process/process.py
+++ b/addons/process/process.py
@@ -84,12 +84,12 @@ class process_process(osv.osv):
process = pool.get('process.process').browse(cr, uid, id, context=context)
name = process.name
- resource = None
+ resource = False
state = 'N/A'
expr_context = {}
states = {}
- perm = None
+ perm = False
if res_model:
states = dict(pool.get(res_model).fields_get(cr, uid, context=context).get('state', {}).get('selection', {}))
@@ -242,7 +242,9 @@ class process_process(osv.osv):
for k, v in nodes.items():
y = v['y']
v['y'] = min(y - miny + 10, y)
-
+
+ nodes = dict([str(n_key), n_val] for n_key, n_val in nodes.iteritems())
+ transitions = dict([str(t_key), t_val] for t_key, t_val in transitions.iteritems())
return dict(name=name, resource=resource, state=state, perm=perm, notes=notes, nodes=nodes, transitions=transitions)
def copy(self, cr, uid, id, default=None, context=None):
diff --git a/addons/procurement/__openerp__.py b/addons/procurement/__openerp__.py
index e590163f8a7..87a766a009f 100644
--- a/addons/procurement/__openerp__.py
+++ b/addons/procurement/__openerp__.py
@@ -25,7 +25,7 @@
"version" : "1.0",
"author" : "OpenERP SA",
"website" : "http://www.openerp.com",
- "category" : "Warehouse",
+ "category" : "Warehouse Management",
"depends" : ["base","process", "product", "stock"],
"description": """
This is the module for computing Procurements.
diff --git a/addons/procurement/procurement.py b/addons/procurement/procurement.py
index f05ca64144d..9b298915f12 100644
--- a/addons/procurement/procurement.py
+++ b/addons/procurement/procurement.py
@@ -165,6 +165,10 @@ class procurement_order(osv.osv):
"""
return all(procurement.move_id.state == 'cancel' for procurement in self.browse(cr, uid, ids, context=context))
+ #This Function is create to avoid a server side Error Like 'ERROR:tests.mrp:name 'check_move' is not defined'
+ def check_move(self, cr, uid, ids, context=None):
+ pass
+
def check_move_done(self, cr, uid, ids, context=None):
""" Checks if move is done or not.
@return: True or False.
diff --git a/addons/procurement/procurement_view.xml b/addons/procurement/procurement_view.xml
index b2f5e13b756..400412298cc 100644
--- a/addons/procurement/procurement_view.xml
+++ b/addons/procurement/procurement_view.xml
@@ -1,7 +1,7 @@
-
-
@@ -101,15 +101,14 @@
-
-
-
+
+
@@ -120,7 +119,7 @@
-
+
diff --git a/addons/product/__openerp__.py b/addons/product/__openerp__.py
index bcddcc93bdf..46740140bbe 100644
--- a/addons/product/__openerp__.py
+++ b/addons/product/__openerp__.py
@@ -24,7 +24,7 @@
"name" : "Products & Pricelists",
"version" : "1.1",
"author" : "OpenERP SA",
- "category" : "Warehouse",
+ "category" : "Hidden",
"depends" : ["base", "process", "decimal_precision"],
"init_xml" : [],
"demo_xml" : ["product_demo.xml"],
@@ -61,7 +61,7 @@ Print product labels with barcode.
'partner_view.xml',
'process/product_process.xml'
],
- 'test':['test/product_report.yml'],
+ 'test':['test/product_report.yml','test/product_test.yml'],
'installable': True,
'active': False,
'certificate': '0068861431437',
diff --git a/addons/product/pricelist.py b/addons/product/pricelist.py
index 81cec0e7d95..3c22b2838ef 100644
--- a/addons/product/pricelist.py
+++ b/addons/product/pricelist.py
@@ -160,30 +160,22 @@ class product_pricelist(osv.osv):
product_uom_obj = self.pool.get('product.uom')
supplierinfo_obj = self.pool.get('product.supplierinfo')
price_type_obj = self.pool.get('product.price.type')
- product_pricelist_version_obj = self.pool.get('product.pricelist.version')
# product.pricelist.version:
- if pricelist_ids:
- pricelist_version_ids = pricelist_ids
- else:
- # all pricelists:
- pricelist_version_ids = self.pool.get('product.pricelist').search(cr, uid, [], context=context)
+ if not pricelist_ids:
+ pricelist_ids = self.pool.get('product.pricelist').search(cr, uid, [], context=context)
- pricelist_version_ids = list(set(pricelist_version_ids))
- plversions_search_args = [
- ('pricelist_id', 'in', pricelist_version_ids),
- '|',
- ('date_start', '=', False),
- ('date_start', '<=', date),
- '|',
- ('date_end', '=', False),
- ('date_end', '>=', date),
- ]
-
- plversion_ids = product_pricelist_version_obj.search(cr, uid, plversions_search_args)
- if len(pricelist_version_ids) != len(plversion_ids):
- msg = "At least one pricelist has no active version !\nPlease create or activate one."
- raise osv.except_osv(_('Warning !'), _(msg))
+ pricelist_version_ids = self.pool.get('product.pricelist.version').search(cr, uid, [
+ ('pricelist_id', 'in', pricelist_ids),
+ '|',
+ ('date_start', '=', False),
+ ('date_start', '<=', date),
+ '|',
+ ('date_end', '=', False),
+ ('date_end', '>=', date),
+ ])
+ if len(pricelist_ids) != len(pricelist_version_ids):
+ raise osv.except_osv(_('Warning !'), _("At least one pricelist has no active version !\nPlease create or activate one."))
# product.product:
product_ids = [i[0] for i in products_by_qty_by_partner]
@@ -198,7 +190,7 @@ class product_pricelist(osv.osv):
results = {}
for product_id, qty, partner in products_by_qty_by_partner:
- for pricelist_id in pricelist_version_ids:
+ for pricelist_id in pricelist_ids:
price = False
tmpl_id = products_dict[product_id].product_tmpl_id and products_dict[product_id].product_tmpl_id.id or False
@@ -221,7 +213,7 @@ class product_pricelist(osv.osv):
'AND (min_quantity IS NULL OR min_quantity <= %s) '
'AND i.price_version_id = v.id AND v.pricelist_id = pl.id '
'ORDER BY sequence',
- (tmpl_id, product_id, plversion_ids[0], qty))
+ (tmpl_id, product_id, pricelist_version_ids[0], qty))
res1 = cr.dictfetchall()
uom_price_already_computed = False
for res in res1:
@@ -289,7 +281,7 @@ class product_pricelist(osv.osv):
if 'uom' in context and not uom_price_already_computed:
product = products_dict[product_id]
uom = product.uos_id or product.uom_id
- price = self.pool.get('product.uom')._compute_price(cr, uid, uom.id, price, context['uom'])
+ price = product_uom_obj._compute_price(cr, uid, uom.id, price, context['uom'])
if results.get(product_id):
results[product_id][pricelist_id] = price
diff --git a/addons/product/pricelist_view.xml b/addons/product/pricelist_view.xml
index f284dcbc47b..79e6773980c 100644
--- a/addons/product/pricelist_view.xml
+++ b/addons/product/pricelist_view.xml
@@ -56,6 +56,7 @@
+
diff --git a/addons/product/product.py b/addons/product/product.py
index 863081a8155..7e7f7375e87 100644
--- a/addons/product/product.py
+++ b/addons/product/product.py
@@ -75,7 +75,7 @@ class product_uom(osv.osv):
_description = 'Product Unit of Measure'
def _compute_factor_inv(self, factor):
- return factor and round(1.0 / factor, 6) or 0.0
+ return factor and (1.0 / factor) or 0.0
def _factor_inv(self, cursor, user, ids, name, arg, context=None):
res = {}
@@ -100,7 +100,7 @@ class product_uom(osv.osv):
'factor': fields.float('Ratio', required=True,digits=(12, 12),
help='How many times this UoM is smaller than the reference UoM in this category:\n'\
'1 * (reference unit) = ratio * (this unit)'),
- 'factor_inv': fields.function(_factor_inv, digits_compute=dp.get_precision('Product UoM'),
+ 'factor_inv': fields.function(_factor_inv, digits=(12,12),
fnct_inv=_factor_inv_write,
string='Ratio',
help='How many times this UoM is bigger than the reference UoM in this category:\n'\
@@ -250,9 +250,9 @@ class product_template(osv.osv):
result[product.id] = {field:False}
result[product.id]['seller_delay'] = 1
if product.seller_ids:
- partner_list = sorted([(partner_id.sequence, partner_id)
+ partner_list = [(partner_id.sequence, partner_id)
for partner_id in product.seller_ids
- if partner_id and isinstance(partner_id.sequence, (int, long))])
+ if partner_id and isinstance(partner_id.sequence, (int, long))]
main_supplier = partner_list and partner_list[0] and partner_list[0][1] or False
result[product.id]['seller_delay'] = main_supplier and main_supplier.delay or 1
result[product.id]['seller_qty'] = main_supplier and main_supplier.qty or 0.0
@@ -291,7 +291,7 @@ class product_template(osv.osv):
'uom_po_id': fields.many2one('product.uom', 'Purchase Unit of Measure', required=True, help="Default Unit of Measure used for purchase orders. It must be in the same category than the default unit of measure."),
'uos_id' : fields.many2one('product.uom', 'Unit of Sale',
help='Used by companies that manage two units of measure: invoicing and inventory management. For example, in food industries, you will manage a stock of ham but invoice in Kg. Keep empty to use the default UOM.'),
- 'uos_coeff': fields.float('UOM -> UOS Coeff', digits=(16,4),
+ 'uos_coeff': fields.float('UOM -> UOS Coeff', digits_compute= dp.get_precision('Product UoS'),
help='Coefficient to convert UOM to UOS\n'
' uos = uom * coeff'),
'mes_type': fields.selection((('fixed', 'Fixed'), ('variable', 'Variable')), 'Measure Type', required=True),
@@ -460,6 +460,7 @@ class product_product(osv.osv):
'active': lambda *a: 1,
'price_extra': lambda *a: 0.0,
'price_margin': lambda *a: 1.0,
+ 'color': 0,
}
_name = "product.product"
@@ -486,8 +487,10 @@ class product_product(osv.osv):
'price_margin': fields.float('Variant Price Margin', digits_compute=dp.get_precision('Sale Price')),
'pricelist_id': fields.dummy(string='Pricelist', relation='product.pricelist', type='many2one'),
'name_template': fields.related('product_tmpl_id', 'name', string="Name", type='char', size=128, store=True),
+ 'color': fields.integer('Color Index'),
+ 'product_image': fields.binary('Image'),
}
-
+
def unlink(self, cr, uid, ids, context=None):
unlink_ids = []
unlink_product_tmpl_ids = []
@@ -713,24 +716,16 @@ class product_supplierinfo(osv.osv):
for supplier_info in self.browse(cr, uid, ids, context=context):
for field in fields:
result[supplier_info.id] = {field:False}
- if supplier_info.product_uom.id:
- qty = product_uom_pool._compute_qty(cr, uid, supplier_info.product_uom.id, supplier_info.min_qty, to_uom_id=supplier_info.product_id.uom_id.id)
- else:
- qty = supplier_info.min_qty
+ qty = supplier_info.min_qty
result[supplier_info.id]['qty'] = qty
return result
- def _get_uom_id(self, cr, uid, context=None):
- if context is None:
- context = {}
- return context.get('uom_id', False)
-
_columns = {
'name' : fields.many2one('res.partner', 'Supplier', required=True,domain = [('supplier','=',True)], ondelete='cascade', help="Supplier of this product"),
'product_name': fields.char('Supplier Product Name', size=128, help="This supplier's product name will be used when printing a request for quotation. Keep empty to use the internal one."),
'product_code': fields.char('Supplier Product Code', size=64, help="This supplier's product code will be used when printing a request for quotation. Keep empty to use the internal one."),
'sequence' : fields.integer('Sequence', help="Assigns the priority to the list of product supplier."),
- 'product_uom': fields.many2one('product.uom', string="Supplier UoM", help="Choose here the Unit of Measure in which the prices and quantities are expressed below."),
+ 'product_uom': fields.related('product_id', 'uom_po_id', type='many2one', relation='product.uom', string="Supplier UoM", readonly="1", help="This comes from the product form."),
'min_qty': fields.float('Minimal Quantity', required=True, help="The minimal quantity to purchase to this supplier, expressed in the supplier Product UoM if not empty, in the default unit of measure of the product otherwise."),
'qty': fields.function(_calc_qty, store=True, type='float', string='Quantity', multi="qty", help="This is a quantity which is converted into Default Uom."),
'product_id' : fields.many2one('product.template', 'Product', required=True, ondelete='cascade', select=True),
@@ -743,17 +738,7 @@ class product_supplierinfo(osv.osv):
'sequence': lambda *a: 1,
'delay': lambda *a: 1,
'company_id': lambda self,cr,uid,c: self.pool.get('res.company')._company_default_get(cr, uid, 'product.supplierinfo', context=c),
- 'product_uom': _get_uom_id,
}
- def _check_uom(self, cr, uid, ids, context=None):
- for supplier_info in self.browse(cr, uid, ids, context=context):
- if supplier_info.product_uom and supplier_info.product_uom.category_id.id <> supplier_info.product_id.uom_id.category_id.id:
- return False
- return True
-
- _constraints = [
- (_check_uom, 'Error: The default UOM and the Supplier Product UOM must be in the same category.', ['product_uom']),
- ]
def price_get(self, cr, uid, supplier_ids, product_id, product_qty=1, context=None):
"""
Calculate price from supplier pricelist.
diff --git a/addons/product/product_data.xml b/addons/product/product_data.xml
index 31e93f46d5f..023cb431382 100644
--- a/addons/product/product_data.xml
+++ b/addons/product/product_data.xml
@@ -164,5 +164,9 @@ parameter) will see those record just disappear.
Product UoM
+
+ Product UoS
+
+
diff --git a/addons/product/product_view.xml b/addons/product/product_view.xml
index a50a7b404e2..35798ce939d 100644
--- a/addons/product/product_view.xml
+++ b/addons/product/product_view.xml
@@ -69,7 +69,7 @@
+
+
+
+
+
+
Productsir.actions.act_window
@@ -204,12 +269,27 @@
Productsir.actions.act_windowproduct.product
+ tree,form,kanbanform{"search_default_filter_to_sell":1}You must define a Product for everything you buy or sell. Products can be raw materials, stockable products, consumables or services. The Product form contains detailed information about your products related to procurement logistics, sales price, product category, suppliers and so on.
+
+
+
+ tree
+
+
+
+
+
+
+ form
+
+
+
diff --git a/addons/product/test/product_test.yml b/addons/product/test/product_test.yml
new file mode 100644
index 00000000000..f19b6a4a63c
--- /dev/null
+++ b/addons/product/test/product_test.yml
@@ -0,0 +1,36 @@
+-
+ In order to test product,I start by creating a 20KG UOM for 'Sugar'
+-
+ !record {model: product.uom, id: product_20k_uom_sugar}:
+ name: 20KG
+ uom_type: bigger
+ category_id: product.product_uom_categ_kgm
+ rounding: 0.010
+ factor_inv: 20
+-
+ I create a 10KG UOM for 'Sugar'
+-
+ !record {model: product.uom, id: product_10k_uom_sugar}:
+ name: 10KG
+ uom_type: bigger
+ category_id: product.product_uom_categ_kgm
+ rounding: 0.010
+ factor_inv: 10
+-
+ I create a new product 'Sugar' in 20KG UOM.
+-
+ !record {model: product.product, id: product_sugar_id1}:
+ categ_id: 'product.product_category_rawmaterial0'
+ cost_method: standard
+ name: Sugar 20KG
+ procure_method: make_to_order
+ standard_price: 400.0
+ uom_id: product.product_20k_uom_sugar
+ uom_po_id: product.product_20k_uom_sugar
+-
+ I test onchanged on UOM, Create Duplicate Product and Delete original Product.
+-
+ !python {model: product.product}: |
+ self.onchange_uom(cr ,uid, [ref("product_sugar_id1")], ref("product.product_20k_uom_sugar"), ref("product.product_10k_uom_sugar"))
+ self.copy(cr, uid, ref("product_sugar_id1"))
+ self.unlink(cr, uid, [ref("product_sugar_id1")])
diff --git a/addons/product/wizard/product_installer.xml b/addons/product/wizard/product_installer.xml
index bdfbc1d32bf..01ddf25c56c 100644
--- a/addons/product/wizard/product_installer.xml
+++ b/addons/product/wizard/product_installer.xml
@@ -2,7 +2,7 @@
- Create some Products
+ Create or Import Productsir.actions.act_windowproduct.productform
diff --git a/addons/product_expiry/__openerp__.py b/addons/product_expiry/__openerp__.py
index 434f5605baa..ebf3b97bc0a 100644
--- a/addons/product_expiry/__openerp__.py
+++ b/addons/product_expiry/__openerp__.py
@@ -21,7 +21,7 @@
"name" : "Products Expiry Date",
"version" : "1.0",
"author" : "OpenERP SA",
- "category" : "Warehouse",
+ "category" : "Vertical Applications",
'complexity': "easy",
"depends" : ["stock"],
"init_xml" : [],
diff --git a/addons/product_manufacturer/__openerp__.py b/addons/product_manufacturer/__openerp__.py
index 5aea3f333d3..d04d0724137 100644
--- a/addons/product_manufacturer/__openerp__.py
+++ b/addons/product_manufacturer/__openerp__.py
@@ -21,7 +21,7 @@
"name" : "Products Attributes & Manufacturers",
"version" : "1.0",
"author" : "OpenERP SA",
- "category" : "Tools",
+ "category" : "Hidden",
'complexity': "easy",
"depends" : ["stock"],
"init_xml" : [],
diff --git a/addons/product_margin/__openerp__.py b/addons/product_margin/__openerp__.py
index 69553f1aced..b412e8b63eb 100644
--- a/addons/product_margin/__openerp__.py
+++ b/addons/product_margin/__openerp__.py
@@ -23,7 +23,7 @@
{
'name': 'Margins in Product',
'version': '1.0',
- 'category': 'Sales',
+ 'category': 'Hidden',
'description': """
Adds a reporting menu in products that computes sales, purchases, margins and other interesting indicators based on invoices.
=============================================================================================================================
@@ -37,6 +37,7 @@ The wizard to launch the report has several options to help you get the data you
'wizard/product_margin_view.xml',
'product_margin_view.xml'
],
+ 'test':['test/product_margin.yml'],
'demo_xml': [],
'installable': True,
'active': False,
diff --git a/addons/product_margin/test/product_margin.yml b/addons/product_margin/test/product_margin.yml
new file mode 100644
index 00000000000..fa8241ab206
--- /dev/null
+++ b/addons/product_margin/test/product_margin.yml
@@ -0,0 +1,25 @@
+-
+ In order to test the product_margin module, I create a product margin record
+-
+ !record {model: product.margin, id: product_margin_wiz0}:
+ from_date: !eval "'%s-01-01' %(datetime.now().year)"
+ to_date: !eval "'%s-12-31' %(datetime.now().year)"
+ invoice_state: open_paid
+-
+ I open margin for PC3
+-
+ !python {model: product.margin}: |
+ self.action_open_window(cr, uid, [ref("product_margin_wiz0")], {"lang": 'en_US',
+ "search_default_filter_to_sell": "1", "tz": False, "active_model": "product.product", "disable_log": True,
+ "active_ids": [ref("product.product_product_pc3")], "active_id": ref("product.product_product_pc3")})
+-
+ I read the fields of the product.
+-
+ !python {model: product.product}: |
+ fields = ['sale_avg_price', 'expected_margin_rate', 'total_margin_rate', 'total_cost', 'sale_num_invoiced',
+ 'total_margin', 'sales_gap', 'purchase_num_invoiced', 'expected_margin', 'turnover']
+ self.read(cr, uid, [ref("product_margin_wiz0")], fields, {"lang": 'en_US',
+ "search_default_filter_to_sell": "1", "tz": False, "active_model": "product.product",
+ "bin_size": True, "active_ids": [ref("product.product_product_pc3")],
+ "active_id": ref("product.product_product_pc3")})
+
diff --git a/addons/product_visible_discount/__openerp__.py b/addons/product_visible_discount/__openerp__.py
index 903bc6c7523..d05c3a82c11 100644
--- a/addons/product_visible_discount/__openerp__.py
+++ b/addons/product_visible_discount/__openerp__.py
@@ -21,7 +21,7 @@
"name": "Visible Discount",
"version": "1.0",
"author": "OpenERP SA",
- "category": "Sales",
+ "category": "Hidden",
'complexity': "easy",
"description": """
This module lets you calculate discounts on Sale Order lines and Invoice lines base on the partner's pricelist.
diff --git a/addons/profile_tools/__init__.py b/addons/profile_tools/__init__.py
index 3511d091ecb..9a3d6d2fbb6 100644
--- a/addons/profile_tools/__init__.py
+++ b/addons/profile_tools/__init__.py
@@ -19,6 +19,5 @@
#
##############################################################################
-import installer
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/profile_tools/__openerp__.py b/addons/profile_tools/__openerp__.py
index 46528337f98..bd8790d1496 100644
--- a/addons/profile_tools/__openerp__.py
+++ b/addons/profile_tools/__openerp__.py
@@ -21,28 +21,27 @@
{
- "name" : "Miscellaneous Tools",
+ "name" : "Miscellaneous Hidden",
"version" : "1.0",
"depends" : ["base", "base_setup"],
"author" : "OpenERP SA",
- "category" : "Tools",
+ "category" : "Hidden",
'complexity': "easy",
"description": """
-Installer for extra tools like lunch, survey, idea, share, etc.
+Installer for extra Hidden like lunch, survey, idea, share, etc.
===============================================================
-Makes the Extra Tools Configuration available from where you can install
+Makes the Extra Hidden Configuration available from where you can install
modules like share, lunch, pad, idea, survey and subscription.
""",
'website': 'http://www.openerp.com',
'init_xml': [],
'update_xml': [
- 'misc_tools_installer.xml',
],
'demo_xml': [],
'installable': True,
'active': False,
'certificate' : '00557100228403879621',
- 'images': ['images/config_extra_tools.jpeg'],
+ 'images': ['images/config_extra_Hidden.jpeg'],
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/profile_tools/installer.py b/addons/profile_tools/installer.py
deleted file mode 100644
index 44258234d11..00000000000
--- a/addons/profile_tools/installer.py
+++ /dev/null
@@ -1,40 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2009 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-from osv import fields, osv
-
-class misc_tools_installer(osv.osv_memory):
- _inherit = 'base.setup.installer'
-
- _columns = {
- 'lunch':fields.boolean('Lunch',help='A simple module to help you to manage Lunch orders.'),
- 'subscription':fields.boolean('Recurring Documents',help='Helps to generate automatically recurring documents.'),
- 'survey':fields.boolean('Survey',help='Allows you to organize surveys.'),
- 'idea':fields.boolean('Ideas Box',help='Promote ideas of the employees, votes and discussion on best ideas.'),
- 'share':fields.boolean('Web Share',help='Allows you to give restricted access to your OpenERP documents to external users, ' \
- 'such as customers, suppliers, or accountants. You can share any OpenERP Menu such as your project tasks, support requests, invoices, etc.'),
- 'pad': fields.boolean('Collaborative Note Pads',
- help="This module creates a tighter integration between a Pad "
- "instance of your choosing and your OpenERP Web Client by "
- "letting you easily link pads to OpenERP objects via "
- "OpenERP attachments."),
- }
-misc_tools_installer()
-
diff --git a/addons/profile_tools/misc_tools_installer.xml b/addons/profile_tools/misc_tools_installer.xml
deleted file mode 100644
index 703a8aed9c7..00000000000
--- a/addons/profile_tools/misc_tools_installer.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-
-
-
- misc_tools.installer.view
- base.setup.installer
- form
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/project/__init__.py b/addons/project/__init__.py
index 142cd98e485..01bef264e02 100644
--- a/addons/project/__init__.py
+++ b/addons/project/__init__.py
@@ -21,7 +21,6 @@
import project
import company
-import installer
import report
import wizard
import res_partner
diff --git a/addons/project/i18n/zh_TW.po b/addons/project/i18n/zh_TW.po
index dc38347e9a5..c22e242a41d 100644
--- a/addons/project/i18n/zh_TW.po
+++ b/addons/project/i18n/zh_TW.po
@@ -7,19 +7,19 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-01-28 16:28+0000\n"
+"PO-Revision-Date: 2011-09-27 10:35+0000\n"
"Last-Translator: Walter Cheuk \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:54+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-09-28 05:19+0000\n"
+"X-Generator: Launchpad (build 14049)\n"
#. module: project
#: model:ir.actions.act_window,name:project.act_res_users_2_project_task_opened
msgid "Assigned tasks"
-msgstr "任務指派"
+msgstr "已分派任務"
#. module: project
#: help:project.task.delegate,new_task_description:0
@@ -30,7 +30,7 @@ msgstr ""
#: code:addons/project/project.py:671
#, python-format
msgid "The task '%s' has been delegated to %s."
-msgstr "「%s」任務委派予 %s"
+msgstr "已將「%s」任務委派予 %s。"
#. module: project
#: help:res.company,project_time_mode_id:0
@@ -254,7 +254,7 @@ msgstr "專案結束任務"
#. module: project
#: model:process.node,name:project.process_node_drafttask0
msgid "Draft task"
-msgstr "草案任務"
+msgstr "任務草案"
#. module: project
#: model:ir.model,name:project.model_project_task
@@ -273,7 +273,7 @@ msgstr "成員"
msgid ""
"Estimated time to do the task, usually set by the project manager when the "
"task is in draft state."
-msgstr "完成任務估計時間,通常由專案經理(PM)於草案階段設定"
+msgstr "完成任務估計時間,通常由專案經理(PM)於草案階段設定。"
#. module: project
#: model:ir.model,name:project.model_project_task_work
@@ -553,7 +553,7 @@ msgstr "下一個"
#. module: project
#: model:process.transition,note:project.process_transition_draftopentask0
msgid "From draft state, it will come into the open state."
-msgstr "「草案」階段會轉為「進行中」階段"
+msgstr "會由「草案」階段轉為「開放」階段。"
#. module: project
#: view:report.project.task.user:0
@@ -770,7 +770,7 @@ msgstr ""
#. module: project
#: model:process.transition,name:project.process_transition_draftopentask0
msgid "Draft Open task"
-msgstr "草案進行任務"
+msgstr "開啟任務草案"
#. module: project
#: view:project.project:0
@@ -917,6 +917,10 @@ msgid ""
" \n"
" If the task is over, the states is set to 'Done'."
msgstr ""
+"當建立任務時會處於「草案(Draft)」階段。\n"
+" 開始後會處於「進行中(In Progress)」階段。\n"
+" 如需評估,會處於「待通過(Pending)」階段。 \n"
+" 任務完成,處於「完成(Done)」階段。"
#. module: project
#: help:project.task,progress:0
diff --git a/addons/project/installer.py b/addons/project/installer.py
deleted file mode 100644
index 36b458da296..00000000000
--- a/addons/project/installer.py
+++ /dev/null
@@ -1,51 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2009 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-from osv import fields, osv
-
-class project_installer(osv.osv_memory):
- _inherit = 'base.setup.installer'
-
- _columns = {
- # Project Management
- 'project_long_term': fields.boolean(
- 'Long Term Planning',
- help="Enables long-term projects tracking, including "
- "multiple-phase projects and resource allocation handling."),
- 'hr_timesheet_sheet': fields.boolean('Timesheets',
- help="Tracks and helps employees encode and validate timesheets "
- "and attendances."),
- 'project_timesheet': fields.boolean('Bill Time on Tasks',
- help="Helps generate invoices based on time spent on tasks, if activated on the project."),
- 'account_budget': fields.boolean('Budgets',
- help="Helps accountants manage analytic and crossover budgets."),
- 'project_issue': fields.boolean('Issues Tracker',
- help="Automatically synchronizes project tasks and crm cases."),
- # Methodologies
- 'project_scrum': fields.boolean('Methodology: SCRUM',
- help="Implements and tracks the concepts and task types defined "
- "in the SCRUM methodology."),
- 'project_gtd': fields.boolean('Methodology: Getting Things Done',
- help="GTD is a methodology to efficiently organise yourself and your tasks. This module fully integrates GTD principle with OpenERP's project management."),
- }
-project_installer()
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/project/project.py b/addons/project/project.py
index 96bf2f30fdc..05bed8a9b9a 100644
--- a/addons/project/project.py
+++ b/addons/project/project.py
@@ -430,7 +430,7 @@ class task(osv.osv):
'priority': fields.selection([('4','Very Low'), ('3','Low'), ('2','Medium'), ('1','Important'), ('0','Very important')], 'Priority'),
'sequence': fields.integer('Sequence', help="Gives the sequence order when displaying a list of tasks."),
'type_id': fields.many2one('project.task.type', 'Stage'),
- 'state': fields.selection([('draft', 'Draft'),('open', 'In Progress'),('pending', 'Pending'), ('cancelled', 'Cancelled'), ('done', 'Done')], 'State', readonly=True, required=True,
+ 'state': fields.selection([('draft', 'New'),('open', 'In Progress'),('pending', 'Pending'), ('cancelled', 'Cancelled'), ('done', 'Done')], 'State', readonly=True, required=True,
help='If the task is created the state is \'Draft\'.\n If the task is started, the state becomes \'In Progress\'.\n If review is needed the task is in \'Pending\' state.\
\n If the task is over, the states is set to \'Done\'.'),
'create_date': fields.datetime('Create Date', readonly=True,select=True),
@@ -469,7 +469,8 @@ class task(osv.osv):
'work_ids': fields.one2many('project.task.work', 'task_id', 'Work done'),
'manager_id': fields.related('project_id', 'analytic_account_id', 'user_id', type='many2one', relation='res.users', string='Project Manager'),
'company_id': fields.many2one('res.company', 'Company'),
- 'id': fields.integer('ID'),
+ 'id': fields.integer('ID', readonly=True),
+ 'color': fields.integer('Color Index'),
}
_defaults = {
@@ -485,6 +486,21 @@ class task(osv.osv):
_order = "sequence,priority, date_start, name, id"
+ def set_priority(self, cr, uid, ids, priority):
+ """Set task priority
+ """
+ return self.write(cr, uid, ids, {'priority' : priority})
+
+ def set_high_priority(self, cr, uid, ids, *args):
+ """Set task priority to high
+ """
+ return self.set_priority(cr, uid, ids, '1')
+
+ def set_normal_priority(self, cr, uid, ids, *args):
+ """Set task priority to normal
+ """
+ return self.set_priority(cr, uid, ids, '3')
+
def _check_recursion(self, cr, uid, ids, context=None):
for id in ids:
visited_branch = set()
diff --git a/addons/project/project_installer.xml b/addons/project/project_installer.xml
index d6538ac1310..1dd8965fe76 100644
--- a/addons/project/project_installer.xml
+++ b/addons/project/project_installer.xml
@@ -1,27 +1,55 @@
+
-
+
-
- project.installer.view
- base.setup.installer
- form
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+ Project Management
+ 7
+
+
+
+ Create your Firsts Projects
+ ir.actions.act_window
+ project.project
+ form
+ tree,form
+
+
+
+
+
+
+
+
+ Setup your Project's Time Unit
+ ir.actions.act_window
+ res.company
+
+ form
+ form
+ {'res_id' : user.company_id.id}
+
+
+
+
+ once
+
+
+
+ Review Task Stages
+ ir.actions.act_window
+ project.task.type
+ form
+ tree,form
+ {'search_default_common': 1, 'default_project_default': 1}
+ []
+ The stages can be common to all project or specific to one project. Each task will follow the different stages in order to be closed.
+
+
+
+
+
+
+
diff --git a/addons/project/project_view.xml b/addons/project/project_view.xml
index 2bca9293e08..b518cb31de2 100644
--- a/addons/project/project_view.xml
+++ b/addons/project/project_view.xml
@@ -45,7 +45,7 @@
-
+
@@ -107,7 +107,8 @@
-
+
+
@@ -257,7 +258,7 @@
-
+
@@ -312,62 +313,71 @@
-
-
-
+
+
+ project.task.kanbanproject.taskkanban
-
-
+
- #fff
- #dfd
- lightcyan
- red
-
-
+
project.task.tree
@@ -453,7 +463,7 @@
-
+
@@ -501,6 +511,21 @@
A task represents a work that has to be done. Each user works in his own list of tasks where he can record his task work in hours. He can work and close the task itself or delegate it to another user. If you delegate a task to another user, you get a new task in pending state, which will be reopened when you have to review the work achieved. If you install the project_timesheet module, task work can be invoiced based on the project configuration. With the project_mrp module, sales orders can create tasks automatically when they are confirmed.
+
+
+
+ tree
+
+
+
+
+
+
+ form
+
+
+
+
@@ -532,6 +557,21 @@
+
+ project.task.type.search
+ project.task.type
+ search
+
+
+
+
+
+
+
+
+
+
+
project.task.type.formproject.task.type
@@ -539,7 +579,7 @@
-
+
@@ -623,7 +663,6 @@
-
-
+
diff --git a/addons/project/report/project_report_view.xml b/addons/project/report/project_report_view.xml
index b9be53a2431..601f6e2004f 100644
--- a/addons/project/report/project_report_view.xml
+++ b/addons/project/report/project_report_view.xml
@@ -72,11 +72,11 @@
domain="[('date_start','<=', (datetime.date.today() - relativedelta(day=31, months=1)).strftime('%%Y-%%m-%%d')),('date_start','>=',(datetime.date.today() - relativedelta(day=1,months=1)).strftime('%%Y-%%m-%%d'))]"
help="Previous Month"/>
-
-
+
diff --git a/addons/project_caldav/__openerp__.py b/addons/project_caldav/__openerp__.py
index 29c9ec4d483..37ecbb1c910 100644
--- a/addons/project_caldav/__openerp__.py
+++ b/addons/project_caldav/__openerp__.py
@@ -23,7 +23,7 @@
"name": "CalDAV for Task Management",
"version": "1.1",
"author": "OpenERP SA",
- "category": "Project Management",
+ "category": "Hidden",
"description": """
Synchronization between Project Task and Caldav Vtodo.
======================================================
diff --git a/addons/project_gtd/__openerp__.py b/addons/project_gtd/__openerp__.py
index 5f70392352b..8d03112ed04 100644
--- a/addons/project_gtd/__openerp__.py
+++ b/addons/project_gtd/__openerp__.py
@@ -21,7 +21,7 @@
{
- 'name': 'Getting Things Done - Time Management Module',
+ 'name': 'Methodology: Getting Things Done',
'version': '1.0',
'category': 'Project Management',
'complexity': "easy",
diff --git a/addons/project_issue/__openerp__.py b/addons/project_issue/__openerp__.py
index 459c44dea04..e77499df3d0 100644
--- a/addons/project_issue/__openerp__.py
+++ b/addons/project_issue/__openerp__.py
@@ -21,7 +21,7 @@
##############################################################################
{
- 'name': 'Issue Management in Project Management',
+ 'name': 'Issues Tracker',
'version': '1.0',
'category': 'Project Management',
'complexity': "easy",
diff --git a/addons/project_issue/project_issue.py b/addons/project_issue/project_issue.py
index af756d34c5f..e94349e028f 100644
--- a/addons/project_issue/project_issue.py
+++ b/addons/project_issue/project_issue.py
@@ -180,7 +180,7 @@ class project_issue(crm.crm_case, osv.osv):
return res
_columns = {
- 'id': fields.integer('ID'),
+ 'id': fields.integer('ID', readonly=True),
'name': fields.char('Issue', size=128, required=True),
'active': fields.boolean('Active', required=False),
'create_date': fields.datetime('Creation Date', readonly=True,select=True),
@@ -196,7 +196,7 @@ class project_issue(crm.crm_case, osv.osv):
domain="[('partner_id','=',partner_id)]"),
'company_id': fields.many2one('res.company', 'Company'),
'description': fields.text('Description'),
- 'state': fields.selection([('draft', 'New'), ('open', 'To Do'), ('cancel', 'Cancelled'), ('done', 'Closed'),('pending', 'Pending'), ], 'State', size=16, readonly=True,
+ 'state': fields.selection([('draft', 'New'), ('open', 'To Solve'), ('cancel', 'Cancelled'), ('done', 'Closed'),('pending', 'Pending'), ], 'State', size=16, readonly=True,
help='The state is set to \'Draft\', when a case is created.\
\nIf the case is in progress the state is set to \'Open\'.\
\nWhen the case is over, the state is set to \'Done\'.\
@@ -226,6 +226,7 @@ class project_issue(crm.crm_case, osv.osv):
multi='compute_day', type="float", store=True),
'inactivity_days': fields.function(_compute_day, string='Days since last action', \
multi='compute_day', type="integer", help="Difference in days between last action and current date"),
+ 'color': fields.integer('Color Index'),
'message_ids': fields.one2many('mail.message', 'res_id', 'Messages', domain=[('model','=',_name)]),
'date_action_last': fields.datetime('Last Action', readonly=1),
'date_action_next': fields.datetime('Next Action', readonly=1),
@@ -258,7 +259,22 @@ class project_issue(crm.crm_case, osv.osv):
'priority': crm.AVAILABLE_PRIORITIES[2][0],
'project_id':_get_project,
'categ_id' : lambda *a: False,
- }
+ }
+
+ def set_priority(self, cr, uid, ids, priority):
+ """Set lead priority
+ """
+ return self.write(cr, uid, ids, {'priority' : priority})
+
+ def set_high_priority(self, cr, uid, ids, *args):
+ """Set lead priority to high
+ """
+ return self.set_priority(cr, uid, ids, '1')
+
+ def set_normal_priority(self, cr, uid, ids, *args):
+ """Set lead priority to normal
+ """
+ return self.set_priority(cr, uid, ids, '3')
def convert_issue_task(self, cr, uid, ids, context=None):
case_obj = self.pool.get('project.issue')
diff --git a/addons/project_issue/project_issue_menu.xml b/addons/project_issue/project_issue_menu.xml
index 18c8779704f..b3be3d2c663 100644
--- a/addons/project_issue/project_issue_menu.xml
+++ b/addons/project_issue/project_issue_menu.xml
@@ -1,8 +1,6 @@
-
- ######################## ISSUE TRACKING (menu) ###########################
@@ -10,10 +8,10 @@
Issuesproject.issueform
- tree,calendar
+ tree,calendar,kanban
- {"search_default_user_id": uid, "search_default_current":1, "search_default_project_id":project_id}
+ {"search_default_user_id": uid, "search_default_draft": 1, "search_default_project_id":project_id}Issues such as system bugs, customer complaints, and material breakdowns are collected here. You can define the stages assigned when solving the project issue (analysis, development, done). With the mailgateway module, issues can be integrated through an email address (example: support@mycompany.com)
@@ -40,7 +38,7 @@
-
+
-
+
@@ -124,7 +124,7 @@
icon="terp-mail-replied" type="action"/>
-
+
@@ -208,10 +208,8 @@
-
-
-
-
+
+
@@ -262,6 +260,83 @@
+
+
+
+
+ Project Issue Kanban
+ project.issue
+ kanban
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
# ------------------------------------------------------
# Feature Requests
# ------------------------------------------------------
diff --git a/addons/project_issue/report/project_issue_report_view.xml b/addons/project_issue/report/project_issue_report_view.xml
index ef629b5b017..12ae4f7a870 100644
--- a/addons/project_issue/report/project_issue_report_view.xml
+++ b/addons/project_issue/report/project_issue_report_view.xml
@@ -53,7 +53,7 @@
-
@@ -63,11 +63,13 @@
-
-
+
+ string="New"
+ domain="[('state','=','draft')]"/>
+
diff --git a/addons/project_issue_sheet/__openerp__.py b/addons/project_issue_sheet/__openerp__.py
index cc1cd6504b0..972245533ad 100644
--- a/addons/project_issue_sheet/__openerp__.py
+++ b/addons/project_issue_sheet/__openerp__.py
@@ -23,7 +23,7 @@
{
'name': 'Add the Timesheet support for Issue Management in Project Management',
'version': '1.0',
- 'category': 'Project Management',
+ 'category': 'Hidden/Link',
'description': """
This module adds the Timesheet support for the Issues/Bugs Management in Project.
=================================================================================
diff --git a/addons/project_long_term/__openerp__.py b/addons/project_long_term/__openerp__.py
index 76e872d65f7..ef57f53e5f1 100644
--- a/addons/project_long_term/__openerp__.py
+++ b/addons/project_long_term/__openerp__.py
@@ -20,7 +20,7 @@
##############################################################################
{
- "name": "Long Term Project Management",
+ "name": "Long Term Planning",
"version": "1.1",
"author": "OpenERP SA",
"website": "http://www.openerp.com",
diff --git a/addons/project_long_term/project_long_term.py b/addons/project_long_term/project_long_term.py
index 6c5ef7890bf..7cd6697b67a 100644
--- a/addons/project_long_term/project_long_term.py
+++ b/addons/project_long_term/project_long_term.py
@@ -117,7 +117,7 @@ class project_phase(osv.osv):
'task_ids': fields.one2many('project.task', 'phase_id', "Project Tasks", states={'done':[('readonly',True)], 'cancelled':[('readonly',True)]}),
'resource_ids': fields.one2many('project.resource.allocation', 'phase_id', "Project Resources",states={'done':[('readonly',True)], 'cancelled':[('readonly',True)]}),
'responsible_id': fields.many2one('res.users', 'Responsible', states={'done':[('readonly',True)], 'cancelled':[('readonly',True)]}),
- 'state': fields.selection([('draft', 'Draft'), ('open', 'In Progress'), ('pending', 'Pending'), ('cancelled', 'Cancelled'), ('done', 'Done')], 'State', readonly=True, required=True,
+ 'state': fields.selection([('draft', 'New'), ('open', 'In Progress'), ('pending', 'Pending'), ('cancelled', 'Cancelled'), ('done', 'Done')], 'State', readonly=True, required=True,
help='If the phase is created the state \'Draft\'.\n If the phase is started, the state becomes \'In Progress\'.\n If review is needed the phase is in \'Pending\' state.\
\n If the phase is over, the states is set to \'Done\'.'),
'total_hours': fields.function(_compute, string='Total Hours'),
diff --git a/addons/project_long_term/project_long_term_view.xml b/addons/project_long_term/project_long_term_view.xml
index c53f4196202..49b306ebfd5 100644
--- a/addons/project_long_term/project_long_term_view.xml
+++ b/addons/project_long_term/project_long_term_view.xml
@@ -140,7 +140,7 @@
-
+
@@ -267,7 +267,7 @@
-
+
diff --git a/addons/project_long_term/wizard/project_compute_phases_view.xml b/addons/project_long_term/wizard/project_compute_phases_view.xml
index 9d5754af09c..69b7d94eabd 100644
--- a/addons/project_long_term/wizard/project_compute_phases_view.xml
+++ b/addons/project_long_term/wizard/project_compute_phases_view.xml
@@ -31,7 +31,6 @@
formform
- {'record_id': active_id}newTo schedule phases of all or a specified project. It then open a gantt view.
diff --git a/addons/project_long_term/wizard/project_compute_tasks_view.xml b/addons/project_long_term/wizard/project_compute_tasks_view.xml
index e6540fafff9..e679110acdc 100644
--- a/addons/project_long_term/wizard/project_compute_tasks_view.xml
+++ b/addons/project_long_term/wizard/project_compute_tasks_view.xml
@@ -30,7 +30,6 @@
formform
- {'record_id' : active_id}new
diff --git a/addons/project_mailgate/__openerp__.py b/addons/project_mailgate/__openerp__.py
index 76ff6dbbc47..ba3e2e57ba5 100644
--- a/addons/project_mailgate/__openerp__.py
+++ b/addons/project_mailgate/__openerp__.py
@@ -25,7 +25,7 @@
"version": "1.1",
"author": "OpenERP SA",
"website": "http://www.openerp.com",
- "category": "Project Management",
+ "category": "Hidden",
'complexity': "easy",
"images": ["images/project_mailgate_task.jpeg"],
"depends": ["project", "mail"],
diff --git a/addons/project_messages/__openerp__.py b/addons/project_messages/__openerp__.py
index 3f1882ed376..f7e50110784 100644
--- a/addons/project_messages/__openerp__.py
+++ b/addons/project_messages/__openerp__.py
@@ -26,7 +26,7 @@
"images": ["images/project_message.jpeg"],
"depends": ["project"],
"author": "OpenERP SA",
- "category": 'Project Management',
+ "category": 'Hidden',
'complexity': "easy",
"description": """
This module provides the functionality to send messages within a project.
diff --git a/addons/project_mrp/__openerp__.py b/addons/project_mrp/__openerp__.py
index 86520a0cc78..3cb2fb40179 100644
--- a/addons/project_mrp/__openerp__.py
+++ b/addons/project_mrp/__openerp__.py
@@ -23,7 +23,7 @@
{
'name': 'Automatic task creation from procurement lines',
'version': '1.0',
- 'category': 'Project Management',
+ 'category': 'Hidden/Link',
'complexity': "easy",
'description': """
Automatically creates project tasks from procurement lines
diff --git a/addons/project_planning/__openerp__.py b/addons/project_planning/__openerp__.py
index 537170d4e3d..9ce5e8a2d9a 100644
--- a/addons/project_planning/__openerp__.py
+++ b/addons/project_planning/__openerp__.py
@@ -23,7 +23,7 @@
{
'name': 'Planning Management Module',
'version': '1.0',
- 'category': 'Project Management',
+ 'category': 'Hidden',
'complexity': "easy",
'description': """Keep track of your planning
This module helps you to manage your plannings.
diff --git a/addons/project_retro_planning/__openerp__.py b/addons/project_retro_planning/__openerp__.py
index 8157180321a..68ea9d5d78e 100644
--- a/addons/project_retro_planning/__openerp__.py
+++ b/addons/project_retro_planning/__openerp__.py
@@ -22,7 +22,7 @@
{
'name': 'Project Retro planning',
'version': '0.1',
- 'category': 'Project Management',
+ 'category': 'Hidden',
'description': """
Changes dates according to change in project End Date.
======================================================
diff --git a/addons/project_scrum/__openerp__.py b/addons/project_scrum/__openerp__.py
index 9b2f4c4e046..fb08b8432be 100644
--- a/addons/project_scrum/__openerp__.py
+++ b/addons/project_scrum/__openerp__.py
@@ -21,7 +21,7 @@
{
- 'name': 'Scrum, Agile Development Method',
+ 'name': 'Methodology: SCRUM',
'version': '1.0',
'category': 'Project Management',
'complexity': "easy",
diff --git a/addons/project_scrum/i18n/fr.po b/addons/project_scrum/i18n/fr.po
index adca710673b..4379520c588 100644
--- a/addons/project_scrum/i18n/fr.po
+++ b/addons/project_scrum/i18n/fr.po
@@ -7,15 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-01-18 16:47+0000\n"
-"Last-Translator: Maxime Chambreuil (http://www.savoirfairelinux.com) "
-"\n"
+"PO-Revision-Date: 2011-09-26 12:11+0000\n"
+"Last-Translator: Numérigraphe \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 05:03+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-09-27 04:47+0000\n"
+"X-Generator: Launchpad (build 14028)\n"
#. module: project_scrum
#: help:project.scrum.email,scrum_master_email:0
@@ -991,6 +990,14 @@ msgid ""
"*Blocks encountered:\n"
"_______________________ %s"
msgstr ""
+"\n"
+"* Tâches depuis hier :\n"
+"_______________________%s\n"
+"* Tâches pour aujourd'hui :\n"
+"_______________________ %s\n"
+"\n"
+"* Blocages rencontrés :\n"
+"_______________________ %s"
#. module: project_scrum
#: help:project.scrum.product.backlog,active:0
diff --git a/addons/project_scrum/project_scrum_view.xml b/addons/project_scrum/project_scrum_view.xml
index 53e0d9e442d..4622bd305c7 100644
--- a/addons/project_scrum/project_scrum_view.xml
+++ b/addons/project_scrum/project_scrum_view.xml
@@ -61,8 +61,8 @@
-
@@ -132,12 +132,11 @@
-
-
+ domain="['|','&',('sprint_id.date_start','<=',time.strftime('%%Y-%%m-%%d')), ('sprint_id.date_stop','>=',time.strftime('%%Y-%%m-%%d')), ('state','=','draft')]"
+ help="Draft Backlogs"/>
+
@@ -179,7 +178,7 @@
Product Backlogsproject.scrum.product.backlogform
- {'search_default_current': 1,'search_default_user_id':uid,'search_default_project_id':project_id}
+ {'search_default_current':1, 'search_default_user_id':uid,'search_default_project_id':project_id}The scrum agile methodology is used in software development projects. The Product Backlog is the list of features to be implemented. A product backlog can be planified in a development sprint and may be split into several tasks. The product backlog is managed by the product owner of the project.
@@ -225,7 +224,7 @@
+ string="Burndown Chart" type="action" icon="gtk-print"/>
@@ -274,7 +273,7 @@
-
+
@@ -303,7 +302,7 @@
+ string="Burndown Chart" type="action" icon="gtk-print"/>
@@ -320,9 +319,8 @@
-
-
-
+
+
@@ -351,7 +349,7 @@
formtree,form,calendar
- {"search_default_filter_current": 1}
+ {"search_default_current": 1}The scrum agile methodology is used in software development projects. In this methodology, a sprint is a short period of time (e.g. one month) during which the team implements a list of product backlogs. The sprint review is organized when the team presents its work to the customer and product owner.
@@ -589,7 +587,7 @@
-
+
@@ -597,7 +595,7 @@
-
+
diff --git a/addons/purchase/__openerp__.py b/addons/purchase/__openerp__.py
index 975754dd5fe..f5198d57f85 100644
--- a/addons/purchase/__openerp__.py
+++ b/addons/purchase/__openerp__.py
@@ -23,7 +23,7 @@
{
'name': 'Purchase Management',
'version': '1.1',
- 'category': 'Purchases',
+ 'category': 'Purchase Management',
'complexity': "easy",
'description': """
Purchase module is for generating a purchase order for purchase of goods from a supplier.
@@ -66,7 +66,8 @@ Dashboard for purchase management that includes:
'purchase_unit_test.xml',
'test/procurement_buy.yml',
'test/purchase_report.yml',
- ],
+ 'test/purchase_order_cancel_draft.yml'
+ ],
'demo': ['purchase_demo.xml'],
'installable': True,
'active': False,
diff --git a/addons/purchase/purchase.py b/addons/purchase/purchase.py
index d6c1d4c903f..db494add04b 100644
--- a/addons/purchase/purchase.py
+++ b/addons/purchase/purchase.py
@@ -188,11 +188,11 @@ class purchase_order(osv.osv):
'shipped_rate': fields.function(_shipped_rate, string='Received', type='float'),
'invoiced': fields.function(_invoiced, string='Invoiced & Paid', type='boolean', help="It indicates that an invoice has been paid"),
'invoiced_rate': fields.function(_invoiced_rate, string='Invoiced', type='float'),
- 'invoice_method': fields.selection([('manual','From PO/PO lines'),('order','Draft invoices pre-generated'),('picking','From receptions')], 'Invoicing Control', required=True,
- help="From Order: a draft invoice will be generated based on the purchase order. The accountant " \
+ 'invoice_method': fields.selection([('manual','Based on purchase order lines'),('order','Draft invoices pre-generated'),('picking','Based on receptions')], 'Invoicing Control', required=True,
+ help="Based on orders: a draft invoice will be generated based on the purchase order. The accountant " \
"will just have to validate this invoice for control.\n" \
- "From Reception: a draft invoice will be generated based on validated receptions.\n" \
- "Manual: allows you to generate suppliers invoices by chosing in the uninvoiced lines of all manual purchase orders."
+ "Based on receptions: a draft invoice will be generated based on validated receptions.\n" \
+ "Pre-generate Invoice: allows you to generate draft suppliers invoices on validation of the PO."
),
'minimum_planned_date':fields.function(_minimum_planned_date, fnct_inv=_set_minimum_planned_date, string='Expected Date', type='date', select=True, help="This is computed as the minimum scheduled date of all purchase order lines' products.",
store = {
@@ -540,7 +540,7 @@ class purchase_order(osv.osv):
if not order_infos:
order_infos.update({
'origin': porder.origin,
- 'date_order': time.strftime('%Y-%m-%d'),
+ 'date_order': porder.date_order,
'partner_id': porder.partner_id.id,
'partner_address_id': porder.partner_address_id.id,
'dest_address_id': porder.dest_address_id.id,
@@ -553,6 +553,8 @@ class purchase_order(osv.osv):
'fiscal_position': porder.fiscal_position and porder.fiscal_position.id or False,
})
else:
+ if porder.date_order < order_infos['date_order']:
+ order_infos['date_order'] = porder.date_order
if porder.notes:
order_infos['notes'] = (order_infos['notes'] or '') + ('\n%s' % (porder.notes,))
if porder.origin:
@@ -665,7 +667,7 @@ class purchase_order_line(osv.osv):
def product_id_change(self, cr, uid, ids, pricelist, product, qty, uom,
partner_id, date_order=False, fiscal_position=False, date_planned=False,
- name=False, price_unit=False, notes=False):
+ name=False, price_unit=False, notes=False, context={}):
if not pricelist:
raise osv.except_osv(_('No Pricelist !'), _('You have to select a pricelist or a supplier in the purchase form !\nPlease set one before choosing a product.'))
if not partner_id:
@@ -738,10 +740,10 @@ class purchase_order_line(osv.osv):
def product_uom_change(self, cr, uid, ids, pricelist, product, qty, uom,
partner_id, date_order=False, fiscal_position=False, date_planned=False,
- name=False, price_unit=False, notes=False):
+ name=False, price_unit=False, notes=False, context={}):
res = self.product_id_change(cr, uid, ids, pricelist, product, qty, uom,
partner_id, date_order=date_order, fiscal_position=fiscal_position, date_planned=date_planned,
- name=name, price_unit=price_unit, notes=notes)
+ name=name, price_unit=price_unit, notes=notes, context=context)
if 'product_uom' in res['value']:
if uom and (uom != res['value']['product_uom']) and res['value']['product_uom']:
seller_uom_name = self.pool.get('product.uom').read(cr, uid, [res['value']['product_uom']], ['name'])[0]['name']
@@ -818,8 +820,9 @@ class procurement_order(osv.osv):
price = pricelist_obj.price_get(cr, uid, [pricelist_id], procurement.product_id.id, qty, partner_id, {'uom': uom_id})[pricelist_id]
- newdate = datetime.strptime(procurement.date_planned, '%Y-%m-%d %H:%M:%S')
- newdate = (newdate - relativedelta(days=company.po_lead)) - relativedelta(days=seller_delay)
+ order_date = datetime.strptime(procurement.date_planned, '%Y-%m-%d %H:%M:%S')
+ schedule_date = (order_date - relativedelta(days=company.po_lead))
+ order_dates = schedule_date - relativedelta(days=seller_delay)
#Passing partner_id to context for purchase order line integrity of Line name
context.update({'lang': partner.lang, 'partner_id': partner_id})
@@ -833,8 +836,8 @@ class procurement_order(osv.osv):
'product_qty': qty,
'product_id': procurement.product_id.id,
'product_uom': uom_id,
- 'price_unit': price,
- 'date_planned': newdate.strftime('%Y-%m-%d %H:%M:%S'),
+ 'price_unit': price or 0.0,
+ 'date_planned': schedule_date.strftime('%Y-%m-%d %H:%M:%S'),
'move_dest_id': res_id,
'notes': product.description_purchase,
'taxes_id': [(6,0,taxes)],
@@ -846,6 +849,7 @@ class procurement_order(osv.osv):
'partner_address_id': address_id,
'location_id': procurement.location_id.id,
'pricelist_id': pricelist_id,
+ 'date_order': order_dates.strftime('%Y-%m-%d %H:%M:%S'),
'company_id': procurement.company_id.id,
'fiscal_position': partner.property_account_position and partner.property_account_position.id or False
}
diff --git a/addons/purchase/purchase_sequence.xml b/addons/purchase/purchase_sequence.xml
index 7f426b53be6..d5b4fc4bd3b 100644
--- a/addons/purchase/purchase_sequence.xml
+++ b/addons/purchase/purchase_sequence.xml
@@ -11,6 +11,7 @@
purchase.orderPO5
+
diff --git a/addons/purchase/purchase_view.xml b/addons/purchase/purchase_view.xml
index 035dbbc23b9..60c6c39bf05 100644
--- a/addons/purchase/purchase_view.xml
+++ b/addons/purchase/purchase_view.xml
@@ -194,7 +194,7 @@
-
+
@@ -234,20 +234,19 @@
-
- purchase.order.list.select
+
+ request.quotation.selectpurchase.ordersearch
-
-
+
@@ -268,6 +267,42 @@
+
+
+ purchase.order.list.select
+ purchase.order
+ search
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
purchase.order.treepurchase.order
@@ -294,10 +329,9 @@
Requests for Quotationir.actions.act_windowpurchase.order
- form{'search_default_draft': 1}tree,form,graph,calendar
-
+ You can create a request for quotation when you want to buy products to a supplier but the purchase is not confirmed yet. Use also this menu to review requests for quotation created automatically based on your logistic rules (minimum stock, MTO, etc). You can convert the request for quotation into a purchase order once the order is confirmed. If you use the extended interface (from user's preferences), you can select the way to control your supplier invoices: based on the order, based on the receptions or manual encoding.
-
-
+
+
@@ -463,14 +497,14 @@
- On Purchase Order Line
+ On Purchase Order Linesir.actions.act_windowpurchase.order.line[('order_id.invoice_method','<>','picking'), ('state','in',('confirmed','done')), ('invoiced', '=', False)]formtree,form
- If you set the invoicing control on a purchase order as "Manual", you can track here all the purchase order lines for which you have not received the supplier invoice yet. Once you are ready to receive a supplier invoice, you can generate a draft supplier invoice based on the lines from this menu.
+ If you set the invoicing control on a purchase order as "Based on Purchase Order Lines", you can track here all the purchase order lines for which you have not received the supplier invoice yet. Once you are ready to receive a supplier invoice, you can generate a draft supplier invoice based on the lines from this menu.
diff --git a/addons/purchase/report/order.rml b/addons/purchase/report/order.rml
index 188f969e07c..1cae651e1ed 100644
--- a/addons/purchase/report/order.rml
+++ b/addons/purchase/report/order.rml
@@ -165,21 +165,13 @@
-
-
-
-
-
-
-
- [[ repeatIn(o.dest_address_id and [o.dest_address_id] or [],'addr') ]]Shipping address :
- [[ (addr.partner_id and addr.partner_id.title and addr.partner_id.title.name) or '' ]] [[ (addr.partner_id and addr.partner_id.name) or '' ]]
- [[ addr.street ]]
- [[ addr.street2 or removeParentNode('para') ]]
- [[ addr.zip or '' ]] [[ addr.city or '' ]]
- [[ addr.state_id and addr.state_id.name or removeParentNode('para') ]]
- [[ addr.country_id and addr.country_id.name or '' ]]
+ [[ (o.dest_address_id and o.dest_address_id.partner_id.name) or (o.warehouse_id and o.warehouse_id.name) or '']]
+ [[ (o.dest_address_id and o.dest_address_id and o.dest_address_id.street) or (o.warehouse_id and o.warehouse_id.partner_address_id and o.warehouse_id.partner_address_id.street) or '']]
+ [[ (o.dest_address_id and o.dest_address_id and o.dest_address_id.street2) or (o.warehouse_id and o.warehouse_id.partner_address_id and o.warehouse_id.partner_address_id.street2) or removeParentNode('para') ]]
+ [[ (o.dest_address_id and o.dest_address_id and o.dest_address_id.zip) or (o.warehouse_id and o.warehouse_id.partner_address_id and o.warehouse_id.partner_address_id.zip) or '' ]] [[ (o.dest_address_id and o.dest_address_id and o.dest_address_id.city) or (o.warehouse_id and o.warehouse_id.partner_address_id and o.warehouse_id.partner_address_id.city) or '' ]]
+ [[ (o.dest_address_id and o.dest_address_id.state_id and o.dest_address_id.state_id.name) or (o.warehouse_id and o.warehouse_id.partner_address_id and o.warehouse_id.partner_address_id.state_id and o.warehouse_id.partner_address_id.state_id.name) or removeParentNode('para') ]]
+ [[ (o.dest_address_id and o.dest_address_id.country_id and o.dest_address_id.country_id.name) or (o.warehouse_id and o.warehouse_id.partner_address_id and o.warehouse_id.partner_address_id.country_id and o.warehouse_id.partner_address_id.country_id.name) ]]
diff --git a/addons/purchase/report/purchase_report.py b/addons/purchase/report/purchase_report.py
index 6b68cecf1a5..4c59f9ea002 100644
--- a/addons/purchase/report/purchase_report.py
+++ b/addons/purchase/report/purchase_report.py
@@ -92,26 +92,23 @@ class purchase_report(osv.osv):
s.company_id as company_id,
l.product_id,
t.categ_id as category_id,
- (case when u.uom_type not in ('reference') then
- (select id from product_uom where uom_type='reference' and category_id = 1)
- else
- u.id
- end) as product_uom,
+ t.uom_id as product_uom,
s.location_id as location_id,
- sum(l.product_qty/u.factor) as quantity,
+ sum(l.product_qty/u.factor*u2.factor) as quantity,
extract(epoch from age(s.date_approve,s.date_order))/(24*60*60)::decimal(16,2) as delay,
extract(epoch from age(l.date_planned,s.date_order))/(24*60*60)::decimal(16,2) as delay_pass,
count(*) as nbr,
- (l.price_unit*l.product_qty*u.factor)::decimal(16,2) as price_total,
- avg(100.0 * (l.price_unit*l.product_qty*u.factor) / NULLIF(t.standard_price*l.product_qty*u.factor, 0.0))::decimal(16,2) as negociation,
+ (l.price_unit*l.product_qty)::decimal(16,2) as price_total,
+ avg(100.0 * (l.price_unit*l.product_qty) / NULLIF(t.standard_price*l.product_qty/u.factor*u2.factor, 0.0))::decimal(16,2) as negociation,
- sum(t.standard_price*l.product_qty*u.factor)::decimal(16,2) as price_standard,
- (sum(l.product_qty*l.price_unit)/NULLIF(sum(l.product_qty*u.factor),0.0))::decimal(16,2) as price_average
+ sum(t.standard_price*l.product_qty/u.factor*u2.factor)::decimal(16,2) as price_standard,
+ (sum(l.product_qty*l.price_unit)/NULLIF(sum(l.product_qty/u.factor*u2.factor),0.0))::decimal(16,2) as price_average
from purchase_order s
left join purchase_order_line l on (s.id=l.order_id)
left join product_product p on (l.product_id=p.id)
left join product_template t on (p.product_tmpl_id=t.id)
left join product_uom u on (u.id=l.product_uom)
+ left join product_uom u2 on (u2.id=t.uom_id)
where l.product_id is not null
group by
s.company_id,
@@ -139,7 +136,9 @@ class purchase_report(osv.osv):
s.warehouse_id,
u.uom_type,
u.category_id,
- u.id
+ t.uom_id,
+ u.id,
+ u2.factor
)
""")
purchase_report()
diff --git a/addons/purchase/stock.py b/addons/purchase/stock.py
index 696c4d708fe..29b4aa29318 100644
--- a/addons/purchase/stock.py
+++ b/addons/purchase/stock.py
@@ -124,68 +124,15 @@ class stock_picking(osv.osv):
purchase_obj.write(cursor, user, [picking.purchase_id.id], {'invoice_id': invoice_id,})
return super(stock_picking, self)._invoice_hook(cursor, user, picking, invoice_id)
-stock_picking()
-
class stock_partial_picking(osv.osv_memory):
_inherit = 'stock.partial.picking'
- def default_get(self, cr, uid, fields, context=None):
- """ To get default values for the object.
- @param self: The object pointer.
- @param cr: A database cursor
- @param uid: ID of the user currently logged in
- @param fields: List of fields for which we want default values
- @param context: A standard dictionary
- @return: A dictionary which of fields with values.
- """
- if context is None:
- context = {}
- pick_obj = self.pool.get('stock.picking')
- res = super(stock_partial_picking, self).default_get(cr, uid, fields, context=context)
- for pick in pick_obj.browse(cr, uid, context.get('active_ids', []), context=context):
- has_product_cost = (pick.type == 'in' and pick.purchase_id)
- for m in pick.move_lines:
- if m.state in ('done','cancel') :
- continue
- if has_product_cost and m.product_id.cost_method == 'average' and m.purchase_line_id:
- # We use the original PO unit purchase price as the basis for the cost, expressed
- # in the currency of the PO (i.e the PO's pricelist currency)
- list_index = 0
- for item in res['product_moves_in']:
- if item['move_id'] == m.id:
- res['product_moves_in'][list_index]['cost'] = m.purchase_line_id.price_unit
- res['product_moves_in'][list_index]['currency'] = m.picking_id.purchase_id.pricelist_id.currency_id.id
- list_index += 1
- return res
-stock_partial_picking()
+ # Overridden to inject the purchase price as true 'cost price' when processing
+ # incoming pickings.
+ def _product_cost_for_average_update(self, cr, uid, move):
+ if move.picking_id.purchase_id:
+ return {'cost': move.purchase_line_id.price_unit,
+ 'currency': move.picking_id.purchase_id.pricelist_id.currency_id.id}
+ return super(stock_partial_picking, self)._product_cost_for_average_update(cr, uid, move)
-class stock_partial_move(osv.osv_memory):
- _inherit = "stock.partial.move"
- def default_get(self, cr, uid, fields, context=None):
- """ To get default values for the object.
- @param self: The object pointer.
- @param cr: A database cursor
- @param uid: ID of the user currently logged in
- @param fields: List of fields for which we want default values
- @param context: A standard dictionary
- @return: A dictionary which of fields with values.
- """
- if context is None:
- context = {}
- res = super(stock_partial_move, self).default_get(cr, uid, fields, context=context)
- move_obj = self.pool.get('stock.move')
- for m in move_obj.browse(cr, uid, context.get('active_ids', []), context=context):
- if m.picking_id.type == 'in' and m.product_id.cost_method == 'average' \
- and m.purchase_line_id and m.picking_id.purchase_id:
- # We use the original PO unit purchase price as the basis for the cost, expressed
- # in the currency of the PO (i.e the PO's pricelist currency)
- list_index = 0
- for item in res['product_moves_in']:
- if item['move_id'] == m.id:
- res['product_moves_in'][list_index]['cost'] = m.purchase_line_id.price_unit
- res['product_moves_in'][list_index]['currency'] = m.picking_id.purchase_id.pricelist_id.currency_id.id
- list_index += 1
- return res
-stock_partial_move()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
diff --git a/addons/purchase/stock_view.xml b/addons/purchase/stock_view.xml
index 538d0b81ab7..5b9901a9a49 100644
--- a/addons/purchase/stock_view.xml
+++ b/addons/purchase/stock_view.xml
@@ -73,7 +73,8 @@
-
+
@@ -109,7 +110,7 @@
formtree,form,calendar[('type','=','in')]
- {'contact_display': 'partner_address',"search_default_available":1}
+ {'contact_display': 'partner_address',"search_default_done":1, "search_default_to_invoice":1}Create invoice from reception of products. If you selected this invoice control method in the purchase order, all receptions done are available here to be invoiced.
diff --git a/addons/purchase/test/purchase_from_order.yml b/addons/purchase/test/purchase_from_order.yml
index 3acc68cb51b..8e46899f8a0 100644
--- a/addons/purchase/test/purchase_from_order.yml
+++ b/addons/purchase/test/purchase_from_order.yml
@@ -51,6 +51,13 @@
I confirm the purchase order for iPod.
-
!workflow {model: purchase.order, action: purchase_confirm, ref: purchase_order_po0}
+-
+ I changed Expected Date to Next Day.
+-
+ !python {model: purchase.order}: |
+ import datetime
+ next_day = (datetime.date.today()+datetime.timedelta(days=1))
+ self.write(cr, uid, [ref("purchase_order_po0")], {'minimum_planned_date': next_day})
-
I check that the order which was initially in the draft state has transit to confirm state.
-
diff --git a/addons/purchase/test/purchase_from_picking.yml b/addons/purchase/test/purchase_from_picking.yml
index 9425ad94812..8d63aa3e02c 100644
--- a/addons/purchase/test/purchase_from_picking.yml
+++ b/addons/purchase/test/purchase_from_picking.yml
@@ -137,7 +137,7 @@
pur_id1=pur_obj.browse(cr, uid, ref("purchase_order_po2"))
pick_ids = [x.id for x in pur_id1.picking_ids]
id = self.create(cr, uid, {'invoice_date': time.strftime('%Y-%m-%d'), 'journal_id': ref('account.expenses_journal')},
- {'active_ids': pick_ids})
+ {'active_ids': pick_ids, 'active_model': 'stock.picking'})
self.create_invoice(cr, uid, [id], {"active_ids": pick_ids, "active_id": pick_ids[0]})
-
I check that an invoice_ids field of Delivery&Invoices gets bind with the value.
diff --git a/addons/purchase/test/purchase_order_cancel_draft.yml b/addons/purchase/test/purchase_order_cancel_draft.yml
new file mode 100644
index 00000000000..6a06ad164b2
--- /dev/null
+++ b/addons/purchase/test/purchase_order_cancel_draft.yml
@@ -0,0 +1,114 @@
+-
+ In order to test to Cancel purchase order from Approved State,I start by creating a new product 'Pen Drive1'
+-
+ !record {model: product.product, id: product_product_pendrive1}:
+ categ_id: 'product.product_category_3'
+ cost_method: standard
+ mes_type: fixed
+ name: Pen Drive
+ price_margin: 1.0
+ procure_method: make_to_order
+ property_stock_inventory: stock.location_inventory
+ property_stock_procurement: stock.location_procurement
+ property_stock_production: stock.location_production
+ standard_price: 500.0
+ supply_method: buy
+ type: product
+ uom_id: product.product_uom_unit
+ uom_po_id: product.product_uom_unit
+-
+ I create first purchase order for Pen Drive1 where "invoice_method" is From Order.
+-
+ !record {model: purchase.order, id: purchase_order_pendrive1}:
+ company_id: base.main_company
+ date_order: !eval time.strftime('%Y-%m-%d')
+ invoice_method: order
+ location_id: stock.stock_location_stock
+ order_line:
+ - date_planned: !eval time.strftime('%Y-%m-%d')
+ name: Pen Drive
+ price_unit: 500.0
+ product_id: 'product_product_pendrive1'
+ product_qty: 10.0
+ product_uom: product.product_uom_unit
+ partner_address_id: base.res_partner_address_7
+ partner_id: base.res_partner_4
+ pricelist_id: purchase.list0
+-
+ Initially purchase order is in the draft state.
+-
+ !assert {model: purchase.order, id: purchase_order_pendrive1}:
+ - state == 'draft'
+-
+ I confirm the purchase order for Pen Drive1.
+-
+ !workflow {model: purchase.order, action: purchase_confirm, ref: purchase_order_pendrive1}
+-
+ I check that the order which was initially in the draft state has transmit to confirm state.
+-
+ !assert {model: purchase.order, id: purchase_order_pendrive1}:
+ - state == 'approved'
+-
+ I have to first cancel Picking of Approved Purchase order .
+-
+ !python {model: stock.picking}: |
+ search_ids=self.search(cr, uid, [('purchase_id', '=', ref("purchase_order_pendrive1"))])
+ self.action_cancel(cr, uid, search_ids)
+-
+ Now I have to cancel confirm purchase order for Pen Drive1.
+-
+ !python {model: purchase.order}: |
+ self.action_cancel(cr, uid, [ref("purchase_order_pendrive1")])
+-
+ I check that the order which was in approved state has transmit to cancel state.
+-
+ !assert {model: purchase.order, id: purchase_order_pendrive1}:
+ - state == 'cancel'
+-
+ Now again set purchase order for Pen Drive1 to draft state.
+-
+ !python {model: purchase.order}: |
+ self.action_cancel_draft(cr, uid, [ref("purchase_order_pendrive1")])
+-
+ I check that the First purchase order is in draft state.
+-
+ !assert {model: purchase.order, id: purchase_order_pendrive1}:
+ - state == 'draft'
+-
+ I test for Copy and Delete Perchase order in Draft state.
+-
+ !python {model: purchase.order}: |
+ copy_id = self.copy(cr, uid, ref("purchase_order_pendrive1"))
+ self.unlink(cr, uid, [copy_id])
+-
+ I create Second purchase order for Pen Drive1 where "invoice_method" is From Order.
+-
+ !record {model: purchase.order, id: purchase_order_pendrive2}:
+ company_id: base.main_company
+ date_order: !eval time.strftime('%Y-%m-%d')
+ invoice_method: order
+ location_id: stock.stock_location_stock
+ order_line:
+ - date_planned: !eval time.strftime('%Y-%m-%d')
+ name: Pen Drive
+ price_unit: 500.0
+ product_id: 'product_product_pendrive1'
+ product_qty: 10.0
+ product_uom: product.product_uom_unit
+ partner_address_id: base.res_partner_address_7
+ partner_id: base.res_partner_4
+ pricelist_id: purchase.list0
+-
+ Initially Second purchase order is in the draft state.
+-
+ !assert {model: purchase.order, id: purchase_order_pendrive2}:
+ - state == 'draft'
+-
+ I have merged first and second purchase order which are in draft state, belong to the same supplier,have same stock location, same pricelist.
+-
+ !python {model: purchase.order.group}: |
+ ids = [ref("purchase_order_pendrive1"),ref("purchase_order_pendrive2")]
+ self.fields_view_get(cr, uid, context={'active_ids': ids})
+ self.merge_orders(cr, uid, [1], context={'active_ids': ids})
+
+
\ No newline at end of file
diff --git a/addons/purchase/wizard/purchase_installer.py b/addons/purchase/wizard/purchase_installer.py
index be99a41a3cc..a96d07f6caf 100644
--- a/addons/purchase/wizard/purchase_installer.py
+++ b/addons/purchase/wizard/purchase_installer.py
@@ -20,13 +20,28 @@
##############################################################################
from osv import fields, osv
-class purchase_installer(osv.osv_memory):
- _inherit = 'base.setup.installer'
+class purchase_config_wizard(osv.osv_memory):
+ _name = 'purchase.config.wizard'
+ _inherit = 'res.config'
_columns = {
- 'purchase_requisition':fields.boolean('Purchase Requisition',help="Manages your Purchase Requisition and allows you to easily keep track and manage all your purchase orders."),
- 'purchase_analytic_plans': fields.boolean('Purchase Analytic Plans',help="Manages analytic distribution and purchase orders.")
+ 'default_method' : fields.selection(
+ [('manual', 'Based on Purchase Order Lines'),
+ ('picking', 'Based on Receptions'),
+ ('order', 'Pre-Generate Draft Invoices on Based Purchase Orders'),
+ ], 'Default Invoicing Control Method', required=True,
+ )
}
-purchase_installer()
+ _defaults = {
+ 'default_method': lambda s,c,u,ctx: s.pool.get('purchase.order').default_get(c,u,['invoice_method'],context=ctx)['invoice_method']
+ }
+
+ def execute(self, cr, uid, ids, context=None):
+ wizard = self.browse(cr, uid, ids, context=context)[0]
+ proxy = self.pool.get('ir.values')
+ proxy.set(cr, uid, 'default', False, 'invoice_method', ['purchase.order'], wizard.default_method),
+ return {'type' : 'ir.actions.act_window_close'}
+
+purchase_config_wizard()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/purchase/wizard/purchase_installer.xml b/addons/purchase/wizard/purchase_installer.xml
index e296b14ca91..37ae97e9eca 100644
--- a/addons/purchase/wizard/purchase_installer.xml
+++ b/addons/purchase/wizard/purchase_installer.xml
@@ -1,21 +1,72 @@
-
- Purchases Application Configuration
- base.setup.installer
+
+
+ Create or Import Suppliers
+ ir.actions.act_window
+ res.partner
+ form
+ tree,form
+ {'search_default_supplier': 1, 'default_supplier' : True, 'default_customer' : False}
+
+ Create or Import Suppliers and their contacts manually from this form or you can import your existing partners by CSV spreadsheet from "Import Data" wizard
+
+
+
+ Purchase Management
+ 5
+
+
+
+
+
+
+
+
+ Invoicing Control on Purchases
+ purchase.config.wizardform
-
+
-
-
-
-
-
-
+
+ Invoicing Control on Purchases
+
+
+
+ Invoicing Control on Purchases
+
+
+ This tool will help you to select the method you want to use to control supplier invoices.
+
+
+
+ 12
+
+
+
+
+
+
+
+
+
+ Set the Default Invoicing Control Method
+ purchase.config.wizard
+ form
+ form
+ new
+
+
+
+
+
+
+ once
+
diff --git a/addons/purchase_analytic_plans/__openerp__.py b/addons/purchase_analytic_plans/__openerp__.py
index 56d9bd59051..a29fd64944c 100644
--- a/addons/purchase_analytic_plans/__openerp__.py
+++ b/addons/purchase_analytic_plans/__openerp__.py
@@ -21,9 +21,9 @@
{
- 'name': 'Purchase Analytic Distribution Management',
+ 'name': 'Purchase Analytic Plans',
'version': '1.0',
- 'category': 'Purchases',
+ 'category': 'Purchase Management',
'description': """
The base module to manage analytic distribution and purchase orders.
====================================================================
diff --git a/addons/purchase_double_validation/__openerp__.py b/addons/purchase_double_validation/__openerp__.py
index c111d0679c1..c02da2fc9d7 100644
--- a/addons/purchase_double_validation/__openerp__.py
+++ b/addons/purchase_double_validation/__openerp__.py
@@ -22,7 +22,7 @@
{
"name" : "Double Validation for Purchase",
"version" : "1.1",
- "category": 'Purchases',
+ "category": 'Hidden',
'complexity': "easy",
"images" : ["images/purchase_validation.jpeg"],
"depends" : ["base","purchase"],
@@ -40,6 +40,7 @@ that exceeds minimum amount set by configuration wizard.
'purchase_double_validation_workflow.xml',
'purchase_double_validation_installer.xml'
],
+ 'test': ['test/purchase_double_validation_test.yml'],
'demo_xml': [],
'installable': True,
'active': False,
diff --git a/addons/purchase_double_validation/purchase_double_validation_installer.xml b/addons/purchase_double_validation/purchase_double_validation_installer.xml
index bc39c837b6b..490581e472b 100644
--- a/addons/purchase_double_validation/purchase_double_validation_installer.xml
+++ b/addons/purchase_double_validation/purchase_double_validation_installer.xml
@@ -40,15 +40,11 @@
new
-
- Purchase Management
- 5
-
-
-
+
+ once
diff --git a/addons/purchase_double_validation/test/purchase_double_validation_test.yml b/addons/purchase_double_validation/test/purchase_double_validation_test.yml
new file mode 100755
index 00000000000..ecc8d08a493
--- /dev/null
+++ b/addons/purchase_double_validation/test/purchase_double_validation_test.yml
@@ -0,0 +1,117 @@
+-
+ I Create new limit amount from Configure Limit Amount for Purchase wizard.
+-
+ !record {model: purchase.double.validation.installer, id: purchase_double_validation_installer_1}:
+ limit_amount: 3000
+-
+ Then I set the Limit Amount
+-
+ !python {model: purchase.double.validation.installer}: |
+ self.execute(cr, uid, [ref("purchase_double_validation_installer_1")])
+-
+ In order to test the purchase double validation flow,I start by creating a new product 'MOB1'
+-
+ !record {model: product.product, id: product_product_mob1}:
+ categ_id: 'product.product_category_3'
+ cost_method: standard
+ mes_type: fixed
+ name: MOB1
+ price_margin: 2.0
+ procure_method: make_to_stock
+ property_stock_inventory: stock.location_inventory
+ property_stock_procurement: stock.location_procurement
+ property_stock_production: stock.location_production
+ seller_delay: '1'
+ standard_price: 2000.0
+ supply_method: buy
+ type: product
+ uom_id: product.product_uom_unit
+ uom_po_id: product.product_uom_unit
+ volume: 0.0
+ warranty: 0.0
+ weight: 0.0
+ weight_net: 0.0
+-
+ In order to test the purchase double validation flow,I create a new record where "invoice_method" is From Order.
+-
+ Test for purchase double validation in which Total > = Limit Amount.
+-
+ I create purchase order for MOB1 for 3 quantity.
+-
+ !record {model: purchase.order, id: purchase_order_po11}:
+ company_id: base.main_company
+ date_order: '2011-01-1'
+ invoice_method: order
+ location_id: stock.stock_location_stock
+ order_line:
+ - date_planned: '2011-01-11'
+ name: MOB1
+ price_unit: 2000.0
+ product_id: 'product_product_mob1'
+ product_qty: 3.0
+ product_uom: product.product_uom_unit
+ state: draft
+ partner_address_id: base.res_partner_address_7
+ partner_id: base.res_partner_4
+ pricelist_id: purchase.list0
+-
+ Initially purchase order is in the draft state.
+-
+ !assert {model: purchase.order, id: purchase_order_po11}:
+ - state == 'draft'
+-
+ I confirm the purchase order for MOB1.
+-
+ !workflow {model: purchase.order, action: purchase_confirm, ref: purchase_order_po11}
+-
+ I check that the order which was initially in the draft state has transmit to confirm state for double validation.
+-
+ !assert {model: purchase.order, id: purchase_order_po11}:
+ - state == 'confirmed'
+-
+ I Approved purchase order by Supplier for MOB1.
+-
+ !workflow {model: purchase.order, action: purchase_approve, ref: purchase_order_po11}
+-
+ I check that the order which was initially in the confirmed state has transmit to approved state.
+-
+ !assert {model: purchase.order, id: purchase_order_po11}:
+ - state == 'approved'
+-
+ Test for purchase double validation in which Total < Limit Amount.
+-
+ I create purchase order for MOB1 for 1 quantity.
+-
+ !record {model: purchase.order, id: purchase_order_po12}:
+ company_id: base.main_company
+ date_order: '2011-01-02'
+ invoice_method: order
+ location_id: stock.stock_location_stock
+ order_line:
+ - date_planned: '2011-01-12'
+ name: MOB1
+ price_unit: 2000.0
+ product_id: 'product_product_mob1'
+ product_qty: 1.0
+ product_uom: product.product_uom_unit
+ state: draft
+ partner_address_id: base.res_partner_address_7
+ partner_id: base.res_partner_4
+ pricelist_id: purchase.list0
+-
+ Initially purchase order is in the draft state.
+-
+ !assert {model: purchase.order, id: purchase_order_po12}:
+ - state == 'draft'
+-
+ I confirm the purchase order for MOB1.
+-
+ !workflow {model: purchase.order, action: purchase_confirm, ref: purchase_order_po12}
+-
+ I check that the order which was initially in the draft state has transmit to approved state.
+-
+ !assert {model: purchase.order, id: purchase_order_po12}:
+ - state == 'approved'
+
+
+
\ No newline at end of file
diff --git a/addons/purchase_requisition/__openerp__.py b/addons/purchase_requisition/__openerp__.py
index a3658414e0f..d1ec2b1c260 100644
--- a/addons/purchase_requisition/__openerp__.py
+++ b/addons/purchase_requisition/__openerp__.py
@@ -18,10 +18,10 @@
#
##############################################################################
{
- "name" : "Purchase - Purchase Requisition",
+ "name" : "Purchase Requisition",
"version" : "0.1",
"author" : "OpenERP SA",
- "category" : "Purchases",
+ "category" : "Purchase Management",
'complexity': "easy",
"images" : ['images/purchase_requisitions.jpeg'],
"website" : "http://www.openerp.com",
@@ -43,7 +43,9 @@ This new object will regroup and will allow you to easily keep track and order a
"security/ir.model.access.csv","purchase_requisition_sequence.xml"
],
"active": False,
- "test":['test/purchase_requisition_report.yml'],
+ "test":['test/purchase_requisition_report.yml',
+ 'test/purchase_requisition_test.yml',
+ ],
"installable": True,
"certificate" : "001023264099823179629",
}
diff --git a/addons/purchase_requisition/i18n/fr.po b/addons/purchase_requisition/i18n/fr.po
index 58b7e9b9d25..41b8bde6141 100644
--- a/addons/purchase_requisition/i18n/fr.po
+++ b/addons/purchase_requisition/i18n/fr.po
@@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
-"PO-Revision-Date: 2011-01-18 16:46+0000\n"
-"Last-Translator: Fabien (Open ERP) \n"
+"PO-Revision-Date: 2011-09-26 12:22+0000\n"
+"Last-Translator: lholivier \n"
"Language-Team: French \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 05:57+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-09-27 04:47+0000\n"
+"X-Generator: Launchpad (build 14028)\n"
#. module: purchase_requisition
#: view:purchase.requisition:0
@@ -193,11 +193,11 @@ msgid ""
"negotiation, once you have reviewed all the supplier's offers, you can "
"validate some and cancel others."
msgstr ""
-"Une demande d'achat est une étape avant la demande de devis. Dans une "
-"demande d'achat (ou appel d'offre), vous pouvez enregistrer les produits que "
-"vous avez besoin d'acheter et automatiser la création des demandes de devis "
-"à vos fournisseurs. Après la négociation, quand vous avez toutes les offres "
-"de vos fournisseurs, vous pouvez en valider certaines et en annuler d'autres."
+"La demande d'achat précède la demande de devis. La demande d'achat "
+"répertorie les produits dont on a besoin et on peut y déclencher des "
+"demandes de devis auprès des fournisseurs. Aprés la négociation, lorsque "
+"toutes les offres des fournisseurs ont été examinées, vous pouvez valider "
+"certaines offres et éliminer les autres."
#. module: purchase_requisition
#: field:purchase.requisition.line,product_qty:0
@@ -344,7 +344,7 @@ msgstr "Référence"
#. module: purchase_requisition
#: model:ir.model,name:purchase_requisition.model_procurement_order
msgid "Procurement"
-msgstr "Besoin"
+msgstr "Approvisionnement"
#. module: purchase_requisition
#: field:purchase.requisition,warehouse_id:0
@@ -434,3 +434,5 @@ msgid ""
"You have already one %s purchase order for this partner, you must cancel "
"this purchase order to create a new quotation."
msgstr ""
+"Il existe déjà une commande %s pour ce partenaire, vous devez annuler cette "
+"commande avant de faire un nouveau devis."
diff --git a/addons/purchase_requisition/purchase_requisition.py b/addons/purchase_requisition/purchase_requisition.py
index cb31709b20e..00c449dfd7d 100644
--- a/addons/purchase_requisition/purchase_requisition.py
+++ b/addons/purchase_requisition/purchase_requisition.py
@@ -41,7 +41,7 @@ class purchase_requisition(osv.osv):
'purchase_ids' : fields.one2many('purchase.order','requisition_id','Purchase Orders',states={'done': [('readonly', True)]}),
'line_ids' : fields.one2many('purchase.requisition.line','requisition_id','Products to Purchase',states={'done': [('readonly', True)]}),
'warehouse_id': fields.many2one('stock.warehouse', 'Warehouse'),
- 'state': fields.selection([('draft','Draft'),('in_progress','In Progress'),('cancel','Cancelled'),('done','Done')], 'State', required=True)
+ 'state': fields.selection([('draft','New'),('in_progress','In Progress'),('cancel','Cancelled'),('done','Done')], 'State', required=True)
}
_defaults = {
'date_start': time.strftime('%Y-%m-%d %H:%M:%S'),
diff --git a/addons/purchase_requisition/purchase_requisition_view.xml b/addons/purchase_requisition/purchase_requisition_view.xml
index 27dcedf9bd9..06ee94c3941 100644
--- a/addons/purchase_requisition/purchase_requisition_view.xml
+++ b/addons/purchase_requisition/purchase_requisition_view.xml
@@ -21,11 +21,26 @@
purchase.order
-
+
+
+
+
+ request.for.quotation.select.inherit
+ form
+ purchase.order
+
+
+
+
+
+
+
+
+
purchase.requisition.formform
@@ -60,9 +75,9 @@
-
+
-
+
@@ -78,8 +93,8 @@
-
-
+
+
@@ -120,19 +135,20 @@
-
+
+
-
-
+
+
@@ -187,12 +203,12 @@
-
-
+
diff --git a/addons/purchase_requisition/test/purchase_requisition_test.yml b/addons/purchase_requisition/test/purchase_requisition_test.yml
new file mode 100755
index 00000000000..403eaca04fc
--- /dev/null
+++ b/addons/purchase_requisition/test/purchase_requisition_test.yml
@@ -0,0 +1,166 @@
+-
+ In order to test the purchase requisition flow,I start by creating a new product 'MOB1'
+-
+ !record {model: product.product, id: product_product_mob1}:
+ name: MOB1
+ categ_id: product.product_category_3
+ cost_method: standard
+ mes_type: fixed
+ price_margin: 2.0
+ procure_method: make_to_stock
+ property_stock_inventory: stock.location_inventory
+ property_stock_procurement: stock.location_procurement
+ property_stock_production: stock.location_production
+ standard_price: 2000.0
+ supply_method: buy
+ type: product
+ uom_id: product.product_uom_unit
+ uom_po_id: product.product_uom_unit
+ volume: 0.0
+ warranty: 0.0
+ weight: 0.0
+ weight_net: 0.0
+-
+ I create purchase requisition for MOB1 for 1 quantity.
+-
+ !record {model: purchase.requisition, id: purchase_requisition_te0}:
+ company_id: base.main_company
+ exclusive: multiple
+ line_ids:
+ - company_id: base.main_company
+ product_id: product_product_mob1
+ product_qty: 10.0
+ product_uom_id: product.product_uom_unit
+ name: TE00009
+-
+ Initially purchase requisition is in draft state.
+-
+ !assert {model: purchase.requisition, id: purchase_requisition_te0}:
+ - state == 'draft'
+-
+ Copy purchase requisition which is in draft state than confirm and Done it.
+-
+ !python {model: purchase.requisition}: |
+ copy_id = self.copy(cr, uid, ref("purchase_requisition_te0"))
+ self.tender_cancel(cr, uid, [copy_id], context=None)
+ self.tender_reset(cr, uid, [copy_id], context=None)
+ self.tender_in_progress(cr, uid, [copy_id], context=None)
+ self.tender_done(cr, uid, [copy_id], context=None)
+-
+ I confirm the purchase requisition for MOB1.
+-
+ !python {model: purchase.requisition}: |
+ self.tender_in_progress(cr, uid, [ref("purchase_requisition_te0")])
+-
+ I check that the purchase requisition which was initially in the draft state has transmit to In Progress after confirm it.
+-
+ !assert {model: purchase.requisition, id: purchase_requisition_te0}:
+ - state == 'in_progress'
+-
+ In order to create a purchase order for 'Axelor', i click on the wizard 'Request a Quotation' and create record for wizard.
+-
+ !record {model: purchase.requisition.partner, id: purchase_requisition_partner_0}:
+ partner_address_id: base.res_partner_address_3000
+ partner_id: base.res_partner_desertic_hispafuentes
+-
+ I click on 'Create Quotation' for creating PO.
+-
+ !python {model: purchase.requisition.partner}: |
+ self.create_order(cr, uid, [ref("purchase_requisition_partner_0")], {"active_model": "purchase.requisition",
+ "active_ids": [ref("purchase_requisition_te0")],"active_id": ref("purchase_requisition_te0"), })
+-
+ I confirm the purchase order of Axelor.
+-
+ !python {model: purchase.order}: |
+ purchase_id= self.search(cr, uid, [('requisition_id','=',ref("purchase_requisition_te0"))])
+ import netsvc
+ wf_service = netsvc.LocalService("workflow")
+ if purchase_id:
+ wf_service.trg_validate(uid, 'purchase.order',purchase_id[0],'purchase_confirm', cr)
+ wf_service.trg_validate(uid, 'purchase.order',purchase_id[0],'purchase_approve', cr)
+-
+ I check that Quotation of Axelor is Approved.
+-
+ !python {model: purchase.order}: |
+ purchase_id= self.search(cr, uid, [('requisition_id','=',ref("purchase_requisition_te0"))])[0]
+ state=self.browse(cr,uid,purchase_id).state
+ assert (state=='approved')
+-
+ I click on Done button
+-
+ !python {model: purchase.requisition}: |
+ self.tender_done(cr, uid, [ref("purchase_requisition_te0")],)
+-
+ I check that after click on Done button state is in done.
+-
+ !assert {model: purchase.requisition, id: purchase_requisition_te0}:
+ - state == 'done'
+-
+ In order to test the purchase requisition flow for Requisition Type is exclusive
+-
+ I create purchase requisition for Requisition Type is exclusive
+-
+ !record {model: purchase.requisition, id: purchase_requisition_ex1}:
+ company_id: base.main_company
+ exclusive: exclusive
+ line_ids:
+ - company_id: base.main_company
+ product_id: product_product_mob1
+ product_qty: 10.0
+ product_uom_id: product.product_uom_unit
+ name: TE000010
+-
+ I Create a First Purchase Order for the supplier 'Distrib PC'.
+-
+ !record {model: purchase.requisition.partner, id: purchase_requisition_partner_1}:
+ partner_address_id: base.res_partner_address_7
+ partner_id: base.res_partner_4
+-
+ I create Quotations For supplier 'Distrib PC'.
+-
+ !python {model: purchase.requisition.partner}: |
+ self.create_order(cr, uid, [ref("purchase_requisition_partner_1")], {"active_model": "purchase.requisition",
+ "active_ids": [ref("purchase_requisition_ex1")],"active_id": ref("purchase_requisition_ex1"), })
+-
+ I Create a Second Purchase Order for the supplier ASUStek.
+-
+ !record {model: purchase.requisition.partner, id: purchase_requisition_partner_2}:
+ partner_address_id: base.res_partner_address_tang
+ partner_id: base.res_partner_asus
+-
+ I create Quotations For supplier 'ASUStek'.
+-
+ !python {model: purchase.requisition.partner}: |
+ self.create_order(cr, uid, [ref("purchase_requisition_partner_2")], {"active_model": "purchase.requisition",
+ "active_ids": [ref("purchase_requisition_ex1")],"active_id": ref("purchase_requisition_ex1"), })
+-
+ I check that Initially purchase requisition is draft state.
+-
+ !assert {model: purchase.requisition, id: purchase_requisition_ex1}:
+ - state == 'draft'
+-
+ I confirm the Second purchase order of ASUStek, than check that Quotation is Approved.
+-
+ !python {model: purchase.order}: |
+ purchase_id= self.search(cr, uid, [('partner_id','=',ref("base.res_partner_asus")),('requisition_id','=',ref("purchase_requisition_ex1"))])
+ import netsvc
+ wf_service = netsvc.LocalService("workflow")
+ if purchase_id:
+ wf_service.trg_validate(uid, 'purchase.order',purchase_id[0],'purchase_confirm', cr)
+ wf_service.trg_validate(uid, 'purchase.order',purchase_id[0],'purchase_approve', cr)
+ state=self.browse(cr,uid,purchase_id[0]).state
+ assert (state=='approved')
+
+-
+ I check that Quotation of Distrib PC is cancelled.
+-
+ !python {model: purchase.order}: |
+ partner_id=self.pool.get('res.partner').search(cr,uid,[('name','=','Distrib PC')])[0]
+ purchase_id= self.search(cr, uid, [('partner_id','=',partner_id),('requisition_id','=',ref("purchase_requisition_ex1"))])[0]
+ state=self.browse(cr,uid,purchase_id).state
+ assert (state=='cancel')
+-
+ I check that Purchase Requisition is Done.
+-
+ !assert {model: purchase.requisition, id: purchase_requisition_ex1}:
+ - state == 'done'
diff --git a/addons/report_designer/__init__.py b/addons/report_designer/__init__.py
index 3511d091ecb..9a3d6d2fbb6 100644
--- a/addons/report_designer/__init__.py
+++ b/addons/report_designer/__init__.py
@@ -19,6 +19,5 @@
#
##############################################################################
-import installer
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/report_designer/__openerp__.py b/addons/report_designer/__openerp__.py
index 73982086c8f..fd29d2b96ee 100644
--- a/addons/report_designer/__openerp__.py
+++ b/addons/report_designer/__openerp__.py
@@ -21,28 +21,27 @@
{
- "name" : "Reporting Tools Installer",
+ "name" : "Reporting Hidden Installer",
"version" : "1.0",
"depends" : ["base", "base_setup"],
"author" : "OpenERP SA",
- "category": "Tools",
+ "category": "Hidden",
"description": """
-Installer for reporting tools.
+Installer for reporting Hidden.
==============================
-Makes the Reporting Tools Configuration available from where you can install
+Makes the Reporting Hidden Configuration available from where you can install
modules like base_report_designer and base_report_creator.
""",
'website': 'http://www.openerp.com',
'init_xml': [],
'update_xml': [
'security/ir.model.access.csv',
- 'report_designer_installer.xml',
],
'demo_xml': [],
'installable': True,
'active': False,
'certificate' : '00764037194670093149',
- 'images': ['images/config_reporting_tools.jpeg'],
+ 'images': ['images/config_reporting_Hidden.jpeg'],
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/report_designer/report_designer_installer.xml b/addons/report_designer/report_designer_installer.xml
deleted file mode 100644
index d8d1798578e..00000000000
--- a/addons/report_designer/report_designer_installer.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
- report_designer.installer.view
- base.setup.installer
- form
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/report_intrastat/__openerp__.py b/addons/report_intrastat/__openerp__.py
index b3101317ece..6c80e0f2b81 100644
--- a/addons/report_intrastat/__openerp__.py
+++ b/addons/report_intrastat/__openerp__.py
@@ -23,7 +23,7 @@
{
'name': 'Intrastat Reporting',
'version': '1.0',
- 'category': 'Warehouse',
+ 'category': 'Hidden',
'description': """
A module that adds intrastat reports.
=====================================
diff --git a/addons/report_webkit/__openerp__.py b/addons/report_webkit/__openerp__.py
index e593791f826..339818a646b 100644
--- a/addons/report_webkit/__openerp__.py
+++ b/addons/report_webkit/__openerp__.py
@@ -74,7 +74,7 @@ Web client WYSIWYG
"version" : "0.9",
"depends" : ["base"],
"author" : "Camptocamp SA - NBessi",
- "category": "Tools",
+ "category": "Hidden",
"url": "http://http://www.camptocamp.com/",
"data": [ "security/ir.model.access.csv",
"data.xml",
diff --git a/addons/report_webkit_sample/__openerp__.py b/addons/report_webkit_sample/__openerp__.py
index 3670aa4c5d2..d485692c164 100644
--- a/addons/report_webkit_sample/__openerp__.py
+++ b/addons/report_webkit_sample/__openerp__.py
@@ -43,7 +43,7 @@ You have to create the print buttons by calling the wizard. For more details see
""",
"version" : "0.9",
"depends" : ["base", "account", "report_webkit"],
- "category": "Tools",
+ "category": "Hidden",
"author" : "Camptocamp SA - NBessi",
"url": "http://www.camptocamp.com/",
"data": ["report_webkit_html_view.xml",
diff --git a/addons/resource/__openerp__.py b/addons/resource/__openerp__.py
index dab9b06d5f8..f1e020215a6 100644
--- a/addons/resource/__openerp__.py
+++ b/addons/resource/__openerp__.py
@@ -23,7 +23,7 @@
"name" : "Resource",
"version" : "1.1",
"author" : "OpenERP SA",
- "category" : "Project Management",
+ "category" : "Hidden",
"website" : "http://www.openerp.com",
"description": """
Module for resource management.
diff --git a/addons/sale/__init__.py b/addons/sale/__init__.py
index 3c7af56e808..c7be8e7e14b 100644
--- a/addons/sale/__init__.py
+++ b/addons/sale/__init__.py
@@ -25,7 +25,6 @@
import sale
import stock
-import sale_installer
import wizard
import report
import company
diff --git a/addons/sale/__openerp__.py b/addons/sale/__openerp__.py
index c983edc881e..ac2f2090c7f 100644
--- a/addons/sale/__openerp__.py
+++ b/addons/sale/__openerp__.py
@@ -22,8 +22,7 @@
{
'name': 'Sales Management',
'version': '1.0',
- 'category': 'Sales',
- 'category': 'Generic Modules/Sales & Purchases',
+ 'category': 'Sales Management',
'complexity': "easy",
'description': """
The base module to manage quotations and sales orders.
@@ -79,7 +78,6 @@ Dashboard for Sales Manager that includes:
'sale_sequence.xml',
'sale_data.xml',
'sale_view.xml',
- 'sale_installer.xml',
'report/sale_report_view.xml',
'sale_report.xml',
'stock_view.xml',
diff --git a/addons/sale/i18n/da.po b/addons/sale/i18n/da.po
new file mode 100644
index 00000000000..94b0fb5d26b
--- /dev/null
+++ b/addons/sale/i18n/da.po
@@ -0,0 +1,2059 @@
+# Danish translation for openobject-addons
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR , 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2011-01-11 11:16+0000\n"
+"PO-Revision-Date: 2011-09-22 19:39+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Danish \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2011-09-23 04:38+0000\n"
+"X-Generator: Launchpad (build 14012)\n"
+
+#. module: sale
+#: view:board.board:0
+#: model:ir.actions.act_window,name:sale.action_sales_by_salesman
+msgid "Sales by Salesman in last 90 days"
+msgstr "Salg pr. sælger de sidste 90 dage"
+
+#. module: sale
+#: help:sale.installer,delivery:0
+msgid "Allows you to compute delivery costs on your quotations."
+msgstr ""
+
+#. module: sale
+#: help:sale.order,picking_policy:0
+msgid ""
+"If you don't have enough stock available to deliver all at once, do you "
+"accept partial shipments or not?"
+msgstr ""
+
+#. module: sale
+#: help:sale.order,partner_shipping_id:0
+msgid "Shipping address for current sales order."
+msgstr ""
+
+#. module: sale
+#: field:sale.advance.payment.inv,qtty:0
+#: report:sale.order:0
+msgid "Quantity"
+msgstr ""
+
+#. module: sale
+#: view:sale.report:0
+#: field:sale.report,day:0
+msgid "Day"
+msgstr "Dag"
+
+#. module: sale
+#: model:process.transition.action,name:sale.process_transition_action_cancelorder0
+#: view:sale.order:0
+msgid "Cancel Order"
+msgstr ""
+
+#. module: sale
+#: view:sale.config.picking_policy:0
+msgid "Configure Sales Order Logistics"
+msgstr ""
+
+#. module: sale
+#: code:addons/sale/sale.py:603
+#, python-format
+msgid "The quotation '%s' has been converted to a sales order."
+msgstr ""
+
+#. module: sale
+#: selection:sale.order,order_policy:0
+msgid "Payment Before Delivery"
+msgstr ""
+
+#. module: sale
+#: code:addons/sale/wizard/sale_make_invoice.py:42
+#, python-format
+msgid "Warning !"
+msgstr "Advarsel!"
+
+#. module: sale
+#: report:sale.order:0
+msgid "VAT"
+msgstr "Moms"
+
+#. module: sale
+#: model:process.node,note:sale.process_node_saleorderprocurement0
+msgid "Drives procurement orders for every sales order line."
+msgstr ""
+
+#. module: sale
+#: selection:sale.config.picking_policy,picking_policy:0
+msgid "All at Once"
+msgstr ""
+
+#. module: sale
+#: field:sale.order,project_id:0
+#: view:sale.report:0
+#: field:sale.report,analytic_account_id:0
+#: field:sale.shop,project_id:0
+msgid "Analytic Account"
+msgstr ""
+
+#. module: sale
+#: model:ir.actions.act_window,help:sale.action_order_line_tree2
+msgid ""
+"Here is a list of each sales order line to be invoiced. You can invoice "
+"sales orders partially, by lines of sales order. You do not need this list "
+"if you invoice from the delivery orders or if you invoice sales totally."
+msgstr ""
+
+#. module: sale
+#: model:process.node,name:sale.process_node_saleprocurement0
+msgid "Procurement Order"
+msgstr "Indkøbsordre"
+
+#. module: sale
+#: view:sale.report:0
+#: field:sale.report,partner_id:0
+msgid "Partner"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+msgid "Order Line"
+msgstr "Ordre linie"
+
+#. module: sale
+#: model:ir.actions.act_window,help:sale.action_order_form
+msgid ""
+"Sales Orders help you manage quotations and orders from your customers. "
+"OpenERP suggests that you start by creating a quotation. Once it is "
+"confirmed, the quotation will be converted into a Sales Order. OpenERP can "
+"handle several types of products so that a sales order may trigger tasks, "
+"delivery orders, manufacturing orders, purchases and so on. Based on the "
+"configuration of the sales order, a draft invoice will be generated so that "
+"you just have to confirm it when you want to bill your customer."
+msgstr ""
+
+#. module: sale
+#: help:sale.order,invoice_quantity:0
+msgid ""
+"The sale order will automatically create the invoice proposition (draft "
+"invoice). Ordered and delivered quantities may not be the same. You have to "
+"choose if you want your invoice based on ordered or shipped quantities. If "
+"the product is a service, shipped quantities means hours spent on the "
+"associated tasks."
+msgstr ""
+
+#. module: sale
+#: field:sale.shop,payment_default_id:0
+msgid "Default Payment Term"
+msgstr ""
+
+#. module: sale
+#: model:ir.actions.act_window,name:sale.action_config_picking_policy
+msgid "Configure Picking Policy for Sales Order"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+#: view:sale.order.line:0
+#: field:sale.order.line,state:0
+#: view:sale.report:0
+msgid "State"
+msgstr ""
+
+#. module: sale
+#: report:sale.order:0
+msgid "Disc.(%)"
+msgstr ""
+
+#. module: sale
+#: model:process.transition.action,name:sale.process_transition_action_forceassignation0
+msgid "Force Assignation"
+msgstr ""
+
+#. module: sale
+#: help:sale.make.invoice,grouped:0
+msgid "Check the box to group the invoices for the same customers"
+msgstr ""
+
+#. module: sale
+#: selection:sale.order,invoice_quantity:0
+msgid "Ordered Quantities"
+msgstr ""
+
+#. module: sale
+#: view:sale.report:0
+msgid "Sales by Salesman"
+msgstr "Salg pr. sælger"
+
+#. module: sale
+#: field:sale.order.line,move_ids:0
+msgid "Inventory Moves"
+msgstr ""
+
+#. module: sale
+#: field:sale.order,name:0
+#: field:sale.order.line,order_id:0
+msgid "Order Reference"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+msgid "Other Information"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+msgid "Dates"
+msgstr "Datoer"
+
+#. module: sale
+#: model:process.transition,note:sale.process_transition_invoiceafterdelivery0
+msgid ""
+"The invoice is created automatically if the shipping policy is 'Invoice from "
+"pick' or 'Invoice on order after delivery'."
+msgstr ""
+
+#. module: sale
+#: model:ir.model,name:sale.model_sale_make_invoice
+msgid "Sales Make Invoice"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+msgid "Recreate Packing"
+msgstr ""
+
+#. module: sale
+#: field:sale.order.line,discount:0
+msgid "Discount (%)"
+msgstr "Rabat (%)"
+
+#. module: sale
+#: help:res.company,security_lead:0
+msgid ""
+"This is the days added to what you promise to customers for security purpose"
+msgstr ""
+
+#. module: sale
+#: view:board.board:0
+#: model:ir.actions.act_window,name:sale.open_board_sales_manager
+#: model:ir.ui.menu,name:sale.menu_board_sales_manager
+msgid "Sales Manager Dashboard"
+msgstr "Salgschefs oversigt"
+
+#. module: sale
+#: field:sale.order.line,product_packaging:0
+msgid "Packaging"
+msgstr ""
+
+#. module: sale
+#: model:process.transition,name:sale.process_transition_saleinvoice0
+msgid "From a sales order"
+msgstr ""
+
+#. module: sale
+#: field:sale.shop,name:0
+msgid "Shop Name"
+msgstr ""
+
+#. module: sale
+#: code:addons/sale/sale.py:1014
+#, python-format
+msgid "No Customer Defined !"
+msgstr ""
+
+#. module: sale
+#: model:ir.actions.act_window,name:sale.action_order_tree2
+msgid "Sales in Exception"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+msgid "Set to Draft"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+msgid "Conditions"
+msgstr "Betingelser"
+
+#. module: sale
+#: help:sale.order,order_policy:0
+msgid ""
+"The Shipping Policy is used to synchronise invoice and delivery operations.\n"
+" - The 'Pay Before delivery' choice will first generate the invoice and "
+"then generate the picking order after the payment of this invoice.\n"
+" - The 'Shipping & Manual Invoice' will create the picking order directly "
+"and wait for the user to manually click on the 'Invoice' button to generate "
+"the draft invoice.\n"
+" - The 'Invoice On Order After Delivery' choice will generate the draft "
+"invoice based on sales order after all picking lists have been finished.\n"
+" - The 'Invoice From The Picking' choice is used to create an invoice "
+"during the picking process."
+msgstr ""
+
+#. module: sale
+#: code:addons/sale/sale.py:939
+#, python-format
+msgid ""
+"There is no income category account defined in default Properties for "
+"Product Category or Fiscal Position is not defined !"
+msgstr ""
+
+#. module: sale
+#: view:sale.installer:0
+msgid "Configure"
+msgstr ""
+
+#. module: sale
+#: constraint:stock.move:0
+msgid "You try to assign a lot which is not from the same product"
+msgstr ""
+
+#. module: sale
+#: code:addons/sale/sale.py:620
+#, python-format
+msgid "invalid mode for test_state"
+msgstr ""
+
+#. module: sale
+#: selection:sale.report,month:0
+msgid "June"
+msgstr "Juni"
+
+#. module: sale
+#: code:addons/sale/sale.py:584
+#, python-format
+msgid "Could not cancel this sales order !"
+msgstr ""
+
+#. module: sale
+#: model:ir.model,name:sale.model_sale_report
+msgid "Sales Orders Statistics"
+msgstr ""
+
+#. module: sale
+#: help:sale.order,project_id:0
+msgid "The analytic account related to a sales order."
+msgstr ""
+
+#. module: sale
+#: selection:sale.report,month:0
+msgid "October"
+msgstr "Oktober"
+
+#. module: sale
+#: view:board.board:0
+#: model:ir.actions.act_window,name:sale.action_quotation_for_sale
+#: view:sale.order:0
+#: view:sale.report:0
+msgid "Quotations"
+msgstr ""
+
+#. module: sale
+#: help:sale.order,pricelist_id:0
+msgid "Pricelist for current sales order."
+msgstr ""
+
+#. module: sale
+#: selection:sale.config.picking_policy,step:0
+msgid "Delivery Order Only"
+msgstr ""
+
+#. module: sale
+#: report:sale.order:0
+msgid "TVA :"
+msgstr ""
+
+#. module: sale
+#: help:sale.order.line,delay:0
+msgid ""
+"Number of days between the order confirmation the shipping of the products "
+"to the customer"
+msgstr ""
+
+#. module: sale
+#: report:sale.order:0
+msgid "Quotation Date"
+msgstr ""
+
+#. module: sale
+#: field:sale.order,fiscal_position:0
+msgid "Fiscal Position"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+#: view:sale.order.line:0
+msgid "UoM"
+msgstr ""
+
+#. module: sale
+#: field:sale.order.line,number_packages:0
+msgid "Number Packages"
+msgstr ""
+
+#. module: sale
+#: selection:sale.order,state:0
+#: selection:sale.report,state:0
+msgid "In Progress"
+msgstr ""
+
+#. module: sale
+#: model:process.transition,note:sale.process_transition_confirmquotation0
+msgid ""
+"The salesman confirms the quotation. The state of the sales order becomes "
+"'In progress' or 'Manual in progress'."
+msgstr ""
+
+#. module: sale
+#: code:addons/sale/sale.py:971
+#, python-format
+msgid "You must first cancel stock moves attached to this sales order line."
+msgstr ""
+
+#. module: sale
+#: code:addons/sale/sale.py:1042
+#, python-format
+msgid "(n/a)"
+msgstr ""
+
+#. module: sale
+#: help:sale.advance.payment.inv,product_id:0
+msgid ""
+"Select a product of type service which is called 'Advance Product'. You may "
+"have to create it and set it as a default value on this field."
+msgstr ""
+
+#. module: sale
+#: report:sale.order:0
+msgid "Tel. :"
+msgstr "Tel:"
+
+#. module: sale
+#: code:addons/sale/wizard/sale_make_invoice_advance.py:64
+#, python-format
+msgid ""
+"You cannot make an advance on a sales order "
+"that is defined as 'Automatic Invoice after delivery'."
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+#: field:sale.order,note:0
+#: view:sale.order.line:0
+#: field:sale.order.line,notes:0
+msgid "Notes"
+msgstr ""
+
+#. module: sale
+#: help:sale.order,partner_invoice_id:0
+msgid "Invoice address for current sales order."
+msgstr ""
+
+#. module: sale
+#: view:sale.installer:0
+msgid "Enhance your core Sales Application with additional functionalities."
+msgstr ""
+
+#. module: sale
+#: field:sale.order,invoiced_rate:0
+#: field:sale.order.line,invoiced:0
+msgid "Invoiced"
+msgstr "Faktureret"
+
+#. module: sale
+#: model:process.node,name:sale.process_node_deliveryorder0
+msgid "Delivery Order"
+msgstr ""
+
+#. module: sale
+#: field:sale.order,date_confirm:0
+msgid "Confirmation Date"
+msgstr ""
+
+#. module: sale
+#: field:sale.order.line,address_allotment_id:0
+msgid "Allotment Partner"
+msgstr ""
+
+#. module: sale
+#: sql_constraint:sale.order:0
+msgid "Order Reference must be unique !"
+msgstr ""
+
+#. module: sale
+#: selection:sale.report,month:0
+msgid "March"
+msgstr "Marts"
+
+#. module: sale
+#: help:sale.order,amount_total:0
+msgid "The total amount."
+msgstr ""
+
+#. module: sale
+#: field:sale.order.line,price_subtotal:0
+msgid "Subtotal"
+msgstr "Subtotal"
+
+#. module: sale
+#: report:sale.order:0
+msgid "Invoice address :"
+msgstr "Faktura adresse:"
+
+#. module: sale
+#: model:process.transition,note:sale.process_transition_saleorderprocurement0
+msgid ""
+"For every sales order line, a procurement order is created to supply the "
+"sold product."
+msgstr ""
+
+#. module: sale
+#: help:sale.order,incoterm:0
+msgid ""
+"Incoterm which stands for 'International Commercial terms' implies its a "
+"series of sales terms which are used in the commercial transaction."
+msgstr ""
+
+#. module: sale
+#: field:sale.order,partner_invoice_id:0
+msgid "Invoice Address"
+msgstr "Faktura adresse"
+
+#. module: sale
+#: view:sale.order.line:0
+msgid "Search Uninvoiced Lines"
+msgstr ""
+
+#. module: sale
+#: model:ir.actions.report.xml,name:sale.report_sale_order
+msgid "Quotation / Order"
+msgstr ""
+
+#. module: sale
+#: view:sale.report:0
+#: field:sale.report,nbr:0
+msgid "# of Lines"
+msgstr ""
+
+#. module: sale
+#: model:ir.model,name:sale.model_sale_open_invoice
+msgid "Sales Open Invoice"
+msgstr ""
+
+#. module: sale
+#: model:ir.model,name:sale.model_sale_order_line
+#: field:stock.move,sale_line_id:0
+msgid "Sales Order Line"
+msgstr ""
+
+#. module: sale
+#: view:sale.config.picking_policy:0
+msgid "Setup your sales workflow and default values."
+msgstr ""
+
+#. module: sale
+#: field:sale.shop,warehouse_id:0
+msgid "Warehouse"
+msgstr "Lagersted"
+
+#. module: sale
+#: report:sale.order:0
+msgid "Order N°"
+msgstr ""
+
+#. module: sale
+#: field:sale.order,order_line:0
+msgid "Order Lines"
+msgstr "Ordre linier"
+
+#. module: sale
+#: view:sale.order:0
+msgid "Untaxed amount"
+msgstr ""
+
+#. module: sale
+#: model:ir.actions.act_window,name:sale.action_order_line_tree2
+#: model:ir.ui.menu,name:sale.menu_invoicing_sales_order_lines
+msgid "Lines to Invoice"
+msgstr ""
+
+#. module: sale
+#: field:sale.order.line,product_uom_qty:0
+msgid "Quantity (UoM)"
+msgstr ""
+
+#. module: sale
+#: field:sale.order,create_date:0
+msgid "Creation Date"
+msgstr "Oprettelses dato"
+
+#. module: sale
+#: model:ir.actions.act_window,name:sale.action_order_line_tree3
+msgid "Uninvoiced and Delivered Lines"
+msgstr ""
+
+#. module: sale
+#: report:sale.order:0
+msgid "Total :"
+msgstr "Total:"
+
+#. module: sale
+#: view:sale.report:0
+msgid "My Sales"
+msgstr ""
+
+#. module: sale
+#: code:addons/sale/sale.py:290
+#: code:addons/sale/sale.py:966
+#: code:addons/sale/sale.py:1165
+#, python-format
+msgid "Invalid action !"
+msgstr ""
+
+#. module: sale
+#: field:sale.order,pricelist_id:0
+#: field:sale.report,pricelist_id:0
+#: field:sale.shop,pricelist_id:0
+msgid "Pricelist"
+msgstr "Prisliste"
+
+#. module: sale
+#: view:sale.report:0
+#: field:sale.report,product_uom_qty:0
+msgid "# of Qty"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+msgid "Order Date"
+msgstr "Ordredato"
+
+#. module: sale
+#: view:sale.order.line:0
+#: field:sale.report,shipped:0
+msgid "Shipped"
+msgstr "Afsendt"
+
+#. module: sale
+#: model:ir.actions.act_window,name:sale.action_order_tree5
+msgid "All Quotations"
+msgstr ""
+
+#. module: sale
+#: selection:sale.order,order_policy:0
+msgid "Invoice On Order After Delivery"
+msgstr ""
+
+#. module: sale
+#: selection:sale.report,month:0
+msgid "September"
+msgstr "September"
+
+#. module: sale
+#: view:sale.report:0
+#: field:sale.report,categ_id:0
+msgid "Category of Product"
+msgstr ""
+
+#. module: sale
+#: report:sale.order:0
+msgid "Taxes :"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+msgid "Stock Moves"
+msgstr "Lagerflytning"
+
+#. module: sale
+#: view:sale.report:0
+msgid " Year "
+msgstr " År "
+
+#. module: sale
+#: field:sale.order,state:0
+#: field:sale.report,state:0
+msgid "Order State"
+msgstr ""
+
+#. module: sale
+#: view:sale.make.invoice:0
+#: view:sale.order.line.make.invoice:0
+msgid "Do you really want to create the invoice(s) ?"
+msgstr ""
+
+#. module: sale
+#: view:sale.report:0
+msgid "Sales By Month"
+msgstr "Salg pr. måned"
+
+#. module: sale
+#: code:addons/sale/sale.py:970
+#, python-format
+msgid "Could not cancel sales order line!"
+msgstr ""
+
+#. module: sale
+#: field:res.company,security_lead:0
+msgid "Security Days"
+msgstr ""
+
+#. module: sale
+#: model:process.transition,name:sale.process_transition_saleorderprocurement0
+msgid "Procurement of sold material"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+msgid "Create Final Invoice"
+msgstr ""
+
+#. module: sale
+#: field:sale.order,partner_shipping_id:0
+msgid "Shipping Address"
+msgstr "Leveringsadresse"
+
+#. module: sale
+#: help:sale.order,shipped:0
+msgid ""
+"It indicates that the sales order has been delivered. This field is updated "
+"only after the scheduler(s) have been launched."
+msgstr ""
+
+#. module: sale
+#: view:sale.report:0
+msgid "Extended Filters..."
+msgstr ""
+
+#. module: sale
+#: model:ir.module.module,description:sale.module_meta_information
+msgid ""
+"\n"
+" The base module to manage quotations and sales orders.\n"
+"\n"
+" * Workflow with validation steps:\n"
+" - Quotation -> Sales order -> Invoice\n"
+" * Invoicing methods:\n"
+" - Invoice on order (before or after shipping)\n"
+" - Invoice on delivery\n"
+" - Invoice on timesheets\n"
+" - Advance invoice\n"
+" * Partners preferences (shipping, invoicing, incoterm, ...)\n"
+" * Products stocks and prices\n"
+" * Delivery methods:\n"
+" - all at once, multi-parcel\n"
+" - delivery costs\n"
+" * Dashboard for salesman that includes:\n"
+" * Your open quotations\n"
+" * Top 10 sales of the month\n"
+" * Cases statistics\n"
+" * Graph of sales by product\n"
+" * Graph of cases of the month\n"
+" "
+msgstr ""
+
+#. module: sale
+#: model:ir.model,name:sale.model_sale_shop
+#: view:sale.shop:0
+msgid "Sales Shop"
+msgstr ""
+
+#. module: sale
+#: model:ir.model,name:sale.model_res_company
+msgid "Companies"
+msgstr "Virksomheder"
+
+#. module: sale
+#: selection:sale.report,month:0
+msgid "November"
+msgstr "November"
+
+#. module: sale
+#: view:sale.order:0
+msgid "History"
+msgstr ""
+
+#. module: sale
+#: field:sale.config.picking_policy,picking_policy:0
+msgid "Picking Default Policy"
+msgstr ""
+
+#. module: sale
+#: help:sale.order,invoice_ids:0
+msgid ""
+"This is the list of invoices that have been generated for this sales order. "
+"The same sales order may have been invoiced in several times (by line for "
+"example)."
+msgstr ""
+
+#. module: sale
+#: report:sale.order:0
+msgid "Your Reference"
+msgstr ""
+
+#. module: sale
+#: help:sale.order,partner_order_id:0
+msgid ""
+"The name and address of the contact who requested the order or quotation."
+msgstr ""
+
+#. module: sale
+#: code:addons/sale/sale.py:966
+#, python-format
+msgid "You cannot cancel a sales order line that has already been invoiced !"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+#: view:sale.order.line:0
+msgid "Qty"
+msgstr "Antal"
+
+#. module: sale
+#: view:sale.order:0
+msgid "References"
+msgstr ""
+
+#. module: sale
+#: model:process.transition.action,name:sale.process_transition_action_cancel0
+#: model:process.transition.action,name:sale.process_transition_action_cancel1
+#: model:process.transition.action,name:sale.process_transition_action_cancel2
+#: view:sale.advance.payment.inv:0
+#: view:sale.make.invoice:0
+#: view:sale.order.line:0
+#: view:sale.order.line.make.invoice:0
+msgid "Cancel"
+msgstr ""
+
+#. module: sale
+#: field:sale.installer,sale_order_dates:0
+msgid "Sales Order Dates"
+msgstr ""
+
+#. module: sale
+#: selection:sale.order.line,state:0
+msgid "Exception"
+msgstr ""
+
+#. module: sale
+#: model:process.transition,name:sale.process_transition_invoice0
+#: model:process.transition,name:sale.process_transition_invoiceafterdelivery0
+#: model:process.transition.action,name:sale.process_transition_action_createinvoice0
+#: view:sale.advance.payment.inv:0
+#: view:sale.order.line:0
+msgid "Create Invoice"
+msgstr ""
+
+#. module: sale
+#: field:sale.installer,sale_margin:0
+msgid "Margins in Sales Orders"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+msgid "Total Tax Excluded"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+msgid "Compute"
+msgstr ""
+
+#. module: sale
+#: view:sale.report:0
+msgid "Sales by Partner"
+msgstr ""
+
+#. module: sale
+#: field:sale.order,partner_order_id:0
+msgid "Ordering Contact"
+msgstr ""
+
+#. module: sale
+#: model:ir.actions.act_window,name:sale.action_view_sale_open_invoice
+#: view:sale.open.invoice:0
+msgid "Open Invoice"
+msgstr ""
+
+#. module: sale
+#: report:sale.order:0
+#: view:sale.order.line:0
+msgid "Price"
+msgstr "Pris"
+
+#. module: sale
+#: model:ir.actions.act_window,name:sale.action_sale_installer
+#: view:sale.config.picking_policy:0
+#: view:sale.installer:0
+msgid "Sales Application Configuration"
+msgstr ""
+
+#. module: sale
+#: view:sale.report:0
+#: field:sale.report,price_total:0
+msgid "Total Price"
+msgstr "Total pris"
+
+#. module: sale
+#: selection:sale.order.line,type:0
+msgid "on order"
+msgstr ""
+
+#. module: sale
+#: model:process.node,note:sale.process_node_invoiceafterdelivery0
+msgid "Based on the shipped or on the ordered quantities."
+msgstr ""
+
+#. module: sale
+#: field:sale.order,picking_ids:0
+msgid "Related Picking"
+msgstr ""
+
+#. module: sale
+#: field:sale.config.picking_policy,name:0
+msgid "Name"
+msgstr ""
+
+#. module: sale
+#: report:sale.order:0
+msgid "Shipping address :"
+msgstr ""
+
+#. module: sale
+#: view:board.board:0
+#: model:ir.actions.act_window,name:sale.action_sales_by_partner
+msgid "Sales per Customer in last 90 days"
+msgstr "Salg pr. kunde de sidste 90 dage"
+
+#. module: sale
+#: model:process.node,note:sale.process_node_quotation0
+msgid "Draft state of sales order"
+msgstr ""
+
+#. module: sale
+#: model:process.transition,name:sale.process_transition_deliver0
+msgid "Create Delivery Order"
+msgstr ""
+
+#. module: sale
+#: field:sale.installer,delivery:0
+msgid "Delivery Costs"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+msgid "Total Tax Included"
+msgstr ""
+
+#. module: sale
+#: model:process.transition,name:sale.process_transition_packing0
+msgid "Create Pick List"
+msgstr ""
+
+#. module: sale
+#: view:sale.report:0
+msgid "Sales by Product Category"
+msgstr ""
+
+#. module: sale
+#: selection:sale.order,picking_policy:0
+msgid "Partial Delivery"
+msgstr ""
+
+#. module: sale
+#: model:process.transition,name:sale.process_transition_confirmquotation0
+msgid "Confirm Quotation"
+msgstr ""
+
+#. module: sale
+#: help:sale.order,origin:0
+msgid "Reference of the document that generated this sales order request."
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+#: view:sale.order.line:0
+#: view:sale.report:0
+msgid "Group By..."
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+msgid "Recreate Invoice"
+msgstr ""
+
+#. module: sale
+#: model:ir.actions.act_window,name:sale.outgoing_picking_list_to_invoice
+#: model:ir.ui.menu,name:sale.menu_action_picking_list_to_invoice
+msgid "Deliveries to Invoice"
+msgstr ""
+
+#. module: sale
+#: selection:sale.order,state:0
+#: selection:sale.report,state:0
+msgid "Waiting Schedule"
+msgstr ""
+
+#. module: sale
+#: field:sale.order.line,type:0
+msgid "Procurement Method"
+msgstr ""
+
+#. module: sale
+#: view:sale.config.picking_policy:0
+#: view:sale.installer:0
+msgid "title"
+msgstr ""
+
+#. module: sale
+#: model:process.node,name:sale.process_node_packinglist0
+msgid "Pick List"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+msgid "Order date"
+msgstr ""
+
+#. module: sale
+#: model:process.node,note:sale.process_node_packinglist0
+msgid "Document of the move to the output or to the customer."
+msgstr ""
+
+#. module: sale
+#: model:process.transition.action,name:sale.process_transition_action_validate0
+msgid "Validate"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+msgid "Confirm Order"
+msgstr ""
+
+#. module: sale
+#: model:process.transition,name:sale.process_transition_saleprocurement0
+msgid "Create Procurement Order"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+#: field:sale.order,amount_tax:0
+#: field:sale.order.line,tax_id:0
+msgid "Taxes"
+msgstr ""
+
+#. module: sale
+#: field:sale.order,order_policy:0
+msgid "Shipping Policy"
+msgstr ""
+
+#. module: sale
+#: help:sale.order,create_date:0
+msgid "Date on which sales order is created."
+msgstr ""
+
+#. module: sale
+#: model:ir.model,name:sale.model_stock_move
+msgid "Stock Move"
+msgstr "Lager flytning"
+
+#. module: sale
+#: view:sale.make.invoice:0
+#: view:sale.order.line.make.invoice:0
+msgid "Create Invoices"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+msgid "Extra Info"
+msgstr ""
+
+#. module: sale
+#: report:sale.order:0
+msgid "Fax :"
+msgstr ""
+
+#. module: sale
+#: field:sale.advance.payment.inv,amount:0
+msgid "Advance Amount"
+msgstr ""
+
+#. module: sale
+#: selection:sale.order,invoice_quantity:0
+msgid "Shipped Quantities"
+msgstr ""
+
+#. module: sale
+#: selection:sale.config.picking_policy,order_policy:0
+msgid "Invoice Based on Sales Orders"
+msgstr ""
+
+#. module: sale
+#: model:ir.model,name:sale.model_stock_picking
+msgid "Picking List"
+msgstr "Plukkeliste"
+
+#. module: sale
+#: code:addons/sale/sale.py:387
+#: code:addons/sale/sale.py:920
+#: code:addons/sale/sale.py:938
+#, python-format
+msgid "Error !"
+msgstr "Fejl!"
+
+#. module: sale
+#: code:addons/sale/sale.py:570
+#, python-format
+msgid "Could not cancel sales order !"
+msgstr ""
+
+#. module: sale
+#: selection:sale.report,month:0
+msgid "July"
+msgstr "Juli"
+
+#. module: sale
+#: field:sale.order.line,procurement_id:0
+msgid "Procurement"
+msgstr "Indkøb"
+
+#. module: sale
+#: selection:sale.order,state:0
+#: selection:sale.report,state:0
+msgid "Shipping Exception"
+msgstr ""
+
+#. module: sale
+#: field:sale.make.invoice,grouped:0
+msgid "Group the invoices"
+msgstr ""
+
+#. module: sale
+#: selection:sale.order,order_policy:0
+msgid "Shipping & Manual Invoice"
+msgstr ""
+
+#. module: sale
+#: code:addons/sale/sale.py:1051
+#, python-format
+msgid "Picking Information !"
+msgstr ""
+
+#. module: sale
+#: view:sale.report:0
+#: field:sale.report,month:0
+msgid "Month"
+msgstr "Måned"
+
+#. module: sale
+#: model:ir.module.module,shortdesc:sale.module_meta_information
+msgid "Sales Management"
+msgstr "Salgs administration"
+
+#. module: sale
+#: selection:sale.order,order_policy:0
+msgid "Invoice From The Picking"
+msgstr ""
+
+#. module: sale
+#: model:process.node,note:sale.process_node_invoice0
+msgid "To be reviewed by the accountant."
+msgstr ""
+
+#. module: sale
+#: view:sale.report:0
+#: field:sale.report,uom_name:0
+msgid "Reference UoM"
+msgstr ""
+
+#. module: sale
+#: model:ir.model,name:sale.model_sale_order_line_make_invoice
+msgid "Sale OrderLine Make_invoice"
+msgstr ""
+
+#. module: sale
+#: help:sale.config.picking_policy,step:0
+msgid ""
+"By default, OpenERP is able to manage complex routing and paths of products "
+"in your warehouse and partner locations. This will configure the most common "
+"and simple methods to deliver products to the customer in one or two "
+"operations by the worker."
+msgstr ""
+
+#. module: sale
+#: model:ir.actions.act_window,name:sale.action_order_tree
+msgid "Old Quotations"
+msgstr ""
+
+#. module: sale
+#: field:sale.order,invoiced:0
+msgid "Paid"
+msgstr "Betalt"
+
+#. module: sale
+#: model:ir.actions.act_window,name:sale.action_order_report_all
+#: model:ir.ui.menu,name:sale.menu_report_product_all
+#: view:sale.report:0
+msgid "Sales Analysis"
+msgstr ""
+
+#. module: sale
+#: field:sale.order.line,property_ids:0
+msgid "Properties"
+msgstr ""
+
+#. module: sale
+#: model:process.node,name:sale.process_node_quotation0
+#: selection:sale.order,state:0
+#: selection:sale.report,state:0
+msgid "Quotation"
+msgstr ""
+
+#. module: sale
+#: model:process.transition,note:sale.process_transition_invoice0
+msgid ""
+"The Salesman creates an invoice manually, if the sales order shipping policy "
+"is 'Shipping and Manual in Progress'. The invoice is created automatically "
+"if the shipping policy is 'Payment before Delivery'."
+msgstr ""
+
+#. module: sale
+#: help:sale.config.picking_policy,order_policy:0
+msgid ""
+"You can generate invoices based on sales orders or based on shippings."
+msgstr ""
+
+#. module: sale
+#: model:ir.actions.act_window,name:sale.act_res_partner_2_sale_order
+#: model:process.process,name:sale.process_process_salesprocess0
+#: view:sale.order:0
+#: view:sale.report:0
+msgid "Sales"
+msgstr "Salg"
+
+#. module: sale
+#: report:sale.order:0
+#: field:sale.order.line,price_unit:0
+msgid "Unit Price"
+msgstr "Enhedspris"
+
+#. module: sale
+#: selection:sale.order,state:0
+#: view:sale.order.line:0
+#: selection:sale.order.line,state:0
+#: selection:sale.report,state:0
+msgid "Done"
+msgstr "Udført!"
+
+#. module: sale
+#: model:ir.model,name:sale.model_sale_installer
+msgid "sale.installer"
+msgstr ""
+
+#. module: sale
+#: model:process.node,name:sale.process_node_invoice0
+#: model:process.node,name:sale.process_node_invoiceafterdelivery0
+msgid "Invoice"
+msgstr "Faktura"
+
+#. module: sale
+#: code:addons/sale/sale.py:1014
+#, python-format
+msgid ""
+"You have to select a customer in the sales form !\n"
+"Please set one customer before choosing a product."
+msgstr ""
+
+#. module: sale
+#: selection:sale.config.picking_policy,step:0
+msgid "Picking List & Delivery Order"
+msgstr ""
+
+#. module: sale
+#: field:sale.order,origin:0
+msgid "Source Document"
+msgstr ""
+
+#. module: sale
+#: view:sale.order.line:0
+msgid "To Do"
+msgstr ""
+
+#. module: sale
+#: field:sale.order,picking_policy:0
+msgid "Picking Policy"
+msgstr ""
+
+#. module: sale
+#: model:process.node,note:sale.process_node_deliveryorder0
+msgid "Document of the move to the customer."
+msgstr ""
+
+#. module: sale
+#: help:sale.order,amount_untaxed:0
+msgid "The amount without tax."
+msgstr ""
+
+#. module: sale
+#: code:addons/sale/sale.py:571
+#, python-format
+msgid "You must first cancel all picking attached to this sales order."
+msgstr ""
+
+#. module: sale
+#: model:ir.model,name:sale.model_sale_advance_payment_inv
+msgid "Sales Advance Payment Invoice"
+msgstr ""
+
+#. module: sale
+#: field:sale.order,incoterm:0
+msgid "Incoterm"
+msgstr "Incoterm"
+
+#. module: sale
+#: view:sale.order.line:0
+#: field:sale.order.line,product_id:0
+#: view:sale.report:0
+#: field:sale.report,product_id:0
+msgid "Product"
+msgstr "Vare"
+
+#. module: sale
+#: model:ir.ui.menu,name:sale.menu_invoiced
+msgid "Invoicing"
+msgstr "Fakturering"
+
+#. module: sale
+#: model:process.transition.action,name:sale.process_transition_action_cancelassignation0
+msgid "Cancel Assignation"
+msgstr ""
+
+#. module: sale
+#: model:ir.model,name:sale.model_sale_config_picking_policy
+msgid "sale.config.picking_policy"
+msgstr ""
+
+#. module: sale
+#: help:sale.order,state:0
+msgid ""
+"Gives the state of the quotation or sales order. \n"
+"The exception state is automatically set when a cancel operation occurs in "
+"the invoice validation (Invoice Exception) or in the picking list process "
+"(Shipping Exception). \n"
+"The 'Waiting Schedule' state is set when the invoice is confirmed but "
+"waiting for the scheduler to run on the date 'Ordered Date'."
+msgstr ""
+
+#. module: sale
+#: field:sale.order,invoice_quantity:0
+msgid "Invoice on"
+msgstr ""
+
+#. module: sale
+#: report:sale.order:0
+msgid "Date Ordered"
+msgstr ""
+
+#. module: sale
+#: field:sale.order.line,product_uos:0
+msgid "Product UoS"
+msgstr ""
+
+#. module: sale
+#: selection:sale.order,state:0
+#: selection:sale.report,state:0
+msgid "Manual In Progress"
+msgstr ""
+
+#. module: sale
+#: field:sale.order.line,product_uom:0
+msgid "Product UoM"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+msgid "Logistic"
+msgstr ""
+
+#. module: sale
+#: view:sale.order.line:0
+msgid "Order"
+msgstr ""
+
+#. module: sale
+#: code:addons/sale/sale.py:921
+#, python-format
+msgid "There is no income account defined for this product: \"%s\" (id:%d)"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+msgid "Ignore Exception"
+msgstr ""
+
+#. module: sale
+#: model:process.transition,note:sale.process_transition_saleinvoice0
+msgid ""
+"Depending on the Invoicing control of the sales order, the invoice can be "
+"based on delivered or on ordered quantities. Thus, a sales order can "
+"generates an invoice or a delivery order as soon as it is confirmed by the "
+"salesman."
+msgstr ""
+
+#. module: sale
+#: code:addons/sale/sale.py:1116
+#, python-format
+msgid ""
+"You plan to sell %.2f %s but you only have %.2f %s available !\n"
+"The real stock is %.2f %s. (without reservations)"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+msgid "States"
+msgstr ""
+
+#. module: sale
+#: view:sale.config.picking_policy:0
+msgid "res_config_contents"
+msgstr ""
+
+#. module: sale
+#: field:sale.order,client_order_ref:0
+msgid "Customer Reference"
+msgstr ""
+
+#. module: sale
+#: field:sale.order,amount_total:0
+#: view:sale.order.line:0
+msgid "Total"
+msgstr ""
+
+#. module: sale
+#: code:addons/sale/sale.py:388
+#, python-format
+msgid "There is no sales journal defined for this company: \"%s\" (id:%d)"
+msgstr ""
+
+#. module: sale
+#: model:process.transition,note:sale.process_transition_deliver0
+msgid ""
+"Depending on the configuration of the location Output, the move between the "
+"output area and the customer is done through the Delivery Order manually or "
+"automatically."
+msgstr ""
+
+#. module: sale
+#: code:addons/sale/sale.py:1165
+#, python-format
+msgid "Cannot delete a sales order line which is %s !"
+msgstr ""
+
+#. module: sale
+#: model:ir.actions.act_window,name:sale.action_sale_order_make_invoice
+#: model:ir.actions.act_window,name:sale.action_view_sale_order_line_make_invoice
+#: view:sale.order:0
+msgid "Make Invoices"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+#: view:sale.order.line:0
+msgid "To Invoice"
+msgstr ""
+
+#. module: sale
+#: help:sale.order,date_confirm:0
+msgid "Date on which sales order is confirmed."
+msgstr ""
+
+#. module: sale
+#: field:sale.order,company_id:0
+#: field:sale.order.line,company_id:0
+#: view:sale.report:0
+#: field:sale.report,company_id:0
+#: field:sale.shop,company_id:0
+msgid "Company"
+msgstr "Virksomhed"
+
+#. module: sale
+#: field:sale.make.invoice,invoice_date:0
+msgid "Invoice Date"
+msgstr "Faktura dato"
+
+#. module: sale
+#: help:sale.advance.payment.inv,amount:0
+msgid "The amount to be invoiced in advance."
+msgstr ""
+
+#. module: sale
+#: selection:sale.order,state:0
+#: selection:sale.report,state:0
+msgid "Invoice Exception"
+msgstr ""
+
+#. module: sale
+#: help:sale.order,picking_ids:0
+msgid ""
+"This is a list of picking that has been generated for this sales order."
+msgstr ""
+
+#. module: sale
+#: help:sale.installer,sale_margin:0
+msgid ""
+"Gives the margin of profitability by calculating the difference between Unit "
+"Price and Cost Price."
+msgstr ""
+
+#. module: sale
+#: view:sale.make.invoice:0
+#: view:sale.order.line.make.invoice:0
+msgid "Create invoices"
+msgstr ""
+
+#. module: sale
+#: report:sale.order:0
+msgid "Net Total :"
+msgstr "Netto total:"
+
+#. module: sale
+#: selection:sale.order,state:0
+#: selection:sale.order.line,state:0
+#: selection:sale.report,state:0
+msgid "Cancelled"
+msgstr ""
+
+#. module: sale
+#: model:ir.actions.act_window,name:sale.action_shop_form
+#: model:ir.ui.menu,name:sale.menu_action_shop_form
+#: field:sale.order,shop_id:0
+#: view:sale.report:0
+#: field:sale.report,shop_id:0
+msgid "Shop"
+msgstr ""
+
+#. module: sale
+#: view:sale.report:0
+msgid " Month "
+msgstr " Måned "
+
+#. module: sale
+#: field:sale.report,date_confirm:0
+msgid "Date Confirm"
+msgstr ""
+
+#. module: sale
+#: code:addons/sale/wizard/sale_line_invoice.py:111
+#, python-format
+msgid "Warning"
+msgstr ""
+
+#. module: sale
+#: view:board.board:0
+#: model:ir.actions.act_window,name:sale.action_view_sales_by_month
+msgid "Sales by Month"
+msgstr "Salg pr. måned"
+
+#. module: sale
+#: code:addons/sale/sale.py:1045
+#, python-format
+msgid ""
+"You selected a quantity of %d Units.\n"
+"But it's not compatible with the selected packaging.\n"
+"Here is a proposition of quantities according to the packaging:\n"
+"\n"
+"EAN: %s Quantity: %s Type of ul: %s"
+msgstr ""
+
+#. module: sale
+#: model:ir.model,name:sale.model_sale_order
+#: model:process.node,name:sale.process_node_order0
+#: model:process.node,name:sale.process_node_saleorder0
+#: model:res.request.link,name:sale.req_link_sale_order
+#: view:sale.order:0
+#: field:stock.picking,sale_id:0
+msgid "Sales Order"
+msgstr ""
+
+#. module: sale
+#: field:sale.order.line,product_uos_qty:0
+msgid "Quantity (UoS)"
+msgstr ""
+
+#. module: sale
+#: model:process.transition,note:sale.process_transition_packing0
+msgid ""
+"The Pick List form is created as soon as the sales order is confirmed, in "
+"the same time as the procurement order. It represents the assignment of "
+"parts to the sales order. There is 1 pick list by sales order line which "
+"evolves with the availability of parts."
+msgstr ""
+
+#. module: sale
+#: selection:sale.order.line,state:0
+msgid "Confirmed"
+msgstr ""
+
+#. module: sale
+#: model:process.transition.action,name:sale.process_transition_action_confirm0
+msgid "Confirm"
+msgstr ""
+
+#. module: sale
+#: constraint:res.company:0
+msgid "Error! You can not create recursive companies."
+msgstr ""
+
+#. module: sale
+#: view:board.board:0
+#: model:ir.actions.act_window,name:sale.action_sales_product_total_price
+msgid "Sales by Product's Category in last 90 days"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+#: field:sale.order.line,invoice_lines:0
+msgid "Invoice Lines"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+#: view:sale.order.line:0
+msgid "Sales Order Lines"
+msgstr ""
+
+#. module: sale
+#: field:sale.order.line,delay:0
+msgid "Delivery Lead Time"
+msgstr ""
+
+#. module: sale
+#: view:res.company:0
+msgid "Configuration"
+msgstr ""
+
+#. module: sale
+#: selection:sale.order,picking_policy:0
+msgid "Complete Delivery"
+msgstr ""
+
+#. module: sale
+#: view:sale.report:0
+msgid " Month-1 "
+msgstr ""
+
+#. module: sale
+#: help:sale.config.picking_policy,picking_policy:0
+msgid ""
+"The Shipping Policy is used to configure per order if you want to deliver as "
+"soon as possible when one product is available or you wait that all products "
+"are available.."
+msgstr ""
+
+#. module: sale
+#: selection:sale.report,month:0
+msgid "August"
+msgstr "August"
+
+#. module: sale
+#: code:addons/sale/wizard/sale_line_invoice.py:111
+#, python-format
+msgid ""
+"Invoice cannot be created for this Sales Order Line due to one of the "
+"following reasons:\n"
+"1.The state of this sales order line is either \"draft\" or \"cancel\"!\n"
+"2.The Sales Order Line is Invoiced!"
+msgstr ""
+
+#. module: sale
+#: field:sale.order.line,th_weight:0
+msgid "Weight"
+msgstr ""
+
+#. module: sale
+#: view:sale.open.invoice:0
+#: view:sale.order:0
+#: field:sale.order,invoice_ids:0
+msgid "Invoices"
+msgstr ""
+
+#. module: sale
+#: selection:sale.report,month:0
+msgid "December"
+msgstr "December"
+
+#. module: sale
+#: field:sale.config.picking_policy,config_logo:0
+#: field:sale.installer,config_logo:0
+msgid "Image"
+msgstr "Billede"
+
+#. module: sale
+#: model:process.transition,note:sale.process_transition_saleprocurement0
+msgid ""
+"A procurement order is automatically created as soon as a sales order is "
+"confirmed or as the invoice is paid. It drives the purchasing and the "
+"production of products regarding to the rules and to the sales order's "
+"parameters. "
+msgstr ""
+
+#. module: sale
+#: view:sale.order.line:0
+msgid "Uninvoiced"
+msgstr ""
+
+#. module: sale
+#: report:sale.order:0
+#: view:sale.order:0
+#: field:sale.order,user_id:0
+#: view:sale.order.line:0
+#: field:sale.order.line,salesman_id:0
+#: view:sale.report:0
+#: field:sale.report,user_id:0
+msgid "Salesman"
+msgstr "Sælger"
+
+#. module: sale
+#: model:process.node,note:sale.process_node_saleorder0
+msgid "Drives procurement and invoicing"
+msgstr ""
+
+#. module: sale
+#: field:sale.order,amount_untaxed:0
+msgid "Untaxed Amount"
+msgstr ""
+
+#. module: sale
+#: code:addons/sale/wizard/sale_make_invoice_advance.py:163
+#: model:ir.actions.act_window,name:sale.action_view_sale_advance_payment_inv
+#: view:sale.advance.payment.inv:0
+#: view:sale.order:0
+#, python-format
+msgid "Advance Invoice"
+msgstr ""
+
+#. module: sale
+#: code:addons/sale/sale.py:591
+#, python-format
+msgid "The sales order '%s' has been cancelled."
+msgstr ""
+
+#. module: sale
+#: selection:sale.order.line,state:0
+msgid "Draft"
+msgstr ""
+
+#. module: sale
+#: help:sale.order.line,state:0
+msgid ""
+"* The 'Draft' state is set when the related sales order in draft state. "
+" \n"
+"* The 'Confirmed' state is set when the related sales order is confirmed. "
+" \n"
+"* The 'Exception' state is set when the related sales order is set as "
+"exception. \n"
+"* The 'Done' state is set when the sales order line has been picked. "
+" \n"
+"* The 'Cancelled' state is set when a user cancel the sales order related."
+msgstr ""
+
+#. module: sale
+#: help:sale.order,amount_tax:0
+msgid "The tax amount."
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+msgid "Packings"
+msgstr ""
+
+#. module: sale
+#: field:sale.config.picking_policy,progress:0
+#: field:sale.installer,progress:0
+msgid "Configuration Progress"
+msgstr ""
+
+#. module: sale
+#: model:ir.actions.act_window,name:sale.action_order_line_product_tree
+msgid "Product sales"
+msgstr ""
+
+#. module: sale
+#: field:sale.order,date_order:0
+msgid "Ordered Date"
+msgstr ""
+
+#. module: sale
+#: model:ir.actions.act_window,name:sale.action_order_form
+#: model:ir.ui.menu,name:sale.menu_sale_order
+#: view:sale.order:0
+msgid "Sales Orders"
+msgstr "Salgsordrer"
+
+#. module: sale
+#: selection:sale.config.picking_policy,picking_policy:0
+msgid "Direct Delivery"
+msgstr ""
+
+#. module: sale
+#: field:sale.installer,sale_journal:0
+msgid "Invoicing journals"
+msgstr ""
+
+#. module: sale
+#: field:sale.advance.payment.inv,product_id:0
+msgid "Advance Product"
+msgstr ""
+
+#. module: sale
+#: view:sale.report:0
+#: field:sale.report,shipped_qty_1:0
+msgid "Shipped Qty"
+msgstr ""
+
+#. module: sale
+#: view:sale.open.invoice:0
+msgid "You invoice has been successfully created!"
+msgstr ""
+
+#. module: sale
+#: code:addons/sale/sale.py:585
+#, python-format
+msgid "You must first cancel all invoices attached to this sales order."
+msgstr ""
+
+#. module: sale
+#: selection:sale.report,month:0
+msgid "January"
+msgstr "Januar"
+
+#. module: sale
+#: view:sale.installer:0
+msgid "Configure Your Sales Management Application"
+msgstr ""
+
+#. module: sale
+#: model:ir.actions.act_window,name:sale.action_order_tree4
+msgid "Sales Order in Progress"
+msgstr ""
+
+#. module: sale
+#: field:sale.installer,sale_layout:0
+msgid "Sales Order Layout Improvement"
+msgstr ""
+
+#. module: sale
+#: code:addons/sale/wizard/sale_make_invoice_advance.py:63
+#, python-format
+msgid "Error"
+msgstr ""
+
+#. module: sale
+#: view:sale.report:0
+#: field:sale.report,delay:0
+msgid "Commitment Delay"
+msgstr ""
+
+#. module: sale
+#: model:process.node,note:sale.process_node_saleprocurement0
+msgid ""
+"One Procurement order for each sales order line and for each of the "
+"components."
+msgstr ""
+
+#. module: sale
+#: model:process.transition.action,name:sale.process_transition_action_assign0
+msgid "Assign"
+msgstr ""
+
+#. module: sale
+#: field:sale.report,date:0
+msgid "Date Order"
+msgstr ""
+
+#. module: sale
+#: model:process.node,note:sale.process_node_order0
+msgid "Confirmed sales order to invoice."
+msgstr ""
+
+#. module: sale
+#: code:addons/sale/sale.py:290
+#, python-format
+msgid "Cannot delete Sales Order(s) which are already confirmed !"
+msgstr ""
+
+#. module: sale
+#: code:addons/sale/sale.py:316
+#, python-format
+msgid "The sales order '%s' has been set in draft state."
+msgstr ""
+
+#. module: sale
+#: selection:sale.order.line,type:0
+msgid "from stock"
+msgstr ""
+
+#. module: sale
+#: field:sale.config.picking_policy,order_policy:0
+msgid "Shipping Default Policy"
+msgstr ""
+
+#. module: sale
+#: view:sale.open.invoice:0
+msgid "Close"
+msgstr ""
+
+#. module: sale
+#: field:sale.order,shipped:0
+msgid "Delivered"
+msgstr "Leveret"
+
+#. module: sale
+#: code:addons/sale/sale.py:1115
+#, python-format
+msgid "Not enough stock !"
+msgstr ""
+
+#. module: sale
+#: constraint:stock.move:0
+msgid "You must assign a production lot for this product"
+msgstr ""
+
+#. module: sale
+#: field:sale.order.line,sequence:0
+msgid "Layout Sequence"
+msgstr ""
+
+#. module: sale
+#: model:ir.actions.act_window,help:sale.action_shop_form
+msgid ""
+"If you have more than one shop reselling your company products, you can "
+"create and manage that from here. Whenever you will record a new quotation "
+"or sales order, it has to be linked to a shop. The shop also defines the "
+"warehouse from which the products will be delivered for each particular "
+"sales."
+msgstr ""
+
+#. module: sale
+#: help:sale.order,invoiced:0
+msgid "It indicates that an invoice has been paid."
+msgstr ""
+
+#. module: sale
+#: report:sale.order:0
+#: field:sale.order.line,name:0
+msgid "Description"
+msgstr ""
+
+#. module: sale
+#: selection:sale.report,month:0
+msgid "May"
+msgstr "Maj"
+
+#. module: sale
+#: help:sale.installer,sale_order_dates:0
+msgid "Adds commitment, requested and effective dates on Sales Orders."
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+#: field:sale.order,partner_id:0
+#: field:sale.order.line,order_partner_id:0
+msgid "Customer"
+msgstr "Kunde"
+
+#. module: sale
+#: model:product.template,name:sale.advance_product_0_product_template
+msgid "Advance"
+msgstr ""
+
+#. module: sale
+#: selection:sale.report,month:0
+msgid "February"
+msgstr "Februar"
+
+#. module: sale
+#: help:sale.installer,sale_journal:0
+msgid ""
+"Allows you to group and invoice your delivery orders according to different "
+"invoicing types: daily, weekly, etc."
+msgstr ""
+
+#. module: sale
+#: selection:sale.report,month:0
+msgid "April"
+msgstr "April"
+
+#. module: sale
+#: view:sale.shop:0
+msgid "Accounting"
+msgstr ""
+
+#. module: sale
+#: field:sale.config.picking_policy,step:0
+msgid "Steps To Deliver a Sales Order"
+msgstr ""
+
+#. module: sale
+#: view:sale.order:0
+#: view:sale.order.line:0
+msgid "Search Sales Order"
+msgstr ""
+
+#. module: sale
+#: model:process.node,name:sale.process_node_saleorderprocurement0
+msgid "Sales Order Requisition"
+msgstr ""
+
+#. module: sale
+#: report:sale.order:0
+#: field:sale.order,payment_term:0
+msgid "Payment Term"
+msgstr ""
+
+#. module: sale
+#: help:sale.installer,sale_layout:0
+msgid ""
+"Provides some features to improve the layout of the Sales Order reports."
+msgstr ""
+
+#. module: sale
+#: model:ir.actions.act_window,help:sale.action_order_report_all
+msgid ""
+"This report performs analysis on your quotations and sales orders. Analysis "
+"check your sales revenues and sort it by different group criteria (salesman, "
+"partner, product, etc.) Use this report to perform analysis on sales not "
+"having invoiced yet. If you want to analyse your turnover, you should use "
+"the Invoice Analysis report in the Accounting application."
+msgstr ""
+
+#. module: sale
+#: report:sale.order:0
+msgid "Quotation N°"
+msgstr ""
+
+#. module: sale
+#: field:sale.order,picked_rate:0
+#: view:sale.report:0
+msgid "Picked"
+msgstr ""
+
+#. module: sale
+#: view:sale.report:0
+#: field:sale.report,year:0
+msgid "Year"
+msgstr "År"
+
+#. module: sale
+#: selection:sale.config.picking_policy,order_policy:0
+msgid "Invoice Based on Deliveries"
+msgstr ""
diff --git a/addons/sale/i18n/es_CL.po b/addons/sale/i18n/es_CL.po
index 7d53daae068..b5c12a60c81 100644
--- a/addons/sale/i18n/es_CL.po
+++ b/addons/sale/i18n/es_CL.po
@@ -7,15 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev_rc3\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:16+0000\n"
-"PO-Revision-Date: 2011-01-14 04:38+0000\n"
-"Last-Translator: Jordi Esteve (www.zikzakmedia.com) "
-"\n"
+"PO-Revision-Date: 2011-10-06 16:03+0000\n"
+"Last-Translator: Francisco Reyes Acuña \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 05:22+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-07 04:36+0000\n"
+"X-Generator: Launchpad (build 14085)\n"
#. module: sale
#: view:board.board:0
@@ -34,8 +33,8 @@ msgid ""
"If you don't have enough stock available to deliver all at once, do you "
"accept partial shipments or not?"
msgstr ""
-"Si no dispone de suficientes existencias para enviarlo todo de una vez, "
-"¿acepta envíos parciales o no?"
+"Si no dispone de suficiente stock disponible para enviarlo todo a la vez, "
+"¿acepta envíos parciales?"
#. module: sale
#: help:sale.order,partner_shipping_id:0
@@ -140,6 +139,14 @@ msgid ""
"configuration of the sales order, a draft invoice will be generated so that "
"you just have to confirm it when you want to bill your customer."
msgstr ""
+"Los pedidos de ventas le ayudan a gestionar presupuestos y pedidos de sus "
+"clientes. OpenERP sugiere que comience por crear un presupuesto. Una vez "
+"esté confirmado, el presupuesto se convertirá en un pedido de venta. OpenERP "
+"puede gestionar varios tipos de productos de forma que un pedido de venta "
+"puede generar tareas, órdenes de entrega, órdenes de fabricación, compras, "
+"etc. Según la configuración del pedido de venta, se generará una factura en "
+"borrador de manera que sólo hay que confirmarla cuando se quiera facturar a "
+"su cliente."
#. module: sale
#: help:sale.order,invoice_quantity:0
@@ -791,6 +798,28 @@ msgid ""
" * Graph of cases of the month\n"
" "
msgstr ""
+"\n"
+" El módulo base para gestionar presupuestos y pedidos de venta.\n"
+"\n"
+" * Flujo de trabajo con etapas de validación:\n"
+" - Presupuesto -> Pedido de venta -> Factura\n"
+" * Métodos de facturación:\n"
+" - Factura del pedido (antes o después del envío)\n"
+" - Factura del albarán\n"
+" - Factura de la hoja de servicios\n"
+" - Avanzar factura\n"
+" * Preferencias de los clientes (envío, facturación, incoterm, ...)\n"
+" * Existencias de los productos y precios\n"
+" * Formas de envío:\n"
+" - Todo a la vez, En varios paquetes\n"
+" - Gastos de envío\n"
+" * El tablero para el comercial incluye:\n"
+" * Sus presupuestos abiertos\n"
+" * Las 10 mejores ventas del mes\n"
+" * Estadísticas de casos\n"
+" * Gráfico de las ventas por producto\n"
+" * Gráfico de los casos por mes\n"
+" "
#. module: sale
#: model:ir.model,name:sale.model_sale_shop
@@ -953,7 +982,7 @@ msgstr "Basado en las cantidades enviadas o ordenadas."
#. module: sale
#: field:sale.order,picking_ids:0
msgid "Related Picking"
-msgstr "Albarán relacionado"
+msgstr "Guía de despacho relacionada"
#. module: sale
#: field:sale.config.picking_policy,name:0
@@ -1055,7 +1084,7 @@ msgstr "título"
#. module: sale
#: model:process.node,name:sale.process_node_packinglist0
msgid "Pick List"
-msgstr "Albarán"
+msgstr "Guía de despacho"
#. module: sale
#: view:sale.order:0
@@ -1102,7 +1131,7 @@ msgstr "Fecha en que se crea el pedido de venta."
#. module: sale
#: model:ir.model,name:sale.model_stock_move
msgid "Stock Move"
-msgstr "Movimiento stock"
+msgstr "Movimiento de stock"
#. module: sale
#: view:sale.make.invoice:0
@@ -1138,7 +1167,7 @@ msgstr "Factura basada en pedidos de venta"
#. module: sale
#: model:ir.model,name:sale.model_stock_picking
msgid "Picking List"
-msgstr "Albarán"
+msgstr "LIsta de guías de despacho"
#. module: sale
#: code:addons/sale/sale.py:387
@@ -1324,7 +1353,7 @@ msgstr ""
#. module: sale
#: selection:sale.config.picking_policy,step:0
msgid "Picking List & Delivery Order"
-msgstr "Albarán y Orden de entrega"
+msgstr "Guía de despacho y Orden de entrega"
#. module: sale
#: field:sale.order,origin:0
@@ -2037,6 +2066,11 @@ msgid ""
"warehouse from which the products will be delivered for each particular "
"sales."
msgstr ""
+"Si tiene más de una tienda donde vende los productos de su compañía, puede "
+"crearlas y gestionarlas desde aquí. Cada vez que codifique un nuevo "
+"presupuesto o pedido de venta, debe estar vinculado a una tienda. La tienda "
+"también define desde que almacén serán entregados los productos para cada "
+"venta."
#. module: sale
#: help:sale.order,invoiced:0
diff --git a/addons/sale/i18n/et.po b/addons/sale/i18n/et.po
index a54fadaee91..b28b1290c6a 100644
--- a/addons/sale/i18n/et.po
+++ b/addons/sale/i18n/et.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev_rc3\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:16+0000\n"
-"PO-Revision-Date: 2010-12-15 21:31+0000\n"
-"Last-Translator: Fabien (Open ERP) \n"
+"PO-Revision-Date: 2011-10-11 18:12+0000\n"
+"Last-Translator: Aare Vesi \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 05:21+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-12 04:40+0000\n"
+"X-Generator: Launchpad (build 14124)\n"
#. module: sale
#: view:sale.order:0
@@ -148,7 +148,7 @@ msgstr "Maksmine enne kohaletoimetamist"
#: code:addons/sale/wizard/sale_make_invoice.py:42
#, python-format
msgid "Warning !"
-msgstr ""
+msgstr "Hoiatus!"
#. module: sale
#: report:sale.order:0
@@ -190,7 +190,7 @@ msgstr ""
#: view:sale.report:0
#: field:sale.report,partner_id:0
msgid "Partner"
-msgstr ""
+msgstr "Partner"
#. module: sale
#: view:sale.order:0
@@ -281,7 +281,7 @@ msgstr ""
#. module: sale
#: view:sale.order:0
msgid "Dates"
-msgstr ""
+msgstr "Kuupäevad"
#. module: sale
#: model:process.transition,note:sale.process_transition_invoiceafterdelivery0
diff --git a/addons/sale/report/sale_report.py b/addons/sale/report/sale_report.py
index e4f917ba063..b266b5b6391 100644
--- a/addons/sale/report/sale_report.py
+++ b/addons/sale/report/sale_report.py
@@ -38,7 +38,7 @@ class sale_report(osv.osv):
('10', 'October'), ('11', 'November'), ('12', 'December')], 'Month', readonly=True),
'day': fields.char('Day', size=128, readonly=True),
'product_id': fields.many2one('product.product', 'Product', readonly=True),
- 'uom_name': fields.char('Reference UoM', size=128, readonly=True),
+ 'product_uom': fields.many2one('product.uom', 'UoM', readonly=True),
'product_uom_qty': fields.float('# of Qty', readonly=True),
'partner_id': fields.many2one('res.partner', 'Partner', readonly=True),
@@ -67,51 +67,41 @@ class sale_report(osv.osv):
tools.drop_view_if_exists(cr, 'sale_report')
cr.execute("""
create or replace view sale_report as (
- select el.*,
- -- (select count(1) from sale_order_line where order_id = s.id) as nbr,
- (select 1) as nbr,
- s.date_order as date,
- s.date_confirm as date_confirm,
- to_char(s.date_order, 'YYYY') as year,
- to_char(s.date_order, 'MM') as month,
- to_char(s.date_order, 'YYYY-MM-DD') as day,
- s.partner_id as partner_id,
- s.user_id as user_id,
- s.shop_id as shop_id,
- s.company_id as company_id,
- extract(epoch from avg(date_trunc('day',s.date_confirm)-date_trunc('day',s.create_date)))/(24*60*60)::decimal(16,2) as delay,
- s.state,
- s.shipped,
- s.shipped::integer as shipped_qty_1,
- s.pricelist_id as pricelist_id,
- s.project_id as analytic_account_id
+ select
+ min(l.id) as id,
+ l.product_id as product_id,
+ t.uom_id as product_uom,
+ sum(l.product_uom_qty / u.factor * u2.factor) as product_uom_qty,
+ sum(l.product_uom_qty * l.price_unit * (100.0-l.discount) / 100.0) as price_total,
+ 1 as nbr,
+ s.date_order as date,
+ s.date_confirm as date_confirm,
+ to_char(s.date_order, 'MM') as month,
+ to_char(s.date_order, 'YYYY-MM-DD') as day,
+ s.partner_id as partner_id,
+ s.user_id as user_id,
+ s.shop_id as shop_id,
+ s.company_id as company_id,
+ extract(epoch from avg(date_trunc('day',s.date_confirm)-date_trunc('day',s.create_date)))/(24*60*60)::decimal(16,2) as delay,
+ s.state,
+ t.categ_id as categ_id,
+ s.shipped,
+ s.shipped::integer as shipped_qty_1,
+ s.pricelist_id as pricelist_id,
+ s.project_id as analytic_account_id
from
- sale_order s,
- (
- select l.id as id,
- l.product_id as product_id,
- (case when u.uom_type not in ('reference') then
- (select name from product_uom where uom_type='reference' and category_id=u.category_id)
- else
- u.name
- end) as uom_name,
- sum(l.product_uom_qty * u.factor) as product_uom_qty,
- sum(l.product_uom_qty * l.price_unit) as price_total,
- pt.categ_id, l.order_id
- from
- sale_order_line l ,product_uom u, product_product p, product_template pt
- where u.id = l.product_uom
- and pt.id = p.product_tmpl_id
- and p.id = l.product_id
- group by l.id, l.order_id, l.product_id, u.name, pt.categ_id, u.uom_type, u.category_id) el
- where s.id = el.order_id
- group by el.id,
- el.product_id,
- el.uom_name,
- el.product_uom_qty,
- el.price_total,
- el.categ_id,
- el.order_id,
+ sale_order s
+ left join sale_order_line l on (s.id=l.order_id)
+ left join product_product p on (l.product_id=p.id)
+ left join product_template t on (p.product_tmpl_id=t.id)
+ left join product_uom u on (u.id=l.product_uom)
+ left join product_uom u2 on (u2.id=t.uom_id)
+ group by
+ l.product_id,
+ l.product_uom_qty,
+ l.order_id,
+ t.uom_id,
+ t.categ_id,
s.date_order,
s.date_confirm,
s.partner_id,
diff --git a/addons/sale/report/sale_report_view.xml b/addons/sale/report/sale_report_view.xml
index 6127c166f40..f9939190a7c 100644
--- a/addons/sale/report/sale_report_view.xml
+++ b/addons/sale/report/sale_report_view.xml
@@ -59,7 +59,7 @@
domain="[('date','<=',(datetime.date.today()+relativedelta(day=31)).strftime('%%Y-%%m-%%d')),('date','>=',(datetime.date.today()-relativedelta(day=1)).strftime('%%Y-%%m-%%d'))]"
help="Sales order created in current month"/>
diff --git a/addons/sale/sale.py b/addons/sale/sale.py
index 12c27c197ed..d0a3ccbf050 100644
--- a/addons/sale/sale.py
+++ b/addons/sale/sale.py
@@ -25,6 +25,7 @@ import time
import pooler
from osv import fields, osv
from tools.translate import _
+from tools import DEFAULT_SERVER_DATE_FORMAT, DEFAULT_SERVER_DATETIME_FORMAT
import decimal_precision as dp
import netsvc
@@ -199,7 +200,7 @@ class sale_order(osv.osv):
'state': fields.selection([
('draft', 'Quotation'),
('waiting_date', 'Waiting Schedule'),
- ('manual', 'Manual In Progress'),
+ ('manual', 'To Invoice'),
('progress', 'In Progress'),
('shipping_except', 'Shipping Exception'),
('invoice_except', 'Invoice Exception'),
@@ -216,7 +217,7 @@ class sale_order(osv.osv):
'partner_shipping_id': fields.many2one('res.partner.address', 'Shipping Address', readonly=True, required=True, states={'draft': [('readonly', False)]}, help="Shipping address for current sales order."),
'incoterm': fields.many2one('stock.incoterms', 'Incoterm', help="Incoterm which stands for 'International Commercial terms' implies its a series of sales terms which are used in the commercial transaction."),
- 'picking_policy': fields.selection([('direct', 'Partial Delivery'), ('one', 'Complete Delivery')],
+ 'picking_policy': fields.selection([('direct', 'Deliver each products when available'), ('one', 'Deliver all products at once')],
'Picking Policy', required=True, readonly=True, states={'draft': [('readonly', False)]}, help="""If you don't have enough stock available to deliver all at once, do you accept partial shipments or not?"""),
'order_policy': fields.selection([
('prepaid', 'Pay before delivery'),
@@ -268,7 +269,7 @@ class sale_order(osv.osv):
}
_defaults = {
'picking_policy': 'direct',
- 'date_order': lambda *a: time.strftime('%Y-%m-%d'),
+ 'date_order': lambda *a: time.strftime(DEFAULT_SERVER_DATE_FORMAT),
'order_policy': 'manual',
'state': 'draft',
'user_id': lambda obj, cr, uid, context: uid,
@@ -435,7 +436,7 @@ class sale_order(osv.osv):
}
inv.update(self._inv_get(cr, uid, order))
inv_id = inv_obj.create(cr, uid, inv, context=context)
- data = inv_obj.onchange_payment_term_date_invoice(cr, uid, [inv_id], pay_term, time.strftime('%Y-%m-%d'))
+ data = inv_obj.onchange_payment_term_date_invoice(cr, uid, [inv_id], pay_term, time.strftime(DEFAULT_SERVER_DATE_FORMAT))
if data.get('value', False):
inv_obj.write(cr, uid, [inv_id], data['value'], context=context)
inv_obj.button_compute(cr, uid, [inv_id])
@@ -479,6 +480,7 @@ class sale_order(osv.osv):
picking_obj = self.pool.get('stock.picking')
invoice = self.pool.get('account.invoice')
obj_sale_order_line = self.pool.get('sale.order.line')
+ partner_currency = {}
if context is None:
context = {}
# If date was specified, use it as date invoiced, usefull when invoices are generated this month and put the
@@ -486,6 +488,13 @@ class sale_order(osv.osv):
if date_inv:
context['date_inv'] = date_inv
for o in self.browse(cr, uid, ids, context=context):
+ currency_id = o.pricelist_id.currency_id.id
+ if (o.partner_id.id in partner_currency) and (partner_currency[o.partner_id.id] <> currency_id):
+ raise osv.except_osv(
+ _('Error !'),
+ _('You cannot group sales having different currencies for the same partner.'))
+
+ partner_currency[o.partner_id.id] = currency_id
lines = []
for line in o.order_line:
if line.invoiced:
@@ -611,9 +620,9 @@ class sale_order(osv.osv):
def action_wait(self, cr, uid, ids, *args):
for o in self.browse(cr, uid, ids):
if (o.order_policy == 'manual'):
- self.write(cr, uid, [o.id], {'state': 'manual', 'date_confirm': time.strftime('%Y-%m-%d')})
+ self.write(cr, uid, [o.id], {'state': 'manual', 'date_confirm': time.strftime(DEFAULT_SERVER_DATE_FORMAT)})
else:
- self.write(cr, uid, [o.id], {'state': 'progress', 'date_confirm': time.strftime('%Y-%m-%d')})
+ self.write(cr, uid, [o.id], {'state': 'progress', 'date_confirm': time.strftime(DEFAULT_SERVER_DATE_FORMAT)})
self.pool.get('sale.order.line').button_confirm(cr, uid, [x.id for x in o.order_line])
message = _("The quotation '%s' has been converted to a sales order.") % (o.name,)
self.log(cr, uid, o.id, message)
@@ -665,112 +674,144 @@ class sale_order(osv.osv):
return False
return canceled
- def action_ship_create(self, cr, uid, ids, *args):
- wf_service = netsvc.LocalService("workflow")
- picking_id = False
- move_obj = self.pool.get('stock.move')
- proc_obj = self.pool.get('procurement.order')
- company = self.pool.get('res.users').browse(cr, uid, uid).company_id
- for order in self.browse(cr, uid, ids, context={}):
- proc_ids = []
- output_id = order.shop_id.warehouse_id.lot_output_id.id
- picking_id = False
- for line in order.order_line:
- proc_id = False
- date_planned = datetime.strptime(order.date_order, '%Y-%m-%d') + relativedelta(days=line.delay or 0.0)
- date_planned = (date_planned - timedelta(days=company.security_lead)).strftime('%Y-%m-%d %H:%M:%S')
+ def _prepare_order_line_procurement(self, cr, uid, order, line, move_id, date_planned, *args):
+ return {
+ 'name': line.name,
+ 'origin': order.name,
+ 'date_planned': date_planned,
+ 'product_id': line.product_id.id,
+ 'product_qty': line.product_uom_qty,
+ 'product_uom': line.product_uom.id,
+ 'product_uos_qty': (line.product_uos and line.product_uos_qty)\
+ or line.product_uom_qty,
+ 'product_uos': (line.product_uos and line.product_uos.id)\
+ or line.product_uom.id,
+ 'location_id': order.shop_id.warehouse_id.lot_stock_id.id,
+ 'procure_method': line.type,
+ 'move_id': move_id,
+ 'property_ids': [(6, 0, [x.id for x in line.property_ids])],
+ 'company_id': order.company_id.id,
+ 'sale_line_id': line.id,
+ }
- if line.state == 'done':
- continue
- move_id = False
- if line.product_id and line.product_id.product_tmpl_id.type in ('product', 'consu'):
- location_id = order.shop_id.warehouse_id.lot_stock_id.id
+ def _prepare_order_line_move(self, cr, uid, order, line, picking_id, date_planned, *args):
+ location_id = order.shop_id.warehouse_id.lot_stock_id.id
+ output_id = order.shop_id.warehouse_id.lot_output_id.id
+ return {
+ 'name': line.name[:64],
+ 'picking_id': picking_id,
+ 'product_id': line.product_id.id,
+ 'date': date_planned,
+ 'date_expected': date_planned,
+ 'product_qty': line.product_uom_qty,
+ 'product_uom': line.product_uom.id,
+ 'product_uos_qty': line.product_uos_qty,
+ 'product_uos': (line.product_uos and line.product_uos.id)\
+ or line.product_uom.id,
+ 'product_packaging': line.product_packaging.id,
+ 'address_id': line.address_allotment_id.id or order.partner_shipping_id.id,
+ 'location_id': location_id,
+ 'location_dest_id': output_id,
+ 'sale_line_id': line.id,
+ 'tracking_id': False,
+ 'state': 'draft',
+ #'state': 'waiting',
+ 'note': line.notes,
+ 'company_id': order.company_id.id,
+ 'price_unit': line.product_id.standard_price or 0.0
+ }
+
+ def _prepare_order_picking(self, cr, uid, order, *args):
+ pick_name = self.pool.get('ir.sequence').get(cr, uid, 'stock.picking.out')
+ return {
+ 'name': pick_name,
+ 'origin': order.name,
+ 'type': 'out',
+ 'state': 'auto',
+ 'move_type': order.picking_policy,
+ 'sale_id': order.id,
+ 'address_id': order.partner_shipping_id.id,
+ 'note': order.note,
+ 'invoice_state': (order.order_policy=='picking' and '2binvoiced') or 'none',
+ 'company_id': order.company_id.id,
+ }
+
+ def _create_pickings_and_procurements(self, cr, uid, order, order_lines, picking_id=False, *args):
+ """Create the required procurements to supply sale order lines, also connecting
+ the procurements to appropriate stock moves in order to bring the goods to the
+ sale order's requested location.
+
+ If ``picking_id`` is provided, the stock moves will be added to it, otherwise
+ a standard outgoing picking will be created to wrap the stock moves, as returned
+ by :meth:`~._prepare_order_picking`.
+
+ Modules that wish to customize the procurements or partition the stock moves over
+ multiple stock pickings may override this method and call ``super()`` with
+ different subsets of ``order_lines`` and/or preset ``picking_id`` values.
+
+ :param browse_record order: sale order to which the order lines belong
+ :param list(browse_record) order_lines: sale order line records to procure
+ :param int picking_id: optional ID of a stock picking to which the created stock moves
+ will be added. A new picking will be created if ommitted.
+ :return: True
+ """
+ proc_ids = []
+ for line in order_lines:
+ if line.state == 'done':
+ continue
+
+ date_planned = datetime.strptime(order.date_order, DEFAULT_SERVER_DATE_FORMAT) + relativedelta(days=line.delay or 0.0)
+ date_planned = (date_planned - timedelta(days=order.company_id.security_lead)).strftime(DEFAULT_SERVER_DATETIME_FORMAT)
+
+ if line.product_id:
+ if line.product_id.product_tmpl_id.type in ('product', 'consu'):
if not picking_id:
- pick_name = self.pool.get('ir.sequence').get(cr, uid, 'stock.picking.out')
- picking_id = self.pool.get('stock.picking').create(cr, uid, {
- 'name': pick_name,
- 'origin': order.name,
- 'type': 'out',
- 'state': 'auto',
- 'move_type': order.picking_policy,
- 'sale_id': order.id,
- 'address_id': order.partner_shipping_id.id,
- 'note': order.note,
- 'invoice_state': (order.order_policy=='picking' and '2binvoiced') or 'none',
- 'company_id': order.company_id.id,
- })
- move_id = self.pool.get('stock.move').create(cr, uid, {
- 'name': line.name[:64],
- 'picking_id': picking_id,
- 'product_id': line.product_id.id,
- 'date': date_planned,
- 'date_expected': date_planned,
- 'product_qty': line.product_uom_qty,
- 'product_uom': line.product_uom.id,
- 'product_uos_qty': line.product_uos_qty,
- 'product_uos': (line.product_uos and line.product_uos.id)\
- or line.product_uom.id,
- 'product_packaging': line.product_packaging.id,
- 'address_id': line.address_allotment_id.id or order.partner_shipping_id.id,
- 'location_id': location_id,
- 'location_dest_id': output_id,
- 'sale_line_id': line.id,
- 'tracking_id': False,
- 'state': 'draft',
- #'state': 'waiting',
- 'note': line.notes,
- 'company_id': order.company_id.id,
- })
-
- if line.product_id:
- proc_id = self.pool.get('procurement.order').create(cr, uid, {
- 'name': line.name,
- 'origin': order.name,
- 'date_planned': date_planned,
- 'product_id': line.product_id.id,
- 'product_qty': line.product_uom_qty,
- 'product_uom': line.product_uom.id,
- 'product_uos_qty': (line.product_uos and line.product_uos_qty)\
- or line.product_uom_qty,
- 'product_uos': (line.product_uos and line.product_uos.id)\
- or line.product_uom.id,
- 'location_id': order.shop_id.warehouse_id.lot_stock_id.id,
- 'procure_method': line.type,
- 'move_id': move_id,
- 'property_ids': [(6, 0, [x.id for x in line.property_ids])],
- 'company_id': order.company_id.id,
- 'sale_line_id': line.id,
- })
- proc_ids.append(proc_id)
- self.pool.get('sale.order.line').write(cr, uid, [line.id], {'procurement_id': proc_id})
- if order.state == 'shipping_except':
- for pick in order.picking_ids:
- for move in pick.move_lines:
- if move.state == 'cancel':
- mov_ids = move_obj.search(cr, uid, [('state', '=', 'cancel'),('sale_line_id', '=', line.id),('picking_id', '=', pick.id)])
- if mov_ids:
- for mov in move_obj.browse(cr, uid, mov_ids):
- move_obj.write(cr, uid, [move_id], {'product_qty': mov.product_qty, 'product_uos_qty': mov.product_uos_qty})
- proc_obj.write(cr, uid, [proc_id], {'product_qty': mov.product_qty, 'product_uos_qty': mov.product_uos_qty})
+ picking_id = self.pool.get('stock.picking').create(cr, uid, self._prepare_order_picking(cr, uid, order, args))
+ move_id = self.pool.get('stock.move').create(cr, uid, self._prepare_order_line_move(cr, uid, order, line, picking_id, date_planned, args))
+ else:
+ # a service has no stock move
+ move_id = False
- val = {}
+ proc_id = self.pool.get('procurement.order').create(cr, uid, self._prepare_order_line_procurement(cr, uid, order, line, move_id, date_planned, args))
+ proc_ids.append(proc_id)
+ line.write({'procurement_id': proc_id})
- if picking_id:
- wf_service.trg_validate(uid, 'stock.picking', picking_id, 'button_confirm', cr)
+ # FIXME: deals with potentially cancelled shipments, seems broken, see below
+ # FIXME: was introduced by revid: mtr@mtr-20101125100355-0a1b7m792t63mssv
+ if order.state == 'shipping_except':
+ for pick in order.picking_ids:
+ for move in pick.move_lines:
+ if move.state == 'cancel':
+ mov_ids = self.pool.get('stock.move').search(cr, uid, [('state', '=', 'cancel'),('sale_line_id', '=', line.id),('picking_id', '=', pick.id)])
+ if mov_ids:
+ for mov in move_obj.browse(cr, uid, mov_ids):
+ # FIXME: the following seems broken: what if move_id doesn't exist? What if there are several mov_ids? Shouldn't that be a sum?
+ self.pool.get('stock.move').write(cr, uid, [move_id], {'product_qty': mov.product_qty, 'product_uos_qty': mov.product_uos_qty})
+ self.pool.get('procurement.order').write(cr, uid, [proc_id], {'product_qty': mov.product_qty, 'product_uos_qty': mov.product_uos_qty})
- for proc_id in proc_ids:
- wf_service.trg_validate(uid, 'procurement.order', proc_id, 'button_confirm', cr)
+ wf_service = netsvc.LocalService("workflow")
+ if picking_id:
+ wf_service.trg_validate(uid, 'stock.picking', picking_id, 'button_confirm', cr)
- if order.state == 'shipping_except':
- val['state'] = 'progress'
- val['shipped'] = False
+ for proc_id in proc_ids:
+ wf_service.trg_validate(uid, 'procurement.order', proc_id, 'button_confirm', cr)
- if (order.order_policy == 'manual'):
- for line in order.order_line:
- if (not line.invoiced) and (line.state not in ('cancel', 'draft')):
- val['state'] = 'manual'
- break
- self.write(cr, uid, [order.id], val)
+ val = {}
+ if order.state == 'shipping_except':
+ val['state'] = 'progress'
+ val['shipped'] = False
+
+ if (order.order_policy == 'manual'):
+ for line in order.order_line:
+ if (not line.invoiced) and (line.state not in ('cancel', 'draft')):
+ val['state'] = 'manual'
+ break
+ order.write(val)
+ return True
+
+ def action_ship_create(self, cr, uid, ids, *args):
+ for order in self.browse(cr, uid, ids, context={}):
+ self._create_pickings_and_procurements(cr, uid, order, order.order_line, None, args)
return True
def action_ship_end(self, cr, uid, ids, context=None):
@@ -805,7 +846,7 @@ class sale_order(osv.osv):
'description': 'Order '+str(inv['id']),
'document': '',
'partner_id': part,
- 'date': time.strftime('%Y-%m-%d'),
+ 'date': time.strftime(DEFAULT_SERVER_DATE_FORMAT),
'user_id': uid,
'partner_type': partnertype,
'probability': 1.0,
@@ -876,9 +917,9 @@ class sale_order_line(osv.osv):
help="If 'on order', it triggers a procurement when the sale order is confirmed to create a task, purchase order or manufacturing order linked to this sale order line."),
'property_ids': fields.many2many('mrp.property', 'sale_order_line_property_rel', 'order_id', 'property_id', 'Properties', readonly=True, states={'draft': [('readonly', False)]}),
'address_allotment_id': fields.many2one('res.partner.address', 'Allotment Partner'),
- 'product_uom_qty': fields.float('Quantity (UoM)', digits=(16, 2), required=True, readonly=True, states={'draft': [('readonly', False)]}),
+ 'product_uom_qty': fields.float('Quantity (UoM)', digits_compute= dp.get_precision('Product UoS'), required=True, readonly=True, states={'draft': [('readonly', False)]}),
'product_uom': fields.many2one('product.uom', 'Unit of Measure ', required=True, readonly=True, states={'draft': [('readonly', False)]}),
- 'product_uos_qty': fields.float('Quantity (UoS)', readonly=True, states={'draft': [('readonly', False)]}),
+ 'product_uos_qty': fields.float('Quantity (UoS)' ,digits_compute= dp.get_precision('Product UoS'), readonly=True, states={'draft': [('readonly', False)]}),
'product_uos': fields.many2one('product.uom', 'Product UoS'),
'product_packaging': fields.many2one('product.packaging', 'Packaging'),
'move_ids': fields.one2many('stock.move', 'sale_line_id', 'Inventory Moves', readonly=True),
@@ -1054,7 +1095,7 @@ class sale_order_line(osv.osv):
'product_uos_qty': qty}, 'domain': {'product_uom': [],
'product_uos': []}}
if not date_order:
- date_order = time.strftime('%Y-%m-%d')
+ date_order = time.strftime(DEFAULT_SERVER_DATE_FORMAT)
result = {}
product_obj = product_obj.browse(cr, uid, product, context=context)
@@ -1207,7 +1248,7 @@ class sale_config_picking_policy(osv.osv_memory):
('manual', 'Invoice Based on Sales Orders'),
('picking', 'Invoice Based on Deliveries'),
], 'Main Method Based On', required=True, help="You can generate invoices based on sales orders or based on shippings."),
- 'charge_delivery': fields.boolean('Do you charge the delivery'),
+ 'charge_delivery': fields.boolean('Do you charge the delivery?'),
'time_unit': fields.many2one('product.uom','Main Working Time Unit')
}
_defaults = {
@@ -1216,12 +1257,10 @@ class sale_config_picking_policy(osv.osv_memory):
def onchange_order(self, cr, uid, ids, sale, deli, context=None):
res = {}
- if sale or deli:
+ if sale:
res.update({'order_policy': 'manual'})
- elif not sale and not deli:
- res.update({'order_policy': 'manual'})
- else:
- return {}
+ elif deli:
+ res.update({'order_policy': 'picking'})
return {'value':res}
def execute(self, cr, uid, ids, context=None):
@@ -1231,26 +1270,18 @@ class sale_config_picking_policy(osv.osv_memory):
module_obj = self.pool.get('ir.module.module')
module_upgrade_obj = self.pool.get('base.module.upgrade')
module_name = []
- group_ids=[]
- group_name = ['group_sale_salesman','group_sale_manager']
- for name in group_name:
- data_id = data_obj.name_search(cr, uid, name)
- group_ids.append(data_obj.browse(cr,uid,data_id[0][0]).res_id)
+ group_id = data_obj.get_object(cr, uid, 'base', 'group_sale_salesman').id
wizard = self.browse(cr, uid, ids)[0]
if wizard.sale_orders:
- menu_name = 'menu_invoicing_sales_order_lines'
- data_id = data_obj.name_search(cr, uid, menu_name)
- menu_id = data_obj.browse(cr,uid,data_id[0][0]).res_id
- menu_obj.write(cr, uid, menu_id, {'groups_id':[(4,group_ids[0]),(4,group_ids[1])]})
+ menu_id = data_obj.get_object(cr, uid, 'sale', 'menu_invoicing_sales_order_lines').id
+ menu_obj.write(cr, uid, menu_id, {'groups_id':[(4,group_id)]})
if wizard.deli_orders:
- menu_name = 'menu_action_picking_list_to_invoice'
- data_id = data_obj.name_search(cr, uid, menu_name)
- menu_id = data_obj.browse(cr,uid,data_id[0][0]).res_id
- menu_obj.write(cr, uid, menu_id, {'groups_id':[(4,group_ids[0]),(4,group_ids[1])]})
+ menu_id = data_obj.get_object(cr, uid, 'sale', 'menu_action_picking_list_to_invoice').id
+ menu_obj.write(cr, uid, menu_id, {'groups_id':[(4,group_id)]})
if wizard.task_work:
module_name.append('project_timesheet')
@@ -1260,12 +1291,7 @@ class sale_config_picking_policy(osv.osv_memory):
module_name.append('account_analytic_analysis')
if wizard.charge_delivery:
- module_name.append('delivery')
-
- if wizard.time_unit:
- product_obj = self.pool.get('product.product')
- product_id = product_obj.name_search(cr, uid, 'Employee')
- product_obj.write(cr, uid, product_id[0][0], {'uom_id':wizard.time_unit.id})
+ module_name.append('delivery')
if len(module_name):
module_ids = []
@@ -1283,7 +1309,17 @@ class sale_config_picking_policy(osv.osv_memory):
if need_install:
pooler.restart_pool(cr.dbname, update_module=True)[1]
+ if wizard.time_unit:
+ prod_id = data_obj.get_object(cr, uid, 'hr_timesheet', 'product_consultant').id
+ product_obj = self.pool.get('product.product')
+ product_obj.write(cr, uid, prod_id, {'uom_id':wizard.time_unit.id, 'uom_po_id': wizard.time_unit.id})
+
ir_values_obj.set(cr, uid, 'default', False, 'order_policy', ['sale.order'], wizard.order_policy)
+ if wizard.task_work and wizard.time_unit:
+ company_id = self.pool.get('res.users').browse(cr, uid, uid).company_id.id
+ self.pool.get('res.company').write(cr, uid, [company_id], {
+ 'project_time_mode_id': wizard.time_unit.id
+ }, context=context)
sale_config_picking_policy()
diff --git a/addons/sale/sale_data.xml b/addons/sale/sale_data.xml
index 41f7534c8e2..4622577ac3d 100644
--- a/addons/sale/sale_data.xml
+++ b/addons/sale/sale_data.xml
@@ -13,11 +13,15 @@
Resource: sale.shop
-->
-
-
-
-
+
+
+
+
+
+
diff --git a/addons/sale/sale_installer.py b/addons/sale/sale_installer.py
deleted file mode 100644
index dcac79270b2..00000000000
--- a/addons/sale/sale_installer.py
+++ /dev/null
@@ -1,43 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-from osv import fields, osv
-
-class sale_installer(osv.osv_memory):
- _inherit = 'base.setup.installer'
-
- _columns = {
- 'delivery': fields.boolean('Delivery Costs',
- help="Allows you to compute delivery costs on your quotations."),
- 'sale_journal': fields.boolean('Invoicing journals',
- help="Allows you to group and invoice your delivery orders according to different invoicing types: daily, weekly, etc."),
- 'sale_layout': fields.boolean('Sales Orders Print Layout',
- help="Provides some features to improve the layout of the Sales Order reports."),
- 'sale_margin': fields.boolean('Margins in Sales Orders',
- help="Gives the margin of profitability by calculating "
- "the difference between Unit Price and Cost Price."),
- 'sale_order_dates': fields.boolean('Full Dates on Sales Orders',
- help="Adds commitment, requested and effective dates on Sales Orders."),
- }
-
-sale_installer()
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/sale/sale_installer.xml b/addons/sale/sale_installer.xml
deleted file mode 100644
index ae48e9f14b2..00000000000
--- a/addons/sale/sale_installer.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
- sale.installer.view
- base.setup.installer
- form
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/sale/sale_sequence.xml b/addons/sale/sale_sequence.xml
index dadd1942940..666f7b49720 100644
--- a/addons/sale/sale_sequence.xml
+++ b/addons/sale/sale_sequence.xml
@@ -13,6 +13,7 @@
sale.orderSO3
+
diff --git a/addons/sale/sale_view.xml b/addons/sale/sale_view.xml
index a12a4c566f5..4669a9d7d9c 100644
--- a/addons/sale/sale_view.xml
+++ b/addons/sale/sale_view.xml
@@ -180,7 +180,7 @@
-
+
@@ -481,54 +481,50 @@
- Set Up Your Invoicing Method
+ Setup Your Invoicing Methodsale.config.picking_policyform
- Sales Application Configuration
+ Setup your Invoicing Method
-
-
-
+
+
+ Setup your Invoicing Method
+
+
+ This tool will help you to install the right module and configure the system according to the method you use to invoice your customers.
+
+
+
+ 12
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
- Set up your Invoicing Method
+ Setup your Invoicing Methodir.actions.act_windowsale.config.picking_policy
@@ -541,6 +537,7 @@
+ once
diff --git a/addons/sale/test/data_test.yml b/addons/sale/test/data_test.yml
index 7064a549335..0be8474754c 100644
--- a/addons/sale/test/data_test.yml
+++ b/addons/sale/test/data_test.yml
@@ -122,7 +122,6 @@
default_credit_account_id: account_account_purchases0
default_debit_account_id: account_account_purchases0
name: Purchase Journal - (test)
- sequence_id: account.sequence_purchase_journal
type: purchase
view_id: account.account_journal_view
-
@@ -134,7 +133,6 @@
default_credit_account_id: account_account_sales0
default_debit_account_id: account_account_sales0
name: Sale Journal
- sequence_id: account.sequence_sale_journal
type: sale
view_id: account.account_journal_view
-
@@ -146,7 +144,6 @@
default_credit_account_id: account_account_cash0
default_debit_account_id: account_account_cash0
name: Bank Journal
- sequence_id: account.sequence_journal
type: cash
view_id: account.account_journal_bank_view
-
diff --git a/addons/sale/test/invoice_on_ordered_qty.yml b/addons/sale/test/invoice_on_ordered_qty.yml
index 785b2d8835e..313aa3a0d63 100644
--- a/addons/sale/test/invoice_on_ordered_qty.yml
+++ b/addons/sale/test/invoice_on_ordered_qty.yml
@@ -31,39 +31,17 @@
-
!workflow {model: sale.order, action: order_confirm, ref: sale_order_so9}
-
- I verify that the picking has been generated for the sale order
+ I verify that the picking has been generated for the sale order and I process it
-
!python {model: sale.order}: |
so = self.browse(cr, uid, ref("sale_order_so9"))
assert so.picking_ids,"Picking has not been generated for sale_order_so9"
--
- Then I confirm the picking
--
- !record {model: stock.partial.picking, id: stock_partial_picking_0}:
- date: !eval time.strftime('%Y-%m-%d %H:%M:%S')
--
- Then I done the picking
--
- !python {model: stock.picking }: |
- import time
- sale_order_obj = self.pool.get('sale.order')
- so = sale_order_obj.browse(cr, uid, ref("sale_order_so9"))
- picking_id = self.search(cr, uid, [('origin','=',so.name),('type','=','out')])
- if picking_id:
- pick=self.browse(cr,uid,picking_id[0])
- pick.force_assign(cr, uid)
- partial_datas = {
- 'partner_id':pick.address_id.partner_id.id,
- 'address_id': pick.address_id.id,
- 'delivery_date' : time.strftime('%Y-%m-%d'),
- }
- move = pick.move_lines[0]
- partial_datas['move%s'%(move.id)]= {
- 'product_id': move.product_id.id,
- 'product_qty': '100',
- 'product_uom': move.product_uom.id,
- }
- self.do_partial(cr, uid, [pick.id],partial_datas)
+ picking, = so.picking_ids
+ stock_partial_picking = self.pool.get('stock.partial.picking')
+ partial_id = stock_partial_picking.create(cr, uid, {},
+ context={'active_model': 'stock.picking',
+ 'active_ids': [picking.id]})
+ stock_partial_picking.do_partial(cr, uid, [partial_id])
-
I click on Create Invoice button to create the invoice.
-
diff --git a/addons/sale/test/invoice_on_shipped_qty.yml b/addons/sale/test/invoice_on_shipped_qty.yml
index bf2795e0f5b..c6ac86471be 100644
--- a/addons/sale/test/invoice_on_shipped_qty.yml
+++ b/addons/sale/test/invoice_on_shipped_qty.yml
@@ -30,41 +30,21 @@
-
!workflow {model: sale.order, action: order_confirm, ref: sale_order_so6}
-
- I verify that the picking has been generated for the sale order
+ I verify that the picking has been generated for the sale order and I process it
-
!python {model: sale.order}: |
so = self.browse(cr, uid, ref("sale_order_so6"))
assert so.picking_ids,"Picking has not been generated for sale_order_so6"
--
- Then I click on the "Product Sent" button of Outgoing Shipments
--
- !record {model: stock.partial.picking, id: stock_partial_picking_0}:
- date: !eval time.strftime('%Y-%m-%d %H:%M:%S')
--
- I change the quantity on the picking to 199, and confirm partially 100 PCE.
--
- !python {model: stock.picking }: |
- import time
- sale_order_obj = self.pool.get('sale.order')
- so = sale_order_obj.browse(cr, uid, ref("sale_order_so6"))
- picking_id = self.search(cr, uid, [('origin','=',so.name),('type','=','out')])
- if picking_id:
- pick=self.browse(cr,uid,picking_id[0])
- self.pool.get('stock.move').write(cr, uid, [pick.move_lines[0].id], {'product_qty': 199, 'product_uos_qty': 199})
- pick=self.browse(cr,uid,picking_id[0])
- pick.force_assign(cr, uid)
- partial_datas = {
- 'partner_id':pick.address_id.partner_id.id,
- 'address_id': pick.address_id.id,
- 'delivery_date' : time.strftime('%Y-%m-%d'),
- }
- move = pick.move_lines[0]
- partial_datas['move%s'%(move.id)]= {
- 'product_id': move.product_id.id,
- 'product_qty': '100',
- 'product_uom': move.product_uom.id,
- }
- self.do_partial(cr, uid, [pick.id],partial_datas)
+ picking, = so.picking_ids
+ stock_partial_picking = self.pool.get('stock.partial.picking')
+ partial_id = stock_partial_picking.create(cr, uid, {},
+ context={'active_model': 'stock.picking',
+ 'active_ids': [picking.id]})
+ # I change the qty to 100 for a partial delivery
+ partial = stock_partial_picking.browse(cr,uid,partial_id)
+ line_id = partial.move_ids[0].id
+ partial.write({'move_ids': [(1,line_id,{'quantity':100})]})
+ partial.do_partial()
-
Then I click on 'Create Invoices' button
-
@@ -72,9 +52,9 @@
import time
sale_obj = self.pool.get('sale.order')
sale_id = sale_obj.browse(cr, uid, ref("sale_order_so6"))
- ids = [x.id for x in sale_id.picking_ids]
+ ids = [x.id for x in sale_id.picking_ids if x.state == 'done']
wiz_id = self.create(cr, uid, {'invoice_date': time.strftime('%Y-%m-%d'), 'journal_id': ref('account.sales_journal')},
- {'active_ids': ids})
+ {'active_ids': ids, 'active_model': 'stock.picking'})
self.create_invoice(cr, uid, [wiz_id], {"active_ids": ids, "active_id": ids[0]})
-
I verify whether the invoice has been generated for SO
@@ -98,7 +78,7 @@
inv_brw = self.browse(cr,uid,inv_id)[0]
for inv_lines in inv_brw.invoice_line:
qty1=inv_lines.quantity
- assert (qty1 == qty), "Quantities are not the same"
+ assert (qty1 == qty), "Quantities are not the same: invoiced: %s, shipped: %s" % (qty1,qty)
-
I open the Invoice for the SO.
-
diff --git a/addons/sale/test/manual_order_policy.yml b/addons/sale/test/manual_order_policy.yml
index c1535402f9b..af515b2d4e4 100644
--- a/addons/sale/test/manual_order_policy.yml
+++ b/addons/sale/test/manual_order_policy.yml
@@ -136,15 +136,11 @@
I verify that a procurement state is "running"
-
!python {model: procurement.order}: |
- from tools.translate import _
- modules = self.pool.get('ir.module.module')
- mod_pur = modules.search(cr, uid, [('name','=','purchase')])
- mod_brw = modules.browse(cr,uid,mod_pur)[0]
- if (mod_brw.state == 'installed'):
- sale_order_obj = self.pool.get('sale.order')
- so = sale_order_obj.browse(cr, uid, ref("sale_order_so0"))
- proc_ids = self.search(cr, uid, [('origin','=',so.name),('state','=','running')])
- assert(proc_ids),"Procurement is not in the running state!"
+ sale_order_obj = self.pool.get('sale.order')
+ so = sale_order_obj.browse(cr, uid, ref("sale_order_so0"))
+ proc_ids = self.search(cr, uid, [('origin','=',so.name),('state','in',['running','ready'])])
+ # should be running is 'purchase' is installed, else 'ready'
+ assert(proc_ids),"Procurement is not in running/ready state!"
-
I verify that a purchase order has been generated
-
@@ -192,7 +188,7 @@
for pur in pur_ids:
wf_service.trg_validate(uid, 'purchase.order',pur,'purchase_approve', cr)
-
- I verify that a picking related to purchase order has been generated.
+ I verify that a picking related to purchase order has been generated and I process it
-
!python {model: sale.order}: |
modules = self.pool.get('ir.module.module')
@@ -204,29 +200,12 @@
pur_id = pur_obj.search(cr, uid, [('origin','=',so.name)])
po = pur_obj.browse(cr, uid, pur_id)[0]
assert(po.picking_ids),"Picking for purchase order has not been generated"
--
- Then I click on the "Products Received" button of Incoming Shipments
--
- !record {model: stock.partial.picking, id: stock_partial_picking_0}:
- date: !eval time.strftime('%Y-%m-%d %H:%M:%S')
--
- I click on the "Validate" button
--
- !python {model: stock.picking}: |
- modules = self.pool.get('ir.module.module')
- sale_order_obj = self.pool.get('sale.order')
- pur_obj = self.pool.get('purchase.order')
- mod_pur = modules.search(cr, uid, [('name','=','purchase')])
- mod_brw = modules.browse(cr,uid,mod_pur)[0]
- if (mod_brw.state == 'installed'):
- so = sale_order_obj.browse(cr, uid, ref("sale_order_so0"))
- pur_id = pur_obj.search(cr, uid, [('origin','=',so.name)])
- po = pur_obj.browse(cr, uid, pur_id)[0]
- pick_ser_id = self.search(cr, uid, [('purchase_id', '=', po.id )])
- import netsvc
- wf_service = netsvc.LocalService("workflow")
- for pick in pick_ser_id:
- wf_service.trg_validate(uid, 'stock.picking',pick,'button_done', cr)
+ picking, = po.picking_ids
+ stock_partial_picking = self.pool.get('stock.partial.picking')
+ partial_id = stock_partial_picking.create(cr, uid, {},
+ context={'active_model': 'stock.picking',
+ 'active_ids': [picking.id]})
+ stock_partial_picking.do_partial(cr, uid, [partial_id])
-
I verify that picking for purchase order has been done.
-
@@ -244,7 +223,7 @@
ids = picking_obj.search(cr, uid, [('purchase_id', '=', po.id ),('state', '=', 'done')])
assert(ids),"Picking is not in the done state!"
-
- Then I done the picking
+ Then I process the picking
-
!python {model: stock.picking }: |
import time
@@ -254,18 +233,11 @@
if picking_id:
pick=self.browse(cr,uid,picking_id[0])
pick.force_assign(cr, uid)
- partial_datas = {
- 'partner_id':pick.address_id.partner_id.id,
- 'address_id': pick.address_id.id,
- 'delivery_date' : time.strftime('%Y-%m-%d'),
- }
- move = pick.move_lines[0]
- partial_datas['move%s'%(move.id)]= {
- 'product_id': move.product_id.id,
- 'product_qty': move.product_qty,
- 'product_uom': move.product_uom.id,
- }
- self.do_partial(cr, uid, [pick.id],partial_datas)
+ stock_partial_picking = self.pool.get('stock.partial.picking')
+ partial_id = stock_partial_picking.create(cr, uid, {},
+ context={'active_model': 'stock.picking',
+ 'active_ids': [pick.id]})
+ stock_partial_picking.do_partial(cr, uid, [partial_id])
-
I verify that picking for sale order is in done state.
-
@@ -275,38 +247,6 @@
picking_id = self.search(cr, uid, [('origin','=',so.name),('type','=','out')])
pick = self.browse(cr,uid,picking_id[0])
assert (pick.state) =='done', "Picking for SO is not in done state."
--
- Then I done the delivery order
--
- !python {model: stock.picking }: |
- import time
- sale_order_obj = self.pool.get('sale.order')
- so = sale_order_obj.browse(cr, uid, ref("sale_order_so0"))
- picking_id = self.search(cr, uid, [('origin','=',so.name)])
- if picking_id:
- pick=self.browse(cr,uid,picking_id[0])
- pick.force_assign(cr, uid)
- partial_datas = {
- 'partner_id':pick.address_id.partner_id.id,
- 'address_id': pick.address_id.id,
- 'delivery_date' : time.strftime('%Y-%m-%d'),
- }
- move = pick.move_lines[0]
- partial_datas['move%s'%(move.id)]= {
- 'product_id': move.product_id.id,
- 'product_qty': move.product_qty,
- 'product_uom': move.product_uom.id,
- }
- self.do_partial(cr, uid, [pick.id],partial_datas)
--
- I verify that delivery state is done
--
- !python {model: stock.picking }: |
- sale_order_obj = self.pool.get('sale.order')
- so = sale_order_obj.browse(cr, uid, ref("sale_order_so0"))
- picking_id = self.search(cr, uid, [('origin','=',so.name)])
- pick = self.browse(cr,uid,picking_id[0])
- assert (pick.state) =='done', "Picking for SO is not in done state."
-
I verify that a "Picked" has been set to true
-
diff --git a/addons/sale/test/picking_order_policy.yml b/addons/sale/test/picking_order_policy.yml
index 4381c78f010..1dcbf980da4 100644
--- a/addons/sale/test/picking_order_policy.yml
+++ b/addons/sale/test/picking_order_policy.yml
@@ -46,18 +46,11 @@
if picking_id:
pick=self.browse(cr,uid,picking_id[0])
pick.force_assign(cr, uid)
- partial_datas = {
- 'partner_id':pick.address_id.partner_id.id,
- 'address_id': pick.address_id.id,
- 'delivery_date' : time.strftime('%Y-%m-%d'),
- }
- move = pick.move_lines[0]
- partial_datas['move%s'%(move.id)]= {
- 'product_id': move.product_id.id,
- 'product_qty': move.product_qty,
- 'product_uom': move.product_uom.id,
- }
- self.do_partial(cr, uid, [pick.id],partial_datas)
+ stock_partial_picking = self.pool.get('stock.partial.picking')
+ partial_id = stock_partial_picking.create(cr, uid, {},
+ context={'active_model': 'stock.picking',
+ 'active_ids': [pick.id]})
+ stock_partial_picking.do_partial(cr, uid, [partial_id])
-
Then I click on 'Create Invoices' button
-
@@ -67,7 +60,7 @@
sale_id=sale_obj.browse(cr, uid, ref("sale_order_so7"))
ids = [x.id for x in sale_id.picking_ids]
wiz_id = self.create(cr, uid, {'invoice_date': time.strftime('%Y-%m-%d'), 'journal_id': ref('account.sales_journal')},
- {'active_ids': ids})
+ {'active_ids': ids, 'active_model': 'stock.picking'})
self.create_invoice(cr, uid, [wiz_id], {"active_ids": ids, "active_id": ids[0]})
-
I check that an invoice has been created.
@@ -197,7 +190,7 @@
for pur in pur_ids:
wf_service.trg_validate(uid, 'purchase.order',pur,'purchase_approve', cr)
-
- I verify that a picking related to purchase order has been generated.
+ I verify that a picking related to purchase order has been generated and I process it
-
!python {model: sale.order}: |
modules = self.pool.get('ir.module.module')
@@ -209,29 +202,12 @@
pur_id = pur_obj.search(cr, uid, [('origin','=',so.name)])
po = pur_obj.browse(cr, uid, pur_id)[0]
assert(po.picking_ids),"Picking for purchase order has not been generated"
--
- Then I click on the "Products Received" button of Incoming Shipments
--
- !record {model: stock.partial.picking, id: stock_partial_picking_0}:
- date: !eval time.strftime('%Y-%m-%d %H:%M:%S')
--
- I click on the "Validate" button
--
- !python {model: stock.picking}: |
- modules = self.pool.get('ir.module.module')
- mod_pur = modules.search(cr, uid, [('name','=','purchase')])
- mod_brw = modules.browse(cr,uid,mod_pur)[0]
- if (mod_brw.state == 'installed'):
- sale_order_obj = self.pool.get('sale.order')
- pur_obj = self.pool.get('purchase.order')
- so = sale_order_obj.browse(cr, uid, ref("sale_order_so7"))
- pur_id = pur_obj.search(cr, uid, [('origin','=',so.name)])
- po = pur_obj.browse(cr, uid, pur_id)[0]
- pick_ser_id = self.search(cr, uid, [('purchase_id', '=', po.id )])
- import netsvc
- wf_service = netsvc.LocalService("workflow")
- for pick in pick_ser_id:
- wf_service.trg_validate(uid, 'stock.picking',pick,'button_done', cr)
+ picking, = po.picking_ids
+ stock_partial_picking = self.pool.get('stock.partial.picking')
+ partial_id = stock_partial_picking.create(cr, uid, {},
+ context={'active_model': 'stock.picking',
+ 'active_ids': [picking.id]})
+ stock_partial_picking.do_partial(cr, uid, [partial_id])
-
I verify that picking for purchase order has been done.
-
@@ -249,36 +225,20 @@
ids = picking_obj.search(cr, uid, [('purchase_id', '=', po.id ),('state', '=', 'done')])
assert ids, _('Picking is not in the done state!')
-
- I verify that delivery order has been generated for sale order
+ I verify that delivery order has been generated for sale order, and process it
-
!python {model: stock.picking }: |
sale_order_obj = self.pool.get('sale.order')
so = sale_order_obj.browse(cr, uid, ref("sale_order_so7"))
picking_id = self.search(cr, uid, [('origin','=',so.name)])
assert (picking_id),"Delivery order has not been generated"
--
- I verify that delivery has been done
--
- !python {model: stock.picking }: |
- import time
- sale_order_obj = self.pool.get('sale.order')
- so = sale_order_obj.browse(cr, uid, ref("sale_order_so7"))
- picking_id = self.search(cr, uid, [('origin','=',so.name)])
- if picking_id:
- pick=self.browse(cr,uid,picking_id[0])
- pick.force_assign(cr, uid)
- partial_datas = {
- 'partner_id':pick.address_id.partner_id.id,
- 'address_id': pick.address_id.id,
- 'delivery_date' : time.strftime('%Y-%m-%d'),
- }
- move = pick.move_lines[0]
- partial_datas['move%s'%(move.id)]= {
- 'product_id': move.product_id.id,
- 'product_qty': move.product_qty,
- 'product_uom': move.product_uom.id,
- }
- self.do_partial(cr, uid, [pick.id],partial_datas)
+ pick=self.browse(cr,uid,picking_id[0])
+ pick.force_assign(cr, uid)
+ stock_partial_picking = self.pool.get('stock.partial.picking')
+ partial_id = stock_partial_picking.create(cr, uid, {},
+ context={'active_model': 'stock.picking',
+ 'active_ids': [pick.id]})
+ stock_partial_picking.do_partial(cr, uid, [partial_id])
-
I verify that delivery state is done
-
@@ -290,7 +250,7 @@
pick = self.browse(cr,uid,picking_id[0])
assert (pick.state) =='done', "Picking for SO is not in done state."
-
- I verify that a "Picked" has been set to true
+ I verify that the sale order is marked as delivered
-
!python {model: sale.order}: |
so = self.browse(cr, uid, ref("sale_order_so7"))
diff --git a/addons/sale/test/postpaid_order_policy.yml b/addons/sale/test/postpaid_order_policy.yml
index 330c6d17308..a0d5a8e1928 100644
--- a/addons/sale/test/postpaid_order_policy.yml
+++ b/addons/sale/test/postpaid_order_policy.yml
@@ -45,18 +45,11 @@
if picking_id:
pick=self.browse(cr,uid,picking_id[0])
pick.force_assign(cr, uid)
- partial_datas = {
- 'partner_id':pick.address_id.partner_id.id,
- 'address_id': pick.address_id.id,
- 'delivery_date' : time.strftime('%Y-%m-%d'),
- }
- move = pick.move_lines[0]
- partial_datas['move%s'%(move.id)]= {
- 'product_id': move.product_id.id,
- 'product_qty': move.product_qty,
- 'product_uom': move.product_uom.id,
- }
- self.do_partial(cr, uid, [pick.id],partial_datas)
+ stock_partial_picking = self.pool.get('stock.partial.picking')
+ partial_id = stock_partial_picking.create(cr, uid, {},
+ context={'active_model': 'stock.picking',
+ 'active_ids': [pick.id]})
+ stock_partial_picking.do_partial(cr, uid, [partial_id])
-
I verify that picking order is in done state.
-
@@ -76,7 +69,7 @@
picking_id = self.search(cr, uid, [('origin','=',so.name)])
assert (picking_id),"Delivery order has not been generated"
-
- I click on the Products Sent button and then on the Validate button
+ I process the delivery order
-
!python {model: stock.picking }: |
import time
@@ -86,20 +79,13 @@
if picking_id:
pick=self.browse(cr,uid,picking_id[0])
pick.force_assign(cr, uid)
- partial_datas = {
- 'partner_id':pick.address_id.partner_id.id,
- 'address_id': pick.address_id.id,
- 'delivery_date' : time.strftime('%Y-%m-%d'),
- }
- move = pick.move_lines[0]
- partial_datas['move%s'%(move.id)]= {
- 'product_id': move.product_id.id,
- 'product_qty': move.product_qty,
- 'product_uom': move.product_uom.id,
- }
- self.do_partial(cr, uid, [pick.id],partial_datas)
+ stock_partial_picking = self.pool.get('stock.partial.picking')
+ partial_id = stock_partial_picking.create(cr, uid, {},
+ context={'active_model': 'stock.picking',
+ 'active_ids': [pick.id]})
+ stock_partial_picking.do_partial(cr, uid, [partial_id])
-
- I verify that delivery state is done
+ I verify that delivery order is marked done
-
!python {model: stock.picking }: |
sale_order_obj = self.pool.get('sale.order')
@@ -187,7 +173,7 @@
for pur in pur_ids:
wf_service.trg_validate(uid, 'purchase.order',pur,'purchase_approve', cr)
-
- I verify that a picking related to purchase order has been generated.
+ I verify that a picking related to purchase order has been generated and I process it
-
!python {model: sale.order}: |
modules = self.pool.get('ir.module.module')
@@ -199,31 +185,14 @@
pur_id = pur_obj.search(cr, uid, [('origin','=',so.name)])
po = pur_obj.browse(cr, uid, pur_id)[0]
assert(po.picking_ids),"Picking for purchase order has not been generated"
+ picking, = po.picking_ids
+ stock_partial_picking = self.pool.get('stock.partial.picking')
+ partial_id = stock_partial_picking.create(cr, uid, {},
+ context={'active_model': 'stock.picking',
+ 'active_ids': [picking.id]})
+ stock_partial_picking.do_partial(cr, uid, [partial_id])
-
- Then I click on the "Products Received" button of Incoming Shipments
--
- !record {model: stock.partial.picking, id: stock_partial_picking_0}:
- date: !eval time.strftime('%Y-%m-%d %H:%M:%S')
--
- I click on the "Validate" button
--
- !python {model: stock.picking}: |
- modules = self.pool.get('ir.module.module')
- mod_pur = modules.search(cr, uid, [('name','=','purchase')])
- mod_brw = modules.browse(cr,uid,mod_pur)[0]
- if (mod_brw.state == 'installed'):
- sale_order_obj = self.pool.get('sale.order')
- pur_obj = self.pool.get('purchase.order')
- so = sale_order_obj.browse(cr, uid, ref("sale_order_so8"))
- pur_id = pur_obj.search(cr, uid, [('origin','=',so.name)])
- po = pur_obj.browse(cr, uid, pur_id)[0]
- pick_ser_id = self.search(cr, uid, [('purchase_id', '=', po.id )])
- import netsvc
- wf_service = netsvc.LocalService("workflow")
- for pick in pick_ser_id:
- wf_service.trg_validate(uid, 'stock.picking',pick,'button_done', cr)
--
- I verify that picking for purchase order has been done.
+ I verify that picking for purchase order has been marked done.
-
!python {model: sale.order}: |
from tools.translate import _
@@ -239,7 +208,7 @@
ids = picking_obj.search(cr, uid, [('purchase_id', '=', po.id ),('state', '=', 'done')])
assert ids, _('Picking is not in the done state!')
-
- I verify that a "Picked" has been set to true
+ I verify that the sale order is marked as delivered
-
!python {model: sale.order}: |
so = self.browse(cr, uid, ref("sale_order_so8"))
diff --git a/addons/sale/test/prepaid_order_policy.yml b/addons/sale/test/prepaid_order_policy.yml
index 4bf132e5bee..d6f3da64a2c 100644
--- a/addons/sale/test/prepaid_order_policy.yml
+++ b/addons/sale/test/prepaid_order_policy.yml
@@ -101,18 +101,11 @@
if picking_id:
pick=self.browse(cr,uid,picking_id[0])
pick.force_assign(cr, uid)
- partial_datas = {
- 'partner_id':pick.address_id.partner_id.id,
- 'address_id': pick.address_id.id,
- 'delivery_date' : time.strftime('%Y-%m-%d'),
- }
- move = pick.move_lines[0]
- partial_datas['move%s'%(move.id)]= {
- 'product_id': move.product_id.id,
- 'product_qty': move.product_qty,
- 'product_uom': move.product_uom.id,
- }
- self.do_partial(cr, uid, [pick.id],partial_datas)
+ stock_partial_picking = self.pool.get('stock.partial.picking')
+ partial_id = stock_partial_picking.create(cr, uid, {},
+ context={'active_model': 'stock.picking',
+ 'active_ids': [pick.id]})
+ stock_partial_picking.do_partial(cr, uid, [partial_id])
-
I verify that picking order is in done state.
-
@@ -201,7 +194,7 @@
for pur in pur_ids:
wf_service.trg_validate(uid, 'purchase.order',pur,'purchase_approve', cr)
-
- I verify that a picking related to purchase order has been generated.
+ I verify that a picking related to purchase order has been generated and I process it
-
!python {model: sale.order}: |
modules = self.pool.get('ir.module.module')
@@ -213,51 +206,21 @@
pur_id = pur_obj.search(cr, uid, [('origin','=',so.name)])
po = pur_obj.browse(cr, uid, pur_id)[0]
assert(po.picking_ids),"Picking for purchase order has not been generated"
--
- Then I click on the "Products Received" button of Incoming Shipments
--
- !record {model: stock.partial.picking, id: stock_partial_picking_0}:
- date: !eval time.strftime('%Y-%m-%d %H:%M:%S')
--
- I click on the "Validate" button
--
- !python {model: stock.picking}: |
- modules = self.pool.get('ir.module.module')
- sale_order_obj = self.pool.get('sale.order')
- pur_obj = self.pool.get('purchase.order')
- mod_pur = modules.search(cr, uid, [('name','=','purchase')])
- mod_brw = modules.browse(cr,uid,mod_pur)[0]
- if (mod_brw.state == 'installed'):
- so = sale_order_obj.browse(cr, uid, ref("sale_order_so1"))
- pur_id = pur_obj.search(cr, uid, [('origin','=',so.name)])
- po = pur_obj.browse(cr, uid, pur_id)[0]
- pick_ser_id = self.search(cr, uid, [('purchase_id', '=', po.id )])
- import netsvc
- wf_service = netsvc.LocalService("workflow")
- for pick in pick_ser_id:
- wf_service.trg_validate(uid, 'stock.picking',pick,'button_done', cr)
--
- I verify that picking for purchase order has been done.
--
- !python {model: sale.order}: |
- from tools.translate import _
- modules = self.pool.get('ir.module.module')
- mod_pur = modules.search(cr, uid, [('name','=','purchase')])
- mod_brw = modules.browse(cr,uid,mod_pur)[0]
- if(mod_brw.state == 'installed'):
- pur_obj = self.pool.get('purchase.order')
- so = self.browse(cr, uid, ref("sale_order_so1"))
- pur_id = pur_obj.search(cr, uid, [('origin','=',so.name)])
- po = pur_obj.browse(cr, uid, pur_id)[0]
+ picking, = po.picking_ids
+ stock_partial_picking = self.pool.get('stock.partial.picking')
+ partial_id = stock_partial_picking.create(cr, uid, {},
+ context={'active_model': 'stock.picking',
+ 'active_ids': [picking.id]})
+ stock_partial_picking.do_partial(cr, uid, [partial_id])
picking_obj = self.pool.get('stock.picking')
- ids = picking_obj.search(cr, uid, [('purchase_id', '=', po.id ),('state', '=', 'done')])
- assert ids, _('Picking is not in the done state!')
+ ids = picking_obj.search(cr, uid, [('purchase_id', '=', po.id),('state', '=', 'done')])
+ assert ids, 'Picking should be marked done!'
-
- I verify that a "Picked" has been set to true
+ I verify that the sale order is marked as delivered
-
!python {model: sale.order}: |
so = self.browse(cr, uid, ref("sale_order_so1"))
- assert (so.shipped == True), "Picking is not done."
+ assert (so.shipped == True), "Sale order is not marked as delivered"
-
I verify that a sale order is in done state
-
diff --git a/addons/sale/wizard/sale_make_invoice_advance.py b/addons/sale/wizard/sale_make_invoice_advance.py
index 4b1e4511021..cb9bb2fc5bd 100644
--- a/addons/sale/wizard/sale_make_invoice_advance.py
+++ b/addons/sale/wizard/sale_make_invoice_advance.py
@@ -27,8 +27,8 @@ class sale_advance_payment_inv(osv.osv_memory):
_columns = {
'product_id': fields.many2one('product.product', 'Advance Product', required=True,
help="Select a product of type service which is called 'Advance Product'. You may have to create it and set it as a default value on this field."),
- 'amount': fields.float('Advance Amount', size=(16, 2), required=True, help="The amount to be invoiced in advance."),
- 'qtty': fields.float('Quantity', size=(16, 2), required=True),
+ 'amount': fields.float('Advance Amount', digits=(16, 2), required=True, help="The amount to be invoiced in advance."),
+ 'qtty': fields.float('Quantity', digits=(16, 2), required=True),
}
_defaults = {
'qtty': 1.0
@@ -65,15 +65,22 @@ class sale_advance_payment_inv(osv.osv_memory):
that is defined as 'Automatic Invoice after delivery'."))
val = obj_lines.product_id_change(cr, uid, [], sale_adv_obj.product_id.id,
uom = False, partner_id = sale.partner_id.id, fposition_id = sale.fiscal_position.id)
+ res = val['value']
+ if not res.get('account_id'):
+ raise osv.except_osv(_('Configuration Error !'),
+ _('There is no income account defined ' \
+ 'for this product: "%s" (id:%d)') % \
+ (sale_adv_obj.product_id.name, sale_adv_obj.product_id.id,))
+
line_id = obj_lines.create(cr, uid, {
- 'name': val['value']['name'],
- 'account_id': val['value']['account_id'],
+ 'name': res.get('name'),
+ 'account_id': res['account_id'],
'price_unit': sale_adv_obj.amount,
'quantity': sale_adv_obj.qtty,
'discount': False,
- 'uos_id': val['value']['uos_id'],
+ 'uos_id': res.get('uos_id'),
'product_id': sale_adv_obj.product_id.id,
- 'invoice_line_tax_id': [(6, 0, val['value']['invoice_line_tax_id'])],
+ 'invoice_line_tax_id': [(6, 0, res.get('invoice_line_tax_id'))],
'account_analytic_id': sale.project_id.id or False,
#'note':'',
})
@@ -109,15 +116,15 @@ class sale_advance_payment_inv(osv.osv_memory):
if sale.order_policy == 'picking':
self.pool.get('sale.order.line').create(cr, uid, {
'order_id': sale.id,
- 'name': val['value']['name'],
+ 'name': res.get('name'),
'price_unit': -sale_adv_obj.amount,
'product_uom_qty': sale_adv_obj.qtty,
'product_uos_qty': sale_adv_obj.qtty,
- 'product_uos': val['value']['uos_id'],
- 'product_uom': val['value']['uos_id'],
+ 'product_uos': res.get('uos_id'),
+ 'product_uom': res.get('uos_id'),
'product_id': sale_adv_obj.product_id.id,
'discount': False,
- 'tax_id': [(6, 0, val['value']['invoice_line_tax_id'])],
+ 'tax_id': [(6, 0, res.get('invoice_line_tax_id'))],
}, context)
context.update({'invoice_id':list_inv})
@@ -173,4 +180,4 @@ class sale_open_invoice(osv.osv_memory):
sale_open_invoice()
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/sale_analytic_plans/__openerp__.py b/addons/sale_analytic_plans/__openerp__.py
index 91f04c1b977..1850fbf8b2a 100644
--- a/addons/sale_analytic_plans/__openerp__.py
+++ b/addons/sale_analytic_plans/__openerp__.py
@@ -22,7 +22,7 @@
{
'name': 'Sales Analytic Distribution Management',
'version': '1.0',
- 'category': 'Sales',
+ 'category': 'Hidden',
'description': """
The base module to manage analytic distribution and sales orders.
=================================================================
diff --git a/addons/sale_crm/__openerp__.py b/addons/sale_crm/__openerp__.py
index 7fe2bd135c7..c3f4365bfee 100644
--- a/addons/sale_crm/__openerp__.py
+++ b/addons/sale_crm/__openerp__.py
@@ -20,9 +20,9 @@
##############################################################################
{
- 'name': 'Creates Sales order from Opportunity',
+ 'name': 'Opportunity to Quotation',
'version': '1.0',
- 'category': 'Sales',
+ 'category': 'Hidden/Link',
'complexity': "easy",
'description': """
This module adds a shortcut on one or several opportunity cases in the CRM.
diff --git a/addons/sale_journal/__openerp__.py b/addons/sale_journal/__openerp__.py
index c95b94da3ee..1cd2eef2d77 100644
--- a/addons/sale_journal/__openerp__.py
+++ b/addons/sale_journal/__openerp__.py
@@ -20,9 +20,9 @@
##############################################################################
{
- 'name': 'Managing sales and deliveries by journal',
+ 'name': 'Invoicing Journals',
'version': '1.0',
- 'category': 'Sales',
+ 'category': 'Sales Management',
'complexity': "easy",
'description': """
The sales journal modules allows you to categorise your sales and deliveries (picking lists) between different journals.
diff --git a/addons/sale_layout/__openerp__.py b/addons/sale_layout/__openerp__.py
index 8f9005e50a0..b3d033fed44 100644
--- a/addons/sale_layout/__openerp__.py
+++ b/addons/sale_layout/__openerp__.py
@@ -19,7 +19,7 @@
##############################################################################
{
- "name" : "Sale Order Layout",
+ "name" : "Sales Orders Print Layout",
"version" : "1.0",
"images" : ["images/sale_layout.jpeg"],
"depends" : ["sale", "account_invoice_layout"],
@@ -36,7 +36,7 @@ It gives you the possibility to
""",
"website" : "http://www.openerp.com",
- "category" : "Sales",
+ "category" : "Sales Management",
"init_xml" : [],
"demo_xml" : [],
"update_xml" : [
diff --git a/addons/sale_layout/i18n/da.po b/addons/sale_layout/i18n/da.po
new file mode 100644
index 00000000000..230becf3b19
--- /dev/null
+++ b/addons/sale_layout/i18n/da.po
@@ -0,0 +1,292 @@
+# Danish translation for openobject-addons
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR , 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2011-01-11 11:16+0000\n"
+"PO-Revision-Date: 2011-09-24 17:46+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Danish \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2011-09-25 04:41+0000\n"
+"X-Generator: Launchpad (build 14012)\n"
+
+#. module: sale_layout
+#: selection:sale.order.line,layout_type:0
+msgid "Sub Total"
+msgstr "Sub total"
+
+#. module: sale_layout
+#: model:ir.module.module,description:sale_layout.module_meta_information
+msgid ""
+"\n"
+" This module provides features to improve the layout of the Sales Order.\n"
+"\n"
+" It gives you the possibility to\n"
+" * order all the lines of a sales order\n"
+" * add titles, comment lines, sub total lines\n"
+" * draw horizontal lines and put page breaks\n"
+"\n"
+" "
+msgstr ""
+
+#. module: sale_layout
+#: selection:sale.order.line,layout_type:0
+msgid "Title"
+msgstr ""
+
+#. module: sale_layout
+#: report:sale.order.layout:0
+msgid "Disc. (%)"
+msgstr ""
+
+#. module: sale_layout
+#: selection:sale.order.line,layout_type:0
+msgid "Note"
+msgstr ""
+
+#. module: sale_layout
+#: report:sale.order.layout:0
+msgid "Unit Price"
+msgstr "Enhedspris"
+
+#. module: sale_layout
+#: report:sale.order.layout:0
+msgid "Order N°"
+msgstr "Ordre nummer"
+
+#. module: sale_layout
+#: field:sale.order,abstract_line_ids:0
+msgid "Order Lines"
+msgstr "Ordre linier"
+
+#. module: sale_layout
+#: report:sale.order.layout:0
+msgid "Disc.(%)"
+msgstr ""
+
+#. module: sale_layout
+#: field:sale.order.line,layout_type:0
+msgid "Layout Type"
+msgstr ""
+
+#. module: sale_layout
+#: view:sale.order:0
+msgid "Seq."
+msgstr ""
+
+#. module: sale_layout
+#: view:sale.order:0
+msgid "UoM"
+msgstr ""
+
+#. module: sale_layout
+#: selection:sale.order.line,layout_type:0
+msgid "Product"
+msgstr ""
+
+#. module: sale_layout
+#: sql_constraint:sale.order:0
+msgid "Order Reference must be unique !"
+msgstr ""
+
+#. module: sale_layout
+#: report:sale.order.layout:0
+msgid "Description"
+msgstr "Beskrivelse"
+
+#. module: sale_layout
+#: view:sale.order:0
+msgid "Manual Description"
+msgstr ""
+
+#. module: sale_layout
+#: report:sale.order.layout:0
+msgid "Our Salesman"
+msgstr "Vores sælger"
+
+#. module: sale_layout
+#: view:sale.order:0
+msgid "Automatic Declaration"
+msgstr ""
+
+#. module: sale_layout
+#: view:sale.order:0
+msgid "Invoice Lines"
+msgstr "Faktura linier"
+
+#. module: sale_layout
+#: report:sale.order.layout:0
+msgid "Quantity"
+msgstr "Antal"
+
+#. module: sale_layout
+#: report:sale.order.layout:0
+msgid "Quotation N°"
+msgstr "Tilbud nummer"
+
+#. module: sale_layout
+#: report:sale.order.layout:0
+msgid "VAT"
+msgstr "Moms"
+
+#. module: sale_layout
+#: view:sale.order:0
+msgid "Make Invoice"
+msgstr ""
+
+#. module: sale_layout
+#: view:sale.order:0
+msgid "Properties"
+msgstr ""
+
+#. module: sale_layout
+#: report:sale.order.layout:0
+msgid "Invoice address :"
+msgstr "Faktura adresse:"
+
+#. module: sale_layout
+#: model:ir.module.module,shortdesc:sale_layout.module_meta_information
+msgid "Sale Order Layout"
+msgstr "Salgsordre layout"
+
+#. module: sale_layout
+#: selection:sale.order.line,layout_type:0
+msgid "Page Break"
+msgstr ""
+
+#. module: sale_layout
+#: view:sale.order:0
+msgid "Notes"
+msgstr ""
+
+#. module: sale_layout
+#: report:sale.order.layout:0
+msgid "Date Ordered"
+msgstr ""
+
+#. module: sale_layout
+#: report:sale.order.layout:0
+msgid "Shipping address :"
+msgstr "Leveringsadresse"
+
+#. module: sale_layout
+#: report:sale.order.layout:0
+msgid "Taxes"
+msgstr ""
+
+#. module: sale_layout
+#: report:sale.order.layout:0
+msgid "Net Total :"
+msgstr "Netto total:"
+
+#. module: sale_layout
+#: report:sale.order.layout:0
+msgid "Tel. :"
+msgstr "Tel:"
+
+#. module: sale_layout
+#: report:sale.order.layout:0
+msgid "Total :"
+msgstr "Total:"
+
+#. module: sale_layout
+#: report:sale.order.layout:0
+msgid "Payment Terms"
+msgstr "Betalingsbetingelser"
+
+#. module: sale_layout
+#: view:sale.order:0
+msgid "History"
+msgstr ""
+
+#. module: sale_layout
+#: view:sale.order:0
+msgid "Sale Order Lines"
+msgstr "Salgsordre linier"
+
+#. module: sale_layout
+#: selection:sale.order.line,layout_type:0
+msgid "Separator Line"
+msgstr ""
+
+#. module: sale_layout
+#: report:sale.order.layout:0
+msgid "Your Reference"
+msgstr ""
+
+#. module: sale_layout
+#: report:sale.order.layout:0
+msgid "Quotation Date"
+msgstr "Tilbudsdato"
+
+#. module: sale_layout
+#: report:sale.order.layout:0
+msgid "TVA :"
+msgstr ""
+
+#. module: sale_layout
+#: view:sale.order:0
+msgid "Qty"
+msgstr "Antal"
+
+#. module: sale_layout
+#: view:sale.order:0
+msgid "States"
+msgstr "Stater"
+
+#. module: sale_layout
+#: view:sale.order:0
+msgid "Sales order lines"
+msgstr ""
+
+#. module: sale_layout
+#: model:ir.actions.report.xml,name:sale_layout.sale_order_1
+msgid "Order with Layout"
+msgstr ""
+
+#. module: sale_layout
+#: view:sale.order:0
+msgid "Extra Info"
+msgstr ""
+
+#. module: sale_layout
+#: report:sale.order.layout:0
+msgid "Taxes :"
+msgstr ""
+
+#. module: sale_layout
+#: report:sale.order.layout:0
+msgid "Fax :"
+msgstr "Fax:"
+
+#. module: sale_layout
+#: model:ir.model,name:sale_layout.model_sale_order
+msgid "Sales Order"
+msgstr "Salgsordre"
+
+#. module: sale_layout
+#: view:sale.order:0
+msgid "Order Line"
+msgstr "Ordre linie"
+
+#. module: sale_layout
+#: report:sale.order.layout:0
+msgid "Price"
+msgstr "Pris"
+
+#. module: sale_layout
+#: model:ir.model,name:sale_layout.model_sale_order_line
+msgid "Sales Order Line"
+msgstr "Salgsordrelinie"
+
+#. module: sale_layout
+#: view:sale.order:0
+msgid "Stock Moves"
+msgstr "Lagerflytninger"
diff --git a/addons/sale_margin/__init__.py b/addons/sale_margin/__init__.py
index 425dcf6352d..ad51e586046 100644
--- a/addons/sale_margin/__init__.py
+++ b/addons/sale_margin/__init__.py
@@ -19,7 +19,6 @@
##############################################################################
import sale_margin
-import report
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/sale_margin/__openerp__.py b/addons/sale_margin/__openerp__.py
index 1121b178266..c7eae6daea2 100644
--- a/addons/sale_margin/__openerp__.py
+++ b/addons/sale_margin/__openerp__.py
@@ -19,9 +19,9 @@
##############################################################################
{
- "name":"Margins in Sales Order",
+ "name":"Margins in Sales Orders",
"version":"1.0",
- "category" : "Sales",
+ "category" : "Sales Management",
"description": """
This module adds the 'Margin' on sales order.
=============================================
@@ -33,7 +33,7 @@ This gives the profitability by calculating the difference between the Unit Pric
"depends":["sale"],
"demo_xml":[],
'test': ['test/sale_margin.yml'],
- "update_xml":["security/ir.model.access.csv","sale_margin_view.xml","report/report_margin_view.xml"],
+ "update_xml":["security/ir.model.access.csv","sale_margin_view.xml"],
"active": False,
"installable": True,
"certificate" : "001165700015525701661",
diff --git a/addons/sale_margin/report/report_margin.py b/addons/sale_margin/report/report_margin.py
deleted file mode 100644
index a318a6c17b8..00000000000
--- a/addons/sale_margin/report/report_margin.py
+++ /dev/null
@@ -1,90 +0,0 @@
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2009 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-from osv import fields,osv
-import pooler
-from tools import config
-import time
-import tools
-
-
-
-class report_account_invoice_product(osv.osv):
- _name = 'report.account.invoice.product'
- _auto = False
- _description = "Invoice Statistics"
- _columns = {
- 'date': fields.date('Date', readonly=True),
- 'year': fields.char('Year', size=4, readonly=True),
- 'day': fields.char('Day', size=128, readonly=True),
- 'month':fields.selection([('01','January'), ('02','February'), ('03','March'), ('04','April'),
- ('05','May'), ('06','June'), ('07','July'), ('08','August'), ('09','September'),
- ('10','October'), ('11','November'), ('12','December')], 'Month',readonly=True),
- 'type': fields.selection([
- ('out_invoice','Customer Invoice'),
- ('in_invoice','Supplier Invoice'),
- ('out_refund','Customer Refund'),
- ('in_refund','Supplier Refund'),
- ],'Type', readonly=True),
- 'state': fields.selection([
- ('draft','Draft'),
- ('proforma','Pro-forma'),
- ('open','Open'),
- ('paid','Paid'),
- ('cancel','Canceled')
- ],'State', readonly=True),
- 'product_id': fields.many2one('product.product', 'Product', readonly=True),
- 'amount': fields.float('Amount', readonly=True),
- 'cost_price': fields.float('Cost Price', readonly=True),
- 'margin': fields.float('Margin', readonly=True),
- 'categ_id': fields.many2one('product.category', 'Categories', readonly=True),
- 'quantity': fields.float('Quantity', readonly=True),
- 'partner_id': fields.many2one('res.partner', 'Partner', readonly=True),
- }
- def init(self, cr):
- tools.drop_view_if_exists(cr, 'report_account_invoice_product')
- cr.execute("""
- create or replace view report_account_invoice_product as (
- select
- min(l.id) as id,
- i.create_date as date,
- to_char(date_trunc('day',i.date_invoice), 'YYYY') as year,
- to_char(date_trunc('day',i.date_invoice), 'MM') as month,
- to_char(date_trunc('day',i.date_invoice), 'YYYY-MM-DD') as day,
- i.type,
- i.state,
- l.product_id,
- t.categ_id,
- i.partner_id,
- sum(l.quantity * l.price_unit * (1.0 - l.discount/100.0)) as amount,
- sum(l.quantity * l.cost_price) as cost_price,
- sum((l.quantity * l.price_unit * (1.0 - l.discount/100.0) - (l.quantity * l.cost_price))) as margin,
- sum(l.quantity) as quantity
- from account_invoice i
- left join account_invoice_line l on (i.id = l.invoice_id)
- left join product_product p on (p.id = l.product_id)
- left join product_template t on (t.id = p.product_tmpl_id)
- group by t.categ_id,i.partner_id,l.product_id, i.date_invoice, i.type, i.state,i.create_date
- )
- """)
-report_account_invoice_product()
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
diff --git a/addons/sale_margin/report/report_margin_view.xml b/addons/sale_margin/report/report_margin_view.xml
deleted file mode 100644
index c826ea9c853..00000000000
--- a/addons/sale_margin/report/report_margin_view.xml
+++ /dev/null
@@ -1,97 +0,0 @@
-
-
-
-
-
- report.account.invoice.product.tree
- report.account.invoice.product
- tree
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- account.invoice.product.filter
- report.account.invoice.product
- search
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- report.account.invoice.product.graph
- report.account.invoice.product
- graph
-
-
-
-
-
-
-
-
-
- Invoice Analysis
- report.account.invoice.product
- form
- tree,graph
- {"search_default_At Date":1,'group_by_no_leaf':1,'group_by':[]}
-
- This report gives you an overview of all the invoices generated by the system. You can sort and group your results by specific selection criteria to quickly find what you are looking for.
-
-
-
-
-
-
-
diff --git a/addons/sale_margin/security/ir.model.access.csv b/addons/sale_margin/security/ir.model.access.csv
index d7752fa1961..0343f29f43a 100644
--- a/addons/sale_margin/security/ir.model.access.csv
+++ b/addons/sale_margin/security/ir.model.access.csv
@@ -1,2 +1 @@
"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
-"access_report_account_invoice_product","report.account.invoice.product","model_report_account_invoice_product","account.group_account_manager",1,1,1,1
diff --git a/addons/sale_mrp/__openerp__.py b/addons/sale_mrp/__openerp__.py
index 1fd1fab9d2f..7d4443a3cce 100644
--- a/addons/sale_mrp/__openerp__.py
+++ b/addons/sale_mrp/__openerp__.py
@@ -23,7 +23,7 @@
{
'name': 'Sales and MRP Management',
'version': '1.0',
- 'category': 'Sales',
+ 'category': 'Hidden/Link',
'complexity': "easy",
'description': """
This module provides facility to the user to install mrp and sales modulesat a time.
diff --git a/addons/sale_order_dates/__openerp__.py b/addons/sale_order_dates/__openerp__.py
index eb7e3a516fa..f88a2777a00 100644
--- a/addons/sale_order_dates/__openerp__.py
+++ b/addons/sale_order_dates/__openerp__.py
@@ -21,9 +21,9 @@
{
- 'name': 'Sales Order Dates',
+ 'name': 'Full Dates on Sales Order',
'version': '1.0',
- 'category': 'Sales',
+ 'category': 'Sales Management',
'complexity': "easy",
'description': """
Add additional date information to the sales order.
diff --git a/addons/share/__openerp__.py b/addons/share/__openerp__.py
index 52ffa165c14..f6a0c93285d 100644
--- a/addons/share/__openerp__.py
+++ b/addons/share/__openerp__.py
@@ -21,11 +21,11 @@
{
- "name" : "Sharing Tools",
+ "name" : "Web Share",
"version" : "1.5",
"depends" : ["base", "mail"],
"author" : "OpenERP SA",
- "category": 'Tools',
+ "category": 'Hidden',
'complexity': "easy",
"description": """
This module adds generic sharing tools to your current OpenERP database.
diff --git a/addons/share/i18n/da.po b/addons/share/i18n/da.po
new file mode 100644
index 00000000000..d4839ed6e84
--- /dev/null
+++ b/addons/share/i18n/da.po
@@ -0,0 +1,476 @@
+# Danish translation for openobject-addons
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR , 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2011-01-11 11:16+0000\n"
+"PO-Revision-Date: 2011-09-23 17:42+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Danish \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2011-09-24 04:59+0000\n"
+"X-Generator: Launchpad (build 14012)\n"
+
+#. module: share
+#: code:addons/share/web/editors.py:15
+#, python-format
+msgid "Sharing"
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:462
+#, python-format
+msgid ""
+"This additional data has been automatically added to your current access.\n"
+msgstr ""
+
+#. module: share
+#: view:share.wizard:0
+msgid "Existing External Users"
+msgstr ""
+
+#. module: share
+#: help:res.groups,share:0
+msgid "Group created to set access rights for sharing data with some users."
+msgstr ""
+
+#. module: share
+#: model:ir.module.module,shortdesc:share.module_meta_information
+msgid "Share Management"
+msgstr ""
+
+#. module: share
+#: sql_constraint:res.users:0
+msgid "You can not have two users with the same login !"
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:76
+#, python-format
+msgid "Sharing Wizard - Step 1"
+msgstr ""
+
+#. module: share
+#: model:ir.actions.act_window,name:share.action_share_wizard
+#: model:ir.ui.menu,name:share.menu_action_share_wizard
+msgid "Share Access Rules"
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:453
+#, python-format
+msgid ""
+"Dear,\n"
+"\n"
+"%s\n"
+"\n"
+msgstr ""
+
+#. module: share
+#: constraint:res.users:0
+msgid "The chosen company is not in the allowed companies for this user"
+msgstr ""
+
+#. module: share
+#: model:ir.model,name:share.model_res_users
+msgid "res.users"
+msgstr ""
+
+#. module: share
+#: view:share.wizard:0
+msgid "Next"
+msgstr ""
+
+#. module: share
+#: help:share.wizard,action_id:0
+msgid ""
+"The action that opens the screen containing the data you wish to share."
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:68
+#, python-format
+msgid "Please specify \"share_root_url\" in context"
+msgstr ""
+
+#. module: share
+#: view:share.wizard:0
+msgid "Congratulations, you have successfully setup a new shared access!"
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:275
+#, python-format
+msgid "(Copy for sharing)"
+msgstr ""
+
+#. module: share
+#: field:share.wizard.result.line,newly_created:0
+msgid "Newly created"
+msgstr ""
+
+#. module: share
+#: field:share.wizard,share_root_url:0
+msgid "Generic Share Access URL"
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:457
+#, python-format
+msgid ""
+"You may use the following login and password to get access to this protected "
+"area:\n"
+msgstr ""
+
+#. module: share
+#: view:res.groups:0
+msgid "Regular groups only (no share groups"
+msgstr ""
+
+#. module: share
+#: selection:share.wizard,access_mode:0
+msgid "Read & Write"
+msgstr ""
+
+#. module: share
+#: view:share.wizard:0
+msgid "Share wizard: step 2"
+msgstr ""
+
+#. module: share
+#: view:share.wizard:0
+msgid "Share wizard: step 0"
+msgstr ""
+
+#. module: share
+#: view:share.wizard:0
+msgid "Share wizard: step 1"
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:458
+#: field:share.wizard.result.line,login:0
+#, python-format
+msgid "Username"
+msgstr ""
+
+#. module: share
+#: field:res.users,share:0
+msgid "Share User"
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:452
+#, python-format
+msgid "%s has shared OpenERP %s information with you"
+msgstr ""
+
+#. module: share
+#: view:share.wizard:0
+msgid "Finish"
+msgstr ""
+
+#. module: share
+#: field:share.wizard,user_ids:0
+#: field:share.wizard.user,user_id:0
+msgid "Users"
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:103
+#, python-format
+msgid ""
+"This username (%s) already exists, perhaps data has already been shared with "
+"this person.\n"
+"You may want to try selecting existing shared users instead."
+msgstr ""
+
+#. module: share
+#: field:share.wizard,new_users:0
+msgid "New users"
+msgstr ""
+
+#. module: share
+#: model:ir.model,name:share.model_res_groups
+msgid "res.groups"
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:149
+#, python-format
+msgid "%s (Shared)"
+msgstr ""
+
+#. module: share
+#: sql_constraint:res.groups:0
+msgid "The name of the group must be unique !"
+msgstr ""
+
+#. module: share
+#: selection:share.wizard,user_type:0
+msgid "New users (emails required)"
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:418
+#, python-format
+msgid "Sharing filter created by user %s (%s) for group %s"
+msgstr ""
+
+#. module: share
+#: view:res.groups:0
+msgid "Groups"
+msgstr ""
+
+#. module: share
+#: view:share.wizard:0
+msgid "Select the desired shared access mode:"
+msgstr ""
+
+#. module: share
+#: field:res.groups,share:0
+msgid "Share Group"
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:459
+#: field:share.wizard.result.line,password:0
+#, python-format
+msgid "Password"
+msgstr "Adgangskode"
+
+#. module: share
+#: view:share.wizard:0
+msgid "Who would you want to share this data with?"
+msgstr ""
+
+#. module: share
+#: model:ir.module.module,description:share.module_meta_information
+msgid ""
+"The goal is to implement a generic sharing mechanism, where user of OpenERP\n"
+"can share data from OpenERP to their colleagues, customers, or friends.\n"
+"The system will work by creating new users and groups on the fly, and by\n"
+"combining the appropriate access rights and ir.rules to ensure that the "
+"/shared\n"
+"users/ will only have access to the correct data.\n"
+" "
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:102
+#, python-format
+msgid "User already exists"
+msgstr ""
+
+#. module: share
+#: view:share.wizard:0
+msgid "Send Email Notification(s)"
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:463
+#, python-format
+msgid ""
+"You may use your existing login and password to view it. As a reminder, your "
+"login is %s.\n"
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:460
+#, python-format
+msgid "Database"
+msgstr "Database"
+
+#. module: share
+#: model:ir.model,name:share.model_share_wizard_user
+msgid "share.wizard.user"
+msgstr ""
+
+#. module: share
+#: view:share.wizard:0
+msgid ""
+"Please select the action that opens the screen containing the data you want "
+"to share."
+msgstr ""
+
+#. module: share
+#: selection:share.wizard,user_type:0
+msgid "Existing external users"
+msgstr ""
+
+#. module: share
+#: view:share.wizard:0
+#: field:share.wizard,result_line_ids:0
+msgid "Summary"
+msgstr ""
+
+#. module: share
+#: field:share.wizard,user_type:0
+msgid "Users to share with"
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:304
+#, python-format
+msgid "Indirect sharing filter created by user %s (%s) for group %s"
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:448
+#, python-format
+msgid "Email required"
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:240
+#, python-format
+msgid "Copied access for sharing"
+msgstr ""
+
+#. module: share
+#: view:share.wizard:0
+msgid ""
+"Optionally, you may specify an additional domain restriction that will be "
+"applied to the shared data."
+msgstr ""
+
+#. module: share
+#: view:share.wizard:0
+msgid "New Users (please provide one e-mail address per line below)"
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:448
+#, python-format
+msgid ""
+"The current user must have an email address configured in User Preferences "
+"to be able to send outgoing emails."
+msgstr ""
+
+#. module: share
+#: view:res.users:0
+msgid "Regular users only (no share user)"
+msgstr ""
+
+#. module: share
+#: field:share.wizard.result.line,share_url:0
+msgid "Share URL"
+msgstr ""
+
+#. module: share
+#: field:share.wizard,domain:0
+msgid "Domain"
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:314
+#, python-format
+msgid ""
+"Sorry, the current screen and filter you are trying to share are not "
+"supported at the moment.\n"
+"You may want to try a simpler filter."
+msgstr ""
+
+#. module: share
+#: field:share.wizard,access_mode:0
+msgid "Access Mode"
+msgstr ""
+
+#. module: share
+#: view:share.wizard:0
+msgid "Access info"
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:454
+#, python-format
+msgid ""
+"To access it, you can go to the following URL:\n"
+" %s"
+msgstr ""
+
+#. module: share
+#: field:share.wizard,action_id:0
+msgid "Action to share"
+msgstr ""
+
+#. module: share
+#: code:addons/share/web/editors.py:18
+#, python-format
+msgid "Share"
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:434
+#, python-format
+msgid "Sharing Wizard - Step 2"
+msgstr ""
+
+#. module: share
+#: view:share.wizard:0
+msgid "Here is a summary of the access points you have just created:"
+msgstr ""
+
+#. module: share
+#: model:ir.model,name:share.model_share_wizard_result_line
+msgid "share.wizard.result.line"
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:313
+#, python-format
+msgid "Sharing access could not be setup"
+msgstr ""
+
+#. module: share
+#: model:ir.actions.act_window,name:share.action_share_wizard
+#: model:ir.actions.act_window,name:share.action_share_wizard_step1
+#: model:ir.model,name:share.model_share_wizard
+#: model:ir.ui.menu,name:share.menu_action_share_wizard
+#: field:share.wizard.result.line,share_wizard_id:0
+msgid "Share Wizard"
+msgstr ""
+
+#. module: share
+#: help:share.wizard,user_type:0
+msgid "Select the type of user(s) you would like to share data with."
+msgstr ""
+
+#. module: share
+#: view:share.wizard:0
+msgid "Cancel"
+msgstr ""
+
+#. module: share
+#: view:share.wizard:0
+msgid "Close"
+msgstr ""
+
+#. module: share
+#: help:res.users,share:0
+msgid ""
+"External user with limited access, created only for the purpose of sharing "
+"data."
+msgstr ""
+
+#. module: share
+#: help:share.wizard,domain:0
+msgid "Optional domain for further data filtering"
+msgstr ""
+
+#. module: share
+#: selection:share.wizard,access_mode:0
+msgid "Read-only"
+msgstr ""
+
+#. module: share
+#: code:addons/share/wizard/share_wizard.py:323
+#, python-format
+msgid "*usual password*"
+msgstr ""
diff --git a/addons/share/res_users.py b/addons/share/res_users.py
index 81683066220..07031ab3845 100644
--- a/addons/share/res_users.py
+++ b/addons/share/res_users.py
@@ -24,7 +24,7 @@ class res_groups(osv.osv):
_name = "res.groups"
_inherit = 'res.groups'
_columns = {
- 'share': fields.boolean('Share Group', groups='share.group_share', readonly=True,
+ 'share': fields.boolean('Share Group', readonly=True,
help="Group created to set access rights for sharing data with some users.")
}
res_groups()
@@ -33,7 +33,7 @@ class res_users(osv.osv):
_name = 'res.users'
_inherit = 'res.users'
_columns = {
- 'share': fields.boolean('Share User', groups='share.group_share', readonly=True,
+ 'share': fields.boolean('Share User', readonly=True,
help="External user with limited access, created only for the purpose of sharing data.")
}
res_users()
diff --git a/addons/stock/__openerp__.py b/addons/stock/__openerp__.py
index 70dc37ec2da..5b1d392a592 100644
--- a/addons/stock/__openerp__.py
+++ b/addons/stock/__openerp__.py
@@ -47,7 +47,7 @@ Thanks to the double entry management, the inventory controlling is powerful and
"website" : "http://www.openerp.com",
"images" : ["images/stock_forecast_report.png", "images/delivery_orders.jpeg", "images/inventory_analysis.jpeg","images/location.jpeg","images/moves_analysis.jpeg","images/physical_inventories.jpeg","images/warehouse_dashboard.jpeg"],
"depends" : ["product", "account"],
- "category" : "Warehouse",
+ "category" : "Warehouse Management",
"init_xml" : [],
"demo_xml" : ["stock_demo.xml"],
"update_xml" : [
@@ -80,6 +80,7 @@ Thanks to the double entry management, the inventory controlling is powerful and
],
'test': ['test/stock_test.yml',
'test/stock_report.yml',
+ 'test/stock_test_wizard.yml',
],
'installable': True,
'active': False,
diff --git a/addons/stock/i18n/ar.po b/addons/stock/i18n/ar.po
index db365760231..4a888fa1065 100644
--- a/addons/stock/i18n/ar.po
+++ b/addons/stock/i18n/ar.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:55+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:32+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -151,7 +151,7 @@ msgid "UoM"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -180,14 +180,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr ""
@@ -243,8 +243,7 @@ msgid "Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr ""
@@ -267,16 +266,15 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr ""
@@ -306,7 +304,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr ""
@@ -421,7 +419,7 @@ msgid "In Qty"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr ""
@@ -498,7 +496,7 @@ msgid "Move History (child moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -518,7 +516,7 @@ msgid "Destination Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -567,7 +565,7 @@ msgid "Location / Product"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr ""
@@ -697,7 +695,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr ""
@@ -780,7 +778,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1004,7 +1002,7 @@ msgid "Author"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr ""
@@ -1141,7 +1139,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1149,7 +1147,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1172,7 +1170,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1212,7 +1210,7 @@ msgid "Additional Info"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr ""
@@ -1223,7 +1221,7 @@ msgid "From"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1351,13 +1349,12 @@ msgid "None"
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr ""
@@ -1409,7 +1406,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1449,7 +1446,7 @@ msgid "Supplier Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1561,7 +1558,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr ""
@@ -1638,7 +1635,7 @@ msgid "Warehouse Dashboard"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr ""
@@ -1652,7 +1649,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1709,13 +1706,13 @@ msgid "Shipping Address :"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1792,7 +1789,7 @@ msgid "Quantity per lot"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1800,7 +1797,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr ""
@@ -1937,7 +1934,6 @@ msgstr ""
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr ""
@@ -1995,7 +1991,7 @@ msgid "Inventory loss"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr ""
@@ -2085,14 +2081,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2116,13 +2112,13 @@ msgid "Shipping Type"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2149,7 +2145,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2187,7 +2183,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr ""
@@ -2265,7 +2261,7 @@ msgid "Source"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2305,7 +2301,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr ""
@@ -2371,7 +2367,7 @@ msgid "Maxtor Suppliers"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2482,7 +2478,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2538,7 +2534,7 @@ msgid "Quantity (UOS)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2577,7 +2573,7 @@ msgid "Properties"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr ""
@@ -2585,7 +2581,6 @@ msgstr ""
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr ""
@@ -2623,7 +2618,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2709,7 +2704,7 @@ msgid "Date done"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2787,14 +2782,14 @@ msgid "Product"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2821,7 +2816,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2967,7 +2962,7 @@ msgid "All at once"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2975,7 +2970,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr ""
@@ -2986,7 +2981,7 @@ msgid "To Invoice"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr ""
@@ -3061,8 +3056,7 @@ msgid "Icon"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr ""
@@ -3089,14 +3083,14 @@ msgstr ""
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3104,7 +3098,7 @@ msgid "Error!"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3136,7 +3130,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3171,8 +3165,8 @@ msgid "Warning"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3274,7 +3268,7 @@ msgid "Reporting"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3323,7 +3317,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3334,7 +3328,7 @@ msgid "Customers"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr ""
@@ -3345,13 +3339,13 @@ msgid "Stock Inventory Lines"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr ""
@@ -3513,7 +3507,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3526,7 +3520,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3542,7 +3536,7 @@ msgid "Set to zero"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3554,13 +3548,13 @@ msgstr ""
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr ""
@@ -3598,16 +3592,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr ""
@@ -3740,7 +3734,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3784,7 +3778,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr ""
@@ -3796,7 +3789,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr ""
@@ -3805,7 +3798,6 @@ msgstr ""
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr ""
@@ -3859,13 +3851,12 @@ msgid "Invoiced date"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr ""
diff --git a/addons/stock/i18n/bg.po b/addons/stock/i18n/bg.po
index 90facfa60fe..9f2226919ad 100644
--- a/addons/stock/i18n/bg.po
+++ b/addons/stock/i18n/bg.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:55+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:32+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -151,7 +151,7 @@ msgid "UoM"
msgstr "Мерни единици"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -180,14 +180,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "Доставяне/Получаване на продукти"
@@ -243,8 +243,7 @@ msgid "Reference"
msgstr "Означение"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr "Продукти за обработка"
@@ -267,16 +266,15 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Предупреждение!"
@@ -306,7 +304,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr "Валута в която е цената за единица"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr ""
@@ -421,7 +419,7 @@ msgid "In Qty"
msgstr "В Кол."
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "Няма продукти в това местонахождение"
@@ -498,7 +496,7 @@ msgid "Move History (child moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -518,7 +516,7 @@ msgid "Destination Location"
msgstr "Местонахождение цел"
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -567,7 +565,7 @@ msgid "Location / Product"
msgstr "Местонахождение / Продукт"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr ""
@@ -697,7 +695,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr ""
@@ -781,7 +779,7 @@ msgid "Merge Inventory"
msgstr "Обединяване на наличности"
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1009,7 +1007,7 @@ msgid "Author"
msgstr "Автор"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr "Порчъка за доставка"
@@ -1149,7 +1147,7 @@ msgstr ""
"генерирани от поръчки"
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1157,7 +1155,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1180,7 +1178,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1220,7 +1218,7 @@ msgid "Additional Info"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr "Забранена операция"
@@ -1231,7 +1229,7 @@ msgid "From"
msgstr "От"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1359,13 +1357,12 @@ msgid "None"
msgstr "Няма"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Проследяемост надолу"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr ""
@@ -1417,7 +1414,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1457,7 +1454,7 @@ msgid "Supplier Location"
msgstr "Местинахождение на доставчика"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1569,7 +1566,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Доставено к-во"
@@ -1646,7 +1643,7 @@ msgid "Warehouse Dashboard"
msgstr "Табло Склад"
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "Не може да премахнете ред от партида !"
@@ -1660,7 +1657,7 @@ msgid "Scrap Products"
msgstr "Продукти за брак"
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1717,13 +1714,13 @@ msgid "Shipping Address :"
msgstr "Адрес за доставка :"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Предоставя количествата на върнатите продукти"
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1802,7 +1799,7 @@ msgid "Quantity per lot"
msgstr "Количество в партида"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1810,7 +1807,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Получено к-во"
@@ -1968,7 +1965,6 @@ msgstr "Разход"
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Сметка на входящ склад"
@@ -2026,7 +2022,7 @@ msgid "Inventory loss"
msgstr "Липси на наличност"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "Документ"
@@ -2116,14 +2112,14 @@ msgid "Warehouse board"
msgstr "Табло Склад"
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr "Бъдещо количесто"
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2147,13 +2143,13 @@ msgid "Shipping Type"
msgstr "Вид на транспортиране"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Може да изтривате само движения в проект"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2180,7 +2176,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2218,7 +2214,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr "К-во загуби и пачалби"
@@ -2296,7 +2292,7 @@ msgid "Source"
msgstr "Източник"
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2336,7 +2332,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Грешка!"
@@ -2402,7 +2398,7 @@ msgid "Maxtor Suppliers"
msgstr "Доставчици на Макстор"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2513,7 +2509,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2571,7 +2567,7 @@ msgid "Quantity (UOS)"
msgstr "Коливество (мер.ед)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2610,7 +2606,7 @@ msgid "Properties"
msgstr "Характеристики"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Грешка, няма партньор !"
@@ -2618,7 +2614,6 @@ msgstr "Грешка, няма партньор !"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Международни термини"
@@ -2656,7 +2651,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2742,7 +2737,7 @@ msgid "Date done"
msgstr "Дата на приключване"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2821,14 +2816,14 @@ msgid "Product"
msgstr "Продукт"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr "Фактуриране"
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2855,7 +2850,7 @@ msgid "Consume Products"
msgstr "Използвани продукти"
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr "Недостатъчна наличност в партидата!"
@@ -3001,7 +2996,7 @@ msgid "All at once"
msgstr "Всичко наведнъж"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -3009,7 +3004,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr "Бъдеща продукция"
@@ -3020,7 +3015,7 @@ msgid "To Invoice"
msgstr "За фактуриране"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "Редове от връщане"
@@ -3095,8 +3090,7 @@ msgid "Icon"
msgstr "Икона"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "Потребителска грешка"
@@ -3123,14 +3117,14 @@ msgstr "Неевропейски клиенти"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3138,7 +3132,7 @@ msgid "Error!"
msgstr "Грешка!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3170,7 +3164,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3205,8 +3199,8 @@ msgid "Warning"
msgstr "Предупреждение"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3310,7 +3304,7 @@ msgid "Reporting"
msgstr "Справки"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3359,7 +3353,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3370,7 +3364,7 @@ msgid "Customers"
msgstr "Клиенти"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr ""
@@ -3381,13 +3375,13 @@ msgid "Stock Inventory Lines"
msgstr "Ред от наличност в склад"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr ""
@@ -3549,7 +3543,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3562,7 +3556,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3578,7 +3572,7 @@ msgid "Set to zero"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3590,13 +3584,13 @@ msgstr "Ноември"
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Непланирано к-во"
@@ -3634,16 +3628,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Грешка"
@@ -3776,7 +3770,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3820,7 +3814,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Проследяемост нагоре"
@@ -3832,7 +3825,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Произведено к-во"
@@ -3841,7 +3834,6 @@ msgstr "Произведено к-во"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Сметка изход от склад"
@@ -3895,13 +3887,12 @@ msgid "Invoiced date"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "Предупреждение!"
diff --git a/addons/stock/i18n/bs.po b/addons/stock/i18n/bs.po
index d61531b5ccb..b72c310b62c 100644
--- a/addons/stock/i18n/bs.po
+++ b/addons/stock/i18n/bs.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:55+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:32+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -151,7 +151,7 @@ msgid "UoM"
msgstr "JM"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -180,14 +180,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr ""
@@ -243,8 +243,7 @@ msgid "Reference"
msgstr "Referenca"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr ""
@@ -267,16 +266,15 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr ""
@@ -306,7 +304,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr ""
@@ -421,7 +419,7 @@ msgid "In Qty"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr ""
@@ -498,7 +496,7 @@ msgid "Move History (child moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -518,7 +516,7 @@ msgid "Destination Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -567,7 +565,7 @@ msgid "Location / Product"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr ""
@@ -697,7 +695,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr ""
@@ -780,7 +778,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1004,7 +1002,7 @@ msgid "Author"
msgstr "Autor"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr ""
@@ -1141,7 +1139,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1149,7 +1147,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1172,7 +1170,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1212,7 +1210,7 @@ msgid "Additional Info"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr ""
@@ -1223,7 +1221,7 @@ msgid "From"
msgstr "Od"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1351,13 +1349,12 @@ msgid "None"
msgstr "Nijedan"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Silazno praćenje"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr ""
@@ -1409,7 +1406,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1449,7 +1446,7 @@ msgid "Supplier Location"
msgstr "Lokacija dobavljača"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1561,7 +1558,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr ""
@@ -1638,7 +1635,7 @@ msgid "Warehouse Dashboard"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr ""
@@ -1652,7 +1649,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1709,13 +1706,13 @@ msgid "Shipping Address :"
msgstr "Adresa isporuke :"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1792,7 +1789,7 @@ msgid "Quantity per lot"
msgstr "Količina po partiji"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1800,7 +1797,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr ""
@@ -1937,7 +1934,6 @@ msgstr ""
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Konto zaliha (primka)"
@@ -1995,7 +1991,7 @@ msgid "Inventory loss"
msgstr "Popisni gubitak (manjak na skladištu)"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr ""
@@ -2085,14 +2081,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2116,13 +2112,13 @@ msgid "Shipping Type"
msgstr "Tip isporuke"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2149,7 +2145,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2187,7 +2183,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr ""
@@ -2265,7 +2261,7 @@ msgid "Source"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2305,7 +2301,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr ""
@@ -2371,7 +2367,7 @@ msgid "Maxtor Suppliers"
msgstr "Maxtor dobavljač"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2482,7 +2478,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2538,7 +2534,7 @@ msgid "Quantity (UOS)"
msgstr "Količina (KOL)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2577,7 +2573,7 @@ msgid "Properties"
msgstr "Svojstva"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr ""
@@ -2585,7 +2581,6 @@ msgstr ""
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Incoterms"
@@ -2623,7 +2618,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2709,7 +2704,7 @@ msgid "Date done"
msgstr "Datum završetka"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2787,14 +2782,14 @@ msgid "Product"
msgstr "Proizvod"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2821,7 +2816,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2967,7 +2962,7 @@ msgid "All at once"
msgstr "Sve odjednom"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2975,7 +2970,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr ""
@@ -2986,7 +2981,7 @@ msgid "To Invoice"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr ""
@@ -3061,8 +3056,7 @@ msgid "Icon"
msgstr "Znak"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr ""
@@ -3089,14 +3083,14 @@ msgstr "Nevropski kupci"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3104,7 +3098,7 @@ msgid "Error!"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3136,7 +3130,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3171,8 +3165,8 @@ msgid "Warning"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3276,7 +3270,7 @@ msgid "Reporting"
msgstr "Izvještavanje"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3325,7 +3319,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3336,7 +3330,7 @@ msgid "Customers"
msgstr "Kupac"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr ""
@@ -3347,13 +3341,13 @@ msgid "Stock Inventory Lines"
msgstr "Stavke popisa zaliha"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr ""
@@ -3515,7 +3509,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3528,7 +3522,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3544,7 +3538,7 @@ msgid "Set to zero"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3556,13 +3550,13 @@ msgstr ""
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr ""
@@ -3600,16 +3594,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr ""
@@ -3742,7 +3736,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3786,7 +3780,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Uzlazno praćenje"
@@ -3798,7 +3791,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr ""
@@ -3807,7 +3800,6 @@ msgstr ""
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Izlazni nalog zaliha"
@@ -3861,13 +3853,12 @@ msgid "Invoiced date"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr ""
diff --git a/addons/stock/i18n/ca.po b/addons/stock/i18n/ca.po
index 4d958a1c661..e81650afe12 100644
--- a/addons/stock/i18n/ca.po
+++ b/addons/stock/i18n/ca.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:55+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:32+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -160,7 +160,7 @@ msgid "UoM"
msgstr "UdM"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -193,14 +193,14 @@ msgstr ""
"d'aquesta categoria, també pot indicar-se directament en cada producte."
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr "Falten dades de l'albarà parcial per al moviment #%s"
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "Envia/Rebre productes"
@@ -259,8 +259,7 @@ msgid "Reference"
msgstr "Referència"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr "Productes a processar"
@@ -285,7 +284,7 @@ msgid "Split lines"
msgstr "Divideix línies"
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
@@ -293,10 +292,9 @@ msgstr ""
"realitzat!"
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Avís!"
@@ -326,7 +324,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr "Moneda en què s'expressa el cost unitat."
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "No facturació"
@@ -442,7 +440,7 @@ msgid "In Qty"
msgstr "En quantitat"
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "No hi ha producte en aquesta ubicació"
@@ -525,7 +523,7 @@ msgid "Move History (child moves)"
msgstr "Historial moviments (moviments fills)"
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -547,7 +545,7 @@ msgid "Destination Location"
msgstr "Ubicació destí"
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr "No podeu processar un albarà sense moviments d'estoc"
@@ -601,7 +599,7 @@ msgid "Location / Product"
msgstr "Ubicació / Producte"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr "Recepció"
@@ -741,7 +739,7 @@ msgid "Process Picking"
msgstr "Processa albarà"
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr "Recepcions futures"
@@ -827,7 +825,7 @@ msgid "Merge Inventory"
msgstr "Fusiona inventari"
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr "P&L futures"
@@ -1100,7 +1098,7 @@ msgid "Author"
msgstr "Autor"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr "Ordre d'enviament"
@@ -1250,7 +1248,7 @@ msgstr ""
"generats per les ordres de producció."
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1260,7 +1258,7 @@ msgstr ""
"producte i el compte variant de la categoria de producte són el mateix."
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr "està en estat esborrany."
@@ -1286,7 +1284,7 @@ msgid "Chaining Type"
msgstr "Tipus encadenat"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr "Per ser abonat/facturat"
@@ -1326,7 +1324,7 @@ msgid "Additional Info"
msgstr "Informació addicional"
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr "Operació prohibida"
@@ -1337,7 +1335,7 @@ msgid "From"
msgstr "Des de"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr "Tan sols podeu retornar albarans confirmats, reservats o realitzats!"
@@ -1465,13 +1463,12 @@ msgid "None"
msgstr "Cap"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Traçabilitat cap avall"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr "No s'han creat factures"
@@ -1535,7 +1532,7 @@ msgstr ""
"companyies."
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr "Introduïu una quantitat positiva a rebutjar!"
@@ -1581,7 +1578,7 @@ msgid "Supplier Location"
msgstr "Ubicació del proveïdor"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr "estaven rebutjats"
@@ -1696,7 +1693,7 @@ msgid "Stock report by tracking lots"
msgstr "Informe d'estoc per lots de seguiment"
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Qtat enviada"
@@ -1773,7 +1770,7 @@ msgid "Warehouse Dashboard"
msgstr "Taulell del magatzem"
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "No podeu eliminar una línia de lot!"
@@ -1787,7 +1784,7 @@ msgid "Scrap Products"
msgstr "Rebutja productes"
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr "No podeu eliminar l'albarà que està en estat %s!"
@@ -1844,13 +1841,13 @@ msgid "Shipping Address :"
msgstr "Adreça d'enviament:"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Indiqueu les quantitats dels productes tornats."
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1938,7 +1935,7 @@ msgid "Quantity per lot"
msgstr "Quantitat per lot"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1948,7 +1945,7 @@ msgstr ""
"categoria: \"%s\" (id: %d)"
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Qttat rebuda"
@@ -2113,7 +2110,6 @@ msgstr "Cost"
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Compte entrada estoc"
@@ -2173,7 +2169,7 @@ msgid "Inventory loss"
msgstr "Pèrdues d'inventari"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "Document"
@@ -2265,15 +2261,15 @@ msgid "Warehouse board"
msgstr "Taulell magatzem"
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr "Qtat futura"
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
-msgstr "Compte variació d'estoc"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
+msgstr ""
#. module: stock
#: field:stock.move,note:0
@@ -2296,13 +2292,13 @@ msgid "Shipping Type"
msgstr "Tipus d'enviament"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Només pot eliminar moviments esborrany."
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2329,7 +2325,7 @@ msgid "Location where the system will stock the finished products."
msgstr "Ubicació on el sistema emmagatzemarà els productes finalitzats."
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2375,7 +2371,7 @@ msgid "Expected date for the picking to be processed"
msgstr "Data prevista per processar l'albarà."
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr "Qtat P&L"
@@ -2473,7 +2469,7 @@ msgid "Source"
msgstr "Origen"
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2514,7 +2510,7 @@ msgstr "Seguiment nº de sèrie"
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Error!"
@@ -2584,7 +2580,7 @@ msgid "Maxtor Suppliers"
msgstr "Proveïdors Maxtor"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2698,7 +2694,7 @@ msgstr ""
"(id: %d)"
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr "No es pot consumir un moviment amb una quantitat negativa o zero!"
@@ -2760,7 +2756,7 @@ msgid "Quantity (UOS)"
msgstr "Quantitat (UdV)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2801,7 +2797,7 @@ msgid "Properties"
msgstr "Propietats"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Error, no empresa!"
@@ -2809,7 +2805,6 @@ msgstr "Error, no empresa!"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Incoterms"
@@ -2852,7 +2847,7 @@ msgid "Inventory Reference"
msgstr "Referència inventari"
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr "Albarà intern"
@@ -2941,7 +2936,7 @@ msgid "Date done"
msgstr "Data realització"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -3019,14 +3014,14 @@ msgid "Product"
msgstr "Producte"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr "Facturació"
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr "Indiqueu la quantitat correcte!"
@@ -3053,7 +3048,7 @@ msgid "Consume Products"
msgstr "Consumeix productes"
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr "Estock insuficient en el lot!"
@@ -3206,7 +3201,7 @@ msgid "All at once"
msgstr "Tot junt"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -3216,7 +3211,7 @@ msgstr ""
"moviments d'estoc que ja han estat processats (excepte per l'administrador)"
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr "Produccions futures"
@@ -3227,7 +3222,7 @@ msgid "To Invoice"
msgstr "Per facturar"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "Línies de devolució"
@@ -3308,8 +3303,7 @@ msgid "Icon"
msgstr "Icona"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "Error d'usuari"
@@ -3336,14 +3330,14 @@ msgstr "Clients no europeus"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3351,7 +3345,7 @@ msgid "Error!"
msgstr "Error!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3385,7 +3379,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr "Indica si les mercaderies s'enviaran totes alhora o directament."
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr "Aquest albarà no requereix facturació"
@@ -3430,8 +3424,8 @@ msgid "Warning"
msgstr "Avís"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr "està realitzat."
@@ -3538,7 +3532,7 @@ msgid "Reporting"
msgstr "Informe"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr " pel "
@@ -3592,7 +3586,7 @@ msgid "Chaining Journal"
msgstr "Diari encadenament"
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr "Estoc insuficient, no ha estat possible reservar els productes."
@@ -3603,7 +3597,7 @@ msgid "Customers"
msgstr "Clients"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr "està cancel·lat."
@@ -3614,13 +3608,13 @@ msgid "Stock Inventory Lines"
msgstr "Línies regularització d'inventari"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr "Processar document"
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr "Lliurament futur"
@@ -3796,7 +3790,7 @@ msgid "Existing Lot"
msgstr "Lot existent"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr "Introduïu almenys una quantitat que no sigui zero!"
@@ -3812,7 +3806,7 @@ msgstr ""
"pels proveïments."
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr "preparat per processar."
@@ -3828,7 +3822,7 @@ msgid "Set to zero"
msgstr "Inicia a zero"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr "Cap d'aquests albarans requereix facturació."
@@ -3840,14 +3834,14 @@ msgstr "Novembre"
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
"No s'ha definit un diari en la categoria de producte: \"%s\" (id: %d)"
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Qtat no planificada"
@@ -3887,16 +3881,16 @@ msgid "Move History (parent moves)"
msgstr "Historial moviments (mov. pares)"
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr "Estoc futur"
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Error"
@@ -4036,7 +4030,7 @@ msgid "Split Move"
msgstr "Divideix moviment"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -4086,7 +4080,6 @@ msgstr ""
"la categoria del producte."
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Traçabilitat cap amunt"
@@ -4098,7 +4091,7 @@ msgid "Location Content"
msgstr "Contingut ubicació"
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Ctat produïda"
@@ -4107,7 +4100,6 @@ msgstr "Ctat produïda"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Compte sortida estoc"
@@ -4161,13 +4153,12 @@ msgid "Invoiced date"
msgstr "Data facturada"
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "Avís!"
@@ -5047,6 +5038,9 @@ msgstr "Detalls d'ubicació opcionals, només per a finalitats d'informació."
#~ msgid "Product "
#~ msgstr "Producte "
+#~ msgid "Stock Variation Account"
+#~ msgstr "Compte variació d'estoc"
+
#, python-format
#~ msgid "INV: "
#~ msgstr "INV: "
diff --git a/addons/stock/i18n/cs.po b/addons/stock/i18n/cs.po
index 29af25699df..b60db047229 100644
--- a/addons/stock/i18n/cs.po
+++ b/addons/stock/i18n/cs.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:55+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:32+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
"X-Poedit-Language: Czech\n"
#. module: stock
@@ -153,7 +153,7 @@ msgid "UoM"
msgstr "UoM"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -186,14 +186,14 @@ msgstr ""
"k nastavení každého výrobku."
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "Odeslat/Příjmout výrobky"
@@ -252,8 +252,7 @@ msgid "Reference"
msgstr "Odkaz"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr "Výrobky ke zpracování"
@@ -278,16 +277,15 @@ msgid "Split lines"
msgstr "Rozdělit řádky"
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr "Nemůžete zrušit navádění, protože pohyb zásob je dokončeném stavu !"
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Varování!"
@@ -317,7 +315,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr "Měna, ve které je vyjádřena jednotková cena"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "Bez fakturace"
@@ -432,7 +430,7 @@ msgid "In Qty"
msgstr "V množ."
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "V tomto místě není žádný výrobek."
@@ -509,7 +507,7 @@ msgid "Move History (child moves)"
msgstr "Historie pohybů (pohyby potomků)"
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -529,7 +527,7 @@ msgid "Destination Location"
msgstr "Cílové umístění"
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr "Nemůžete zpracovat navádění bez pohybů zásob"
@@ -578,7 +576,7 @@ msgid "Location / Product"
msgstr "Místo / Výrobek"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr "Příjem"
@@ -708,7 +706,7 @@ msgid "Process Picking"
msgstr "Zpracovat navádění"
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr "Budoucí příjmy"
@@ -793,7 +791,7 @@ msgid "Merge Inventory"
msgstr "Sloučit inventář"
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr "Budoucí P&L"
@@ -1018,7 +1016,7 @@ msgid "Author"
msgstr "Autor"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr "Objednávka doručení"
@@ -1157,7 +1155,7 @@ msgstr ""
"zdrojové umístění pro pohyby zásob generované výrobními příkazy"
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1165,7 +1163,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1190,7 +1188,7 @@ msgid "Chaining Type"
msgstr "Typ zřetězení"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1230,7 +1228,7 @@ msgid "Additional Info"
msgstr "Doplňkové info"
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr "Nedovolená operace"
@@ -1241,7 +1239,7 @@ msgid "From"
msgstr "Od"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1370,13 +1368,12 @@ msgid "None"
msgstr "Žádné"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr "Nebyla vytvořena žádná faktura"
@@ -1429,7 +1426,7 @@ msgstr ""
"Nechejte toto pole prázdné, pokud je toto umístění sdílené mezi společnostmi."
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr "Prosíme poskytněte kladné množství k vyhození!"
@@ -1469,7 +1466,7 @@ msgid "Supplier Location"
msgstr "Umístění dodavatele"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr "byly vyhozeny"
@@ -1584,7 +1581,7 @@ msgid "Stock report by tracking lots"
msgstr "Skladový výkaz dle sledovaných dávek"
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Doručené množ."
@@ -1661,7 +1658,7 @@ msgid "Warehouse Dashboard"
msgstr "Nástěnka skladu"
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "Nemůžete odstranit řádek dávky !"
@@ -1675,7 +1672,7 @@ msgid "Scrap Products"
msgstr "Vadné výrobky"
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr "Nemůžete odstranit navádění, které je ve stavu %s !"
@@ -1732,13 +1729,13 @@ msgid "Shipping Address :"
msgstr "Dodací adresa :"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Poskytněte množství navrácených výrobků."
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1817,7 +1814,7 @@ msgid "Quantity per lot"
msgstr "Množství na dávku"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1827,7 +1824,7 @@ msgstr ""
"\"%s\" (id: %d)"
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Obdržené množ."
@@ -1968,7 +1965,6 @@ msgstr "Cena"
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Vstupní účet zásob"
@@ -2026,7 +2022,7 @@ msgid "Inventory loss"
msgstr "Ztráty inventáře"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "Dokument"
@@ -2116,15 +2112,15 @@ msgid "Warehouse board"
msgstr "Tabule skladu"
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr "Budoucí množ."
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
-msgstr "Účet výměny zásob"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
+msgstr ""
#. module: stock
#: field:stock.move,note:0
@@ -2147,13 +2143,13 @@ msgid "Shipping Type"
msgstr "Typ přepravy"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Můžete smazat pouze návrhové přesuny."
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2180,7 +2176,7 @@ msgid "Location where the system will stock the finished products."
msgstr "Umístění, kde systém naskladní hotové výrobky."
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2218,7 +2214,7 @@ msgid "Expected date for the picking to be processed"
msgstr "Očekávaný datum pro zpracování navedení"
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr "P&L množ."
@@ -2296,7 +2292,7 @@ msgid "Source"
msgstr "Zdroj"
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2336,7 +2332,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Chyba !"
@@ -2402,7 +2398,7 @@ msgid "Maxtor Suppliers"
msgstr "Dodavatelé Maxtoru"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2513,7 +2509,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2569,7 +2565,7 @@ msgid "Quantity (UOS)"
msgstr "Množství (UOS)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2609,7 +2605,7 @@ msgid "Properties"
msgstr "Vlastnosti"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Chyba, žádný partner !"
@@ -2617,7 +2613,6 @@ msgstr "Chyba, žádný partner !"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Incoterms"
@@ -2659,7 +2654,7 @@ msgid "Inventory Reference"
msgstr "Odkaz inventáře"
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr "Vnitřní navádění"
@@ -2745,7 +2740,7 @@ msgid "Date done"
msgstr "Datum dokončení"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2825,14 +2820,14 @@ msgid "Product"
msgstr "Výrobek"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr "Fakturace"
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr "Priosíme poskytněte vhodné množství !"
@@ -2859,7 +2854,7 @@ msgid "Consume Products"
msgstr "Spotřebované výrobky"
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr "Nedostatek zásob v dávce !"
@@ -3005,7 +3000,7 @@ msgid "All at once"
msgstr "Vše najednou"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -3013,7 +3008,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr "Budoucí výroba"
@@ -3024,7 +3019,7 @@ msgid "To Invoice"
msgstr "K fakturaci"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "Vrátit řádky"
@@ -3099,8 +3094,7 @@ msgid "Icon"
msgstr "Ikona"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "Uživatelská chyba"
@@ -3127,14 +3121,14 @@ msgstr "Neevropský zákazník"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3142,7 +3136,7 @@ msgid "Error!"
msgstr "Chyba!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3174,7 +3168,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr "Určuje, zda bude zboží dodáno vše najednou nebo přímým dodáním"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr "Naváděcí seznam nevyžaduje fakturaci."
@@ -3209,8 +3203,8 @@ msgid "Warning"
msgstr "Varování"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr "dokončeno."
@@ -3314,7 +3308,7 @@ msgid "Reporting"
msgstr "Hlášení"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr " pro "
@@ -3363,7 +3357,7 @@ msgid "Chaining Journal"
msgstr "Deník zřetězení"
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr "Nelze rezervovat výrobky kvůli nedostatku zásob."
@@ -3374,7 +3368,7 @@ msgid "Customers"
msgstr "Zákazníci"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr "je zrušeno."
@@ -3385,13 +3379,13 @@ msgid "Stock Inventory Lines"
msgstr "Řádky inventáře skladu"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr "Zpracovat dokument"
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr "Budoucí dodávky"
@@ -3553,7 +3547,7 @@ msgid "Existing Lot"
msgstr "Existující dávka"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr "Prosíme zadejte nejméně jedno nenulové množství!"
@@ -3568,7 +3562,7 @@ msgstr ""
"protože zdrojové umístění pro pohyb zásob je generováno zásobováním"
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr "je připraveno ke zpracování."
@@ -3584,7 +3578,7 @@ msgid "Set to zero"
msgstr "Nastavit na nulu"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr "Žádný z těchto naváděcích seznamů nevyžaduje fakturaci."
@@ -3596,13 +3590,13 @@ msgstr "Listopad"
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr "Není definován deník pro tuto kategorii výrobků: \"%s\" (id: %d)"
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Neplánované množ."
@@ -3642,16 +3636,16 @@ msgid "Move History (parent moves)"
msgstr "Historie pohybů (nadřazené pohyby)"
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr "Budoucí zásoby"
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Chyba"
@@ -3789,7 +3783,7 @@ msgid "Split Move"
msgstr "Rozdělit přesun"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3835,7 +3829,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Sledování odchozích"
@@ -3847,7 +3840,7 @@ msgid "Location Content"
msgstr "Obsah místa"
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Vyrobené množ."
@@ -3856,7 +3849,6 @@ msgstr "Vyrobené množ."
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Výstupní účet zásob"
@@ -3910,13 +3902,12 @@ msgid "Invoiced date"
msgstr "Fakturační datum"
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "Varování !"
@@ -3978,6 +3969,9 @@ msgstr "Volitelné podrobnosti umístění, pouze pro informační účely"
#~ msgid "Product "
#~ msgstr "Výrobek "
+#~ msgid "Stock Variation Account"
+#~ msgstr "Účet výměny zásob"
+
#, python-format
#~ msgid "INV: "
#~ msgstr "INV: "
diff --git a/addons/stock/i18n/da.po b/addons/stock/i18n/da.po
new file mode 100644
index 00000000000..87db7ece467
--- /dev/null
+++ b/addons/stock/i18n/da.po
@@ -0,0 +1,3906 @@
+# Danish translation for openobject-addons
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR , 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2011-01-11 11:16+0000\n"
+"PO-Revision-Date: 2011-09-22 19:56+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Danish \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:32+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
+
+#. module: stock
+#: field:product.product,track_outgoing:0
+msgid "Track Outgoing Lots"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_ups_upload
+msgid "Stock ups upload"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/product.py:76
+#, python-format
+msgid "Variation Account is not specified for Product Category: %s"
+msgstr ""
+
+#. module: stock
+#: field:stock.location,chained_location_id:0
+msgid "Chained Location If Fixed"
+msgstr ""
+
+#. module: stock
+#: view:stock.inventory:0
+#: view:stock.move:0
+#: view:stock.picking:0
+msgid "Put in a new pack"
+msgstr ""
+
+#. module: stock
+#: field:stock.move.split.lines,action:0
+msgid "Action"
+msgstr ""
+
+#. module: stock
+#: view:stock.production.lot:0
+msgid "Upstream Traceability"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_stock_line_date
+#: model:ir.ui.menu,name:stock.menu_report_stock_line_date
+msgid "Last Product Inventories"
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+msgid "Today"
+msgstr "I dag"
+
+#. module: stock
+#: field:stock.production.lot.revision,indice:0
+msgid "Revision Number"
+msgstr "Revisionsnummer"
+
+#. module: stock
+#: view:stock.move.memory.in:0
+#: view:stock.move.memory.out:0
+msgid "Product Moves"
+msgstr "Lagerflytning"
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_stock_move_report
+#: model:ir.ui.menu,name:stock.menu_action_stock_move_report
+#: view:report.stock.move:0
+msgid "Moves Analysis"
+msgstr ""
+
+#. module: stock
+#: help:stock.production.lot,ref:0
+msgid ""
+"Internal reference number in case it differs from the manufacturer's serial "
+"number"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,help:stock.action_inventory_form
+msgid ""
+"Periodical Inventories are used to count the number of products available "
+"per location. You can use it once a year when you do the general inventory "
+"or whenever you need it, to correct the current stock level of a product."
+msgstr ""
+
+#. module: stock
+#: view:stock.picking:0
+msgid "Picking list"
+msgstr ""
+
+#. module: stock
+#: report:lot.stock.overview:0
+#: report:lot.stock.overview_all:0
+#: field:report.stock.inventory,product_qty:0
+#: field:report.stock.move,product_qty:0
+#: field:stock.change.product.qty,new_quantity:0
+#: field:stock.inventory.line,product_qty:0
+#: field:stock.inventory.line.split,qty:0
+#: report:stock.inventory.move:0
+#: field:stock.move,product_qty:0
+#: field:stock.move.consume,product_qty:0
+#: field:stock.move.memory.in,quantity:0
+#: field:stock.move.memory.out,quantity:0
+#: field:stock.move.scrap,product_qty:0
+#: field:stock.move.split,qty:0
+#: field:stock.move.split.lines,quantity:0
+#: field:stock.move.split.lines.exist,quantity:0
+#: report:stock.picking.list:0
+#: field:stock.report.prodlots,qty:0
+#: field:stock.report.tracklots,name:0
+#: field:stock.split.into,quantity:0
+msgid "Quantity"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,help:stock.action_picking_tree
+msgid ""
+"This is the list of all delivery orders that have to be prepared, according "
+"to your different sales orders and your logistics rules."
+msgstr ""
+
+#. module: stock
+#: view:report.stock.move:0
+#: field:report.stock.move,day:0
+msgid "Day"
+msgstr "Dag"
+
+#. module: stock
+#: view:stock.inventory:0
+#: field:stock.inventory.line.split,product_uom:0
+#: view:stock.move:0
+#: field:stock.move.split,product_uom:0
+#: view:stock.picking:0
+#: view:stock.production.lot:0
+msgid "UoM"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
+#: model:ir.actions.act_window,name:stock.action_inventory_form
+#: model:ir.ui.menu,name:stock.menu_action_inventory_form
+#, python-format
+msgid "Physical Inventories"
+msgstr ""
+
+#. module: stock
+#: field:product.category,property_stock_journal:0
+#: view:report.stock.move:0
+#: field:stock.change.standard.price,stock_journal:0
+msgid "Stock journal"
+msgstr ""
+
+#. module: stock
+#: view:report.stock.move:0
+msgid "Incoming"
+msgstr ""
+
+#. module: stock
+#: help:product.category,property_stock_account_output_categ:0
+msgid ""
+"When doing real-time inventory valuation, counterpart Journal Items for all "
+"outgoing stock moves will be posted in this account. This is the default "
+"value for all products in this category, it can also directly be set on each "
+"product."
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
+#, python-format
+msgid "Missing partial picking data for move #%s"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_partial_move
+msgid "Deliver/Receive Products"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/report/report_stock.py:78
+#: code:addons/stock/report/report_stock.py:135
+#, python-format
+msgid "You cannot delete any record!"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_splitinto.py:49
+#, python-format
+msgid ""
+"The current move line is already assigned to a pack, please remove it first "
+"if you really want to change it ' # 'for "
+"this product: \"%s\" (id: %d)"
+msgstr ""
+
+#. module: stock
+#: selection:stock.picking,invoice_state:0
+msgid "Not Applicable"
+msgstr ""
+
+#. module: stock
+#: help:stock.tracking,serial:0
+msgid "Other reference or serial number"
+msgstr ""
+
+#. module: stock
+#: field:stock.move,origin:0
+#: view:stock.picking:0
+#: field:stock.picking,origin:0
+msgid "Origin"
+msgstr ""
+
+#. module: stock
+#: view:report.stock.lines.date:0
+msgid "Non Inv"
+msgstr ""
+
+#. module: stock
+#: view:stock.tracking:0
+msgid "Pack Identification"
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+#: field:stock.move,picking_id:0
+#: field:stock.picking,name:0
+#: view:stock.production.lot:0
+msgid "Reference"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:661
+#, python-format
+msgid "Products to Process"
+msgstr ""
+
+#. module: stock
+#: constraint:product.category:0
+msgid "Error ! You can not create recursive categories."
+msgstr ""
+
+#. module: stock
+#: help:stock.fill.inventory,set_stock_zero:0
+msgid ""
+"If checked, all product quantities will be set to zero to help ensure a real "
+"physical inventory is done"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_move_split_lines
+msgid "Split lines"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:1127
+#, python-format
+msgid "You cannot cancel picking because stock move is in done state !"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
+#, python-format
+msgid "Warning!"
+msgstr "Advarsel!"
+
+#. module: stock
+#: field:stock.invoice.onshipping,group:0
+msgid "Group by partner"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_res_partner
+#: view:report.stock.inventory:0
+#: field:report.stock.inventory,partner_id:0
+#: view:report.stock.move:0
+#: field:report.stock.move,partner_id:0
+#: view:stock.move:0
+#: field:stock.move,partner_id:0
+#: view:stock.picking:0
+#: field:stock.picking,partner_id:0
+msgid "Partner"
+msgstr ""
+
+#. module: stock
+#: help:stock.move.memory.in,currency:0
+#: help:stock.move.memory.out,currency:0
+msgid "Currency in which Unit cost is expressed"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_return_picking.py:135
+#, python-format
+msgid "No invoicing"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_production_lot
+#: field:stock.production.lot.revision,lot_id:0
+#: field:stock.report.prodlots,prodlot_id:0
+msgid "Production lot"
+msgstr ""
+
+#. module: stock
+#: model:ir.ui.menu,name:stock.menu_stock_uom_categ_form_action
+msgid "Units of Measure Categories"
+msgstr ""
+
+#. module: stock
+#: help:stock.incoterms,code:0
+msgid "Code for Incoterms"
+msgstr ""
+
+#. module: stock
+#: field:stock.tracking,move_ids:0
+msgid "Moves for this pack"
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.inventory,location_type:0
+#: selection:stock.location,usage:0
+msgid "Internal Location"
+msgstr ""
+
+#. module: stock
+#: view:stock.inventory:0
+msgid "Confirm Inventory"
+msgstr ""
+
+#. module: stock
+#: view:report.stock.inventory:0
+#: field:report.stock.inventory,state:0
+#: view:report.stock.move:0
+#: field:report.stock.move,state:0
+#: view:stock.inventory:0
+#: field:stock.inventory,state:0
+#: field:stock.inventory.line,state:0
+#: view:stock.move:0
+#: field:stock.move,state:0
+#: view:stock.picking:0
+#: field:stock.picking,state:0
+#: report:stock.picking.list:0
+msgid "State"
+msgstr ""
+
+#. module: stock
+#: field:stock.location,stock_real_value:0
+msgid "Real Stock Value"
+msgstr ""
+
+#. module: stock
+#: field:report.stock.move,day_diff2:0
+msgid "Lag (Days)"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_action_traceability
+msgid "Action traceability "
+msgstr ""
+
+#. module: stock
+#: field:stock.location,posy:0
+msgid "Shelves (Y)"
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+msgid "UOM"
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.inventory,state:0
+#: selection:report.stock.move,state:0
+#: view:stock.move:0
+#: selection:stock.move,state:0
+#: view:stock.picking:0
+#: selection:stock.picking,state:0
+#: view:stock.production.lot:0
+#: field:stock.production.lot,stock_available:0
+msgid "Available"
+msgstr "Til rådighed"
+
+#. module: stock
+#: view:stock.picking:0
+#: field:stock.picking,min_date:0
+msgid "Expected Date"
+msgstr ""
+
+#. module: stock
+#: view:board.board:0
+#: model:ir.actions.act_window,name:stock.action_outgoing_product_board
+msgid "Outgoing Product"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,help:stock.action_warehouse_form
+msgid ""
+"Create and manage your warehouses and assign them a location from here"
+msgstr ""
+
+#. module: stock
+#: field:report.stock.move,product_qty_in:0
+msgid "In Qty"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
+#, python-format
+msgid "No product in this location."
+msgstr ""
+
+#. module: stock
+#: field:stock.warehouse,lot_output_id:0
+msgid "Location Output"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.split_into
+#: model:ir.model,name:stock.model_stock_split_into
+msgid "Split into"
+msgstr ""
+
+#. module: stock
+#: field:stock.move,price_currency_id:0
+msgid "Currency for average price"
+msgstr ""
+
+#. module: stock
+#: help:product.template,property_stock_account_input:0
+msgid ""
+"When doing real-time inventory valuation, counterpart Journal Items for all "
+"incoming stock moves will be posted in this account. If not set on the "
+"product, the one from the product category is used."
+msgstr ""
+
+#. module: stock
+#: field:report.stock.inventory,location_type:0
+#: field:stock.location,usage:0
+msgid "Location Type"
+msgstr ""
+
+#. module: stock
+#: help:report.stock.move,type:0
+#: help:stock.picking,type:0
+msgid "Shipping type specify, goods coming in or going out."
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.report.xml,name:stock.report_move_labels
+msgid "Item Labels"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_report_stock_move
+msgid "Moves Statistics"
+msgstr ""
+
+#. module: stock
+#: view:stock.production.lot:0
+msgid "Product Lots Filter"
+msgstr ""
+
+#. module: stock
+#: report:lot.stock.overview:0
+#: report:lot.stock.overview_all:0
+#: report:stock.inventory.move:0
+#: report:stock.picking.list:0
+msgid "["
+msgstr "["
+
+#. module: stock
+#: help:stock.production.lot,stock_available:0
+msgid ""
+"Current quantity of products with this Production Lot Number available in "
+"company warehouses"
+msgstr ""
+
+#. module: stock
+#: field:stock.move,move_history_ids:0
+msgid "Move History (child moves)"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:1984
+#, python-format
+msgid ""
+"There is no stock output account defined for this product or its category: "
+"\"%s\" (id: %d)"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_picking_tree6
+#: model:ir.ui.menu,name:stock.menu_action_picking_tree6
+#: field:stock.picking,move_lines:0
+msgid "Internal Moves"
+msgstr ""
+
+#. module: stock
+#: field:stock.move,location_dest_id:0
+msgid "Destination Location"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:751
+#, python-format
+msgid "You can not process picking without stock moves"
+msgstr ""
+
+#. module: stock
+#: model:ir.ui.menu,name:stock.menu_product_packaging_stock_action
+#: field:stock.move,product_packaging:0
+msgid "Packaging"
+msgstr ""
+
+#. module: stock
+#: report:stock.picking.list:0
+msgid "Order(Origin)"
+msgstr ""
+
+#. module: stock
+#: report:lot.stock.overview:0
+#: report:lot.stock.overview_all:0
+msgid "Grand Total:"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,help:stock.action_out_picking_move
+msgid ""
+"You will find in this list all products you have to deliver to your "
+"customers. You can process the deliveries directly from this list using the "
+"buttons on the right of each line. You can filter the products to deliver by "
+"customer, products or sale order (using the Origin field)."
+msgstr ""
+
+#. module: stock
+#: model:ir.ui.menu,name:stock.menu_stock_inventory_control
+msgid "Inventory Control"
+msgstr ""
+
+#. module: stock
+#: view:stock.location:0
+#: field:stock.location,comment:0
+msgid "Additional Information"
+msgstr ""
+
+#. module: stock
+#: report:lot.stock.overview:0
+#: report:lot.stock.overview_all:0
+msgid "Location / Product"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:1306
+#, python-format
+msgid "Reception"
+msgstr ""
+
+#. module: stock
+#: field:stock.tracking,serial:0
+msgid "Additional Reference"
+msgstr ""
+
+#. module: stock
+#: view:stock.production.lot.revision:0
+msgid "Production Lot Revisions"
+msgstr ""
+
+#. module: stock
+#: help:product.product,track_outgoing:0
+msgid ""
+"Forces to specify a Production Lot for all moves containing this product and "
+"going to a Customer Location"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,help:stock.action_stock_journal_form
+msgid ""
+"The stock journal system allows you to assign each stock operation to a "
+"specific journal according to the type of operation to perform or the "
+"worker/team that should perform the operation. Examples of stock journals "
+"may be: quality control, pick lists, packing, etc."
+msgstr ""
+
+#. module: stock
+#: field:stock.location,complete_name:0
+#: field:stock.location,name:0
+msgid "Location Name"
+msgstr ""
+
+#. module: stock
+#: view:stock.inventory:0
+msgid "Posted Inventory"
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+#: view:stock.picking:0
+msgid "Move Information"
+msgstr ""
+
+#. module: stock
+#: view:report.stock.move:0
+msgid "Outgoing"
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.move,month:0
+msgid "August"
+msgstr "August"
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_tracking_form
+#: model:ir.model,name:stock.model_stock_tracking
+#: model:ir.ui.menu,name:stock.menu_action_tracking_form
+#: view:stock.tracking:0
+msgid "Packs"
+msgstr ""
+
+#. module: stock
+#: constraint:stock.move:0
+msgid "You try to assign a lot which is not from the same product"
+msgstr ""
+
+#. module: stock
+#: view:res.partner:0
+msgid "Sales & Purchases"
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.move,month:0
+msgid "June"
+msgstr "Juni"
+
+#. module: stock
+#: field:product.template,property_stock_procurement:0
+msgid "Procurement Location"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_production_lot_form
+#: model:ir.ui.menu,name:stock.menu_action_production_lot_form
+#: field:stock.inventory.line.split,line_exist_ids:0
+#: field:stock.inventory.line.split,line_ids:0
+#: field:stock.move.split,line_exist_ids:0
+#: field:stock.move.split,line_ids:0
+msgid "Production Lots"
+msgstr ""
+
+#. module: stock
+#: report:stock.picking.list:0
+msgid "Recipient"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_location_tree
+#: model:ir.ui.menu,name:stock.menu_action_location_tree
+msgid "Location Structure"
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.move,month:0
+msgid "October"
+msgstr "Oktober"
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_inventory_line
+msgid "Inventory Line"
+msgstr ""
+
+#. module: stock
+#: help:product.category,property_stock_journal:0
+msgid ""
+"When doing real-time inventory valuation, this is the Accounting Journal in "
+"which entries will be automatically posted when stock moves are processed."
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_partial_picking
+msgid "Process Picking"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/product.py:355
+#, python-format
+msgid "Future Receptions"
+msgstr ""
+
+#. module: stock
+#: help:stock.inventory.line.split,use_exist:0
+#: help:stock.move.split,use_exist:0
+msgid ""
+"Check this option to select existing lots in the list below, otherwise you "
+"should enter new ones line by line."
+msgstr ""
+
+#. module: stock
+#: field:stock.move,move_dest_id:0
+msgid "Destination Move"
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+#: view:stock.picking:0
+msgid "Process Now"
+msgstr ""
+
+#. module: stock
+#: field:stock.location,address_id:0
+msgid "Location Address"
+msgstr ""
+
+#. module: stock
+#: help:stock.move,prodlot_id:0
+msgid "Production lot is used to put a serial number on the production"
+msgstr ""
+
+#. module: stock
+#: field:stock.warehouse,lot_input_id:0
+msgid "Location Input"
+msgstr ""
+
+#. module: stock
+#: help:stock.picking,date:0
+msgid "Date of Order"
+msgstr ""
+
+#. module: stock
+#: selection:product.product,valuation:0
+msgid "Periodical (manual)"
+msgstr ""
+
+#. module: stock
+#: model:stock.location,name:stock.location_procurement
+msgid "Procurements"
+msgstr "Indkøb"
+
+#. module: stock
+#: model:stock.location,name:stock.stock_location_3
+msgid "IT Suppliers"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_inventory_form_draft
+msgid "Draft Physical Inventories"
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.inventory,location_type:0
+#: selection:stock.location,usage:0
+msgid "Transit Location for Inter-Companies Transfers"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_view_change_product_quantity
+#: model:ir.model,name:stock.model_stock_change_product_qty
+#: view:stock.change.product.qty:0
+msgid "Change Product Quantity"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_inventory_merge
+msgid "Merge Inventory"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/product.py:371
+#, python-format
+msgid "Future P&L"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_picking_tree4
+#: model:ir.ui.menu,name:stock.menu_action_picking_tree4
+#: view:stock.picking:0
+msgid "Incoming Shipments"
+msgstr ""
+
+#. module: stock
+#: view:report.stock.inventory:0
+#: view:stock.move:0
+#: view:stock.picking:0
+msgid "Scrap"
+msgstr ""
+
+#. module: stock
+#: field:stock.location,child_ids:0
+msgid "Contains"
+msgstr ""
+
+#. module: stock
+#: view:board.board:0
+msgid "Incoming Products Delay"
+msgstr ""
+
+#. module: stock
+#: view:stock.location:0
+msgid "Stock Locations"
+msgstr "Lagersteder"
+
+#. module: stock
+#: report:lot.stock.overview:0
+#: report:lot.stock.overview_all:0
+#: field:stock.move,price_unit:0
+msgid "Unit Price"
+msgstr "Enhedspris"
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_move_split_lines_exist
+msgid "Exist Split lines"
+msgstr ""
+
+#. module: stock
+#: field:stock.move,date_expected:0
+msgid "Scheduled Date"
+msgstr ""
+
+#. module: stock
+#: view:stock.tracking:0
+msgid "Pack Search"
+msgstr ""
+
+#. module: stock
+#: selection:stock.move,priority:0
+msgid "Urgent"
+msgstr "Haster"
+
+#. module: stock
+#: view:stock.picking:0
+#: report:stock.picking.list:0
+msgid "Journal"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:1315
+#, python-format
+msgid "is scheduled %s."
+msgstr ""
+
+#. module: stock
+#: help:stock.picking,location_id:0
+msgid ""
+"Keep empty if you produce at the location where the finished products are "
+"needed.Set a location if you produce at a fixed location. This can be a "
+"partner location if you subcontract the manufacturing operations."
+msgstr ""
+
+#. module: stock
+#: view:res.partner:0
+msgid "Inventory Properties"
+msgstr ""
+
+#. module: stock
+#: field:report.stock.move,day_diff:0
+msgid "Execution Lead Time (Days)"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.act_stock_product_location_open
+msgid "Stock by Location"
+msgstr ""
+
+#. module: stock
+#: help:stock.move,address_id:0
+msgid ""
+"Optional address where goods are to be delivered, specifically used for "
+"allotment"
+msgstr ""
+
+#. module: stock
+#: view:report.stock.move:0
+msgid "Month-1"
+msgstr ""
+
+#. module: stock
+#: help:stock.location,active:0
+msgid ""
+"By unchecking the active field, you may hide a location without deleting it."
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.report.xml,name:stock.report_picking_list
+msgid "Packing list"
+msgstr ""
+
+#. module: stock
+#: field:stock.location,stock_virtual:0
+msgid "Virtual Stock"
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.inventory,location_type:0
+#: selection:stock.location,usage:0
+msgid "View"
+msgstr ""
+
+#. module: stock
+#: field:stock.location,parent_left:0
+msgid "Left Parent"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_partial_move.py:132
+#, python-format
+msgid "Delivery Information"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
+#, python-format
+msgid "Stock Inventory is done"
+msgstr ""
+
+#. module: stock
+#: constraint:product.product:0
+msgid "Error: Invalid ean code"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/product.py:148
+#, python-format
+msgid ""
+"There is no stock output account defined for this product: \"%s\" (id: %d)"
+msgstr ""
+
+#. module: stock
+#: field:product.template,property_stock_production:0
+msgid "Production Location"
+msgstr ""
+
+#. module: stock
+#: help:stock.picking,address_id:0
+msgid "Address of partner"
+msgstr ""
+
+#. module: stock
+#: model:res.company,overdue_msg:stock.res_company_shop0
+#: model:res.company,overdue_msg:stock.res_company_tinyshop0
+msgid ""
+"\n"
+"Date: %(date)s\n"
+"\n"
+"Dear %(partner_name)s,\n"
+"\n"
+"Please find in attachment a reminder of all your unpaid invoices, for a "
+"total amount due of:\n"
+"\n"
+"%(followup_amount).2f %(company_currency)s\n"
+"\n"
+"Thanks,\n"
+"--\n"
+"%(user_signature)s\n"
+"%(company_name)s\n"
+" "
+msgstr ""
+
+#. module: stock
+#: help:stock.location,usage:0
+msgid ""
+"* Supplier Location: Virtual location representing the source location for "
+"products coming from your suppliers\n"
+" \n"
+"* View: Virtual location used to create a hierarchical structures for your "
+"warehouse, aggregating its child locations ; can't directly contain "
+"products\n"
+" \n"
+"* Internal Location: Physical locations inside your own warehouses,\n"
+" \n"
+"* Customer Location: Virtual location representing the destination location "
+"for products sent to your customers\n"
+" \n"
+"* Inventory: Virtual location serving as counterpart for inventory "
+"operations used to correct stock levels (Physical inventories)\n"
+" \n"
+"* Procurement: Virtual location serving as temporary counterpart for "
+"procurement operations when the source (supplier or production) is not known "
+"yet. This location should be empty when the procurement scheduler has "
+"finished running.\n"
+" \n"
+"* Production: Virtual counterpart location for production operations: this "
+"location consumes the raw material and produces finished products\n"
+" "
+msgstr ""
+
+#. module: stock
+#: field:stock.production.lot.revision,author_id:0
+msgid "Author"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:1305
+#, python-format
+msgid "Delivery Order"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_move_memory_in
+msgid "stock.move.memory.in"
+msgstr ""
+
+#. module: stock
+#: selection:stock.location,chained_auto_packing:0
+msgid "Manual Operation"
+msgstr ""
+
+#. module: stock
+#: view:stock.location:0
+#: view:stock.move:0
+msgid "Supplier"
+msgstr "Leverandør"
+
+#. module: stock
+#: field:stock.picking,date_done:0
+msgid "Date Done"
+msgstr ""
+
+#. module: stock
+#: report:stock.picking.list:0
+msgid "Expected Shipping Date"
+msgstr ""
+
+#. module: stock
+#: selection:stock.move,state:0
+msgid "Not Available"
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.move,month:0
+msgid "March"
+msgstr "Marts"
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_view_stock_inventory_line_split
+#: model:ir.model,name:stock.model_stock_inventory_line_split
+#: view:stock.inventory:0
+#: view:stock.inventory.line:0
+msgid "Split inventory lines"
+msgstr ""
+
+#. module: stock
+#: view:stock.inventory:0
+msgid "Physical Inventory"
+msgstr ""
+
+#. module: stock
+#: help:stock.location,chained_company_id:0
+msgid ""
+"The company the Picking List containing the chained move will belong to "
+"(leave empty to use the default company determination rules"
+msgstr ""
+
+#. module: stock
+#: help:stock.location,chained_picking_type:0
+msgid ""
+"Shipping Type of the Picking List that will contain the chained move (leave "
+"empty to automatically detect the type based on the source and destination "
+"locations)."
+msgstr ""
+
+#. module: stock
+#: view:stock.move.split:0
+msgid "Lot number"
+msgstr ""
+
+#. module: stock
+#: field:stock.inventory.line,product_uom:0
+#: field:stock.move.consume,product_uom:0
+#: field:stock.move.scrap,product_uom:0
+msgid "Product UOM"
+msgstr ""
+
+#. module: stock
+#: model:stock.location,name:stock.stock_location_locations_partner
+msgid "Partner Locations"
+msgstr ""
+
+#. module: stock
+#: view:report.stock.inventory:0
+#: view:report.stock.move:0
+msgid "Total quantity"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.move_consume
+#: view:stock.move.consume:0
+msgid "Consume Move"
+msgstr ""
+
+#. module: stock
+#: model:stock.location,name:stock.stock_location_7
+msgid "European Customers"
+msgstr ""
+
+#. module: stock
+#: help:stock.location,chained_delay:0
+msgid "Delay between original move and chained move in days"
+msgstr ""
+
+#. module: stock
+#: view:stock.fill.inventory:0
+msgid "Import current product inventory from the following location"
+msgstr ""
+
+#. module: stock
+#: help:stock.location,chained_auto_packing:0
+msgid ""
+"This is used only if you select a chained location type.\n"
+"The 'Automatic Move' value will create a stock move after the current one "
+"that will be validated automatically. With 'Manual Operation', the stock "
+"move has to be validated by a worker. With 'Automatic No Step Added', the "
+"location is replaced in the original move."
+msgstr ""
+
+#. module: stock
+#: view:stock.production.lot:0
+msgid "Downstream Traceability"
+msgstr ""
+
+#. module: stock
+#: help:product.template,property_stock_production:0
+msgid ""
+"For the current product, this stock location will be used, instead of the "
+"default one, as the source location for stock moves generated by production "
+"orders"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:1975
+#, python-format
+msgid ""
+"Can not create Journal Entry, Output Account defined on this product and "
+"Variant account on category of this product are same."
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:1322
+#, python-format
+msgid "is in draft state."
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,help:stock.action_tracking_form
+msgid ""
+"This is the list of all your packs. When you select a Pack, you can get the "
+"upstream or downstream traceability of the products contained in the pack."
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_ups_final
+msgid "Stock ups final"
+msgstr ""
+
+#. module: stock
+#: field:stock.location,chained_auto_packing:0
+msgid "Chaining Type"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_return_picking.py:135
+#, python-format
+msgid "To be refunded/invoiced"
+msgstr ""
+
+#. module: stock
+#: model:stock.location,name:stock.stock_location_shop0
+msgid "Shop 1"
+msgstr ""
+
+#. module: stock
+#: view:stock.change.product.qty:0
+#: view:stock.change.standard.price:0
+#: view:stock.fill.inventory:0
+#: view:stock.inventory.merge:0
+#: view:stock.invoice.onshipping:0
+#: view:stock.location.product:0
+#: view:stock.move:0
+#: view:stock.move.track:0
+#: view:stock.picking:0
+#: view:stock.split.into:0
+msgid "_Cancel"
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+msgid "Ready"
+msgstr ""
+
+#. module: stock
+#: view:stock.picking:0
+msgid "Calendar View"
+msgstr ""
+
+#. module: stock
+#: view:stock.picking:0
+msgid "Additional Info"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:1602
+#, python-format
+msgid "Operation forbidden"
+msgstr ""
+
+#. module: stock
+#: field:stock.location.product,from_date:0
+msgid "From"
+msgstr "Fra"
+
+#. module: stock
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#, python-format
+msgid "You may only return pickings that are Confirmed, Available or Done!"
+msgstr ""
+
+#. module: stock
+#: view:stock.picking:0
+#: field:stock.picking,invoice_state:0
+msgid "Invoice Control"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_production_lot_revision
+msgid "Production lot revisions"
+msgstr ""
+
+#. module: stock
+#: view:stock.picking:0
+msgid "Internal Picking List"
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.inventory,state:0
+#: selection:report.stock.move,state:0
+#: selection:stock.move,state:0
+#: selection:stock.picking,state:0
+msgid "Waiting"
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+#: selection:stock.move.split.lines,action:0
+#: view:stock.picking:0
+msgid "Split"
+msgstr ""
+
+#. module: stock
+#: view:stock.picking:0
+msgid "Search Stock Picking"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/product.py:93
+#, python-format
+msgid "Company is not specified in Location"
+msgstr ""
+
+#. module: stock
+#: view:report.stock.move:0
+#: field:stock.partial.move,type:0
+msgid "Type"
+msgstr ""
+
+#. module: stock
+#: model:stock.location,name:stock.stock_location_5
+msgid "Generic IT Suppliers"
+msgstr ""
+
+#. module: stock
+#: report:stock.picking.list:0
+msgid "Picking List:"
+msgstr ""
+
+#. module: stock
+#: field:stock.inventory,date:0
+#: field:stock.move,create_date:0
+#: field:stock.production.lot,date:0
+#: field:stock.tracking,date:0
+msgid "Creation Date"
+msgstr ""
+
+#. module: stock
+#: field:report.stock.lines.date,id:0
+msgid "Inventory Line Id"
+msgstr ""
+
+#. module: stock
+#: help:stock.location,address_id:0
+msgid "Address of customer or supplier."
+msgstr ""
+
+#. module: stock
+#: view:report.stock.move:0
+#: field:report.stock.move,picking_id:0
+msgid "Packing"
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.inventory,location_type:0
+#: field:res.partner,property_stock_customer:0
+#: selection:stock.location,usage:0
+msgid "Customer Location"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_partial_move.py:85
+#, python-format
+msgid "Invalid action !"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_partial_move.py:139
+#, python-format
+msgid "Receive Information"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.report.xml,name:stock.report_location_overview
+#: report:lot.stock.overview:0
+msgid "Location Inventory Overview"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_replacement
+msgid "Stock Replacement"
+msgstr ""
+
+#. module: stock
+#: view:stock.inventory:0
+msgid "General Informations"
+msgstr ""
+
+#. module: stock
+#: selection:stock.location,chained_location_type:0
+msgid "None"
+msgstr ""
+
+#. module: stock
+#: view:stock.tracking:0
+msgid "Downstream traceability"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
+#, python-format
+msgid "No Invoices were created"
+msgstr ""
+
+#. module: stock
+#: model:stock.location,name:stock.stock_location_company
+msgid "OpenERP S.A."
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_partial_move.py:140
+#, python-format
+msgid "Receive"
+msgstr ""
+
+#. module: stock
+#: help:stock.incoterms,active:0
+msgid ""
+"By unchecking the active field, you may hide an INCOTERM without deleting it."
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+#: view:stock.picking:0
+#: field:stock.picking,date:0
+msgid "Order Date"
+msgstr "Ordredato"
+
+#. module: stock
+#: field:stock.location,location_id:0
+msgid "Parent Location"
+msgstr ""
+
+#. module: stock
+#: help:stock.picking,state:0
+msgid ""
+"* Draft: not confirmed yet and will not be scheduled until confirmed\n"
+"* Confirmed: still waiting for the availability of products\n"
+"* Available: products reserved, simply waiting for confirmation.\n"
+"* Waiting: waiting for another move to proceed before it becomes "
+"automatically available (e.g. in Make-To-Order flows)\n"
+"* Done: has been processed, can't be modified or cancelled anymore\n"
+"* Cancelled: has been cancelled, can't be confirmed anymore"
+msgstr ""
+
+#. module: stock
+#: help:stock.location,company_id:0
+msgid "Let this field empty if this location is shared between all companies"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:2198
+#, python-format
+msgid "Please provide a positive quantity to scrap!"
+msgstr ""
+
+#. module: stock
+#: field:stock.location,chained_delay:0
+msgid "Chaining Lead Time"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_partial_move.py:85
+#, python-format
+msgid "Cannot deliver products which are already delivered !"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_invoice_onshipping
+msgid "Stock Invoice Onshipping"
+msgstr ""
+
+#. module: stock
+#: help:stock.move,state:0
+msgid ""
+"When the stock move is created it is in the 'Draft' state.\n"
+" After that, it is set to 'Not Available' state if the scheduler did not "
+"find the products.\n"
+" When products are reserved it is set to 'Available'.\n"
+" When the picking is done the state is 'Done'. \n"
+"The state is 'Waiting' if the move is waiting for another one."
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.inventory,location_type:0
+#: field:res.partner,property_stock_supplier:0
+#: selection:stock.location,usage:0
+msgid "Supplier Location"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:2217
+#, python-format
+msgid "were scrapped"
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+#: view:stock.picking:0
+msgid "Partial"
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.move,month:0
+msgid "September"
+msgstr "September"
+
+#. module: stock
+#: help:stock.picking,backorder_id:0
+msgid ""
+"If this picking was split this field links to the picking that contains the "
+"other part that has been processed already."
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_report_stock_inventory
+msgid "Stock Statistics"
+msgstr ""
+
+#. module: stock
+#: field:stock.move.memory.in,currency:0
+#: field:stock.move.memory.out,currency:0
+msgid "Currency"
+msgstr "Valuta"
+
+#. module: stock
+#: field:product.product,track_production:0
+msgid "Track Manufacturing Lots"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_inventory_merge.py:44
+#, python-format
+msgid ""
+"Please select multiple physical inventories to merge in the list view."
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.act_product_stock_move_open
+#: model:ir.actions.act_window,name:stock.action_move_form2
+#: model:ir.ui.menu,name:stock.menu_action_move_form2
+#: view:stock.inventory:0
+#: view:stock.move:0
+#: view:stock.picking:0
+#: view:stock.production.lot:0
+#: view:stock.tracking:0
+msgid "Stock Moves"
+msgstr "Lagerflytning"
+
+#. module: stock
+#: selection:report.stock.move,type:0
+#: selection:stock.location,chained_picking_type:0
+#: selection:stock.picking,type:0
+msgid "Sending Goods"
+msgstr ""
+
+#. module: stock
+#: view:stock.picking:0
+msgid "Cancel Availability"
+msgstr ""
+
+#. module: stock
+#: help:stock.move,date_expected:0
+msgid "Scheduled date for the processing of this move"
+msgstr ""
+
+#. module: stock
+#: field:stock.inventory,move_ids:0
+msgid "Created Moves"
+msgstr ""
+
+#. module: stock
+#: model:stock.location,name:stock.stock_location_14
+msgid "Shelf 2"
+msgstr ""
+
+#. module: stock
+#: field:stock.report.tracklots,tracking_id:0
+msgid "Tracking lot"
+msgstr ""
+
+#. module: stock
+#: view:stock.picking:0
+msgid "Back Orders"
+msgstr ""
+
+#. module: stock
+#: view:product.product:0
+#: view:product.template:0
+msgid "Counter-Part Locations Properties"
+msgstr ""
+
+#. module: stock
+#: view:stock.location:0
+msgid "Localization"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_report_tracklots
+msgid "Stock report by tracking lots"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/product.py:367
+#, python-format
+msgid "Delivered Qty"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.track_line
+#: view:stock.inventory.line.split:0
+#: view:stock.move.split:0
+msgid "Split in lots"
+msgstr ""
+
+#. module: stock
+#: view:stock.move.split:0
+msgid "Production Lot Numbers"
+msgstr ""
+
+#. module: stock
+#: view:report.stock.inventory:0
+#: field:report.stock.inventory,date:0
+#: field:report.stock.move,date:0
+#: view:stock.inventory:0
+#: report:stock.inventory.move:0
+#: view:stock.move:0
+#: field:stock.move,date:0
+#: field:stock.partial.move,date:0
+#: field:stock.partial.picking,date:0
+#: view:stock.picking:0
+msgid "Date"
+msgstr "Dato"
+
+#. module: stock
+#: view:report.stock.inventory:0
+#: view:report.stock.move:0
+#: view:stock.move:0
+#: view:stock.picking:0
+msgid "Extended Filters..."
+msgstr ""
+
+#. module: stock
+#: field:stock.warehouse,lot_stock_id:0
+msgid "Location Stock"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_inventory_merge.py:64
+#, python-format
+msgid "Merging is only allowed on draft inventories."
+msgstr ""
+
+#. module: stock
+#: model:ir.ui.menu,name:stock.menu_dashboard_stock
+msgid "Dashboard"
+msgstr "Oversigt"
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_move_track
+msgid "Track moves"
+msgstr ""
+
+#. module: stock
+#: field:stock.incoterms,code:0
+msgid "Code"
+msgstr ""
+
+#. module: stock
+#: view:stock.inventory.line.split:0
+msgid "Lots Number"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.open_board_warehouse
+#: model:ir.ui.menu,name:stock.menu_board_warehouse
+msgid "Warehouse Dashboard"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:510
+#, python-format
+msgid "You can not remove a lot line !"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_move_scrap
+#: view:stock.move:0
+#: view:stock.move.scrap:0
+#: view:stock.picking:0
+msgid "Scrap Products"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:1135
+#, python-format
+msgid "You cannot remove the picking which is in %s state !"
+msgstr ""
+
+#. module: stock
+#: view:stock.inventory.line.split:0
+#: view:stock.move.consume:0
+#: view:stock.move.scrap:0
+#: view:stock.move.split:0
+#: view:stock.picking:0
+msgid "Cancel"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.act_stock_return_picking
+#: model:ir.model,name:stock.model_stock_return_picking
+msgid "Return Picking"
+msgstr ""
+
+#. module: stock
+#: view:stock.inventory:0
+#: view:stock.move:0
+#: view:stock.picking:0
+msgid "Split in production lots"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_location
+#: view:report.stock.inventory:0
+#: field:report.stock.inventory,location_id:0
+#: field:stock.change.product.qty,location_id:0
+#: field:stock.fill.inventory,location_id:0
+#: field:stock.inventory.line,location_id:0
+#: report:stock.inventory.move:0
+#: view:stock.location:0
+#: view:stock.move:0
+#: field:stock.move.consume,location_id:0
+#: field:stock.move.scrap,location_id:0
+#: field:stock.picking,location_id:0
+#: report:stock.picking.list:0
+#: field:stock.report.prodlots,location_id:0
+#: field:stock.report.tracklots,location_id:0
+msgid "Location"
+msgstr ""
+
+#. module: stock
+#: view:product.template:0
+msgid "Information"
+msgstr ""
+
+#. module: stock
+#: report:stock.picking.list:0
+msgid "Shipping Address :"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_return_picking.py:120
+#, python-format
+msgid "Provide the quantities of the returned products."
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:1978
+#, python-format
+msgid ""
+"Can not create Journal Entry, Input Account defined on this product and "
+"Variant account on category of this product are same."
+msgstr ""
+
+#. module: stock
+#: view:stock.change.standard.price:0
+msgid "Cost Price"
+msgstr "Kost pris"
+
+#. module: stock
+#: view:product.product:0
+#: field:product.product,valuation:0
+msgid "Inventory Valuation"
+msgstr ""
+
+#. module: stock
+#: view:stock.picking:0
+msgid "Create Invoice"
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+#: view:stock.picking:0
+msgid "Process Later"
+msgstr ""
+
+#. module: stock
+#: help:res.partner,property_stock_supplier:0
+msgid ""
+"This stock location will be used, instead of the default one, as the source "
+"location for goods you receive from the current partner"
+msgstr ""
+
+#. module: stock
+#: field:stock.warehouse,partner_address_id:0
+msgid "Owner Address"
+msgstr ""
+
+#. module: stock
+#: help:stock.move,price_unit:0
+msgid ""
+"Technical field used to record the product cost set by the user during a "
+"picking confirmation (when average price costing method is used)"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,help:stock.action_stock_move_report
+msgid ""
+"Moves Analysis allows you to easily check and analyse your company stock "
+"moves. Use this report when you want to analyse the different routes taken "
+"by your products and inventory management performance."
+msgstr ""
+
+#. module: stock
+#: field:report.stock.move,day_diff1:0
+msgid "Planned Lead Time (Days)"
+msgstr ""
+
+#. module: stock
+#: field:stock.change.standard.price,new_price:0
+msgid "Price"
+msgstr "Pris"
+
+#. module: stock
+#: view:stock.inventory:0
+msgid "Search Inventory"
+msgstr ""
+
+#. module: stock
+#: field:stock.move.track,quantity:0
+msgid "Quantity per lot"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:1981
+#, python-format
+msgid ""
+"There is no stock input account defined for this product or its category: "
+"\"%s\" (id: %d)"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/product.py:357
+#, python-format
+msgid "Received Qty"
+msgstr ""
+
+#. module: stock
+#: field:stock.production.lot,ref:0
+msgid "Internal Reference"
+msgstr ""
+
+#. module: stock
+#: help:stock.production.lot,prefix:0
+msgid ""
+"Optional prefix to prepend when displaying this serial number: PREFIX/SERIAL "
+"[INT_REF]"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_view_stock_fill_inventory
+#: model:ir.model,name:stock.model_stock_fill_inventory
+#: view:stock.fill.inventory:0
+msgid "Import Inventory"
+msgstr ""
+
+#. module: stock
+#: field:stock.incoterms,name:0
+#: field:stock.move,name:0
+#: field:stock.warehouse,name:0
+msgid "Name"
+msgstr ""
+
+#. module: stock
+#: view:product.product:0
+msgid "Stocks"
+msgstr "Lager"
+
+#. module: stock
+#: model:ir.module.module,description:stock.module_meta_information
+msgid ""
+"OpenERP Inventory Management module can manage multi-warehouses, multi and "
+"structured stock locations.\n"
+"Thanks to the double entry management, the inventory controlling is powerful "
+"and flexible:\n"
+"* Moves history and planning,\n"
+"* Different inventory methods (FIFO, LIFO, ...)\n"
+"* Stock valuation (standard or average price, ...)\n"
+"* Robustness faced with Inventory differences\n"
+"* Automatic reordering rules (stock level, JIT, ...)\n"
+"* Bar code supported\n"
+"* Rapid detection of mistakes through double entry system\n"
+"* Traceability (upstream/downstream, production lots, serial number, ...)\n"
+"* Dashboard for warehouse that includes:\n"
+" * Products to receive in delay (date < = today)\n"
+" * Procurement in exception\n"
+" * Graph : Number of Receive products vs planned (bar graph on week par "
+"day)\n"
+" * Graph : Number of Delivery products vs planned (bar graph on week par "
+"day)\n"
+" "
+msgstr ""
+
+#. module: stock
+#: help:product.template,property_stock_inventory:0
+msgid ""
+"For the current product, this stock location will be used, instead of the "
+"default one, as the source location for stock moves generated when you do an "
+"inventory"
+msgstr ""
+
+#. module: stock
+#: view:report.stock.lines.date:0
+msgid "Stockable"
+msgstr ""
+
+#. module: stock
+#: selection:product.product,valuation:0
+msgid "Real Time (automated)"
+msgstr ""
+
+#. module: stock
+#: help:stock.move,tracking_id:0
+msgid "Logistical shipping unit: pallet, box, pack ..."
+msgstr ""
+
+#. module: stock
+#: view:stock.change.product.qty:0
+#: view:stock.change.standard.price:0
+msgid "_Apply"
+msgstr ""
+
+#. module: stock
+#: report:lot.stock.overview:0
+#: report:lot.stock.overview_all:0
+#: report:stock.inventory.move:0
+#: report:stock.picking.list:0
+msgid "]"
+msgstr "]"
+
+#. module: stock
+#: field:product.template,property_stock_inventory:0
+msgid "Inventory Location"
+msgstr ""
+
+#. module: stock
+#: view:report.stock.inventory:0
+#: view:report.stock.move:0
+msgid "Total value"
+msgstr ""
+
+#. module: stock
+#: help:stock.location,chained_journal_id:0
+msgid ""
+"Inventory Journal in which the chained move will be written, if the Chaining "
+"Type is not Transparent (no journal is used if left empty)"
+msgstr ""
+
+#. module: stock
+#: view:board.board:0
+#: model:ir.actions.act_window,name:stock.action_incoming_product_board
+msgid "Incoming Product"
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+msgid "Creation"
+msgstr ""
+
+#. module: stock
+#: field:stock.move.memory.in,cost:0
+#: field:stock.move.memory.out,cost:0
+msgid "Cost"
+msgstr "Pris"
+
+#. module: stock
+#: field:product.category,property_stock_account_input_categ:0
+#: field:product.template,property_stock_account_input:0
+#: field:stock.change.standard.price,stock_account_input:0
+msgid "Stock Input Account"
+msgstr ""
+
+#. module: stock
+#: model:ir.ui.menu,name:stock.menu_stock_warehouse_mgmt
+#: model:ir.ui.menu,name:stock.menu_warehouse_config
+msgid "Warehouse Management"
+msgstr ""
+
+#. module: stock
+#: selection:stock.picking,move_type:0
+msgid "Partial Delivery"
+msgstr ""
+
+#. module: stock
+#: selection:stock.location,chained_auto_packing:0
+msgid "Automatic No Step Added"
+msgstr ""
+
+#. module: stock
+#: view:stock.location.product:0
+msgid "Stock Location Analysis"
+msgstr ""
+
+#. module: stock
+#: help:stock.move,date:0
+msgid ""
+"Move date: scheduled date until move is done, then date of actual move "
+"processing"
+msgstr ""
+
+#. module: stock
+#: field:report.stock.lines.date,date:0
+msgid "Latest Inventory Date"
+msgstr ""
+
+#. module: stock
+#: view:report.stock.inventory:0
+#: view:report.stock.move:0
+#: view:stock.inventory:0
+#: view:stock.move:0
+#: view:stock.picking:0
+#: view:stock.production.lot:0
+msgid "Group By..."
+msgstr ""
+
+#. module: stock
+#: view:stock.location:0
+msgid "Chained Locations"
+msgstr ""
+
+#. module: stock
+#: model:stock.location,name:stock.location_inventory
+msgid "Inventory loss"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:1314
+#, python-format
+msgid "Document"
+msgstr ""
+
+#. module: stock
+#: view:stock.picking:0
+msgid "Input Picking List"
+msgstr ""
+
+#. module: stock
+#: field:stock.move,product_uom:0
+#: field:stock.move.memory.in,product_uom:0
+#: field:stock.move.memory.out,product_uom:0
+msgid "Unit of Measure"
+msgstr "Måleenhed"
+
+#. module: stock
+#: code:addons/stock/product.py:176
+#, python-format
+msgid "Products: "
+msgstr ""
+
+#. module: stock
+#: help:product.product,track_production:0
+msgid ""
+"Forces to specify a Production Lot for all moves containing this product and "
+"generated by a Manufacturing Order"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.track_line_old
+#: view:stock.move.track:0
+msgid "Tracking a move"
+msgstr ""
+
+#. module: stock
+#: view:product.product:0
+msgid "Update"
+msgstr ""
+
+#. module: stock
+#: view:stock.inventory:0
+msgid "Set to Draft"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_stock_journal_form
+#: model:ir.ui.menu,name:stock.menu_action_stock_journal_form
+msgid "Stock Journals"
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.move,type:0
+msgid "Others"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/product.py:90
+#, python-format
+msgid "Could not find any difference between standard price and new price!"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_partial_picking
+msgid "Partial Picking"
+msgstr ""
+
+#. module: stock
+#: model:stock.location,name:stock.stock_location_scrapped
+#: field:stock.move,scrapped:0
+msgid "Scrapped"
+msgstr ""
+
+#. module: stock
+#: view:stock.inventory:0
+msgid "Products "
+msgstr ""
+
+#. module: stock
+#: field:product.product,track_incoming:0
+msgid "Track Incoming Lots"
+msgstr ""
+
+#. module: stock
+#: view:board.board:0
+msgid "Warehouse board"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/product.py:377
+#, python-format
+msgid "Future Qty"
+msgstr ""
+
+#. module: stock
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
+msgstr ""
+
+#. module: stock
+#: field:stock.move,note:0
+#: view:stock.picking:0
+#: field:stock.picking,note:0
+msgid "Notes"
+msgstr ""
+
+#. module: stock
+#: report:lot.stock.overview:0
+#: report:lot.stock.overview_all:0
+msgid "Value"
+msgstr "Værdi"
+
+#. module: stock
+#: field:report.stock.move,type:0
+#: field:stock.location,chained_picking_type:0
+#: field:stock.picking,type:0
+msgid "Shipping Type"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:2175
+#, python-format
+msgid "You can only delete draft moves."
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_partial_picking.py:74
+#: model:ir.actions.act_window,name:stock.act_product_location_open
+#: model:ir.ui.menu,name:stock.menu_stock_products_menu
+#: view:stock.inventory:0
+#: view:stock.picking:0
+#, python-format
+msgid "Products"
+msgstr ""
+
+#. module: stock
+#: view:stock.change.standard.price:0
+msgid "Change Price"
+msgstr ""
+
+#. module: stock
+#: field:stock.picking,move_type:0
+msgid "Delivery Method"
+msgstr ""
+
+#. module: stock
+#: help:report.stock.move,location_dest_id:0
+#: help:stock.move,location_dest_id:0
+#: help:stock.picking,location_dest_id:0
+msgid "Location where the system will stock the finished products."
+msgstr ""
+
+#. module: stock
+#: help:product.category,property_stock_valuation_account_id:0
+msgid ""
+"When real-time inventory valuation is enabled on a product, this account "
+"will hold the current value of the products."
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,help:stock.action_reception_picking_move
+msgid ""
+"Here you can receive individual products, no matter what purchase order or "
+"picking order they come from. You will find the list of all products you are "
+"waiting for. Once you receive an order, you can filter based on the name of "
+"the supplier or the purchase order reference. Then you can confirm all "
+"products received using the buttons on the right of each line."
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_move
+msgid "Stock Move"
+msgstr "Lager flytning"
+
+#. module: stock
+#: view:report.stock.move:0
+msgid "Delay(Days)"
+msgstr ""
+
+#. module: stock
+#: field:stock.move.memory.in,move_id:0
+#: field:stock.move.memory.out,move_id:0
+msgid "Move"
+msgstr "Flyt"
+
+#. module: stock
+#: help:stock.picking,min_date:0
+msgid "Expected date for the picking to be processed"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/product.py:373
+#, python-format
+msgid "P&L Qty"
+msgstr ""
+
+#. module: stock
+#: view:stock.production.lot:0
+#: field:stock.production.lot,revisions:0
+msgid "Revisions"
+msgstr ""
+
+#. module: stock
+#: view:stock.picking:0
+msgid "This operation will cancel the shipment. Do you want to continue?"
+msgstr ""
+
+#. module: stock
+#: help:product.product,valuation:0
+msgid ""
+"If real-time valuation is enabled for a product, the system will "
+"automatically write journal entries corresponding to stock moves.The "
+"inventory variation account set on the product category will represent the "
+"current inventory value, and the stock input and stock output account will "
+"hold the counterpart moves for incoming and outgoing products."
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,help:stock.action_stock_inventory_report
+msgid ""
+"Inventory Analysis allows you to easily check and analyse your company stock "
+"levels. Sort and group by selection criteria in order to better analyse and "
+"manage your company activities."
+msgstr ""
+
+#. module: stock
+#: help:report.stock.move,location_id:0
+#: help:stock.move,location_id:0
+msgid ""
+"Sets a location if you produce at a fixed location. This can be a partner "
+"location if you subcontract the manufacturing operations."
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,help:stock.action_location_form
+msgid ""
+"Define your locations to reflect your warehouse structure and organization. "
+"OpenERP is able to manage physical locations (warehouses, shelves, bin, "
+"etc), partner locations (customers, suppliers) and virtual locations which "
+"are the counterpart of the stock operations like the manufacturing orders "
+"consumptions, inventories, etc. Every stock operation in OpenERP moves the "
+"products from one location to another one. For instance, if you receive "
+"products from a supplier, OpenERP will move products from the Supplier "
+"location to the Stock location. Each report can be performed on physical, "
+"partner or virtual locations."
+msgstr ""
+
+#. module: stock
+#: view:stock.invoice.onshipping:0
+msgid "Create"
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+#: view:stock.picking:0
+msgid "Dates"
+msgstr "Datoer"
+
+#. module: stock
+#: field:stock.move,priority:0
+msgid "Priority"
+msgstr "Prioritet"
+
+#. module: stock
+#: view:stock.move:0
+msgid "Source"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:2557
+#: model:ir.model,name:stock.model_stock_inventory
+#: selection:report.stock.inventory,location_type:0
+#: field:stock.inventory.line,inventory_id:0
+#: report:stock.inventory.move:0
+#: selection:stock.location,usage:0
+#, python-format
+msgid "Inventory"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_picking
+msgid "Picking List"
+msgstr ""
+
+#. module: stock
+#: sql_constraint:stock.production.lot:0
+msgid ""
+"The combination of serial number and internal reference must be unique !"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_ups
+msgid "Stock ups"
+msgstr ""
+
+#. module: stock
+#: view:stock.inventory:0
+msgid "Cancel Inventory"
+msgstr ""
+
+#. module: stock
+#: field:stock.move.split.lines,name:0
+#: field:stock.move.split.lines.exist,name:0
+msgid "Tracking serial"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/report/report_stock.py:78
+#: code:addons/stock/report/report_stock.py:135
+#: code:addons/stock/stock.py:751
+#, python-format
+msgid "Error !"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_replacement_result
+msgid "Stock Replacement result"
+msgstr ""
+
+#. module: stock
+#: model:ir.ui.menu,name:stock.menu_stock_unit_measure_stock
+#: model:ir.ui.menu,name:stock.menu_stock_uom_form_action
+msgid "Units of Measure"
+msgstr "Måleenheder"
+
+#. module: stock
+#: selection:stock.location,chained_location_type:0
+msgid "Fixed Location"
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.move,month:0
+msgid "July"
+msgstr "Juli"
+
+#. module: stock
+#: view:report.stock.lines.date:0
+msgid "Consumable"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,help:stock.action_stock_line_date
+msgid ""
+"Display the last inventories done on your products and easily sort them with "
+"specific filtering criteria. If you do frequent and partial inventories, you "
+"need this report in order to ensure that the stock of each product is "
+"controlled at least once a year."
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.report.xml,name:stock.report_product_history
+msgid "Stock Level Forecast"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_journal
+#: field:report.stock.move,stock_journal:0
+#: view:stock.journal:0
+#: field:stock.journal,name:0
+#: field:stock.picking,stock_journal_id:0
+msgid "Stock Journal"
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.inventory,location_type:0
+#: selection:stock.location,usage:0
+msgid "Procurement"
+msgstr "Indkøb"
+
+#. module: stock
+#: model:stock.location,name:stock.stock_location_4
+msgid "Maxtor Suppliers"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
+#: code:addons/stock/wizard/stock_change_standard_price.py:106
+#, python-format
+msgid "Active ID is not set in Context"
+msgstr ""
+
+#. module: stock
+#: view:stock.picking:0
+msgid "Force Availability"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.move_scrap
+#: view:stock.move.scrap:0
+msgid "Scrap Move"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_partial_move.py:138
+#: model:ir.actions.act_window,name:stock.action_reception_picking_move
+#: model:ir.ui.menu,name:stock.menu_action_pdct_in
+#: view:stock.move:0
+#, python-format
+msgid "Receive Products"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_partial_move.py:131
+#: model:ir.actions.act_window,name:stock.action_out_picking_move
+#: model:ir.ui.menu,name:stock.menu_action_pdct_out
+#, python-format
+msgid "Deliver Products"
+msgstr ""
+
+#. module: stock
+#: view:stock.location.product:0
+msgid "View Stock of Products"
+msgstr ""
+
+#. module: stock
+#: view:stock.picking:0
+msgid "Internal Picking list"
+msgstr ""
+
+#. module: stock
+#: view:report.stock.move:0
+#: field:report.stock.move,month:0
+msgid "Month"
+msgstr "Måned"
+
+#. module: stock
+#: help:stock.picking,date_done:0
+msgid "Date of Completion"
+msgstr ""
+
+#. module: stock
+#: help:stock.production.lot,name:0
+msgid "Unique production lot, will be displayed as: PREFIX/SERIAL [INT_REF]"
+msgstr ""
+
+#. module: stock
+#: help:stock.tracking,active:0
+msgid ""
+"By unchecking the active field, you may hide a pack without deleting it."
+msgstr ""
+
+#. module: stock
+#: view:stock.inventory.merge:0
+msgid "Yes"
+msgstr "Ja"
+
+#. module: stock
+#: field:stock.inventory,inventory_line_id:0
+msgid "Inventories"
+msgstr ""
+
+#. module: stock
+#: view:report.stock.move:0
+msgid "Todo"
+msgstr ""
+
+#. module: stock
+#: view:report.stock.inventory:0
+#: field:report.stock.inventory,company_id:0
+#: view:report.stock.move:0
+#: field:report.stock.move,company_id:0
+#: field:stock.inventory,company_id:0
+#: field:stock.inventory.line,company_id:0
+#: field:stock.location,company_id:0
+#: field:stock.move,company_id:0
+#: field:stock.picking,company_id:0
+#: field:stock.production.lot,company_id:0
+#: field:stock.production.lot.revision,company_id:0
+#: field:stock.warehouse,company_id:0
+msgid "Company"
+msgstr "Virksomhed"
+
+#. module: stock
+#: view:stock.move:0
+#: view:stock.picking:0
+msgid "Unit Of Measure"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/product.py:122
+#, python-format
+msgid ""
+"There is no stock input account defined for this product: \"%s\" (id: %d)"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:2302
+#, python-format
+msgid "Can not consume a move with negative or zero quantity !"
+msgstr ""
+
+#. module: stock
+#: field:stock.location,stock_real:0
+msgid "Real Stock"
+msgstr ""
+
+#. module: stock
+#: view:stock.fill.inventory:0
+msgid "Fill Inventory"
+msgstr ""
+
+#. module: stock
+#: constraint:product.template:0
+msgid ""
+"Error: The default UOM and the purchase UOM must be in the same category."
+msgstr ""
+
+#. module: stock
+#: help:product.category,property_stock_account_input_categ:0
+msgid ""
+"When doing real-time inventory valuation, counterpart Journal Items for all "
+"incoming stock moves will be posted in this account. This is the default "
+"value for all products in this category, it can also directly be set on each "
+"product."
+msgstr ""
+
+#. module: stock
+#: field:stock.production.lot.revision,date:0
+msgid "Revision Date"
+msgstr ""
+
+#. module: stock
+#: view:report.stock.inventory:0
+#: field:report.stock.inventory,prodlot_id:0
+#: view:stock.move:0
+#: field:stock.move.split.lines,lot_id:0
+#: field:stock.move.split.lines.exist,lot_id:0
+#: report:stock.picking.list:0
+msgid "Lot"
+msgstr ""
+
+#. module: stock
+#: view:stock.move.split:0
+msgid "Production Lot Number"
+msgstr ""
+
+#. module: stock
+#: field:stock.move,product_uos_qty:0
+msgid "Quantity (UOS)"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:1647
+#, python-format
+msgid ""
+"You are moving %.2f %s products but only %.2f %s available in this lot."
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+msgid "Set Available"
+msgstr ""
+
+#. module: stock
+#: report:stock.picking.list:0
+msgid "Contact Address :"
+msgstr ""
+
+#. module: stock
+#: field:stock.move,backorder_id:0
+msgid "Back Order"
+msgstr ""
+
+#. module: stock
+#: field:stock.incoterms,active:0
+#: field:stock.location,active:0
+#: field:stock.tracking,active:0
+msgid "Active"
+msgstr "Aktiv"
+
+#. module: stock
+#: model:ir.module.module,shortdesc:stock.module_meta_information
+msgid "Inventory Management"
+msgstr ""
+
+#. module: stock
+#: view:product.template:0
+msgid "Properties"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:982
+#, python-format
+msgid "Error, no partner !"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_incoterms_tree
+#: model:ir.model,name:stock.model_stock_incoterms
+#: view:stock.incoterms:0
+msgid "Incoterms"
+msgstr "Incoterms"
+
+#. module: stock
+#: report:lot.stock.overview:0
+#: report:lot.stock.overview_all:0
+#: report:stock.inventory.move:0
+msgid "Total:"
+msgstr "Total:"
+
+#. module: stock
+#: help:stock.incoterms,name:0
+msgid ""
+"Incoterms are series of sales terms.They are used to divide transaction "
+"costs and responsibilities between buyer and seller and reflect state-of-the-"
+"art transportation practices."
+msgstr ""
+
+#. module: stock
+#: help:stock.fill.inventory,recursive:0
+msgid ""
+"If checked, products contained in child locations of selected location will "
+"be included as well."
+msgstr ""
+
+#. module: stock
+#: field:stock.move.track,tracking_prefix:0
+msgid "Tracking prefix"
+msgstr ""
+
+#. module: stock
+#: field:stock.inventory,name:0
+msgid "Inventory Reference"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:1307
+#, python-format
+msgid "Internal picking"
+msgstr ""
+
+#. module: stock
+#: view:stock.location.product:0
+msgid "Open Product"
+msgstr ""
+
+#. module: stock
+#: field:stock.location.product,to_date:0
+msgid "To"
+msgstr "Til"
+
+#. module: stock
+#: view:stock.move:0
+#: view:stock.picking:0
+msgid "Process"
+msgstr ""
+
+#. module: stock
+#: field:stock.production.lot.revision,name:0
+msgid "Revision Name"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_warehouse
+#: model:ir.ui.menu,name:stock.menu_stock_root
+#: view:stock.warehouse:0
+msgid "Warehouse"
+msgstr "Lagersted"
+
+#. module: stock
+#: view:stock.location.product:0
+msgid ""
+"(Keep empty to open the current situation. Adjust HH:MM:SS to 00:00:00 to "
+"filter all resources of the day for the 'From' date and 23:59:59 for the "
+"'To' date)"
+msgstr ""
+
+#. module: stock
+#: view:product.category:0
+msgid "Accounting Stock Properties"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_picking_tree_out
+msgid "Customers Packings"
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.inventory,state:0
+#: view:report.stock.move:0
+#: selection:report.stock.move,state:0
+#: selection:stock.inventory,state:0
+#: view:stock.move:0
+#: selection:stock.move,state:0
+#: view:stock.picking:0
+#: selection:stock.picking,state:0
+msgid "Done"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_view_change_standard_price
+#: model:ir.model,name:stock.model_stock_change_standard_price
+#: view:stock.change.standard.price:0
+msgid "Change Standard Price"
+msgstr ""
+
+#. module: stock
+#: model:stock.location,name:stock.stock_location_locations_virtual
+msgid "Virtual Locations"
+msgstr ""
+
+#. module: stock
+#: selection:stock.picking,invoice_state:0
+msgid "To Be Invoiced"
+msgstr ""
+
+#. module: stock
+#: field:stock.inventory,date_done:0
+msgid "Date done"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:983
+#, python-format
+msgid ""
+"Please put a partner on the picking list if you want to generate invoice."
+msgstr ""
+
+#. module: stock
+#: selection:stock.move,priority:0
+msgid "Not urgent"
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+msgid "To Do"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_warehouse_form
+#: model:ir.ui.menu,name:stock.menu_action_warehouse_form
+msgid "Warehouses"
+msgstr "Lagersteder"
+
+#. module: stock
+#: field:stock.journal,user_id:0
+msgid "Responsible"
+msgstr ""
+
+#. module: stock
+#: field:stock.move,returned_price:0
+msgid "Returned product price"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_stock_inventory_report
+#: model:ir.ui.menu,name:stock.menu_action_stock_inventory_report
+#: view:report.stock.inventory:0
+msgid "Inventory Analysis"
+msgstr ""
+
+#. module: stock
+#: field:stock.invoice.onshipping,journal_id:0
+msgid "Destination Journal"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.act_stock_tracking_lot_2_stock_report_tracklots
+#: model:stock.location,name:stock.stock_location_stock
+msgid "Stock"
+msgstr "Lager"
+
+#. module: stock
+#: model:ir.model,name:stock.model_product_product
+#: model:ir.ui.menu,name:stock.menu_product_in_config_stock
+#: model:ir.ui.menu,name:stock.menu_stock_product
+#: view:report.stock.inventory:0
+#: field:report.stock.inventory,product_id:0
+#: field:report.stock.lines.date,product_id:0
+#: view:report.stock.move:0
+#: field:report.stock.move,product_id:0
+#: field:stock.change.product.qty,product_id:0
+#: field:stock.inventory.line,product_id:0
+#: field:stock.inventory.line.split,product_id:0
+#: report:stock.inventory.move:0
+#: view:stock.move:0
+#: field:stock.move,product_id:0
+#: field:stock.move.consume,product_id:0
+#: field:stock.move.memory.in,product_id:0
+#: field:stock.move.memory.out,product_id:0
+#: field:stock.move.scrap,product_id:0
+#: field:stock.move.split,product_id:0
+#: view:stock.production.lot:0
+#: field:stock.production.lot,product_id:0
+#: field:stock.report.prodlots,product_id:0
+#: field:stock.report.tracklots,product_id:0
+msgid "Product"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_return_picking.py:135
+#, python-format
+msgid "Invoicing"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
+#, python-format
+msgid "Please provide Proper Quantity !"
+msgstr ""
+
+#. module: stock
+#: field:stock.move,product_uos:0
+msgid "Product UOS"
+msgstr ""
+
+#. module: stock
+#: field:stock.location,posz:0
+msgid "Height (Z)"
+msgstr ""
+
+#. module: stock
+#: field:stock.ups,weight:0
+msgid "Lot weight"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_move_consume
+#: view:stock.move.consume:0
+msgid "Consume Products"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:1646
+#, python-format
+msgid "Insufficient Stock in Lot !"
+msgstr ""
+
+#. module: stock
+#: field:stock.location,parent_right:0
+msgid "Right Parent"
+msgstr ""
+
+#. module: stock
+#: field:stock.picking,address_id:0
+msgid "Address"
+msgstr ""
+
+#. module: stock
+#: report:lot.stock.overview:0
+#: report:lot.stock.overview_all:0
+msgid "Variants"
+msgstr "Varianter"
+
+#. module: stock
+#: field:stock.location,posx:0
+msgid "Corridor (X)"
+msgstr ""
+
+#. module: stock
+#: model:stock.location,name:stock.stock_location_suppliers
+msgid "Suppliers"
+msgstr "Leverandører"
+
+#. module: stock
+#: field:report.stock.inventory,value:0
+#: field:report.stock.move,value:0
+msgid "Total Value"
+msgstr ""
+
+#. module: stock
+#: model:ir.ui.menu,name:stock.menu_product_by_category_stock_form
+msgid "Products by Category"
+msgstr ""
+
+#. module: stock
+#: model:ir.ui.menu,name:stock.menu_product_category_config_stock
+msgid "Products Categories"
+msgstr ""
+
+#. module: stock
+#: field:stock.move.memory.in,wizard_id:0
+#: field:stock.move.memory.out,wizard_id:0
+msgid "Wizard"
+msgstr "Guide"
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_view_stock_location_product
+#: model:ir.model,name:stock.model_stock_location_product
+msgid "Products by Location"
+msgstr ""
+
+#. module: stock
+#: field:stock.fill.inventory,recursive:0
+msgid "Include children"
+msgstr ""
+
+#. module: stock
+#: model:stock.location,name:stock.stock_location_components
+msgid "Shelf 1"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,help:stock.action_picking_tree6
+msgid ""
+"Internal Moves display all inventory operations you have to perform in your "
+"warehouse. All operations can be categorized into stock journals, so that "
+"each worker has his own list of operations to perform in his own journal. "
+"Most operations are prepared automatically by OpenERP according to your "
+"preconfigured logistics rules, but you can also record manual stock "
+"operations."
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+msgid "Order"
+msgstr ""
+
+#. module: stock
+#: field:stock.tracking,name:0
+msgid "Pack Reference"
+msgstr ""
+
+#. module: stock
+#: view:report.stock.move:0
+#: field:report.stock.move,location_id:0
+#: field:stock.move,location_id:0
+msgid "Source Location"
+msgstr ""
+
+#. module: stock
+#: view:product.template:0
+msgid "Accounting Entries"
+msgstr ""
+
+#. module: stock
+#: report:stock.picking.list:0
+msgid "Total"
+msgstr ""
+
+#. module: stock
+#: model:stock.location,name:stock.stock_location_intermediatelocation0
+msgid "Internal Shippings"
+msgstr ""
+
+#. module: stock
+#: field:stock.change.standard.price,enable_stock_in_out_acc:0
+msgid "Enable Related Account"
+msgstr ""
+
+#. module: stock
+#: field:stock.location,stock_virtual_value:0
+msgid "Virtual Stock Value"
+msgstr ""
+
+#. module: stock
+#: view:product.product:0
+#: view:stock.inventory.line.split:0
+#: view:stock.move.split:0
+msgid "Lots"
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+#: view:stock.picking:0
+msgid "New pack"
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+msgid "Destination"
+msgstr ""
+
+#. module: stock
+#: selection:stock.picking,move_type:0
+msgid "All at once"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:1603
+#, python-format
+msgid ""
+"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
+"that have already been processed (except by the Administrator)"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/product.py:383
+#, python-format
+msgid "Future Productions"
+msgstr "Fremtidige produktioner"
+
+#. module: stock
+#: view:stock.picking:0
+msgid "To Invoice"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_return_picking.py:120
+#, python-format
+msgid "Return lines"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_report_stock_lines_date
+#: view:report.stock.lines.date:0
+msgid "Dates of Inventories"
+msgstr ""
+
+#. module: stock
+#: view:report.stock.move:0
+msgid "Total incoming quantity"
+msgstr ""
+
+#. module: stock
+#: field:report.stock.move,product_qty_out:0
+msgid "Out Qty"
+msgstr ""
+
+#. module: stock
+#: field:stock.production.lot,move_ids:0
+msgid "Moves for this production lot"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_move_memory_out
+msgid "stock.move.memory.out"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
+#, python-format
+msgid "Message !"
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+#: view:stock.picking:0
+msgid "Put in current pack"
+msgstr ""
+
+#. module: stock
+#: view:stock.inventory:0
+msgid "Lot Inventory"
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+msgid "Reason"
+msgstr "Årsag"
+
+#. module: stock
+#: report:stock.picking.list:0
+msgid "Delivery Order:"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,help:stock.action_production_lot_form
+msgid ""
+"This is the list of all the production lots (serial numbers) you recorded. "
+"When you select a lot, you can get the upstream or downstream traceability "
+"of the products contained in lot. By default, the list is filtred on the "
+"serial numbers that are available in your warehouse but you can uncheck the "
+"'Available' button to get all the lots you produced, received or delivered "
+"to customers."
+msgstr ""
+
+#. module: stock
+#: field:stock.location,icon:0
+msgid "Icon"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:2174
+#, python-format
+msgid "UserError"
+msgstr ""
+
+#. module: stock
+#: view:stock.inventory.line.split:0
+#: view:stock.move.consume:0
+#: view:stock.move.scrap:0
+#: view:stock.move.split:0
+#: view:stock.move.track:0
+#: view:stock.split.into:0
+msgid "Ok"
+msgstr "OK"
+
+#. module: stock
+#: model:stock.location,name:stock.stock_location_8
+msgid "Non European Customers"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/product.py:76
+#: code:addons/stock/product.py:90
+#: code:addons/stock/product.py:93
+#: code:addons/stock/product.py:100
+#: code:addons/stock/product.py:121
+#: code:addons/stock/product.py:147
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
+#: code:addons/stock/wizard/stock_splitinto.py:49
+#: code:addons/stock/wizard/stock_splitinto.py:53
+#, python-format
+msgid "Error!"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:1990
+#, python-format
+msgid ""
+"There is no inventory variation account defined on the product category: "
+"\"%s\" (id: %d)"
+msgstr ""
+
+#. module: stock
+#: view:stock.inventory.merge:0
+msgid "Do you want to merge theses inventories ?"
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.inventory,state:0
+#: selection:report.stock.move,state:0
+#: selection:stock.inventory,state:0
+#: selection:stock.move,state:0
+#: selection:stock.picking,state:0
+msgid "Cancelled"
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+msgid "Picking"
+msgstr ""
+
+#. module: stock
+#: help:stock.picking,move_type:0
+msgid "It specifies goods to be delivered all at once or by direct delivery"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
+#, python-format
+msgid "This picking list does not require invoicing."
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.move,type:0
+#: selection:stock.location,chained_picking_type:0
+#: selection:stock.picking,type:0
+msgid "Getting Goods"
+msgstr ""
+
+#. module: stock
+#: help:stock.location,chained_location_type:0
+msgid ""
+"Determines whether this location is chained to another location, i.e. any "
+"incoming product in this location \n"
+"should next go to the chained location. The chained location is determined "
+"according to the type :\n"
+"* None: No chaining at all\n"
+"* Customer: The chained location will be taken from the Customer Location "
+"field on the Partner form of the Partner that is specified in the Picking "
+"list of the incoming products.\n"
+"* Fixed Location: The chained location is taken from the next field: Chained "
+"Location if Fixed."
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_inventory_merge.py:43
+#: code:addons/stock/wizard/stock_inventory_merge.py:63
+#, python-format
+msgid "Warning"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
+#, python-format
+msgid "is done."
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_picking_tree
+#: model:ir.ui.menu,name:stock.menu_action_picking_tree
+#: view:stock.picking:0
+msgid "Delivery Orders"
+msgstr ""
+
+#. module: stock
+#: help:res.partner,property_stock_customer:0
+msgid ""
+"This stock location will be used, instead of the default one, as the "
+"destination location for goods you send to this partner"
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.inventory,state:0
+#: selection:report.stock.move,state:0
+#: selection:stock.inventory,state:0
+#: view:stock.picking:0
+#: selection:stock.picking,state:0
+msgid "Confirmed"
+msgstr "Bekræftet"
+
+#. module: stock
+#: view:stock.picking:0
+msgid "Confirm"
+msgstr ""
+
+#. module: stock
+#: help:stock.location,icon:0
+msgid "Icon show in hierarchical tree view"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_view_stock_merge_inventories
+#: view:stock.inventory.merge:0
+msgid "Merge inventories"
+msgstr ""
+
+#. module: stock
+#: help:stock.change.product.qty,new_quantity:0
+msgid "This quantity is expressed in the Default UoM of the product."
+msgstr ""
+
+#. module: stock
+#: report:stock.picking.list:0
+msgid "Reception:"
+msgstr ""
+
+#. module: stock
+#: help:stock.location,scrap_location:0
+msgid ""
+"Check this box to allow using this location to put scrapped/damaged goods."
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.act_relate_picking
+msgid "Related Picking"
+msgstr ""
+
+#. module: stock
+#: view:report.stock.move:0
+msgid "Total outgoing quantity"
+msgstr ""
+
+#. module: stock
+#: field:stock.picking,backorder_id:0
+msgid "Back Order of"
+msgstr ""
+
+#. module: stock
+#: help:stock.move.memory.in,cost:0
+#: help:stock.move.memory.out,cost:0
+msgid "Unit Cost for this product line"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_product_category
+#: view:report.stock.inventory:0
+#: field:report.stock.inventory,product_categ_id:0
+#: view:report.stock.move:0
+#: field:report.stock.move,categ_id:0
+msgid "Product Category"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_change_product_qty.py:88
+#, python-format
+msgid "INV: %s"
+msgstr ""
+
+#. module: stock
+#: model:ir.ui.menu,name:stock.next_id_61
+msgid "Reporting"
+msgstr "Rapportering"
+
+#. module: stock
+#: code:addons/stock/stock.py:1316
+#, python-format
+msgid " for the "
+msgstr ""
+
+#. module: stock
+#: view:stock.split.into:0
+msgid "Quantity to leave in the current pack"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_stock_invoice_onshipping
+#: view:stock.invoice.onshipping:0
+msgid "Create invoice"
+msgstr ""
+
+#. module: stock
+#: model:ir.ui.menu,name:stock.menu_stock_configuration
+msgid "Configuration"
+msgstr ""
+
+#. module: stock
+#: field:stock.inventory.line.split,use_exist:0
+#: field:stock.move.split,use_exist:0
+msgid "Existing Lots"
+msgstr ""
+
+#. module: stock
+#: field:product.product,location_id:0
+#: view:stock.location:0
+msgid "Stock Location"
+msgstr ""
+
+#. module: stock
+#: help:stock.change.standard.price,new_price:0
+msgid ""
+"If cost price is increased, stock variation account will be debited and "
+"stock output account will be credited with the value = (difference of amount "
+"* quantity available).\n"
+"If cost price is decreased, stock variation account will be creadited and "
+"stock input account will be debited."
+msgstr ""
+
+#. module: stock
+#: field:stock.location,chained_journal_id:0
+msgid "Chaining Journal"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:729
+#, python-format
+msgid "Not enough stock, unable to reserve the products."
+msgstr ""
+
+#. module: stock
+#: model:stock.location,name:stock.stock_location_customers
+msgid "Customers"
+msgstr "Kunder"
+
+#. module: stock
+#: code:addons/stock/stock.py:1320
+#, python-format
+msgid "is cancelled."
+msgstr ""
+
+#. module: stock
+#: view:stock.inventory.line:0
+msgid "Stock Inventory Lines"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_partial_picking.py:74
+#, python-format
+msgid "Process Document"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/product.py:365
+#, python-format
+msgid "Future Deliveries"
+msgstr ""
+
+#. module: stock
+#: view:stock.picking:0
+msgid "Additional info"
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+#: field:stock.move,tracking_id:0
+msgid "Pack"
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+#: view:stock.picking:0
+msgid "Date Expected"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,help:stock.action_picking_tree4
+msgid ""
+"The Incoming Shipments is the list of all orders you will receive from your "
+"supplier. An incoming shipment contains a list of products to be received "
+"according to the original purchase order. You can validate the shipment "
+"totally or partially."
+msgstr ""
+
+#. module: stock
+#: field:stock.move,auto_validate:0
+msgid "Auto Validate"
+msgstr ""
+
+#. module: stock
+#: report:stock.picking.list:0
+msgid "Weight"
+msgstr "Vægt"
+
+#. module: stock
+#: model:ir.model,name:stock.model_product_template
+msgid "Product Template"
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.move,month:0
+msgid "December"
+msgstr "December"
+
+#. module: stock
+#: selection:stock.location,chained_auto_packing:0
+msgid "Automatic Move"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,help:stock.action_move_form2
+msgid ""
+"This menu gives you the full traceability of inventory operations on a "
+"specific product. You can filter on the product to see all the past or "
+"future movements for the product."
+msgstr ""
+
+#. module: stock
+#: view:stock.picking:0
+msgid "Return Products"
+msgstr ""
+
+#. module: stock
+#: view:stock.inventory:0
+msgid "Validate Inventory"
+msgstr ""
+
+#. module: stock
+#: help:stock.move,price_currency_id:0
+msgid ""
+"Technical field used to record the currency chosen by the user during a "
+"picking confirmation (when average price costing method is used)"
+msgstr ""
+
+#. module: stock
+#: model:ir.ui.menu,name:stock.menu_stock_products_moves
+msgid "Products Moves"
+msgstr ""
+
+#. module: stock
+#: selection:stock.picking,invoice_state:0
+msgid "Invoiced"
+msgstr "Faktureret"
+
+#. module: stock
+#: field:stock.move,address_id:0
+msgid "Destination Address"
+msgstr ""
+
+#. module: stock
+#: field:stock.picking,max_date:0
+msgid "Max. Expected Date"
+msgstr ""
+
+#. module: stock
+#: field:stock.picking,auto_picking:0
+msgid "Auto-Picking"
+msgstr ""
+
+#. module: stock
+#: model:stock.location,name:stock.stock_location_shop1
+msgid "Shop 2"
+msgstr ""
+
+#. module: stock
+#: constraint:res.partner:0
+msgid "Error ! You can not create recursive associated members."
+msgstr ""
+
+#. module: stock
+#: view:report.stock.inventory:0
+#: view:report.stock.move:0
+#: selection:report.stock.move,type:0
+#: view:stock.location:0
+#: selection:stock.location,chained_picking_type:0
+#: selection:stock.picking,type:0
+msgid "Internal"
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.inventory,state:0
+#: selection:report.stock.move,state:0
+#: selection:stock.inventory,state:0
+#: selection:stock.move,state:0
+#: selection:stock.picking,state:0
+msgid "Draft"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.report.xml,name:stock.report_stock_inventory_move
+#: report:stock.inventory.move:0
+msgid "Stock Inventory"
+msgstr ""
+
+#. module: stock
+#: help:report.stock.inventory,state:0
+msgid ""
+"When the stock move is created it is in the 'Draft' state.\n"
+" After that it is set to 'Confirmed' state.\n"
+" If stock is available state is set to 'Avaiable'.\n"
+" When the picking it done the state is 'Done'. \n"
+"The state is 'Waiting' if the move is waiting for another one."
+msgstr ""
+
+#. module: stock
+#: view:board.board:0
+msgid "Outgoing Products Delay"
+msgstr ""
+
+#. module: stock
+#: field:stock.move.split.lines,use_exist:0
+msgid "Existing Lot"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_return_picking.py:204
+#, python-format
+msgid "Please specify at least one non-zero quantity!"
+msgstr ""
+
+#. module: stock
+#: help:product.template,property_stock_procurement:0
+msgid ""
+"For the current product, this stock location will be used, instead of the "
+"default one, as the source location for stock moves generated by procurements"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:1319
+#, python-format
+msgid "is ready to process."
+msgstr ""
+
+#. module: stock
+#: help:stock.picking,origin:0
+msgid "Reference of the document that produced this picking."
+msgstr ""
+
+#. module: stock
+#: field:stock.fill.inventory,set_stock_zero:0
+msgid "Set to zero"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#, python-format
+msgid "None of these picking lists require invoicing."
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.move,month:0
+msgid "November"
+msgstr "November"
+
+#. module: stock
+#: code:addons/stock/product.py:101
+#: code:addons/stock/stock.py:1987
+#, python-format
+msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/product.py:379
+#, python-format
+msgid "Unplanned Qty"
+msgstr ""
+
+#. module: stock
+#: field:stock.location,chained_company_id:0
+msgid "Chained Company"
+msgstr ""
+
+#. module: stock
+#: view:stock.picking:0
+msgid "Check Availability"
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.move,month:0
+msgid "January"
+msgstr "Januar"
+
+#. module: stock
+#: help:product.product,track_incoming:0
+msgid ""
+"Forces to specify a Production Lot for all moves containing this product and "
+"coming from a Supplier Location"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.act_product_stock_move_futur_open
+msgid "Future Stock Moves"
+msgstr ""
+
+#. module: stock
+#: field:stock.move,move_history_ids2:0
+msgid "Move History (parent moves)"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/product.py:361
+#, python-format
+msgid "Future Stock"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
+#, python-format
+msgid "Error"
+msgstr ""
+
+#. module: stock
+#: field:stock.ups.final,xmlfile:0
+msgid "XML File"
+msgstr ""
+
+#. module: stock
+#: view:stock.change.product.qty:0
+msgid "Select Quantity"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,help:stock.action_location_tree
+msgid ""
+"This is the structure of your company's warehouses and locations. You can "
+"click on a location to get the list of the products and their stock level in "
+"this particular location and all its children."
+msgstr ""
+
+#. module: stock
+#: model:res.request.link,name:stock.req_link_tracking
+#: field:stock.change.product.qty,prodlot_id:0
+#: field:stock.inventory.line,prod_lot_id:0
+#: report:stock.inventory.move:0
+#: field:stock.move,prodlot_id:0
+#: field:stock.move.memory.in,prodlot_id:0
+#: field:stock.move.memory.out,prodlot_id:0
+#: field:stock.move.split.lines.exist,prodlot_id:0
+#: view:stock.production.lot:0
+#: field:stock.production.lot,name:0
+msgid "Production Lot"
+msgstr ""
+
+#. module: stock
+#: model:ir.ui.menu,name:stock.menu_traceability
+#: view:stock.move:0
+#: view:stock.picking:0
+#: view:stock.production.lot:0
+#: view:stock.tracking:0
+msgid "Traceability"
+msgstr ""
+
+#. module: stock
+#: view:stock.picking:0
+msgid "To invoice"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.act_window,name:stock.action_location_form
+#: model:ir.ui.menu,name:stock.menu_action_location_form
+#: view:stock.picking:0
+msgid "Locations"
+msgstr ""
+
+#. module: stock
+#: view:stock.picking:0
+msgid "General Information"
+msgstr ""
+
+#. module: stock
+#: field:stock.production.lot,prefix:0
+msgid "Prefix"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_splitinto.py:53
+#, python-format
+msgid ""
+"Total quantity after split exceeds the quantity to split for this product: "
+"\"%s\" (id: %d)"
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+#: field:stock.partial.move,product_moves_in:0
+#: field:stock.partial.move,product_moves_out:0
+#: field:stock.partial.picking,product_moves_in:0
+#: field:stock.partial.picking,product_moves_out:0
+msgid "Moves"
+msgstr ""
+
+#. module: stock
+#: view:report.stock.move:0
+#: field:report.stock.move,location_dest_id:0
+#: field:stock.picking,location_dest_id:0
+msgid "Dest. Location"
+msgstr ""
+
+#. module: stock
+#: help:stock.move,product_packaging:0
+msgid ""
+"It specifies attributes of packaging like type, quantity of packaging,etc."
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:2386
+#, python-format
+msgid "Product '%s' is consumed with '%s' quantity."
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:2595
+#, python-format
+msgid "Inventory '%s' is done."
+msgstr ""
+
+#. module: stock
+#: constraint:stock.move:0
+msgid "You must assign a production lot for this product"
+msgstr ""
+
+#. module: stock
+#: view:stock.move:0
+msgid "Expected"
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.inventory,location_type:0
+#: model:stock.location,name:stock.location_production
+#: selection:stock.location,usage:0
+msgid "Production"
+msgstr "Produktion"
+
+#. module: stock
+#: view:stock.split.into:0
+msgid "Split Move"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#, python-format
+msgid ""
+"There are no products to return (only lines in Done state and not fully "
+"returned yet can be returned)!"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_move_split
+msgid "Split in Production lots"
+msgstr ""
+
+#. module: stock
+#: view:report.stock.inventory:0
+msgid "Real"
+msgstr ""
+
+#. module: stock
+#: report:stock.picking.list:0
+#: view:stock.production.lot.revision:0
+#: field:stock.production.lot.revision,description:0
+msgid "Description"
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.move,month:0
+msgid "May"
+msgstr "Maj"
+
+#. module: stock
+#: code:addons/stock/wizard/stock_partial_move.py:133
+#, python-format
+msgid "Deliver"
+msgstr ""
+
+#. module: stock
+#: help:product.template,property_stock_account_output:0
+msgid ""
+"When doing real-time inventory valuation, counterpart Journal Items for all "
+"outgoing stock moves will be posted in this account. If not set on the "
+"product, the one from the product category is used."
+msgstr ""
+
+#. module: stock
+#: view:stock.tracking:0
+msgid "Upstream traceability"
+msgstr ""
+
+#. module: stock
+#: model:ir.actions.report.xml,name:stock.report_location_overview_all
+#: report:lot.stock.overview_all:0
+msgid "Location Content"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/product.py:385
+#, python-format
+msgid "Produced Qty"
+msgstr ""
+
+#. module: stock
+#: field:product.category,property_stock_account_output_categ:0
+#: field:product.template,property_stock_account_output:0
+#: field:stock.change.standard.price,stock_account_output:0
+msgid "Stock Output Account"
+msgstr ""
+
+#. module: stock
+#: field:stock.location,chained_location_type:0
+msgid "Chained Location Type"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_report_prodlots
+msgid "Stock report by production lots"
+msgstr ""
+
+#. module: stock
+#: view:stock.location:0
+#: selection:stock.location,chained_location_type:0
+#: view:stock.move:0
+msgid "Customer"
+msgstr "Kunde"
+
+#. module: stock
+#: selection:report.stock.move,month:0
+msgid "February"
+msgstr "Februar"
+
+#. module: stock
+#: view:stock.production.lot:0
+msgid "Production Lot Identification"
+msgstr ""
+
+#. module: stock
+#: field:stock.location,scrap_location:0
+#: view:stock.move.scrap:0
+msgid "Scrap Location"
+msgstr ""
+
+#. module: stock
+#: selection:report.stock.move,month:0
+msgid "April"
+msgstr "April"
+
+#. module: stock
+#: view:report.stock.inventory:0
+#: view:stock.move:0
+msgid "Future"
+msgstr ""
+
+#. module: stock
+#: field:stock.invoice.onshipping,invoice_date:0
+msgid "Invoiced date"
+msgstr ""
+
+#. module: stock
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
+#, python-format
+msgid "Warning !"
+msgstr ""
+
+#. module: stock
+#: model:stock.location,name:stock.stock_location_output
+msgid "Output"
+msgstr ""
+
+#. module: stock
+#: selection:stock.move.split.lines,action:0
+msgid "Keep in one lot"
+msgstr ""
+
+#. module: stock
+#: view:product.product:0
+msgid "Cost Price:"
+msgstr ""
+
+#. module: stock
+#: help:stock.move,move_dest_id:0
+msgid "Optional: next stock move when chaining them"
+msgstr ""
+
+#. module: stock
+#: view:report.stock.move:0
+#: field:report.stock.move,year:0
+msgid "Year"
+msgstr "År"
+
+#. module: stock
+#: model:stock.location,name:stock.stock_location_locations
+msgid "Physical Locations"
+msgstr ""
+
+#. module: stock
+#: model:ir.model,name:stock.model_stock_partial_move
+msgid "Partial Move"
+msgstr ""
+
+#. module: stock
+#: help:stock.location,posx:0
+#: help:stock.location,posy:0
+#: help:stock.location,posz:0
+msgid "Optional localization details, for information purpose only"
+msgstr ""
diff --git a/addons/stock/i18n/de.po b/addons/stock/i18n/de.po
index c3c49e2c17b..921d11f41ac 100644
--- a/addons/stock/i18n/de.po
+++ b/addons/stock/i18n/de.po
@@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:56+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:33+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -161,7 +161,7 @@ msgid "UoM"
msgstr "ME"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -193,14 +193,14 @@ msgstr ""
"je Produkt überschrieben werden kann."
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr "Fehlender Teillieferauftrag für die Lieferung #%s"
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "Liefere/Erhalte Produkte"
@@ -259,8 +259,7 @@ msgid "Reference"
msgstr "Referenz"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr "Produkte zu Lieferauftrag"
@@ -285,7 +284,7 @@ msgid "Split lines"
msgstr "Teile Zeilen"
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
@@ -293,10 +292,9 @@ msgstr ""
"Lagerbewegungen gibt."
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Warnung !"
@@ -326,7 +324,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr "Währung in der die Kosten pro Mengeneinheit angegeben wird"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "Keine Rechnungslegung"
@@ -441,7 +439,7 @@ msgid "In Qty"
msgstr "Zugang"
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "Kein Produkt an diesem Lagerort"
@@ -523,7 +521,7 @@ msgid "Move History (child moves)"
msgstr "Buchungshistorie (unterg. Buchungen)"
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -545,7 +543,7 @@ msgid "Destination Location"
msgstr "Ziel"
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr "Lieferscheine ohne Buchungen können nicht verarbeitet werden."
@@ -599,7 +597,7 @@ msgid "Location / Product"
msgstr "Lagerort / Produkt"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr "Annahme"
@@ -735,7 +733,7 @@ msgid "Process Picking"
msgstr "Verarbeite Lieferauftrag"
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr "Zukünftige Wareneingänge"
@@ -820,7 +818,7 @@ msgid "Merge Inventory"
msgstr "Zusammenführung von Inventuren"
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr "Zukünftige G&V"
@@ -1089,7 +1087,7 @@ msgid "Author"
msgstr "Autor"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr "Lieferauftrag"
@@ -1240,7 +1238,7 @@ msgstr ""
"Standardlagerortes für das aktuelle Prodkt verwendet"
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1251,7 +1249,7 @@ msgstr ""
"Produktkategorie identisch sind."
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr "ist im Entwurf..."
@@ -1277,7 +1275,7 @@ msgid "Chaining Type"
msgstr "Lieferkette Typ"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr "Rückvergütung/Rechungslegung zu erledigen"
@@ -1317,7 +1315,7 @@ msgid "Additional Info"
msgstr "Zusätzliche Information"
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr "Vorgang verboten"
@@ -1328,7 +1326,7 @@ msgid "From"
msgstr "Von"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1458,13 +1456,12 @@ msgid "None"
msgstr "Keine Lieferkette"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Auswertung Rückverfolgung"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr "Es wurden keine Rechnungen erzeugt"
@@ -1528,7 +1525,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr "Leer lassen, wenn dieses Feld für alle Unternehmen Güligkeit hat."
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr "Geben Sie bitte eine positive Menge als Ausschuss ein"
@@ -1578,7 +1575,7 @@ msgid "Supplier Location"
msgstr "Lieferantenlagerort"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr "wurde als Ausschuss gemeldet"
@@ -1694,7 +1691,7 @@ msgid "Stock report by tracking lots"
msgstr "Bestand nach Paketnummern"
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Liefermenge"
@@ -1771,7 +1768,7 @@ msgid "Warehouse Dashboard"
msgstr "Pinnwand Lager"
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "Sie können keine Position aus dem Los entfernen!"
@@ -1785,7 +1782,7 @@ msgid "Scrap Products"
msgstr "Ausschuss buchen"
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr "Ein Lieferschein mit Status %s kann nicht entfernt werden."
@@ -1842,13 +1839,13 @@ msgid "Shipping Address :"
msgstr "Lieferadresse :"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Gebe die Anzahl der Retouren an"
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1937,7 +1934,7 @@ msgid "Quantity per lot"
msgstr "Menge per Los"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1947,7 +1944,7 @@ msgstr ""
"\"%s\" (id: %d)"
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Angenommene Menge"
@@ -2100,7 +2097,6 @@ msgstr "Kosten"
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Konto Wareneingang"
@@ -2160,7 +2156,7 @@ msgid "Inventory loss"
msgstr "Bestandsaufnahme"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "Dokument"
@@ -2252,15 +2248,15 @@ msgid "Warehouse board"
msgstr "Pinnwand Lagerwirtschaft"
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr "Zukünftige Menge"
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
-msgstr "Bestandsveränderungskonto"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
+msgstr ""
#. module: stock
#: field:stock.move,note:0
@@ -2283,13 +2279,13 @@ msgid "Shipping Type"
msgstr "Liefertyp"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Sie können lediglich Warenbewegungen im Entwurf (Status) löschen."
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2316,7 +2312,7 @@ msgid "Location where the system will stock the finished products."
msgstr "Lagerort, wo das System die Fertigprodukte lagert."
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2363,7 +2359,7 @@ msgid "Expected date for the picking to be processed"
msgstr "Geplantes Verarbeitungsdatum für die Lieferung"
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr "Anzahl"
@@ -2465,7 +2461,7 @@ msgid "Source"
msgstr "Quelle"
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2506,7 +2502,7 @@ msgstr "Warenrückverfolgung"
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Fehler !"
@@ -2577,7 +2573,7 @@ msgid "Maxtor Suppliers"
msgstr "Maxtor Suppliers"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2694,7 +2690,7 @@ msgstr ""
"definiert: \"%s\" (id: %d)"
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2758,7 +2754,7 @@ msgid "Quantity (UOS)"
msgstr "Menge (VE)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2799,7 +2795,7 @@ msgid "Properties"
msgstr "Eigenschaften"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Fehler, kein Partner!"
@@ -2807,7 +2803,6 @@ msgstr "Fehler, kein Partner!"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Lieferbedingungen"
@@ -2849,7 +2844,7 @@ msgid "Inventory Reference"
msgstr "Inventurauftrag"
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr "Interne Buchung"
@@ -2938,7 +2933,7 @@ msgid "Date done"
msgstr "Datum erledigt"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -3018,14 +3013,14 @@ msgid "Product"
msgstr "Produkt"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr "Rechnungslegung"
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr "Bitte eine richtige Menge angeben!"
@@ -3052,7 +3047,7 @@ msgid "Consume Products"
msgstr "Verbrauche Produkte"
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr "Fehlerhafter Bestand bei Fertigungslos !"
@@ -3206,7 +3201,7 @@ msgid "All at once"
msgstr "Nur Gesamtmengen liefern"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -3216,7 +3211,7 @@ msgstr ""
"modifiziert werden, die bereits durchgeführt wurden."
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr "Zukünftige Produktionen"
@@ -3227,7 +3222,7 @@ msgid "To Invoice"
msgstr "Abzurechnen"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "Ausgabezeile"
@@ -3309,8 +3304,7 @@ msgid "Icon"
msgstr "Icon"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "BenutzerFehler"
@@ -3337,14 +3331,14 @@ msgstr "Kunden ausserhalb Europas"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3352,7 +3346,7 @@ msgid "Error!"
msgstr "Fehler!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3388,7 +3382,7 @@ msgstr ""
"angenommen werden."
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr "Diese Lieferscheine erfordern keine Rechnungserstellung"
@@ -3433,8 +3427,8 @@ msgid "Warning"
msgstr "Warnung"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr "ist erledigt"
@@ -3541,7 +3535,7 @@ msgid "Reporting"
msgstr "Berichtswesen"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr " für diese "
@@ -3597,7 +3591,7 @@ msgid "Chaining Journal"
msgstr "Journal Lieferkette"
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3610,7 +3604,7 @@ msgid "Customers"
msgstr "Kundenlagerort"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr "ist storniert"
@@ -3621,13 +3615,13 @@ msgid "Stock Inventory Lines"
msgstr "Lagerbestandsaufnahme Einzelpositionen"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr "Verarbeite Dokument"
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr "Zukünftige Lieferungen"
@@ -3807,7 +3801,7 @@ msgid "Existing Lot"
msgstr "Bestehendes Los"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr "Bitte definieren Sie mindestens eine Anzahl, die nicht '0' ist!"
@@ -3822,7 +3816,7 @@ msgstr ""
"Lagerorts als Quelle für Bestandsbuchungen durch die Disposition verwendet."
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr "ist bereit für Verarbeitung"
@@ -3838,7 +3832,7 @@ msgid "Set to zero"
msgstr "Setze auf Null"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr "Keiner dieser Lieferscheine erfordert eine Abrechnung."
@@ -3850,7 +3844,7 @@ msgstr "November"
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
@@ -3858,7 +3852,7 @@ msgstr ""
"%d)"
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Ungeplante Menge"
@@ -3898,16 +3892,16 @@ msgid "Move History (parent moves)"
msgstr "Buchungshistorie (übergeordnete Buchungen)"
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr "Zukünftiger Lagerbestand"
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Fehler"
@@ -4047,7 +4041,7 @@ msgid "Split Move"
msgstr "Teillieferung"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -4097,7 +4091,6 @@ msgstr ""
"einem Produkt hinterlegt wurde, wird das Konto der Kategorie verwendet."
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Lieferverfolgung Upstream"
@@ -4109,7 +4102,7 @@ msgid "Location Content"
msgstr "Lagerinhalt"
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Prod. Anzahl"
@@ -4118,7 +4111,6 @@ msgstr "Prod. Anzahl"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Warenversand Konto"
@@ -4172,13 +4164,12 @@ msgid "Invoiced date"
msgstr "Rechnungsdatum"
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "Warnung"
@@ -5052,6 +5043,9 @@ msgstr "Optionale Lagerort Details, nur als Information"
#~ msgid "Product "
#~ msgstr "Produkt "
+#~ msgid "Stock Variation Account"
+#~ msgstr "Bestandsveränderungskonto"
+
#, python-format
#~ msgid "is scheduled"
#~ msgstr "is geplant"
diff --git a/addons/stock/i18n/el.po b/addons/stock/i18n/el.po
index ab0fc99c124..f624962bd57 100644
--- a/addons/stock/i18n/el.po
+++ b/addons/stock/i18n/el.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:56+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:33+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
"X-Poedit-Country: GREECE\n"
"X-Poedit-Language: Greek\n"
"X-Poedit-SourceCharset: utf-8\n"
@@ -156,7 +156,7 @@ msgid "UoM"
msgstr "ΜοΜ"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -185,14 +185,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "Παράδοση/Παραλαβή Προϊόντων"
@@ -248,8 +248,7 @@ msgid "Reference"
msgstr "Παραπομπή"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr "Προϊόντα για Επεξεργασία"
@@ -274,16 +273,15 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Προειδοποίηση!"
@@ -313,7 +311,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr "Νόμισμα στο οποίο το κόστος Μονάδος εκφράζεται"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "όχι Τιμολόγηση"
@@ -430,7 +428,7 @@ msgid "In Qty"
msgstr "Σε Ποσότητα"
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "Κανένα προϊόν σε αυτήν την τοποθεσία"
@@ -507,7 +505,7 @@ msgid "Move History (child moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -527,7 +525,7 @@ msgid "Destination Location"
msgstr "Τοποθεσία Προορισμού"
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr "Δεν μπορείτε να επεξεργαστείτε παραλαβή χωρίς κινήσεις στοκ"
@@ -576,7 +574,7 @@ msgid "Location / Product"
msgstr "Τοποθεσία/ Προϊόν"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr "Αποδοχή"
@@ -707,7 +705,7 @@ msgid "Process Picking"
msgstr "Διαδικασία Παραλαβής"
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr "Μελοντικές Εισαγωγές"
@@ -790,7 +788,7 @@ msgid "Merge Inventory"
msgstr "Συγχώνευση Εμπορευμάτων"
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1018,7 +1016,7 @@ msgid "Author"
msgstr "Δημιουργός"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr "Εντολή Παράδοσης"
@@ -1155,7 +1153,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1163,7 +1161,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr "είναι σε πρόχειτη κατάσταση"
@@ -1186,7 +1184,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1226,7 +1224,7 @@ msgid "Additional Info"
msgstr "Επιπλέον Πληροφορίες"
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr "Απαγορευμένη διαδικασία"
@@ -1237,7 +1235,7 @@ msgid "From"
msgstr "Από"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1365,13 +1363,12 @@ msgid "None"
msgstr "Κανένα"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Ανιχνευσιμότητα προς τα κάτω"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr "Δεν δημιουργήθηκε τιμολόγιο"
@@ -1424,7 +1421,7 @@ msgstr ""
"Αφήστε το πεδίο κενό εάν η τοποθεσία είναι κοινόχρηστη μεταξύ πολλών εταιριών"
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr "Παρακαλώ δώστε μια θετική ποσότητα για να αχρηστευτεί!"
@@ -1464,7 +1461,7 @@ msgid "Supplier Location"
msgstr "Τοποθεσία Προμηθευτή"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr "Έχουν αχρηστευτεί"
@@ -1576,7 +1573,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Παραληφθήσα Ποσ."
@@ -1653,7 +1650,7 @@ msgid "Warehouse Dashboard"
msgstr "Πινακίδα Αποθήκης"
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "Οι γραμμές παρτίδων δε διαγράφονται!"
@@ -1667,7 +1664,7 @@ msgid "Scrap Products"
msgstr "Άχρηστα Προϊόντα"
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1724,13 +1721,13 @@ msgid "Shipping Address :"
msgstr "Ταχυδρομική Διεύθυνση :"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Παραθέστε τις ποσότητες των επιστρεφομένων προϊόντων"
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1810,7 +1807,7 @@ msgid "Quantity per lot"
msgstr "Ποσότητα ανά παρτίδα"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1818,7 +1815,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Παραληφθήσα Ποσ."
@@ -1955,7 +1952,6 @@ msgstr "Κόστος"
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Λογαριασμός Εισερχομένων Αποθεμάτων"
@@ -2013,7 +2009,7 @@ msgid "Inventory loss"
msgstr "Απώλεια αποθέματος"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "Έγγραφο"
@@ -2103,14 +2099,14 @@ msgid "Warehouse board"
msgstr "Πινακίδα Αποθήκης"
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr "Μελοντική Ποσ."
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2134,13 +2130,13 @@ msgid "Shipping Type"
msgstr "Τύπος Αποστολής"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Μπορείτε να διαγράψετε μόνο πρόχειρες κινήσεις."
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2167,7 +2163,7 @@ msgid "Location where the system will stock the finished products."
msgstr "Τοποθεσία όπου το σύστημα θα αποθηκεύσει τα ολοκληρωμένα προϊόντα."
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2205,7 +2201,7 @@ msgid "Expected date for the picking to be processed"
msgstr "Προβλεπόμενη ημερομηνία παραλαβής προς επεξεργασία"
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr "P&L Ποσ."
@@ -2285,7 +2281,7 @@ msgid "Source"
msgstr "Πηγή"
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2325,7 +2321,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Σφάλμα!"
@@ -2391,7 +2387,7 @@ msgid "Maxtor Suppliers"
msgstr "Προμηθευτές Maxtor"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2502,7 +2498,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2560,7 +2556,7 @@ msgid "Quantity (UOS)"
msgstr "Ποσότητα (ΜoΠ)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2599,7 +2595,7 @@ msgid "Properties"
msgstr "Ιδιότητες"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Σφάλμα! Δεν έχει οριστεί Συνεργάτης"
@@ -2607,7 +2603,6 @@ msgstr "Σφάλμα! Δεν έχει οριστεί Συνεργάτης"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Συντομεύσεις"
@@ -2645,7 +2640,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr "Εσωτερική Παραλαβή"
@@ -2731,7 +2726,7 @@ msgid "Date done"
msgstr "Ημερ/νία ολοκλήρωσης"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2809,14 +2804,14 @@ msgid "Product"
msgstr "Προϊόν"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr "Τιμολόγηση"
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2843,7 +2838,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2989,7 +2984,7 @@ msgid "All at once"
msgstr "Όλα αμέσως"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2997,7 +2992,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr ""
@@ -3008,7 +3003,7 @@ msgid "To Invoice"
msgstr "Προς Τιμολόγιση"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "Γραμμές Επιστροφών"
@@ -3083,8 +3078,7 @@ msgid "Icon"
msgstr "Εικονίδιο"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "UserError"
@@ -3111,14 +3105,14 @@ msgstr "Πελάτες εκτός Ευρώπης"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3126,7 +3120,7 @@ msgid "Error!"
msgstr "Σφάλμα!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3158,7 +3152,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3193,8 +3187,8 @@ msgid "Warning"
msgstr "Προειδοποιήση"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3298,7 +3292,7 @@ msgid "Reporting"
msgstr "Αναφορές"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr " για "
@@ -3347,7 +3341,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr "Δεν υπάρχει αρκετό στοκ,δεν μπορούνε να διατηρηθούν τα προϊόντα"
@@ -3358,7 +3352,7 @@ msgid "Customers"
msgstr "Πελάτες"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr "έχει ακυρωθεί"
@@ -3369,13 +3363,13 @@ msgid "Stock Inventory Lines"
msgstr "Γραμμές Αποθέματος Απογραφής"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr "Μελοντικές Παραδόσεις"
@@ -3537,7 +3531,7 @@ msgid "Existing Lot"
msgstr "Υπάρχουσες Παρτίδες"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3550,7 +3544,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr "είναι έτοιμο για επεξεργασία"
@@ -3566,7 +3560,7 @@ msgid "Set to zero"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3578,13 +3572,13 @@ msgstr "Νοέμβριος"
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Ποσ. Εκτός Προγραμματισμού"
@@ -3622,16 +3616,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Σφάλμα"
@@ -3764,7 +3758,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3808,7 +3802,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Ανίχνευσιμότητα προς άνω"
@@ -3820,7 +3813,7 @@ msgid "Location Content"
msgstr "Τοποθεσία Περιεχομένου"
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Ποσ. Παραγωγής"
@@ -3829,7 +3822,6 @@ msgstr "Ποσ. Παραγωγής"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Λογαριασμός Εξερχομένων"
@@ -3883,13 +3875,12 @@ msgid "Invoiced date"
msgstr "Ημερομηνία Τιμολόγησης"
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "Προειδοποίηση!"
diff --git a/addons/stock/i18n/es.po b/addons/stock/i18n/es.po
index 37a72b5d89f..bcb960aa42e 100644
--- a/addons/stock/i18n/es.po
+++ b/addons/stock/i18n/es.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:57+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:34+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#~ msgid "Stock Management"
#~ msgstr "Gestión de inventario"
@@ -164,7 +164,7 @@ msgid "UoM"
msgstr "UdM"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -197,14 +197,14 @@ msgstr ""
"esta categoría, también puede indicarse directamente en cada producto."
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr "Faltan datos del albarán parcial para el movimiento #%s"
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "Enviar/Recibir productos"
@@ -263,8 +263,7 @@ msgid "Reference"
msgstr "Referencia"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr "Productos a procesar"
@@ -289,7 +288,7 @@ msgid "Split lines"
msgstr "Dividir líneas"
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
@@ -297,10 +296,9 @@ msgstr ""
"realizado!"
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "¡Aviso!"
@@ -330,7 +328,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr "Moneda en la que se expresa el coste unidad."
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "No facturación"
@@ -445,7 +443,7 @@ msgid "In Qty"
msgstr "En cantidad"
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "No hay producto en esta ubicación."
@@ -528,7 +526,7 @@ msgid "Move History (child moves)"
msgstr "Historial movimientos (movimientos hijos)"
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -550,7 +548,7 @@ msgid "Destination Location"
msgstr "Ubicación destino"
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr "No puede procesar un albarán sin movimientos de stock"
@@ -604,7 +602,7 @@ msgid "Location / Product"
msgstr "Ubicación / Producto"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr "Recepción"
@@ -744,7 +742,7 @@ msgid "Process Picking"
msgstr "Procesar albarán"
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr "Recepciones futuras"
@@ -830,7 +828,7 @@ msgid "Merge Inventory"
msgstr "Fusionar inventario"
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr "P&L futuras"
@@ -1102,7 +1100,7 @@ msgid "Author"
msgstr "Autor"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr "Albarán de salida"
@@ -1254,7 +1252,7 @@ msgstr ""
"stock generados por las órdenes de producción."
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1264,7 +1262,7 @@ msgstr ""
"y la cuenta variante de la categoría de producto son la misma."
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr "está en estado borrador."
@@ -1290,7 +1288,7 @@ msgid "Chaining Type"
msgstr "Tipo encadenado"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr "Para ser abonado/facturado"
@@ -1330,7 +1328,7 @@ msgid "Additional Info"
msgstr "Información adicional"
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr "Operación prohibida"
@@ -1341,7 +1339,7 @@ msgid "From"
msgstr "Desde"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1471,13 +1469,12 @@ msgid "None"
msgstr "Ninguno"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Trazabilidad hacia abajo"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr "No se han creado facturas"
@@ -1541,7 +1538,7 @@ msgstr ""
"compañías."
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr "¡Introduzca una cantidad positiva a desechar!"
@@ -1587,7 +1584,7 @@ msgid "Supplier Location"
msgstr "Ubicación del proveedor"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr "estaban desechados"
@@ -1702,7 +1699,7 @@ msgid "Stock report by tracking lots"
msgstr "Informe de stock por lotes de seguimiento"
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Ctdad enviada"
@@ -1779,7 +1776,7 @@ msgid "Warehouse Dashboard"
msgstr "Tablero almacén"
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "¡No puede eliminar una línea de lote!"
@@ -1793,7 +1790,7 @@ msgid "Scrap Products"
msgstr "Desechar productos"
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr "¡No puede eliminar el albarán que está en estado %s!"
@@ -1850,13 +1847,13 @@ msgid "Shipping Address :"
msgstr "Dirección de envío:"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Indique las cantidades de los productos devueltos."
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1945,7 +1942,7 @@ msgid "Quantity per lot"
msgstr "Cantidad por lote"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1955,7 +1952,7 @@ msgstr ""
"categoría: \"%s\" (id: %d)"
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Ctdad recibida"
@@ -2121,7 +2118,6 @@ msgstr "Coste"
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Cuenta entrada stock"
@@ -2181,7 +2177,7 @@ msgid "Inventory loss"
msgstr "Pérdidas de inventario"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "Documento"
@@ -2275,15 +2271,15 @@ msgid "Warehouse board"
msgstr "Tablero almacén"
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr "Ctdad futura"
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
-msgstr "Cuenta variación stock"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
+msgstr ""
#. module: stock
#: field:stock.move,note:0
@@ -2306,13 +2302,13 @@ msgid "Shipping Type"
msgstr "Tipo de envío"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Sólo puede eliminar movimientos borrador."
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2339,7 +2335,7 @@ msgid "Location where the system will stock the finished products."
msgstr "Ubicación donde el sistema almacenará los productos finalizados."
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2385,7 +2381,7 @@ msgid "Expected date for the picking to be processed"
msgstr "Fecha prevista para procesar el albarán."
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr "Ctdad P&L"
@@ -2483,7 +2479,7 @@ msgid "Source"
msgstr "Origen"
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2524,7 +2520,7 @@ msgstr "Seguimiento nº serie"
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "¡Error!"
@@ -2594,7 +2590,7 @@ msgid "Maxtor Suppliers"
msgstr "Proveedores Maxtor"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2708,7 +2704,7 @@ msgstr ""
"(id: %d)"
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2771,7 +2767,7 @@ msgid "Quantity (UOS)"
msgstr "Cantidad (UdV)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2812,7 +2808,7 @@ msgid "Properties"
msgstr "Propiedades"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "¡Error, sin empresa!"
@@ -2820,7 +2816,6 @@ msgstr "¡Error, sin empresa!"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Incoterms"
@@ -2863,7 +2858,7 @@ msgid "Inventory Reference"
msgstr "Referencia inventario"
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr "Albarán interno"
@@ -2952,7 +2947,7 @@ msgid "Date done"
msgstr "Fecha realización"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -3031,14 +3026,14 @@ msgid "Product"
msgstr "Producto"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr "Facturación"
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr "¡Indique cantidad correcta!"
@@ -3065,7 +3060,7 @@ msgid "Consume Products"
msgstr "Consumir productos"
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr "¡Stock insuficiente en el lote!"
@@ -3218,7 +3213,7 @@ msgid "All at once"
msgstr "Todo junto"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -3229,7 +3224,7 @@ msgstr ""
"administrador)"
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr "Producciones futuras"
@@ -3240,7 +3235,7 @@ msgid "To Invoice"
msgstr "Para facturar"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "Líneas de devolución"
@@ -3321,8 +3316,7 @@ msgid "Icon"
msgstr "Icono"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "Error de usuario"
@@ -3349,14 +3343,14 @@ msgstr "Clientes no europeos"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3364,7 +3358,7 @@ msgid "Error!"
msgstr "¡Error!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3398,7 +3392,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr "Indica si las mercancías se enviarán todas a la vez o directamente."
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr "Este albarán no requiere facturación."
@@ -3442,8 +3436,8 @@ msgid "Warning"
msgstr "Advertencia"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr "está realizado."
@@ -3549,7 +3543,7 @@ msgid "Reporting"
msgstr "Informe"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr " para el "
@@ -3603,7 +3597,7 @@ msgid "Chaining Journal"
msgstr "Diario encadenamiento"
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr "No suficiente stock, no ha sido posible reservar los productos."
@@ -3614,7 +3608,7 @@ msgid "Customers"
msgstr "Clientes"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr "está cancelado."
@@ -3625,13 +3619,13 @@ msgid "Stock Inventory Lines"
msgstr "Líneas regularización de inventario"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr "Procesar documento"
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr "Entregas futuras"
@@ -3808,7 +3802,7 @@ msgid "Existing Lot"
msgstr "Lote existente"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr "¡Introduzca por lo menos una cantidad que no sea cero!"
@@ -3824,7 +3818,7 @@ msgstr ""
"generados por los abastecimientos."
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr "preparado para procesar."
@@ -3840,7 +3834,7 @@ msgid "Set to zero"
msgstr "Inicializar a cero"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr "Ninguno de estos albaranes requiere facturación."
@@ -3852,14 +3846,14 @@ msgstr "Noviembre"
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
"No se ha definido un diario en la categoría de producto: \"%s\" (id: %d)"
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Ctdad no planificada"
@@ -3899,16 +3893,16 @@ msgid "Move History (parent moves)"
msgstr "Historial movimientos (mov. padres)"
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr "Stock futuro"
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Error"
@@ -4048,7 +4042,7 @@ msgid "Split Move"
msgstr "Dividir movimiento"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -4098,7 +4092,6 @@ msgstr ""
"categoría del producto."
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Trazabilidad hacia arriba"
@@ -4110,7 +4103,7 @@ msgid "Location Content"
msgstr "Contenido ubicación"
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Ctdad producida"
@@ -4119,7 +4112,6 @@ msgstr "Ctdad producida"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Cuenta salida stock"
@@ -4173,13 +4165,12 @@ msgid "Invoiced date"
msgstr "Fecha facturado"
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "¡Aviso!"
@@ -5056,6 +5047,9 @@ msgstr "Detalles de ubicación opcionales, sólo para fines de información."
#~ msgid "is consumed with"
#~ msgstr "es consumido con"
+#~ msgid "Stock Variation Account"
+#~ msgstr "Cuenta variación stock"
+
#, python-format
#~ msgid "Product "
#~ msgstr "Producto "
diff --git a/addons/stock/i18n/es_AR.po b/addons/stock/i18n/es_AR.po
index 6e756178408..4959a1b13f0 100644
--- a/addons/stock/i18n/es_AR.po
+++ b/addons/stock/i18n/es_AR.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:57+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:34+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -151,7 +151,7 @@ msgid "UoM"
msgstr "UdM"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -180,14 +180,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr ""
@@ -243,8 +243,7 @@ msgid "Reference"
msgstr "Referencia"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr ""
@@ -267,16 +266,15 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr ""
@@ -306,7 +304,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr ""
@@ -421,7 +419,7 @@ msgid "In Qty"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "Sin productos en ésta ubicación"
@@ -498,7 +496,7 @@ msgid "Move History (child moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -518,7 +516,7 @@ msgid "Destination Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -567,7 +565,7 @@ msgid "Location / Product"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr ""
@@ -697,7 +695,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr ""
@@ -781,7 +779,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1005,7 +1003,7 @@ msgid "Author"
msgstr "Autor/a"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr ""
@@ -1142,7 +1140,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1150,7 +1148,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1173,7 +1171,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1213,7 +1211,7 @@ msgid "Additional Info"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr ""
@@ -1224,7 +1222,7 @@ msgid "From"
msgstr "Desde"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1352,13 +1350,12 @@ msgid "None"
msgstr "Ninguno"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Trazabilidad descendente"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr ""
@@ -1410,7 +1407,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1450,7 +1447,7 @@ msgid "Supplier Location"
msgstr "Ubicación del proveedor"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1562,7 +1559,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Ctdad enviada"
@@ -1639,7 +1636,7 @@ msgid "Warehouse Dashboard"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "¡No puede eliminar una línea de lote!"
@@ -1653,7 +1650,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1710,13 +1707,13 @@ msgid "Shipping Address :"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Proporcione las cantidades de los productos devueltos."
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1796,7 +1793,7 @@ msgid "Quantity per lot"
msgstr "Cantidad por lote"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1804,7 +1801,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Ctdad recibida"
@@ -1941,7 +1938,6 @@ msgstr ""
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Cuenta entrada stock"
@@ -1999,7 +1995,7 @@ msgid "Inventory loss"
msgstr "Pérdidas de inventario"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr ""
@@ -2089,14 +2085,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2120,13 +2116,13 @@ msgid "Shipping Type"
msgstr "Tipo de envío"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Sólo puede eliminar movimientos en borrador."
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2153,7 +2149,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2191,7 +2187,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr "Ctdad P&L"
@@ -2269,7 +2265,7 @@ msgid "Source"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2309,7 +2305,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "¡Error!"
@@ -2375,7 +2371,7 @@ msgid "Maxtor Suppliers"
msgstr "Proveedores Maxtor"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2486,7 +2482,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2542,7 +2538,7 @@ msgid "Quantity (UOS)"
msgstr "Cantidad (UdV)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2581,7 +2577,7 @@ msgid "Properties"
msgstr "Propiedades"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "¡Error,sin partner!"
@@ -2589,7 +2585,6 @@ msgstr "¡Error,sin partner!"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Incoterms"
@@ -2627,7 +2622,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2713,7 +2708,7 @@ msgid "Date done"
msgstr "Fecha realización"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2792,14 +2787,14 @@ msgid "Product"
msgstr "Producto"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2826,7 +2821,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2972,7 +2967,7 @@ msgid "All at once"
msgstr "Todos a la vez"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2980,7 +2975,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr ""
@@ -2991,7 +2986,7 @@ msgid "To Invoice"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "Líneas de devolución"
@@ -3066,8 +3061,7 @@ msgid "Icon"
msgstr "Icono"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "Error de usuario"
@@ -3094,14 +3088,14 @@ msgstr "Clientes no europeos"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3109,7 +3103,7 @@ msgid "Error!"
msgstr "Error !"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3141,7 +3135,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3176,8 +3170,8 @@ msgid "Warning"
msgstr "Advertencia"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3281,7 +3275,7 @@ msgid "Reporting"
msgstr "Reporte"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3330,7 +3324,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3341,7 +3335,7 @@ msgid "Customers"
msgstr "Clientes"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr ""
@@ -3352,13 +3346,13 @@ msgid "Stock Inventory Lines"
msgstr "Líneas regularización de inventario"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr ""
@@ -3520,7 +3514,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3533,7 +3527,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3549,7 +3543,7 @@ msgid "Set to zero"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3561,13 +3555,13 @@ msgstr ""
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Ctdad no planificada"
@@ -3605,16 +3599,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Error"
@@ -3747,7 +3741,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3791,7 +3785,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Trazabilidad hacia arriba"
@@ -3803,7 +3796,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Ctdad producida"
@@ -3812,7 +3805,6 @@ msgstr "Ctdad producida"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Cuenta salida stock"
@@ -3866,13 +3858,12 @@ msgid "Invoiced date"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr ""
diff --git a/addons/stock/i18n/es_CL.po b/addons/stock/i18n/es_CL.po
index ff898a8d261..7bf55d60760 100644
--- a/addons/stock/i18n/es_CL.po
+++ b/addons/stock/i18n/es_CL.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:16+0000\n"
-"PO-Revision-Date: 2011-01-14 04:42+0000\n"
-"Last-Translator: Borja López Soilán (NeoPolus) \n"
+"PO-Revision-Date: 2011-10-05 16:52+0000\n"
+"Last-Translator: Francisco Reyes Acuña \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:57+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:34+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -37,7 +37,7 @@ msgstr ""
#. module: stock
#: field:stock.location,chained_location_id:0
msgid "Chained Location If Fixed"
-msgstr "Ubicación encadenada si fija"
+msgstr "Encadenar Ubicación si es Fija"
#. module: stock
#: view:stock.inventory:0
@@ -70,20 +70,20 @@ msgstr "Hoy"
#. module: stock
#: field:stock.production.lot.revision,indice:0
msgid "Revision Number"
-msgstr "Número revisión"
+msgstr "Número de revisión"
#. module: stock
#: view:stock.move.memory.in:0
#: view:stock.move.memory.out:0
msgid "Product Moves"
-msgstr "Movimientos productos"
+msgstr "Movimientos de producto"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_stock_move_report
#: model:ir.ui.menu,name:stock.menu_action_stock_move_report
#: view:report.stock.move:0
msgid "Moves Analysis"
-msgstr "Análisis movimientos"
+msgstr "Análisis de movimientos"
#. module: stock
#: help:stock.production.lot,ref:0
@@ -161,7 +161,7 @@ msgid "UoM"
msgstr "UdM"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -194,14 +194,14 @@ msgstr ""
"de esta categoría, también puede indicarse directamente en cada producto."
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr "Faltan datos del albarán parcial para el movimiento #%s"
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "Enviar/Recibir productos"
@@ -260,8 +260,7 @@ msgid "Reference"
msgstr "Referencia"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr "Productos a procesar"
@@ -286,7 +285,7 @@ msgid "Split lines"
msgstr "Dividir líneas"
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
@@ -294,10 +293,9 @@ msgstr ""
"realizado!"
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "¡Aviso!"
@@ -327,7 +325,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr "Moneda en la que se expresa el coste unidad."
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "No facturación"
@@ -442,7 +440,7 @@ msgid "In Qty"
msgstr "En cantidad"
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "No hay producto en esta ubicación."
@@ -525,7 +523,7 @@ msgid "Move History (child moves)"
msgstr "Historial movimientos (movimientos hijos)"
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -547,10 +545,10 @@ msgid "Destination Location"
msgstr "Ubicación destino"
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
-msgstr "No puede procesar un albarán sin movimientos de stock"
+msgstr "No puede procesar una guía de despacho sin movimientos de stock"
#. module: stock
#: model:ir.ui.menu,name:stock.menu_product_packaging_stock_action
@@ -601,7 +599,7 @@ msgid "Location / Product"
msgstr "Ubicación / Producto"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr "Recepción"
@@ -633,6 +631,11 @@ msgid ""
"worker/team that should perform the operation. Examples of stock journals "
"may be: quality control, pick lists, packing, etc."
msgstr ""
+"El sistema de existencias diarias le permite asignar cada operación de "
+"existencias a un diario específico según el tipo de operación a realizar o "
+"el trabajador / equipo que debe realizar la operación. Algunos ejemplos de "
+"diarios de existencias pueden ser: control de calidad, listas de selección, "
+"embalaje, etc."
#. module: stock
#: field:stock.location,complete_name:0
@@ -736,7 +739,7 @@ msgid "Process Picking"
msgstr "Procesar albarán"
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr "Recepciones futuras"
@@ -822,7 +825,7 @@ msgid "Merge Inventory"
msgstr "Fusionar inventario"
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr "P&L futuras"
@@ -849,7 +852,7 @@ msgstr "Contiene"
#. module: stock
#: view:board.board:0
msgid "Incoming Products Delay"
-msgstr "Retraso albaranes entrada"
+msgstr "Retraso de guías de despacho de entrada"
#. module: stock
#: view:stock.location:0
@@ -1094,7 +1097,7 @@ msgid "Author"
msgstr "Autor"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr "Orden de entrega"
@@ -1102,7 +1105,7 @@ msgstr "Orden de entrega"
#. module: stock
#: model:ir.model,name:stock.model_stock_move_memory_in
msgid "stock.move.memory.in"
-msgstr ""
+msgstr "stock.move.memory.in"
#. module: stock
#: selection:stock.location,chained_auto_packing:0
@@ -1165,9 +1168,9 @@ msgid ""
"empty to automatically detect the type based on the source and destination "
"locations)."
msgstr ""
-"Tipo de envío del albarán que va a contener el movimiento encadenado (dejar "
-"vacío para detectar automáticamente el tipo basado en las ubicaciones de "
-"origen y destino)."
+"Tipo de envío de la guía de despacho que va a contener el movimiento "
+"encadenado (dejar vacío para detectar automáticamente el tipo basado en las "
+"ubicaciones de origen y destino)."
#. module: stock
#: view:stock.move.split:0
@@ -1246,7 +1249,7 @@ msgstr ""
"stock generados por las órdenes de producción."
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1256,7 +1259,7 @@ msgstr ""
"y la cuenta variante de la categoría de producto son la misma."
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr "está en estado borrador."
@@ -1282,7 +1285,7 @@ msgid "Chaining Type"
msgstr "Tipo encadenado"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr "Para ser abonado/facturado"
@@ -1322,7 +1325,7 @@ msgid "Additional Info"
msgstr "Información adicional"
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr "Operación prohibida"
@@ -1333,7 +1336,7 @@ msgid "From"
msgstr "Desde"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1374,7 +1377,7 @@ msgstr "Dividir"
#. module: stock
#: view:stock.picking:0
msgid "Search Stock Picking"
-msgstr "Buscar albarán stock"
+msgstr "Buscar guía de despacho de stock"
#. module: stock
#: code:addons/stock/product.py:93
@@ -1463,13 +1466,12 @@ msgid "None"
msgstr "Ninguno"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Trazabilidad hacia abajo"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr "No se han creado facturas"
@@ -1533,7 +1535,7 @@ msgstr ""
"compañías."
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr "¡Introduzca una cantidad positiva a desechar!"
@@ -1564,6 +1566,13 @@ msgid ""
" When the picking is done the state is 'Done'. \n"
"The state is 'Waiting' if the move is waiting for another one."
msgstr ""
+"Cuando un movimiento de almacén es creado queda en estado 'Borrador'.\n"
+" Luego, se establece en estado 'No Disponible' si el ... no ha encontrado "
+"los productos.\n"
+" Cuando los productos se han reservado es puesto en 'Disponible'.\n"
+" Cuando el retiro es realizado el estado es puesto en 'Realizado'. "
+" \n"
+"El estado es puesto 'En Espera' si se está esperando por otro movimiento."
#. module: stock
#: selection:report.stock.inventory,location_type:0
@@ -1573,7 +1582,7 @@ msgid "Supplier Location"
msgstr "Ubicación del proveedor"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr "estaban desechados"
@@ -1688,7 +1697,7 @@ msgid "Stock report by tracking lots"
msgstr "Informe de stock por lotes de seguimiento"
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Ctdad enviada"
@@ -1765,7 +1774,7 @@ msgid "Warehouse Dashboard"
msgstr "Tablero almacén"
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "¡No puede eliminar una línea de lote!"
@@ -1779,7 +1788,7 @@ msgid "Scrap Products"
msgstr "Productos de desecho"
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr "¡No puede eliminar el albarán que está en estado %s!"
@@ -1836,13 +1845,13 @@ msgid "Shipping Address :"
msgstr "Dirección de envío:"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Indique las cantidades de los productos devueltos."
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1931,7 +1940,7 @@ msgid "Quantity per lot"
msgstr "Cantidad por lote"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1941,7 +1950,7 @@ msgstr ""
"categoría: \"%s\" (id: %d)"
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Ctdad recibida"
@@ -2003,6 +2012,27 @@ msgid ""
"day)\n"
" "
msgstr ""
+"El módulo de OpenERP de gestión de inventario puede gestionar múltiples "
+"almacenes, y varias ubicaciones estructuradas.\n"
+"Gracias a la gestión de doble entrada, el control de inventario es potente y "
+"flexible:\n"
+"* Historial de movimientos y planificación,\n"
+"* Diferentes métodos de inventario (FIFO, LIFO, ...)\n"
+"* Valoración de existencias (precio estándar o medio, ...)\n"
+"* Robustez frente a las diferencias de inventario\n"
+"* Normas de reordenación automática (nivel de existencias, JIT, ...)\n"
+"* Código de barras soportado\n"
+"* Detección rápida de errores a través del sistema de entrada doble\n"
+"* Trazabilidad (ascendente/descendente abajo, lotes de producción, número de "
+"serie, ...)\n"
+"* Panel para almacenes que incluye:\n"
+" * Productos a recibir con retraso (fecha <= hoy)\n"
+" * Excepciones de compra\n"
+" * Gráfico: Número de productos Recibidos frente al previsto (gráfico de "
+"barras semanal por día)\n"
+" * Gráfico: Número de productos Entregados frente al previsto (gráfico de "
+"barras semanal por día)\n"
+" "
#. module: stock
#: help:product.template,property_stock_inventory:0
@@ -2086,7 +2116,6 @@ msgstr "Coste"
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Cuenta entrada stock"
@@ -2146,7 +2175,7 @@ msgid "Inventory loss"
msgstr "Pérdidas de inventario"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "Documento"
@@ -2240,15 +2269,15 @@ msgid "Warehouse board"
msgstr "Tablero almacén"
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr "Ctdad futura"
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
-msgstr "Cuenta variación stock"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
+msgstr ""
#. module: stock
#: field:stock.move,note:0
@@ -2271,13 +2300,13 @@ msgid "Shipping Type"
msgstr "Tipo de envío"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Sólo puede eliminar movimientos borrador."
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2304,7 +2333,7 @@ msgid "Location where the system will stock the finished products."
msgstr "Ubicación donde el sistema almacenará los productos finalizados."
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2350,7 +2379,7 @@ msgid "Expected date for the picking to be processed"
msgstr "Fecha prevista para procesar el albarán."
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr "Ctdad P&L"
@@ -2448,7 +2477,7 @@ msgid "Source"
msgstr "Origen"
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2489,7 +2518,7 @@ msgstr "Seguimiento nº serie"
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "¡Error!"
@@ -2559,7 +2588,7 @@ msgid "Maxtor Suppliers"
msgstr "Proveedores Maxtor"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2673,7 +2702,7 @@ msgstr ""
"(id: %d)"
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2736,7 +2765,7 @@ msgid "Quantity (UOS)"
msgstr "Cantidad (UdV)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2777,7 +2806,7 @@ msgid "Properties"
msgstr "Propiedades"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "¡Error, sin empresa!"
@@ -2785,7 +2814,6 @@ msgstr "¡Error, sin empresa!"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Incoterms"
@@ -2828,7 +2856,7 @@ msgid "Inventory Reference"
msgstr "Referencia inventario"
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr "Albarán interno"
@@ -2917,7 +2945,7 @@ msgid "Date done"
msgstr "Fecha realización"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2996,14 +3024,14 @@ msgid "Product"
msgstr "Producto"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr "Facturación"
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr "¡Indique cantidad correcta!"
@@ -3030,7 +3058,7 @@ msgid "Consume Products"
msgstr "Consumir productos"
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr "¡Stock insuficiente en el lote!"
@@ -3183,7 +3211,7 @@ msgid "All at once"
msgstr "Todo junto"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -3194,7 +3222,7 @@ msgstr ""
"administrador)"
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr "Producciones futuras"
@@ -3205,7 +3233,7 @@ msgid "To Invoice"
msgstr "Para facturar"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "Líneas de devolución"
@@ -3234,7 +3262,7 @@ msgstr "Movimientos para este lote de producción"
#. module: stock
#: model:ir.model,name:stock.model_stock_move_memory_out
msgid "stock.move.memory.out"
-msgstr ""
+msgstr "stock.move.memory.out"
#. module: stock
#: code:addons/stock/wizard/stock_fill_inventory.py:115
@@ -3286,8 +3314,7 @@ msgid "Icon"
msgstr "Icono"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "Error de usuario"
@@ -3314,14 +3341,14 @@ msgstr "Clientes no europeos"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3329,7 +3356,7 @@ msgid "Error!"
msgstr "¡Error!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3363,10 +3390,10 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr "Indica si las mercancías se enviarán todas a la vez o directamente."
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
-msgstr "Este albarán no requiere facturación."
+msgstr "Esta guía de despacho no requiere facturación."
#. module: stock
#: selection:report.stock.move,type:0
@@ -3389,6 +3416,16 @@ msgid ""
"* Fixed Location: The chained location is taken from the next field: Chained "
"Location if Fixed."
msgstr ""
+"Determina si esta ubicación está encadenada a otra, por ejemplo cualquier "
+"producto que entre en esta ubicación \n"
+"debe ir a la siguiente ubicación encadenada. La ubicación encadenada se "
+"determina en función del tipo: \n"
+"* Ninguna: No se encadena con ninguna.\n"
+"* Cliente: Se utiliza la ubicación encadenada definida en el campo Ubicación "
+"del Cliente del Formulario del Cliente especificado en la Guía de Despacho "
+"(albaran) de los productos entrantes.\n"
+"* Ubicación fija: Se utiliza la ubicación encadenada del campo: Ubicación "
+"Encadenada si es Fija."
#. module: stock
#: code:addons/stock/wizard/stock_inventory_merge.py:43
@@ -3398,8 +3435,8 @@ msgid "Warning"
msgstr "Advertencia"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr "está realizado."
@@ -3505,7 +3542,7 @@ msgid "Reporting"
msgstr "Informe"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr " para el "
@@ -3559,7 +3596,7 @@ msgid "Chaining Journal"
msgstr "Diario encadenamiento"
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr "No suficiente stock, no ha sido posible reservar los productos."
@@ -3570,7 +3607,7 @@ msgid "Customers"
msgstr "Clientes"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr "está cancelado."
@@ -3581,13 +3618,13 @@ msgid "Stock Inventory Lines"
msgstr "Líneas regularización de inventario"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr "Procesar documento"
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr "Entregas futuras"
@@ -3759,7 +3796,7 @@ msgid "Existing Lot"
msgstr "Lote existente"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr "¡Introduzca por lo menos una cantidad que no sea cero!"
@@ -3775,7 +3812,7 @@ msgstr ""
"generados por los abastecimientos."
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr "preparado para procesar."
@@ -3791,7 +3828,7 @@ msgid "Set to zero"
msgstr "Inicializar a cero"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr "Ninguno de estos albaranes requiere facturación."
@@ -3803,14 +3840,14 @@ msgstr "Noviembre"
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
"No se ha definido un diario en la categoría de producto: \"%s\" (id: %d)"
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Ctdad no planificada"
@@ -3850,16 +3887,16 @@ msgid "Move History (parent moves)"
msgstr "Historial movimientos (mov. padres)"
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr "Stock futuro"
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Error"
@@ -3999,7 +4036,7 @@ msgid "Split Move"
msgstr "Dividir movimiento"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -4049,7 +4086,6 @@ msgstr ""
"cuenta de la categoría del producto."
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Trazabilidad hacia arriba"
@@ -4061,7 +4097,7 @@ msgid "Location Content"
msgstr "Contenido ubicación"
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Ctdad producida"
@@ -4070,7 +4106,6 @@ msgstr "Ctdad producida"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Cuenta salida stock"
@@ -4124,13 +4159,12 @@ msgid "Invoiced date"
msgstr "Fecha facturado"
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "¡Aviso!"
@@ -4189,6 +4223,9 @@ msgstr "Detalles de ubicación opcionales, sólo para fines de información."
#~ msgid "Product "
#~ msgstr "Producto "
+#~ msgid "Stock Variation Account"
+#~ msgstr "Cuenta variación stock"
+
#, python-format
#~ msgid "INV: "
#~ msgstr "INV: "
diff --git a/addons/stock/i18n/es_EC.po b/addons/stock/i18n/es_EC.po
index dbdc05ac1fe..c4ce00c4081 100644
--- a/addons/stock/i18n/es_EC.po
+++ b/addons/stock/i18n/es_EC.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:58+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:35+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -161,7 +161,7 @@ msgid "UoM"
msgstr "UdM"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -194,14 +194,14 @@ msgstr ""
"product."
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr "Faltan datos del albarán parcial para el movimiento #%s"
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "Enviar/Recibir productos"
@@ -260,8 +260,7 @@ msgid "Reference"
msgstr "Referencia"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr "Productos a Procesar"
@@ -286,7 +285,7 @@ msgid "Split lines"
msgstr "Split lines"
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
@@ -294,10 +293,9 @@ msgstr ""
"estado realizado !"
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Warning!"
@@ -327,7 +325,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr "Moneda en la que se expresa el coste unidad."
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "No Facturado"
@@ -443,7 +441,7 @@ msgid "In Qty"
msgstr "En Ctdad."
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "No hay productos en esta ubicación."
@@ -525,7 +523,7 @@ msgid "Move History (child moves)"
msgstr "Historial Movimientos (movimientos hijos)"
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -547,7 +545,7 @@ msgid "Destination Location"
msgstr "Ubicación destino"
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr "No puede procesar albaranes sin movimientos de inventario"
@@ -601,7 +599,7 @@ msgid "Location / Product"
msgstr "Ubicación / Producto"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr "Recepción"
@@ -740,7 +738,7 @@ msgid "Process Picking"
msgstr "Procesar Albarán"
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr "Recepciones Futuras"
@@ -826,7 +824,7 @@ msgid "Merge Inventory"
msgstr "Mezclar/Unir inventario"
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr "Futuro P&L"
@@ -1095,7 +1093,7 @@ msgid "Author"
msgstr "Autor"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr "Orden Entrega"
@@ -1245,7 +1243,7 @@ msgstr ""
"orders"
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1253,7 +1251,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr "esta en estado borrador."
@@ -1276,7 +1274,7 @@ msgid "Chaining Type"
msgstr "Chaining Tipo"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr "Para ser reembolsado/facturado"
@@ -1316,7 +1314,7 @@ msgid "Additional Info"
msgstr "Información Adicional"
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr "Operación Prohibida"
@@ -1327,7 +1325,7 @@ msgid "From"
msgstr "De"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr "Solo puede regresar albaranes confirmados, disponibles o realizados!"
@@ -1455,13 +1453,12 @@ msgid "None"
msgstr "Ninguno"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Trazabilidad hacia abajo"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr "No se han creado facturas"
@@ -1521,7 +1518,7 @@ msgstr ""
"Deje este campo vacio si la ubicación es compartida entre todas las companias"
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr "Coloque una cantidad positiva de desperdicio o scrap!"
@@ -1561,7 +1558,7 @@ msgid "Supplier Location"
msgstr "Ubicación proveedor"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr "fueron desechados"
@@ -1677,7 +1674,7 @@ msgid "Stock report by tracking lots"
msgstr "Reporte de inventario por lotes de seguimiento"
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Ctdad Enviada"
@@ -1754,7 +1751,7 @@ msgid "Warehouse Dashboard"
msgstr "Tablero Inventario"
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "No puede borrar una linea del lote !"
@@ -1768,7 +1765,7 @@ msgid "Scrap Products"
msgstr "Productos Desperdicio/Chatarra"
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr "Usted no puede borrar el movimiento que esta en estado %s !"
@@ -1825,13 +1822,13 @@ msgid "Shipping Address :"
msgstr "Dirección Envio :"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Provee las cantidades de productos regresados."
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1917,7 +1914,7 @@ msgid "Quantity per lot"
msgstr "Cantidad por lote"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1927,7 +1924,7 @@ msgstr ""
"categoría: \"%s\" (id: %d)"
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Ctdad. Recibida"
@@ -2091,7 +2088,6 @@ msgstr "Costo"
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Cuenta entrada stock"
@@ -2150,7 +2146,7 @@ msgid "Inventory loss"
msgstr "Pérdidas de inventario"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "Documento"
@@ -2243,15 +2239,15 @@ msgid "Warehouse board"
msgstr "Tablero Almacen"
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr "Ctdad. Futura"
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
-msgstr "Cuenta de Variación de inventario"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
+msgstr ""
#. module: stock
#: field:stock.move,note:0
@@ -2274,13 +2270,13 @@ msgid "Shipping Type"
msgstr "Tipo de envio"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Se puede solo eliminar movimientos borrador."
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2307,7 +2303,7 @@ msgid "Location where the system will stock the finished products."
msgstr "Ubocación donde el sistema colocará los productos finales."
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2347,7 +2343,7 @@ msgid "Expected date for the picking to be processed"
msgstr "Fecha prevista para que el movimiento sea procesado"
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr "P&L Ctdad"
@@ -2435,7 +2431,7 @@ msgid "Source"
msgstr "Origen"
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2476,7 +2472,7 @@ msgstr "Seguimiento Series"
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Error !"
@@ -2546,7 +2542,7 @@ msgid "Maxtor Suppliers"
msgstr "Proveedores Maxtor"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2660,7 +2656,7 @@ msgstr ""
"(id: %d)"
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2722,7 +2718,7 @@ msgid "Quantity (UOS)"
msgstr "Cantidad (UdV)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2761,7 +2757,7 @@ msgid "Properties"
msgstr "Propiedades"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Error, no partner !"
@@ -2769,7 +2765,6 @@ msgstr "Error, no partner !"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Incoterms"
@@ -2812,7 +2807,7 @@ msgid "Inventory Reference"
msgstr "Referencia de inventario"
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr "Movimiento interno"
@@ -2901,7 +2896,7 @@ msgid "Date done"
msgstr "Fecha realización"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2980,14 +2975,14 @@ msgid "Product"
msgstr "Producto"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr "Facturación"
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr "Sírvase proporcionar una cantidad adecuada !"
@@ -3014,7 +3009,7 @@ msgid "Consume Products"
msgstr "Productos de consumo"
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr "¡Stock insuficiente en el lote!"
@@ -3160,7 +3155,7 @@ msgid "All at once"
msgstr "Todo junto"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -3170,7 +3165,7 @@ msgstr ""
"that have already been processed (except by the Administrator)"
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr "Producciones futuras"
@@ -3181,7 +3176,7 @@ msgid "To Invoice"
msgstr "A facturar"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "Lineas De retorno"
@@ -3256,8 +3251,7 @@ msgid "Icon"
msgstr "Icono"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "UserError"
@@ -3284,14 +3278,14 @@ msgstr "Clientes no europeos"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3299,7 +3293,7 @@ msgid "Error!"
msgstr "Error!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3334,7 +3328,7 @@ msgstr ""
"Especifica que los bienes se entregarán todos a la vez o por envio directo"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr "Esta lista de movimientos no require facturación ."
@@ -3379,8 +3373,8 @@ msgid "Warning"
msgstr "Warning"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr "esta realizado."
@@ -3486,7 +3480,7 @@ msgid "Reporting"
msgstr "Reportes"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr " for the "
@@ -3540,7 +3534,7 @@ msgid "Chaining Journal"
msgstr "Diario Cadena"
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr "No suficiente stock, no ha sido posible reservar los productos."
@@ -3551,7 +3545,7 @@ msgid "Customers"
msgstr "Clientes"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr "esta cancelada."
@@ -3562,13 +3556,13 @@ msgid "Stock Inventory Lines"
msgstr "Líneas regularización de inventario"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr "Procesar documento"
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr "Envios futuros"
@@ -3741,7 +3735,7 @@ msgid "Existing Lot"
msgstr "Lote Existencias"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr "Por favor especifique minimo uno, en la cantidad!"
@@ -3756,7 +3750,7 @@ msgstr ""
"default one, as the source location for stock moves generated by procurements"
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr "esta listo para ser procesado."
@@ -3772,7 +3766,7 @@ msgid "Set to zero"
msgstr "Poner en cero"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr "Ninguno de esta lista de movimientos requiere facturación."
@@ -3784,14 +3778,14 @@ msgstr "Noviembre"
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
"No existe un diario definido en la categoría del producto: \"%s\" (id: %d)"
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Ctdad. No planeda"
@@ -3831,16 +3825,16 @@ msgid "Move History (parent moves)"
msgstr "Historial Movimientos (movimientos padre)"
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr "Stock Futuro"
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Error"
@@ -3976,7 +3970,7 @@ msgid "Split Move"
msgstr "Dividir movimiento"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -4025,7 +4019,6 @@ msgstr ""
"product, the one from the product category is used."
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Trazabilidad hacia abajo"
@@ -4037,7 +4030,7 @@ msgid "Location Content"
msgstr "Contenido Ubicación"
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Ctdad. Producida"
@@ -4046,7 +4039,6 @@ msgstr "Ctdad. Producida"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Cuenta salida stock"
@@ -4100,13 +4092,12 @@ msgid "Invoiced date"
msgstr "Fecha Facturación"
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "Aviso !"
@@ -4915,6 +4906,9 @@ msgstr "Detalles opcionales de la ubicación, solo para información"
#~ msgid "is consumed with"
#~ msgstr "es consumido con"
+#~ msgid "Stock Variation Account"
+#~ msgstr "Cuenta de Variación de inventario"
+
#~ msgid "Packing List:"
#~ msgstr "Lista Albaranes:"
diff --git a/addons/stock/i18n/et.po b/addons/stock/i18n/et.po
index adb4d718ecd..0c9bc2de03e 100644
--- a/addons/stock/i18n/et.po
+++ b/addons/stock/i18n/et.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:16+0000\n"
-"PO-Revision-Date: 2010-10-30 15:49+0000\n"
-"Last-Translator: OpenERP Administrators \n"
+"PO-Revision-Date: 2011-10-11 18:14+0000\n"
+"Last-Translator: Aare Vesi \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:55+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-12 04:39+0000\n"
+"X-Generator: Launchpad (build 14124)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -47,7 +47,7 @@ msgstr ""
#. module: stock
#: field:stock.move.split.lines,action:0
msgid "Action"
-msgstr ""
+msgstr "Tegevus"
#. module: stock
#: view:stock.production.lot:0
@@ -63,7 +63,7 @@ msgstr ""
#. module: stock
#: view:stock.move:0
msgid "Today"
-msgstr ""
+msgstr "Täna"
#. module: stock
#: field:stock.production.lot.revision,indice:0
@@ -138,7 +138,7 @@ msgstr ""
#: view:report.stock.move:0
#: field:report.stock.move,day:0
msgid "Day"
-msgstr ""
+msgstr "Päev"
#. module: stock
#: view:stock.inventory:0
@@ -151,7 +151,7 @@ msgid "UoM"
msgstr "Mõõtühik"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -168,7 +168,7 @@ msgstr "Laopäevik"
#. module: stock
#: view:report.stock.move:0
msgid "Incoming"
-msgstr ""
+msgstr "Sissetulev"
#. module: stock
#: help:product.category,property_stock_account_output_categ:0
@@ -180,14 +180,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr ""
@@ -243,8 +243,7 @@ msgid "Reference"
msgstr "Viide"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr ""
@@ -267,16 +266,15 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr ""
@@ -306,7 +304,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr ""
@@ -492,7 +490,7 @@ msgid "Move History (child moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -512,7 +510,7 @@ msgid "Destination Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -561,7 +559,7 @@ msgid "Location / Product"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr ""
@@ -691,7 +689,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr ""
@@ -774,7 +772,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -998,7 +996,7 @@ msgid "Author"
msgstr "Autor"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr ""
@@ -1135,7 +1133,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1143,7 +1141,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1166,7 +1164,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1206,7 +1204,7 @@ msgid "Additional Info"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr ""
@@ -1217,7 +1215,7 @@ msgid "From"
msgstr "Alates"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1345,13 +1343,12 @@ msgid "None"
msgstr "Puudub"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Allavoolu jälgitavus"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr ""
@@ -1403,7 +1400,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1443,7 +1440,7 @@ msgid "Supplier Location"
msgstr "Tarnija asukoht"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1555,7 +1552,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Tarnitud kogus"
@@ -1632,7 +1629,7 @@ msgid "Warehouse Dashboard"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "Sa ei saa eemaldada partii rida!"
@@ -1646,7 +1643,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1703,13 +1700,13 @@ msgid "Shipping Address :"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Määra tagastatud toodete kogused."
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1788,7 +1785,7 @@ msgid "Quantity per lot"
msgstr "Kogus partii kohta"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1796,7 +1793,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Laekunud kogus"
@@ -1933,7 +1930,6 @@ msgstr ""
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Lao sisendkonto"
@@ -1991,7 +1987,7 @@ msgid "Inventory loss"
msgstr "Inventuuri kadu"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr ""
@@ -2081,14 +2077,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2112,13 +2108,13 @@ msgid "Shipping Type"
msgstr "Saatmise tüüp"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Sa saad kustutada ainult liigutamise mustandeid."
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2145,7 +2141,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2183,7 +2179,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr "Kasumi ja kahjumi kogus"
@@ -2261,7 +2257,7 @@ msgid "Source"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2359,7 +2355,7 @@ msgid "Maxtor Suppliers"
msgstr "Maxtor-i tarnijad"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2470,7 +2466,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2526,7 +2522,7 @@ msgid "Quantity (UOS)"
msgstr "Kogus (TÜ)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2565,7 +2561,7 @@ msgid "Properties"
msgstr "Omadused"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Viga, puudub partner!"
@@ -2573,7 +2569,6 @@ msgstr "Viga, puudub partner!"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Tarneklausel"
@@ -2611,7 +2606,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2697,7 +2692,7 @@ msgid "Date done"
msgstr "Teostamise kuupäev"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2775,14 +2770,14 @@ msgid "Product"
msgstr "Toode"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2809,7 +2804,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2955,7 +2950,7 @@ msgid "All at once"
msgstr "Kõik korraga"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2963,7 +2958,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr ""
@@ -2974,7 +2969,7 @@ msgid "To Invoice"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "Tagastusread"
@@ -3049,8 +3044,7 @@ msgid "Icon"
msgstr "Ikoon"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "Kasutaja Viga"
@@ -3077,14 +3071,14 @@ msgstr "Mitte-Euroopa kliendid"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3092,7 +3086,7 @@ msgid "Error!"
msgstr "Viga!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3124,7 +3118,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3159,8 +3153,8 @@ msgid "Warning"
msgstr "Hoiatus"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3264,7 +3258,7 @@ msgid "Reporting"
msgstr "Aruandlus"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3313,7 +3307,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3324,7 +3318,7 @@ msgid "Customers"
msgstr "Kliendid"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr ""
@@ -3335,13 +3329,13 @@ msgid "Stock Inventory Lines"
msgstr "Lao inventuuri read"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr ""
@@ -3503,7 +3497,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3516,7 +3510,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3532,7 +3526,7 @@ msgid "Set to zero"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3544,13 +3538,13 @@ msgstr ""
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Planeerimata kogus"
@@ -3588,16 +3582,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Viga"
@@ -3730,7 +3724,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3774,7 +3768,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Ülesvoolu jälgitavus"
@@ -3786,7 +3779,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Toodetud kogus"
@@ -3795,7 +3788,6 @@ msgstr "Toodetud kogus"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Lao väljundkonto"
@@ -3849,13 +3841,12 @@ msgid "Invoiced date"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr ""
diff --git a/addons/stock/i18n/fi.po b/addons/stock/i18n/fi.po
index 6c0f6896f77..44e09915c11 100644
--- a/addons/stock/i18n/fi.po
+++ b/addons/stock/i18n/fi.po
@@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:55+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:32+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -159,7 +159,7 @@ msgid "UoM"
msgstr "Mittayksikkö"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -192,14 +192,14 @@ msgstr ""
"suoraan joka tuotteelle."
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr "Puuttuu osittainen keräilytieto siirrolle numero %s"
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "Tuotteiden toimitus/vastaanotto"
@@ -258,8 +258,7 @@ msgid "Reference"
msgstr "Viite"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr "Käsiteltävät tuotteet"
@@ -284,16 +283,15 @@ msgid "Split lines"
msgstr "Jaa rivit"
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr "Et voi peruutta keräilyä koska varastosiirto on valmis tilassa!"
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Varoitus!"
@@ -323,7 +321,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr "Yksikkökustannuksen valuutta"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "Ei laskutusta"
@@ -438,7 +436,7 @@ msgid "In Qty"
msgstr "Saapuva määrä"
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "Tuotetta ei ole tässä paikassa."
@@ -520,7 +518,7 @@ msgid "Move History (child moves)"
msgstr "Siirtohistoria (alatason siirrot)"
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -542,7 +540,7 @@ msgid "Destination Location"
msgstr "Kohteen sijainti"
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr "Keräilyä ei voi käsitellä ilman varastosiirtoa"
@@ -595,7 +593,7 @@ msgid "Location / Product"
msgstr "Sijainti / Tuote"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr "Vastaanotto"
@@ -733,7 +731,7 @@ msgid "Process Picking"
msgstr "Prosessoi keräily."
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr "Tulevat saapumiset"
@@ -818,7 +816,7 @@ msgid "Merge Inventory"
msgstr "Yhdistä varastot"
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr "Tulevat P&L"
@@ -1049,7 +1047,7 @@ msgid "Author"
msgstr "Tekijä"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr "Toimitusmääräys"
@@ -1193,7 +1191,7 @@ msgstr ""
"asemasta luotaessa varastonsiirtoja tuotantotilauksia varten"
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1203,7 +1201,7 @@ msgstr ""
"tuotteelle ja muutos tili tuotekategorialle ovat sama."
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr "on luonnostilassa"
@@ -1228,7 +1226,7 @@ msgid "Chaining Type"
msgstr "Ketjutyyppinen"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr "Tulee hyvittää/laskuttaa"
@@ -1268,7 +1266,7 @@ msgid "Additional Info"
msgstr "Lisätietoa"
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr "Toiminto kielletty"
@@ -1279,7 +1277,7 @@ msgid "From"
msgstr "Mistä"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1409,13 +1407,12 @@ msgid "None"
msgstr "Ei mitään"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Lähtevien seuranta"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr "Laskuja ei luotu"
@@ -1469,7 +1466,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr "Jätä kenttä tyhjäksi, jos paikka on jaettu kaikkien yritysten kesken"
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr "Ole hyvä ja määrittele positiivinen määrä romutettavaksi!"
@@ -1509,7 +1506,7 @@ msgid "Supplier Location"
msgstr "Toimittajien paikat"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr "hävitettiin"
@@ -1624,7 +1621,7 @@ msgid "Stock report by tracking lots"
msgstr "Varastoraportti seurantaerittäin"
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Toimitettu määrä"
@@ -1701,7 +1698,7 @@ msgid "Warehouse Dashboard"
msgstr "Varaston työpöytä"
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "Eräriviä ei voida poistaa!"
@@ -1715,7 +1712,7 @@ msgid "Scrap Products"
msgstr "Romuta tuotteet"
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr "Et voi poistaa keräilyä joka on %s tilassa !"
@@ -1772,13 +1769,13 @@ msgid "Shipping Address :"
msgstr "Toimitusosoite :"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Ilmoita palautettujen tuotteiden määrät."
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1859,7 +1856,7 @@ msgid "Quantity per lot"
msgstr "Määrä per erä"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1869,7 +1866,7 @@ msgstr ""
"kategorialle \"%s\" (id: %d)"
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Vastaanotettu määrä"
@@ -2012,7 +2009,6 @@ msgstr "Kustannus"
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Saapuvan varaston tili"
@@ -2072,7 +2068,7 @@ msgid "Inventory loss"
msgstr "Varastohävikki"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "Dokumentti"
@@ -2164,15 +2160,15 @@ msgid "Warehouse board"
msgstr "Varastohallinnan työpöytä"
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr "Tuleva määrä"
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
-msgstr "Varastomuutoksen tili"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
+msgstr ""
#. module: stock
#: field:stock.move,note:0
@@ -2195,13 +2191,13 @@ msgid "Shipping Type"
msgstr "Lähetyksen tyyppi"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Voit poistaa ainoastaan luonnossiirtoja."
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2228,7 +2224,7 @@ msgid "Location where the system will stock the finished products."
msgstr "Paikka jonne järjestelmä varastoi valmiit tuotteet."
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2268,7 +2264,7 @@ msgid "Expected date for the picking to be processed"
msgstr "Odotettu keräilyn toteutumispäivä"
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr "P&L Määrä"
@@ -2346,7 +2342,7 @@ msgid "Source"
msgstr "Lähde"
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2387,7 +2383,7 @@ msgstr "Seuranta sarjanumero"
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Virhe!"
@@ -2453,7 +2449,7 @@ msgid "Maxtor Suppliers"
msgstr "Maxtor toimittajat"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2567,7 +2563,7 @@ msgstr ""
"Tälle tuotteelle ei ole määritelty varaston tulojen tiliä: \"%s\" (id:%d)"
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr "Ei voi käyttää siirtoa jossa on määränä negatiivinen arvo tai 0 !"
@@ -2625,7 +2621,7 @@ msgid "Quantity (UOS)"
msgstr "Määrä (myyntiyksikköä)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2664,7 +2660,7 @@ msgid "Properties"
msgstr "Ominaisuudet"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Virhe, ei kumppania!"
@@ -2672,7 +2668,6 @@ msgstr "Virhe, ei kumppania!"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "INCOTERMS"
@@ -2713,7 +2708,7 @@ msgid "Inventory Reference"
msgstr "Varaston viite"
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr "Sisäinen keräily"
@@ -2799,7 +2794,7 @@ msgid "Date done"
msgstr "Valmis pvm."
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2877,14 +2872,14 @@ msgid "Product"
msgstr "Tuote"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr "Laskutus"
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr "Ole hyvä ja syötä oikeanalinen määrä!"
@@ -2911,7 +2906,7 @@ msgid "Consume Products"
msgstr "Käytä tuotteet"
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr "Erässä ei tarpeeksi tuotteita !"
@@ -3057,7 +3052,7 @@ msgid "All at once"
msgstr "Kaikki kerralla"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -3067,7 +3062,7 @@ msgstr ""
"jotka on jo käsitelty (paitsi pääkäyttäjä)"
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr "Tulevat tuotannot"
@@ -3078,7 +3073,7 @@ msgid "To Invoice"
msgstr "Laskutettavaa"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "Palautuksen rivit"
@@ -3153,8 +3148,7 @@ msgid "Icon"
msgstr "Icon"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "UserError"
@@ -3181,14 +3175,14 @@ msgstr "Ei-eurooppalaiset asiakkat"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3196,7 +3190,7 @@ msgid "Error!"
msgstr "Virhe!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3229,7 +3223,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr "Määrittelee kerralla toimitettavat tai suoratoimitettavat tuotteet"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr "Tämä keräilylistä ei vaadi laskutusta."
@@ -3264,8 +3258,8 @@ msgid "Warning"
msgstr "Varoitus"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr "on tehty."
@@ -3371,7 +3365,7 @@ msgid "Reporting"
msgstr "Raportointi"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3420,7 +3414,7 @@ msgid "Chaining Journal"
msgstr "Ketjupäiväkirja"
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr "Ei tarpeeksi varstoa, ei voida varata tuotteita"
@@ -3431,7 +3425,7 @@ msgid "Customers"
msgstr "Asiakkaat"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr "on peruutettu."
@@ -3442,13 +3436,13 @@ msgid "Stock Inventory Lines"
msgstr "Varaston inventaarion rivit"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr "Prosessoi dokumentti"
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr "Tulevat toimitukset"
@@ -3610,7 +3604,7 @@ msgid "Existing Lot"
msgstr "Olemassaoleva erä"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr "Ole hyvä ja määrittele ainakin yksi ei-nolla arvoinen määrä!"
@@ -3625,7 +3619,7 @@ msgstr ""
"asemasta luotaessa varastonsiirtoja hankintoja varten"
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr "On valmis prosessoitavaksi"
@@ -3641,7 +3635,7 @@ msgid "Set to zero"
msgstr "Aseta nollaksi"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr "Mikään näistä keräilylistoista ei vaadi laskutusta"
@@ -3653,13 +3647,13 @@ msgstr "Marraskuu"
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr "Tuotekategorialle \"%s\" (id: %d) ei ole määritelty päiväkirjaa."
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Ei suunniteltu määrä"
@@ -3697,16 +3691,16 @@ msgid "Move History (parent moves)"
msgstr "Siirtohistoria (ylätason siirrot)"
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr "Tuleva varasto"
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Virhe"
@@ -3839,7 +3833,7 @@ msgid "Split Move"
msgstr "Jaa siirto"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3885,7 +3879,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Tulevien seuranta"
@@ -3897,7 +3890,7 @@ msgid "Location Content"
msgstr "Paikan sisältö"
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Tuotettu määrä"
@@ -3906,7 +3899,6 @@ msgstr "Tuotettu määrä"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Lähtevän varaston tili"
@@ -3960,13 +3952,12 @@ msgid "Invoiced date"
msgstr "Laskutuspäivä"
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "Varoitus !"
@@ -4824,6 +4815,9 @@ msgstr ""
#~ msgid "Product "
#~ msgstr "Tuote "
+#~ msgid "Stock Variation Account"
+#~ msgstr "Varastomuutoksen tili"
+
#, python-format
#~ msgid "is scheduled"
#~ msgstr "on aikataulutettu"
diff --git a/addons/stock/i18n/fr.po b/addons/stock/i18n/fr.po
index 9624b9ea01c..cb2b6fe0b0f 100644
--- a/addons/stock/i18n/fr.po
+++ b/addons/stock/i18n/fr.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:55+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:32+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:stock.inventory.line,product_uom:0
@@ -178,7 +178,7 @@ msgid "UoM"
msgstr "UdM"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -211,15 +211,15 @@ msgstr ""
"pouvez également l'indiquer directement sur chaque produit."
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
"Données manquantes sur la préparation partielle pour le mouvement #%s"
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "Livrer/recevoir des produits"
@@ -278,8 +278,7 @@ msgid "Reference"
msgstr "Référence"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr "Produits à traiter"
@@ -304,7 +303,7 @@ msgid "Split lines"
msgstr "Eclater les lignes"
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
@@ -312,10 +311,9 @@ msgstr ""
"est à l'état \"Terminé\" !"
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Attention !"
@@ -345,7 +343,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr "Devise dans laquelle est exprimée le coût unitaire"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "Pas de facturation"
@@ -461,7 +459,7 @@ msgid "In Qty"
msgstr "Qté entrante"
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "Aucun produit dans cet emplacement."
@@ -545,7 +543,7 @@ msgid "Move History (child moves)"
msgstr "Historique des mouvements (mouvements enfant)"
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -567,7 +565,7 @@ msgid "Destination Location"
msgstr "Emplacement de destination"
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -622,7 +620,7 @@ msgid "Location / Product"
msgstr "Emplacement / Produit"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr "Réception"
@@ -674,7 +672,7 @@ msgstr "Inventaire comptabilisé"
#: view:stock.move:0
#: view:stock.picking:0
msgid "Move Information"
-msgstr "Information sur le Mouvement"
+msgstr "Information sur le mouvement"
#. module: stock
#: view:report.stock.move:0
@@ -733,7 +731,7 @@ msgstr "Destinataire"
#: model:ir.actions.act_window,name:stock.action_location_tree
#: model:ir.ui.menu,name:stock.menu_action_location_tree
msgid "Location Structure"
-msgstr "Structure de l'emplacement"
+msgstr "Structure des emplacements"
#. module: stock
#: selection:report.stock.move,month:0
@@ -760,7 +758,7 @@ msgid "Process Picking"
msgstr "Traiter le transfert"
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr "Réceptions à venir"
@@ -847,7 +845,7 @@ msgid "Merge Inventory"
msgstr "Fusionner les inventaires"
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr "P&L future"
@@ -1103,10 +1101,11 @@ msgstr ""
"* \"Inventaire\": emplacement virtuel servant de contrepartie aux mouvements "
"servant à corriger les niveaux des stocks lors des inventaires physiques\n"
" \n"
-"* \"Besoin\" : emplacement virtuel servant de contrepartie temporaire pour "
-"les besoins de stock lorsque l'emplacement d'origine (fournisseur ou "
-"production interne) n'est pas connu à l'avance. Cet emplacement est "
-"normalement vide lorsque le planificateur termine son exécution\n"
+"* \"Approvisionnement\" : emplacement virtuel servant de contrepartie "
+"temporaire pour les besoins de stock lorsque l'emplacement d'origine "
+"(fournisseur ou production interne) n'est pas connu à l'avance. Cet "
+"emplacement est normalement vide lorsque le planificateur termine son "
+"exécution\n"
" \n"
"* \"Fabrication\" : emplacement virtuel servant de contrepartie pour les "
"opérations de fabrication : les matières premières y sont consommées et les "
@@ -1119,7 +1118,7 @@ msgid "Author"
msgstr "Auteur"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr "Bon de livraison"
@@ -1265,7 +1264,7 @@ msgstr ""
"mouvements de stock générés par les ordres de fabrication."
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1276,7 +1275,7 @@ msgstr ""
"mêmes."
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr "est à l'état 'Brouillon'."
@@ -1302,7 +1301,7 @@ msgid "Chaining Type"
msgstr "Type de chainage"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr "A rembourser / facturer."
@@ -1342,7 +1341,7 @@ msgid "Additional Info"
msgstr "Informations complémentaires."
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr "Opération interdite"
@@ -1353,7 +1352,7 @@ msgid "From"
msgstr "Depuis"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1483,13 +1482,12 @@ msgid "None"
msgstr "Aucun"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
-msgstr "Traçabilté aval"
+msgstr "Traçabilité aval"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr "Aucunes factures ne sera crées"
@@ -1553,7 +1551,7 @@ msgstr ""
"sociétés."
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr "Veuillez indiquer une quantité positive a mettre en rebus !"
@@ -1599,7 +1597,7 @@ msgid "Supplier Location"
msgstr "Emplacement fournisseur"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr "ont été mis au rebut"
@@ -1715,7 +1713,7 @@ msgid "Stock report by tracking lots"
msgstr "Rapport de stock par numéro de suivi"
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Qté livrée"
@@ -1792,7 +1790,7 @@ msgid "Warehouse Dashboard"
msgstr "Tableau de bord de l'entrepôt"
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "Vous ne pouvez pas retirer une ligne de lot !"
@@ -1806,7 +1804,7 @@ msgid "Scrap Products"
msgstr "Rebuts"
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1864,13 +1862,13 @@ msgid "Shipping Address :"
msgstr "Adresse de livraison"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Indiquez les quantités des produits retournés."
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1959,7 +1957,7 @@ msgid "Quantity per lot"
msgstr "Quantité par Lot"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1969,7 +1967,7 @@ msgstr ""
"catégorie : \"%s\" (id: %d)"
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Qté reçue"
@@ -2135,7 +2133,6 @@ msgstr "Coût"
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Compte du Stock d'Entrée"
@@ -2195,7 +2192,7 @@ msgid "Inventory loss"
msgstr "Pertes d'inventaire"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "Document"
@@ -2288,15 +2285,15 @@ msgid "Warehouse board"
msgstr "Tableau de bord entrepôt"
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr "Qté à venir"
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
-msgstr "COmpte des variation de stock"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
+msgstr ""
#. module: stock
#: field:stock.move,note:0
@@ -2319,13 +2316,13 @@ msgid "Shipping Type"
msgstr "Type de Livraison"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Vous ne pouvez supprimer que les mouvements en brouillon"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2352,7 +2349,7 @@ msgid "Location where the system will stock the finished products."
msgstr "L'emplacement ou le système stockera les produits finis"
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2398,7 +2395,7 @@ msgid "Expected date for the picking to be processed"
msgstr "Date à laquelle l'opération de manutention doit être effectuée"
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr "Qté pertes et profits"
@@ -2499,7 +2496,7 @@ msgid "Source"
msgstr "Origine"
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2541,7 +2538,7 @@ msgstr "Suivre le numéro de série"
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Erreur !"
@@ -2603,7 +2600,7 @@ msgstr "Journal de stock"
#: selection:report.stock.inventory,location_type:0
#: selection:stock.location,usage:0
msgid "Procurement"
-msgstr "Besoin"
+msgstr "Approvisionnement"
#. module: stock
#: model:stock.location,name:stock.stock_location_4
@@ -2611,7 +2608,7 @@ msgid "Maxtor Suppliers"
msgstr "Fournisseur Maxtor"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2725,7 +2722,7 @@ msgstr ""
"(id: %d)"
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2785,7 +2782,7 @@ msgid "Production Lot Number"
msgstr "Numéro de lot de production"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2825,7 +2822,7 @@ msgid "Properties"
msgstr "Propriétés"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Erreur, pas de partenaire !"
@@ -2833,7 +2830,6 @@ msgstr "Erreur, pas de partenaire !"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Incoterms"
@@ -2877,7 +2873,7 @@ msgid "Inventory Reference"
msgstr "Référence de l'inventaire"
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr "Bon de transfert"
@@ -2885,7 +2881,7 @@ msgstr "Bon de transfert"
#. module: stock
#: view:stock.location.product:0
msgid "Open Product"
-msgstr "Ouvrir le produit"
+msgstr "Ouvrir les produits"
#. module: stock
#: field:stock.location.product,to_date:0
@@ -2966,7 +2962,7 @@ msgid "Date done"
msgstr "Date de fin"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -3046,14 +3042,14 @@ msgid "Product"
msgstr "Produit"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr "En facturation"
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr "Veuillez fournir la bonne quantité !"
@@ -3075,7 +3071,7 @@ msgid "Consume Products"
msgstr "Produits consommés"
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr "Stock insuffisant pour ce lot"
@@ -3228,7 +3224,7 @@ msgid "All at once"
msgstr "Tout en une fois"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -3239,7 +3235,7 @@ msgstr ""
"l'administrateur)"
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr "Production future"
@@ -3250,7 +3246,7 @@ msgid "To Invoice"
msgstr "À facturer"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "Lignes de retour"
@@ -3331,8 +3327,7 @@ msgid "Icon"
msgstr "Icône"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "ErreurUtilisateur"
@@ -3359,14 +3354,14 @@ msgstr "Clients non européen"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3374,7 +3369,7 @@ msgid "Error!"
msgstr "Erreur!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3410,7 +3405,7 @@ msgstr ""
"directe"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr "Cette opération de manutention n'a pas à être facturée."
@@ -3455,8 +3450,8 @@ msgid "Warning"
msgstr "Attention"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr "est terminé."
@@ -3563,7 +3558,7 @@ msgid "Reporting"
msgstr "Rapports"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr " pour le "
@@ -3571,7 +3566,7 @@ msgstr " pour le "
#. module: stock
#: view:stock.split.into:0
msgid "Quantity to leave in the current pack"
-msgstr "Quantité à laisser dans le colisage actuel"
+msgstr "Quantité à laisser dans le colis actuel"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_stock_invoice_onshipping
@@ -3617,7 +3612,7 @@ msgid "Chaining Journal"
msgstr "Journal d'enchainement"
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr "Pas encore de stock, impossible de réserver les produits."
@@ -3628,7 +3623,7 @@ msgid "Customers"
msgstr "Clients"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr "est annulé"
@@ -3639,13 +3634,13 @@ msgid "Stock Inventory Lines"
msgstr "Lignes d'inventaire de stock"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr "Document du processus"
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr "Livraison future"
@@ -3712,9 +3707,9 @@ msgid ""
"specific product. You can filter on the product to see all the past or "
"future movements for the product."
msgstr ""
-"Ce menu vous donne la traçabilité entière des opérations d'inventaire sur "
-"une produit spécifique. Vous pouvez filtrer sur un produit pour voir tous "
-"les mouvements passés ou futurs de ce produit"
+"Ce menu vous donne la traçabilité entière des opérations d'inventaire sur un "
+"produit spécifique. Vous pouvez filtrer sur un produit pour voir tous les "
+"mouvements passés ou futurs de ce produit"
#. module: stock
#: view:stock.picking:0
@@ -3823,7 +3818,7 @@ msgid "Existing Lot"
msgstr "Lot existant"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr "Veuiilez spécifier au moins un quantité supérieur à zéro"
@@ -3836,10 +3831,10 @@ msgid ""
msgstr ""
"Pour le produit actuel, cet emplacement sera utilisé à la place de "
"l'emplacement par défaut comme emplacement d'origine des mouvements de stock "
-"générés par les besoins de stock."
+"générés par les approvisionnements."
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr "prêt à être traité."
@@ -3855,7 +3850,7 @@ msgid "Set to zero"
msgstr "Mettre à zéro"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr "Aucune de ces opérations de manutention n'est à facturer."
@@ -3867,7 +3862,7 @@ msgstr "Novembre"
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
@@ -3875,7 +3870,7 @@ msgstr ""
"%d)"
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Qté non prévu"
@@ -3915,16 +3910,16 @@ msgid "Move History (parent moves)"
msgstr "Historique du mouvement (mouvements parent)"
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr "Stock prévisionnel"
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Erreur"
@@ -3972,7 +3967,7 @@ msgstr "Lot de Production"
#: view:stock.production.lot:0
#: view:stock.tracking:0
msgid "Traceability"
-msgstr "Traçabilités"
+msgstr "Traçabilité"
#. module: stock
#: view:stock.picking:0
@@ -4065,7 +4060,7 @@ msgid "Split Move"
msgstr "Eclater le mouvement"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -4114,7 +4109,6 @@ msgstr ""
"produit, celui de la catégorie du produit sera utilisé."
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Traçabilité amont"
@@ -4126,7 +4120,7 @@ msgid "Location Content"
msgstr "Contenu de l'emplacement"
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Qté produite"
@@ -4135,7 +4129,6 @@ msgstr "Qté produite"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Compte de Stock Sortant"
@@ -4189,13 +4182,12 @@ msgid "Invoiced date"
msgstr "Date de facture"
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "Avertissement !"
@@ -5071,6 +5063,9 @@ msgstr ""
#~ msgid "is consumed with"
#~ msgstr "est consommé avec"
+#~ msgid "Stock Variation Account"
+#~ msgstr "COmpte des variation de stock"
+
#, python-format
#~ msgid "INV: "
#~ msgstr "INV: "
diff --git a/addons/stock/i18n/gl.po b/addons/stock/i18n/gl.po
index ec8cfa4ba98..36ab10be75e 100644
--- a/addons/stock/i18n/gl.po
+++ b/addons/stock/i18n/gl.po
@@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:56+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:33+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -152,7 +152,7 @@ msgid "UoM"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -181,14 +181,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr ""
@@ -244,8 +244,7 @@ msgid "Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr ""
@@ -268,16 +267,15 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr ""
@@ -307,7 +305,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr ""
@@ -422,7 +420,7 @@ msgid "In Qty"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr ""
@@ -499,7 +497,7 @@ msgid "Move History (child moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -519,7 +517,7 @@ msgid "Destination Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -568,7 +566,7 @@ msgid "Location / Product"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr ""
@@ -698,7 +696,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr ""
@@ -781,7 +779,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1005,7 +1003,7 @@ msgid "Author"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr ""
@@ -1142,7 +1140,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1150,7 +1148,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1173,7 +1171,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1213,7 +1211,7 @@ msgid "Additional Info"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr ""
@@ -1224,7 +1222,7 @@ msgid "From"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1352,13 +1350,12 @@ msgid "None"
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr ""
@@ -1410,7 +1407,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1450,7 +1447,7 @@ msgid "Supplier Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1562,7 +1559,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr ""
@@ -1639,7 +1636,7 @@ msgid "Warehouse Dashboard"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr ""
@@ -1653,7 +1650,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1710,13 +1707,13 @@ msgid "Shipping Address :"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1793,7 +1790,7 @@ msgid "Quantity per lot"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1801,7 +1798,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr ""
@@ -1938,7 +1935,6 @@ msgstr ""
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr ""
@@ -1996,7 +1992,7 @@ msgid "Inventory loss"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr ""
@@ -2086,14 +2082,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2117,13 +2113,13 @@ msgid "Shipping Type"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2150,7 +2146,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2188,7 +2184,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr ""
@@ -2266,7 +2262,7 @@ msgid "Source"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2306,7 +2302,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr ""
@@ -2372,7 +2368,7 @@ msgid "Maxtor Suppliers"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2483,7 +2479,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2539,7 +2535,7 @@ msgid "Quantity (UOS)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2578,7 +2574,7 @@ msgid "Properties"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr ""
@@ -2586,7 +2582,6 @@ msgstr ""
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr ""
@@ -2624,7 +2619,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2710,7 +2705,7 @@ msgid "Date done"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2788,14 +2783,14 @@ msgid "Product"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2822,7 +2817,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2968,7 +2963,7 @@ msgid "All at once"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2976,7 +2971,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr ""
@@ -2987,7 +2982,7 @@ msgid "To Invoice"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr ""
@@ -3062,8 +3057,7 @@ msgid "Icon"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr ""
@@ -3090,14 +3084,14 @@ msgstr ""
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3105,7 +3099,7 @@ msgid "Error!"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3137,7 +3131,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3172,8 +3166,8 @@ msgid "Warning"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3275,7 +3269,7 @@ msgid "Reporting"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3324,7 +3318,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3335,7 +3329,7 @@ msgid "Customers"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr ""
@@ -3346,13 +3340,13 @@ msgid "Stock Inventory Lines"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr ""
@@ -3514,7 +3508,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3527,7 +3521,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3543,7 +3537,7 @@ msgid "Set to zero"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3555,13 +3549,13 @@ msgstr ""
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr ""
@@ -3599,16 +3593,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr ""
@@ -3741,7 +3735,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3785,7 +3779,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr ""
@@ -3797,7 +3790,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr ""
@@ -3806,7 +3799,6 @@ msgstr ""
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr ""
@@ -3860,13 +3852,12 @@ msgid "Invoiced date"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr ""
diff --git a/addons/stock/i18n/hr.po b/addons/stock/i18n/hr.po
index fe9a7c437d1..5573ceb9c30 100644
--- a/addons/stock/i18n/hr.po
+++ b/addons/stock/i18n/hr.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:57+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:34+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -151,7 +151,7 @@ msgid "UoM"
msgstr "JM"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -180,14 +180,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr ""
@@ -243,8 +243,7 @@ msgid "Reference"
msgstr "Referenca"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr ""
@@ -267,16 +266,15 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr ""
@@ -306,7 +304,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr ""
@@ -421,7 +419,7 @@ msgid "In Qty"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr ""
@@ -498,7 +496,7 @@ msgid "Move History (child moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -518,7 +516,7 @@ msgid "Destination Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -567,7 +565,7 @@ msgid "Location / Product"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr ""
@@ -697,7 +695,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr ""
@@ -781,7 +779,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1005,7 +1003,7 @@ msgid "Author"
msgstr "Autor"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr ""
@@ -1142,7 +1140,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1150,7 +1148,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1173,7 +1171,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1213,7 +1211,7 @@ msgid "Additional Info"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr ""
@@ -1224,7 +1222,7 @@ msgid "From"
msgstr "Od"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1352,13 +1350,12 @@ msgid "None"
msgstr "Nijedan"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr ""
@@ -1410,7 +1407,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1450,7 +1447,7 @@ msgid "Supplier Location"
msgstr "Lokacija dobavljača"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1562,7 +1559,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr ""
@@ -1639,7 +1636,7 @@ msgid "Warehouse Dashboard"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr ""
@@ -1653,7 +1650,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1710,13 +1707,13 @@ msgid "Shipping Address :"
msgstr "Adresa otpreme :"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1795,7 +1792,7 @@ msgid "Quantity per lot"
msgstr "Količina po lotu"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1803,7 +1800,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr ""
@@ -1940,7 +1937,6 @@ msgstr ""
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Konto zalihe ulaza"
@@ -1998,7 +1994,7 @@ msgid "Inventory loss"
msgstr "Gubitak inventure"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr ""
@@ -2088,14 +2084,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2119,13 +2115,13 @@ msgid "Shipping Type"
msgstr "Tip otpreme"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2152,7 +2148,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2190,7 +2186,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr ""
@@ -2268,7 +2264,7 @@ msgid "Source"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2308,7 +2304,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr ""
@@ -2374,7 +2370,7 @@ msgid "Maxtor Suppliers"
msgstr "Dobavljači Maxtor-a"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2485,7 +2481,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2541,7 +2537,7 @@ msgid "Quantity (UOS)"
msgstr "Količina (JS)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2580,7 +2576,7 @@ msgid "Properties"
msgstr "Svojstva"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr ""
@@ -2588,7 +2584,6 @@ msgstr ""
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr ""
@@ -2626,7 +2621,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2712,7 +2707,7 @@ msgid "Date done"
msgstr "Datum završen"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2790,14 +2785,14 @@ msgid "Product"
msgstr "Proizvod"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2824,7 +2819,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2970,7 +2965,7 @@ msgid "All at once"
msgstr "Sve odjednom"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2978,7 +2973,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr ""
@@ -2989,7 +2984,7 @@ msgid "To Invoice"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr ""
@@ -3064,8 +3059,7 @@ msgid "Icon"
msgstr "Ikona"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr ""
@@ -3092,14 +3086,14 @@ msgstr "Klijenti izvan Europe"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3107,7 +3101,7 @@ msgid "Error!"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3139,7 +3133,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3174,8 +3168,8 @@ msgid "Warning"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3279,7 +3273,7 @@ msgid "Reporting"
msgstr "Izvještavanje"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3328,7 +3322,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3339,7 +3333,7 @@ msgid "Customers"
msgstr "Kupci"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr ""
@@ -3350,13 +3344,13 @@ msgid "Stock Inventory Lines"
msgstr "Stavke inventure zalihe"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr ""
@@ -3518,7 +3512,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3531,7 +3525,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3547,7 +3541,7 @@ msgid "Set to zero"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3559,13 +3553,13 @@ msgstr ""
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr ""
@@ -3603,16 +3597,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr ""
@@ -3745,7 +3739,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3789,7 +3783,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr ""
@@ -3801,7 +3794,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr ""
@@ -3810,7 +3803,6 @@ msgstr ""
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Izlazni konto zalihe"
@@ -3864,13 +3856,12 @@ msgid "Invoiced date"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr ""
diff --git a/addons/stock/i18n/hu.po b/addons/stock/i18n/hu.po
index a9b657d1b3f..39af245a3f1 100644
--- a/addons/stock/i18n/hu.po
+++ b/addons/stock/i18n/hu.po
@@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:56+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:33+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -154,7 +154,7 @@ msgid "UoM"
msgstr "ME"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -187,14 +187,14 @@ msgstr ""
"beállítható."
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "Termékek kiadása/átvétele"
@@ -250,8 +250,7 @@ msgid "Reference"
msgstr "Hivatkozás"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr "Feldolgozandó termékek"
@@ -276,16 +275,15 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Vigyázat!"
@@ -315,7 +313,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr "Bekerülési érték pénzneme"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "Nincs számlázás"
@@ -430,7 +428,7 @@ msgid "In Qty"
msgstr "Bejövő menny."
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "Nincs termék ezen a helyen."
@@ -510,7 +508,7 @@ msgid "Move History (child moves)"
msgstr "Mozgáselőzmények (almozgások)"
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -532,7 +530,7 @@ msgid "Destination Location"
msgstr "Célállomás helye"
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -581,7 +579,7 @@ msgid "Location / Product"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr "Átvétel"
@@ -717,7 +715,7 @@ msgid "Process Picking"
msgstr "Kiszedés feldolgozása"
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr "Jövőbeni átvételek"
@@ -800,7 +798,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr "jövő"
@@ -1040,7 +1038,7 @@ msgid "Author"
msgstr "Szerző"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr "Szállítólevél"
@@ -1177,7 +1175,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1188,7 +1186,7 @@ msgstr ""
"számlája ugyanaz."
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr "tervezet állapotban van."
@@ -1211,7 +1209,7 @@ msgid "Chaining Type"
msgstr "Összekapcsolás típusa"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr "Jóváírandó/számlázandó"
@@ -1251,7 +1249,7 @@ msgid "Additional Info"
msgstr "További információ"
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr "Tiltott művelet"
@@ -1262,7 +1260,7 @@ msgid "From"
msgstr "Kezdő dátum"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1392,13 +1390,12 @@ msgid "None"
msgstr "Semmi"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr "Nem készültek számlák"
@@ -1460,7 +1457,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1508,7 +1505,7 @@ msgid "Supplier Location"
msgstr "Beszállító helye"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1620,7 +1617,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Szállított mennyiség"
@@ -1697,7 +1694,7 @@ msgid "Warehouse Dashboard"
msgstr "Raktár vezérlőpult"
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "Nem törölhet tételsort !"
@@ -1711,7 +1708,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr "Nem törölheti azt a kiszedést, amelyik %s állapotban van !"
@@ -1768,13 +1765,13 @@ msgid "Shipping Address :"
msgstr "Szállítási cím :"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Kérem, adja meg a visszáruzott termékek mennyiségét!"
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1860,7 +1857,7 @@ msgid "Quantity per lot"
msgstr "Mennyiség/tétel"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1870,7 +1867,7 @@ msgstr ""
"készletnövekedés főkönyvi számlát"
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Átvett mennyiség"
@@ -2007,7 +2004,6 @@ msgstr "Bekerülési érték"
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Készletnövekedés főkönyvi számla"
@@ -2067,7 +2063,7 @@ msgid "Inventory loss"
msgstr "Leltárhiány"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "Dokumentum"
@@ -2158,15 +2154,15 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr "Jövőbeni mennyiség"
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
-msgstr "Készlet főkönyvi számla"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
+msgstr ""
#. module: stock
#: field:stock.move,note:0
@@ -2189,13 +2185,13 @@ msgid "Shipping Type"
msgstr "Szállítás típusa"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Csak a készletmozgás tervezetek törölhetők."
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2222,7 +2218,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2262,7 +2258,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr ""
@@ -2348,7 +2344,7 @@ msgid "Source"
msgstr "Forrás"
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2389,7 +2385,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Hiba !"
@@ -2460,7 +2456,7 @@ msgid "Maxtor Suppliers"
msgstr "Beszállító partnerek"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2572,7 +2568,7 @@ msgstr ""
"\"%s\" (kód: %d) termékre nem állítottak be készletnövekedés főkönyvi számlát"
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2634,7 +2630,7 @@ msgid "Quantity (UOS)"
msgstr "Mennyiség (EE)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2673,7 +2669,7 @@ msgid "Properties"
msgstr "Tulajdonságok"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Hiba, nincs partner !"
@@ -2681,7 +2677,6 @@ msgstr "Hiba, nincs partner !"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Nemzetközi Kereskedelmi Feltételek"
@@ -2719,7 +2714,7 @@ msgid "Inventory Reference"
msgstr "Készlet hivatkozás"
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr "Belső kiszedés"
@@ -2808,7 +2803,7 @@ msgid "Date done"
msgstr "Befejezés dátuma"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2888,14 +2883,14 @@ msgid "Product"
msgstr "Termék"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr "Számlázás"
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr "Kérem, adja meg a helyes mennyiséget!"
@@ -2922,7 +2917,7 @@ msgid "Consume Products"
msgstr "Fogyasztható termékek"
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -3074,7 +3069,7 @@ msgid "All at once"
msgstr "Egyszerre"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -3082,7 +3077,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr "Jövőbeni gyártások"
@@ -3093,7 +3088,7 @@ msgid "To Invoice"
msgstr "Számlázandó"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "Visszáru sorok"
@@ -3168,8 +3163,7 @@ msgid "Icon"
msgstr "Ikon"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "Felhasználói hiba"
@@ -3196,14 +3190,14 @@ msgstr "Európán kívüli vevők"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3211,7 +3205,7 @@ msgid "Error!"
msgstr "Hiba!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3245,7 +3239,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr "Ezt a kiszedési listát nem kell számlázni."
@@ -3280,8 +3274,8 @@ msgid "Warning"
msgstr "Figyelmeztetés"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr "elkészült."
@@ -3383,7 +3377,7 @@ msgid "Reporting"
msgstr "Jelentés"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3437,7 +3431,7 @@ msgid "Chaining Journal"
msgstr "Összekapcsolási napló"
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr "Nincs elég készlet, nem lehet foglalni a termékeket."
@@ -3448,7 +3442,7 @@ msgid "Customers"
msgstr "Vevők"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr "törölt"
@@ -3459,13 +3453,13 @@ msgid "Stock Inventory Lines"
msgstr "Készletleltár sorok"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr "Jövőbeni szállítások"
@@ -3639,7 +3633,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3652,7 +3646,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3668,7 +3662,7 @@ msgid "Set to zero"
msgstr "Beállítás nullára"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr "Egyik kiszedési listát sem kell számlázni."
@@ -3680,13 +3674,13 @@ msgstr "November"
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr "\"%s\" (kód: %d) termék kategóriára nem állítottak be naplót"
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Nem tervezett mennyiség"
@@ -3724,16 +3718,16 @@ msgid "Move History (parent moves)"
msgstr "Mozgás előzmények (főmozgások)"
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr "Jövőbeni készlet"
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Hiba"
@@ -3866,7 +3860,7 @@ msgid "Split Move"
msgstr "Felosztási mód"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3915,7 +3909,6 @@ msgstr ""
"akkor a termék kategóriánál meghatározott számlát használja a rendszer."
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr ""
@@ -3927,7 +3920,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Termelt mennyiség"
@@ -3936,7 +3929,6 @@ msgstr "Termelt mennyiség"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Készletcsökkenés főkönyvi számla"
@@ -3990,13 +3982,12 @@ msgid "Invoiced date"
msgstr "Számla kelte"
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "Vigyázat!"
@@ -4763,6 +4754,9 @@ msgstr ""
#~ msgid "Product "
#~ msgstr "Termék "
+#~ msgid "Stock Variation Account"
+#~ msgstr "Készlet főkönyvi számla"
+
#, python-format
#~ msgid "is scheduled"
#~ msgstr "beütemezésre került."
diff --git a/addons/stock/i18n/id.po b/addons/stock/i18n/id.po
index 45179a002ac..8cf7e373464 100644
--- a/addons/stock/i18n/id.po
+++ b/addons/stock/i18n/id.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:56+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:33+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -158,7 +158,7 @@ msgid "UoM"
msgstr "Satuan Unit"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -191,14 +191,14 @@ msgstr ""
"pada setiap produk"
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "Pengiriman / Penerimaan Produk"
@@ -257,8 +257,7 @@ msgid "Reference"
msgstr "Referensi"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr ""
@@ -281,7 +280,7 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
@@ -289,10 +288,9 @@ msgstr ""
"selesai!"
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Perhatian!"
@@ -322,7 +320,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "Tidak ada faktur"
@@ -438,7 +436,7 @@ msgid "In Qty"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "Tidak Ada Produk di lokasi ini"
@@ -518,7 +516,7 @@ msgid "Move History (child moves)"
msgstr "Riwayat Pergerakan Barang"
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -540,7 +538,7 @@ msgid "Destination Location"
msgstr "Lokasi Tujuan"
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr "Anda tidak dapat memproses pengambilan barang tanpa stok bergerak"
@@ -594,7 +592,7 @@ msgid "Location / Product"
msgstr "Lokasi / Produk"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr ""
@@ -731,7 +729,7 @@ msgid "Process Picking"
msgstr "Proses Pengambilan"
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr ""
@@ -816,7 +814,7 @@ msgid "Merge Inventory"
msgstr "Penggabungkan Persediaan"
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1044,7 +1042,7 @@ msgid "Author"
msgstr "Penulis"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr ""
@@ -1185,7 +1183,7 @@ msgstr ""
"lokasi sumber untuk pergerakan stok yang dihasilkan oleh order produksi"
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1195,7 +1193,7 @@ msgstr ""
"ini dan account Varian pada kategori produk ini adalah sama"
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1218,7 +1216,7 @@ msgid "Chaining Type"
msgstr "Tipe keterkaitan"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1258,7 +1256,7 @@ msgid "Additional Info"
msgstr "Informasi tambahan"
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr "Proses tidak diperbolehkan"
@@ -1269,7 +1267,7 @@ msgid "From"
msgstr "Dari"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1399,13 +1397,12 @@ msgid "None"
msgstr "Tidak ada"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr "Ditelusuri ke bawah"
@@ -1459,7 +1456,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr "Harap memberikan kuantitas positif untuk memo !"
@@ -1499,7 +1496,7 @@ msgid "Supplier Location"
msgstr "Alamat Pemasok"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr "yang di tolak"
@@ -1613,7 +1610,7 @@ msgid "Stock report by tracking lots"
msgstr "Laporan stok berdasarkan penelusuran lot"
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Kuantitas yang dikirimkan"
@@ -1690,7 +1687,7 @@ msgid "Warehouse Dashboard"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr ""
@@ -1704,7 +1701,7 @@ msgid "Scrap Products"
msgstr "Produk Rusak"
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1761,13 +1758,13 @@ msgid "Shipping Address :"
msgstr "Alamat Pengiriman"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Memberikan jumlah dari produk yang dikembalikan."
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1855,7 +1852,7 @@ msgid "Quantity per lot"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1863,7 +1860,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr ""
@@ -2005,7 +2002,6 @@ msgstr ""
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr ""
@@ -2065,7 +2061,7 @@ msgid "Inventory loss"
msgstr "Penurunan Nilai Persediaan"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "Dokumen"
@@ -2156,14 +2152,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2187,13 +2183,13 @@ msgid "Shipping Type"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2220,7 +2216,7 @@ msgid "Location where the system will stock the finished products."
msgstr "Lokasi dimana sistem akan menyimpan produk jadi"
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2266,7 +2262,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr ""
@@ -2359,7 +2355,7 @@ msgid "Source"
msgstr "Sumber"
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2399,7 +2395,7 @@ msgstr "Pelacakan no seri"
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Ada Kesalahan !!!"
@@ -2469,7 +2465,7 @@ msgid "Maxtor Suppliers"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2583,7 +2579,7 @@ msgstr ""
"d)"
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2645,7 +2641,7 @@ msgid "Quantity (UOS)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2684,7 +2680,7 @@ msgid "Properties"
msgstr "Properti"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "ada kesalahan ! Tidak ada rekanan .."
@@ -2692,7 +2688,6 @@ msgstr "ada kesalahan ! Tidak ada rekanan .."
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr ""
@@ -2730,7 +2725,7 @@ msgid "Inventory Reference"
msgstr "Referensi Persediaan"
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr "Pengambilan Internal"
@@ -2816,7 +2811,7 @@ msgid "Date done"
msgstr "Tanggal Selesai"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2894,14 +2889,14 @@ msgid "Product"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2928,7 +2923,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -3080,7 +3075,7 @@ msgid "All at once"
msgstr "Sekaligus"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -3090,7 +3085,7 @@ msgstr ""
"perpindahan stok yang sudah di proses ( kecuali oleh admin )"
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr "Produksi Akan datang"
@@ -3101,7 +3096,7 @@ msgid "To Invoice"
msgstr "Pada Faktur"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr ""
@@ -3182,8 +3177,7 @@ msgid "Icon"
msgstr "Ikon"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "Kesalahan Pengguna"
@@ -3210,14 +3204,14 @@ msgstr "Konsumen Non Eropa"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3225,7 +3219,7 @@ msgid "Error!"
msgstr "Ada Kesalahan !"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3261,7 +3255,7 @@ msgstr ""
"langsung"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr "Daftar pengambilan ini tidak memerlukan faktur"
@@ -3296,8 +3290,8 @@ msgid "Warning"
msgstr "Peringatan"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr "Selesai"
@@ -3403,7 +3397,7 @@ msgid "Reporting"
msgstr "Pelaporan"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3457,7 +3451,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3468,7 +3462,7 @@ msgid "Customers"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr "Telah Dibatalkan"
@@ -3479,13 +3473,13 @@ msgid "Stock Inventory Lines"
msgstr "Baris Stok Persediaan"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr "Proses Berkas"
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr ""
@@ -3656,7 +3650,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr "Silakan tentukan setidaknya satu non-zero kuantitas!"
@@ -3671,7 +3665,7 @@ msgstr ""
"sebagai lokasi sumber untuk stok bergerak yang dihasilkan oleh pengadaan"
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr "Siap untuk di proses"
@@ -3687,7 +3681,7 @@ msgid "Set to zero"
msgstr "Diset ke nol"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr "Tak satu pun dari daftar pengambilan ini membutuhkan faktur."
@@ -3699,14 +3693,14 @@ msgstr "November"
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
"Tidak ada jurnal didefinisikan dalam kategori produk: \"% s\" (id:% d)"
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Qty Tidak direncanakan"
@@ -3744,16 +3738,16 @@ msgid "Move History (parent moves)"
msgstr "Riwayat Perpindahan"
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr ""
@@ -3891,7 +3885,7 @@ msgid "Split Move"
msgstr "Perpindahaan barang di pecah"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3937,7 +3931,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Penelusuran ke arah Hulu"
@@ -3949,7 +3942,7 @@ msgid "Location Content"
msgstr "Lokasi konten"
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Produksi Qty"
@@ -3958,7 +3951,6 @@ msgstr "Produksi Qty"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Akun Stok Kluar"
@@ -4012,13 +4004,12 @@ msgid "Invoiced date"
msgstr "Tanggal Faktur"
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "Peringatan !"
diff --git a/addons/stock/i18n/it.po b/addons/stock/i18n/it.po
index 1e15bfbd123..dea8ff3199a 100644
--- a/addons/stock/i18n/it.po
+++ b/addons/stock/i18n/it.po
@@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:56+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:33+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -160,7 +160,7 @@ msgid "UoM"
msgstr "Unità di Misura"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -189,14 +189,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "Consegna/Ricezione prodotti"
@@ -252,8 +252,7 @@ msgid "Reference"
msgstr "Riferimento"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr "Prodotti da elaborare"
@@ -276,7 +275,7 @@ msgid "Split lines"
msgstr "Dividi righe"
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
@@ -284,10 +283,9 @@ msgstr ""
"\"completato\"!"
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Attenzione!"
@@ -317,7 +315,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr "Valuta in cui il costo unitario è espresso"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "Nessuna fatturazione"
@@ -434,7 +432,7 @@ msgid "In Qty"
msgstr "In Q.tà"
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "Nessun prodotto in questa ubicazione"
@@ -513,7 +511,7 @@ msgid "Move History (child moves)"
msgstr "Storico movimento (movimenti figli)"
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -533,7 +531,7 @@ msgid "Destination Location"
msgstr "Ubicazione destinazione"
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr "Non è possibile elborare picking senza movimenti di magazzino"
@@ -587,7 +585,7 @@ msgid "Location / Product"
msgstr "Ubicazione / Prodotto"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr "Ricevimento"
@@ -720,7 +718,7 @@ msgid "Process Picking"
msgstr "Elabora picking"
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr "Ricevimenti futuri"
@@ -807,7 +805,7 @@ msgid "Merge Inventory"
msgstr "Unisci inventario"
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1048,7 +1046,7 @@ msgid "Author"
msgstr "Autore"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr "Ordine di consegna"
@@ -1185,7 +1183,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1193,7 +1191,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr "è in stato bozza"
@@ -1219,7 +1217,7 @@ msgid "Chaining Type"
msgstr "Tipo concatenato"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr "Da rendere / fatturare"
@@ -1259,7 +1257,7 @@ msgid "Additional Info"
msgstr "Informazioni aggiuntive"
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr "Operazione proibita"
@@ -1270,7 +1268,7 @@ msgid "From"
msgstr "Da"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1398,13 +1396,12 @@ msgid "None"
msgstr "Nessuno"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Tracciabilità a valle"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr "Nessuna fattura è stata creata"
@@ -1469,7 +1466,7 @@ msgstr ""
"Lasciare questo campo vuoto se l'ubicazione è condivisa tra tutte le aziende"
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1509,7 +1506,7 @@ msgid "Supplier Location"
msgstr "Punto di Stoccaggio Fornitore"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1623,7 +1620,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Q.ta Consegnate"
@@ -1700,7 +1697,7 @@ msgid "Warehouse Dashboard"
msgstr "Dashboard deposito"
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "Non è possibile rimuovere una riga del lotto!"
@@ -1714,7 +1711,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr "Non è possibile rimuovere il picking che è in stato: %s!"
@@ -1771,13 +1768,13 @@ msgid "Shipping Address :"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Fornisce le quantità dei prodotti ritornati."
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1857,7 +1854,7 @@ msgid "Quantity per lot"
msgstr "Quantità per Lotto"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1865,7 +1862,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Q.tà ricevuta"
@@ -2023,7 +2020,6 @@ msgstr "Costo"
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Contabilità Stock in Ingresso"
@@ -2081,7 +2077,7 @@ msgid "Inventory loss"
msgstr "Perdita di Inventario"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "Documento"
@@ -2171,14 +2167,14 @@ msgid "Warehouse board"
msgstr "Board magazzino"
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2202,13 +2198,13 @@ msgid "Shipping Type"
msgstr "Tipo Spedizione"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Puoi cancellare solo i movimenti in bozza"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2235,7 +2231,7 @@ msgid "Location where the system will stock the finished products."
msgstr "Ubicazione dove il sistema stoccherà i prodotti finiti"
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2273,7 +2269,7 @@ msgid "Expected date for the picking to be processed"
msgstr "Data attesa per l'elaborazione del picking"
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr ""
@@ -2351,7 +2347,7 @@ msgid "Source"
msgstr "Sorgente"
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2392,7 +2388,7 @@ msgstr "Tracciamento seriale"
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Errore!"
@@ -2458,7 +2454,7 @@ msgid "Maxtor Suppliers"
msgstr "Maxtor Suppliers"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2573,7 +2569,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2631,7 +2627,7 @@ msgid "Quantity (UOS)"
msgstr "Quantità (UoS)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2670,7 +2666,7 @@ msgid "Properties"
msgstr "Proprietà"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Errore, nessun partner !"
@@ -2678,7 +2674,6 @@ msgstr "Errore, nessun partner !"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Condizioni di consegna"
@@ -2716,7 +2711,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr "Picking interno"
@@ -2802,7 +2797,7 @@ msgid "Date done"
msgstr "Data Chiusura"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2881,14 +2876,14 @@ msgid "Product"
msgstr "Prodotto"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr "Fatturazione"
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2915,7 +2910,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -3061,7 +3056,7 @@ msgid "All at once"
msgstr "Tutto in una volta"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -3069,7 +3064,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr "Produzioni future"
@@ -3080,7 +3075,7 @@ msgid "To Invoice"
msgstr "Da fatturare"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr ""
@@ -3155,8 +3150,7 @@ msgid "Icon"
msgstr "Icona"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "Errore Utente"
@@ -3183,14 +3177,14 @@ msgstr "Clienti non europei"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3198,7 +3192,7 @@ msgid "Error!"
msgstr "Errore!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3232,7 +3226,7 @@ msgstr ""
"consegna diretta"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr "Questa picking non richiede fatturazione."
@@ -3267,8 +3261,8 @@ msgid "Warning"
msgstr "Attenzione"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3372,7 +3366,7 @@ msgid "Reporting"
msgstr "Reportistica"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3421,7 +3415,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3432,7 +3426,7 @@ msgid "Customers"
msgstr "Clienti"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr "è annullato."
@@ -3443,13 +3437,13 @@ msgid "Stock Inventory Lines"
msgstr "Righe inventario di magazzino"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr "Consegne future"
@@ -3611,7 +3605,7 @@ msgid "Existing Lot"
msgstr "Lotto esistente"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr "Prego specificare almeno una quantità diversa da zero!"
@@ -3624,7 +3618,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr "è pronto per essere elaborato."
@@ -3640,7 +3634,7 @@ msgid "Set to zero"
msgstr "Imposta a zero"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr "Nessuna di queste picking list richiede fatturazione."
@@ -3652,7 +3646,7 @@ msgstr "Novembre"
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
@@ -3660,7 +3654,7 @@ msgstr ""
"%d)"
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Qtà non pianificata"
@@ -3698,16 +3692,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Errore"
@@ -3840,7 +3834,7 @@ msgid "Split Move"
msgstr "Dividi movimento"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3884,7 +3878,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Tracciabilita a monte"
@@ -3896,7 +3889,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Qtà prodotta"
@@ -3905,7 +3898,6 @@ msgstr "Qtà prodotta"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Contabilità Stock in Uscita"
@@ -3959,13 +3951,12 @@ msgid "Invoiced date"
msgstr "Data fatturazione"
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "Attenzione!"
diff --git a/addons/stock/i18n/ko.po b/addons/stock/i18n/ko.po
index 761d4f05822..b77985ecaf2 100644
--- a/addons/stock/i18n/ko.po
+++ b/addons/stock/i18n/ko.po
@@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:56+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:33+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -152,7 +152,7 @@ msgid "UoM"
msgstr "UoM"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -181,14 +181,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr ""
@@ -244,8 +244,7 @@ msgid "Reference"
msgstr "참조"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr ""
@@ -268,16 +267,15 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr ""
@@ -307,7 +305,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr ""
@@ -422,7 +420,7 @@ msgid "In Qty"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "이 위치에는 상품이 없습니다."
@@ -499,7 +497,7 @@ msgid "Move History (child moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -519,7 +517,7 @@ msgid "Destination Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -568,7 +566,7 @@ msgid "Location / Product"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr ""
@@ -698,7 +696,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr ""
@@ -781,7 +779,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1005,7 +1003,7 @@ msgid "Author"
msgstr "저자"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr ""
@@ -1142,7 +1140,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1150,7 +1148,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1173,7 +1171,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1213,7 +1211,7 @@ msgid "Additional Info"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr ""
@@ -1224,7 +1222,7 @@ msgid "From"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1352,13 +1350,12 @@ msgid "None"
msgstr "없음"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "다운스트림 추적가능성"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr ""
@@ -1410,7 +1407,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1450,7 +1447,7 @@ msgid "Supplier Location"
msgstr "공급자 위치"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1562,7 +1559,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "배송된 수량"
@@ -1639,7 +1636,7 @@ msgid "Warehouse Dashboard"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "로트 라인을 제거할 수 없습니다 !"
@@ -1653,7 +1650,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1710,13 +1707,13 @@ msgid "Shipping Address :"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "반송 상품의 수량을 제공"
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1793,7 +1790,7 @@ msgid "Quantity per lot"
msgstr "로트별 수량"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1801,7 +1798,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "수령한 수량"
@@ -1938,7 +1935,6 @@ msgstr ""
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "입고품 금액"
@@ -1996,7 +1992,7 @@ msgid "Inventory loss"
msgstr "재고 손실"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr ""
@@ -2086,14 +2082,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2117,13 +2113,13 @@ msgid "Shipping Type"
msgstr "선적 타입"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "이동 초안만 삭제할 수 있습니다."
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2150,7 +2146,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2188,7 +2184,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr "P&L 수량"
@@ -2266,7 +2262,7 @@ msgid "Source"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2306,7 +2302,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "에러 !"
@@ -2372,7 +2368,7 @@ msgid "Maxtor Suppliers"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2483,7 +2479,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2539,7 +2535,7 @@ msgid "Quantity (UOS)"
msgstr "수량 (UOS)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2578,7 +2574,7 @@ msgid "Properties"
msgstr "속성"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "에러, 파트너가 없습니다 !"
@@ -2586,7 +2582,6 @@ msgstr "에러, 파트너가 없습니다 !"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "인코텀"
@@ -2624,7 +2619,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2710,7 +2705,7 @@ msgid "Date done"
msgstr "완료 날짜"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2788,14 +2783,14 @@ msgid "Product"
msgstr "상품"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2822,7 +2817,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2968,7 +2963,7 @@ msgid "All at once"
msgstr "일괄"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2976,7 +2971,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr ""
@@ -2987,7 +2982,7 @@ msgid "To Invoice"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "반품 라인들"
@@ -3062,8 +3057,7 @@ msgid "Icon"
msgstr "아이콘"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr ""
@@ -3090,14 +3084,14 @@ msgstr "유럽외 고객들"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3105,7 +3099,7 @@ msgid "Error!"
msgstr "에러 !"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3137,7 +3131,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3172,8 +3166,8 @@ msgid "Warning"
msgstr "경고"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3275,7 +3269,7 @@ msgid "Reporting"
msgstr "보고서"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3324,7 +3318,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3335,7 +3329,7 @@ msgid "Customers"
msgstr "고객"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr ""
@@ -3346,13 +3340,13 @@ msgid "Stock Inventory Lines"
msgstr "재고 라인"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr ""
@@ -3514,7 +3508,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3527,7 +3521,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3543,7 +3537,7 @@ msgid "Set to zero"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3555,13 +3549,13 @@ msgstr ""
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "미계획 수량"
@@ -3599,16 +3593,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "에러"
@@ -3741,7 +3735,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3785,7 +3779,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "업스트림 추적가능성"
@@ -3797,7 +3790,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "생산된 수량"
@@ -3806,7 +3799,6 @@ msgstr "생산된 수량"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "출고 계정"
@@ -3860,13 +3852,12 @@ msgid "Invoiced date"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr ""
diff --git a/addons/stock/i18n/lt.po b/addons/stock/i18n/lt.po
index d88bfe3f6b5..df31fa437be 100644
--- a/addons/stock/i18n/lt.po
+++ b/addons/stock/i18n/lt.po
@@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:56+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:33+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
"Language: lt\n"
#. module: stock
@@ -153,7 +153,7 @@ msgid "UoM"
msgstr "Mat. vnt."
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -182,14 +182,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr ""
@@ -245,8 +245,7 @@ msgid "Reference"
msgstr "Nuoroda"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr ""
@@ -269,16 +268,15 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr ""
@@ -308,7 +306,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr ""
@@ -423,7 +421,7 @@ msgid "In Qty"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr ""
@@ -500,7 +498,7 @@ msgid "Move History (child moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -520,7 +518,7 @@ msgid "Destination Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -569,7 +567,7 @@ msgid "Location / Product"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr ""
@@ -699,7 +697,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr ""
@@ -783,7 +781,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1007,7 +1005,7 @@ msgid "Author"
msgstr "Autorius"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr ""
@@ -1144,7 +1142,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1152,7 +1150,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1175,7 +1173,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1215,7 +1213,7 @@ msgid "Additional Info"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr ""
@@ -1226,7 +1224,7 @@ msgid "From"
msgstr "Nuo"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1354,13 +1352,12 @@ msgid "None"
msgstr "Nieko"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Atsekti žemyn"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr ""
@@ -1412,7 +1409,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1452,7 +1449,7 @@ msgid "Supplier Location"
msgstr "Tiekėjo vieta"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1564,7 +1561,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Pristatyti kiekiai"
@@ -1641,7 +1638,7 @@ msgid "Warehouse Dashboard"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "Jūs negalite ištrinti partijos eilutės!"
@@ -1655,7 +1652,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1712,13 +1709,13 @@ msgid "Shipping Address :"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Nurodo kiekius grąžintų produktų."
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1796,7 +1793,7 @@ msgid "Quantity per lot"
msgstr "Kiekis Partijoje"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1804,7 +1801,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Gauti kiekiai"
@@ -1941,7 +1938,6 @@ msgstr ""
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Atsargų padidėjimo sąskaita"
@@ -1999,7 +1995,7 @@ msgid "Inventory loss"
msgstr "Atsargų nurašymas"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr ""
@@ -2089,14 +2085,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2120,13 +2116,13 @@ msgid "Shipping Type"
msgstr "Pristatymo tipas"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Jūs galite ištrinti tik juodraščio būsenos įrašus"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2153,7 +2149,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2191,7 +2187,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr "Kiekis"
@@ -2269,7 +2265,7 @@ msgid "Source"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2309,7 +2305,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Klaida!"
@@ -2375,7 +2371,7 @@ msgid "Maxtor Suppliers"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2486,7 +2482,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2542,7 +2538,7 @@ msgid "Quantity (UOS)"
msgstr "Kiekis (Pirkimo mat. vnt.)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2581,7 +2577,7 @@ msgid "Properties"
msgstr "Savybės"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Klaida, nėra nurodytas partneris!"
@@ -2589,7 +2585,6 @@ msgstr "Klaida, nėra nurodytas partneris!"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Incoterm sąlygos"
@@ -2627,7 +2622,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2713,7 +2708,7 @@ msgid "Date done"
msgstr "Atlikimo data"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2793,14 +2788,14 @@ msgid "Product"
msgstr "Produktas"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2827,7 +2822,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2973,7 +2968,7 @@ msgid "All at once"
msgstr "Viską vienu metu"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2981,7 +2976,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr ""
@@ -2992,7 +2987,7 @@ msgid "To Invoice"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "Grąžinimo eilutės"
@@ -3067,8 +3062,7 @@ msgid "Icon"
msgstr "Piktograma"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "Naudotojo klaida"
@@ -3095,14 +3089,14 @@ msgstr ""
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3110,7 +3104,7 @@ msgid "Error!"
msgstr "Klaida!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3142,7 +3136,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3177,8 +3171,8 @@ msgid "Warning"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3282,7 +3276,7 @@ msgid "Reporting"
msgstr "Ataskaitos"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3331,7 +3325,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3342,7 +3336,7 @@ msgid "Customers"
msgstr "Klientai"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr ""
@@ -3353,13 +3347,13 @@ msgid "Stock Inventory Lines"
msgstr "Atsargų eilutės"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr ""
@@ -3521,7 +3515,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3534,7 +3528,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3550,7 +3544,7 @@ msgid "Set to zero"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3562,13 +3556,13 @@ msgstr ""
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Nesuplanuoti kiekiai"
@@ -3606,16 +3600,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Klaida"
@@ -3748,7 +3742,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3792,7 +3786,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Atsekti aukštyn"
@@ -3804,7 +3797,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Pagaminti kiekiai"
@@ -3813,7 +3806,6 @@ msgstr "Pagaminti kiekiai"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Atsargų sumažėjimo sąskaita"
@@ -3867,13 +3859,12 @@ msgid "Invoiced date"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr ""
diff --git a/addons/stock/i18n/lv.po b/addons/stock/i18n/lv.po
index 83433b2cfee..611102fd351 100644
--- a/addons/stock/i18n/lv.po
+++ b/addons/stock/i18n/lv.po
@@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:56+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:33+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -152,7 +152,7 @@ msgid "UoM"
msgstr "mērv."
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -181,14 +181,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr ""
@@ -244,8 +244,7 @@ msgid "Reference"
msgstr "Atsauce"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr ""
@@ -268,16 +267,15 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Uzmanību!"
@@ -307,7 +305,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr ""
@@ -422,7 +420,7 @@ msgid "In Qty"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr ""
@@ -499,7 +497,7 @@ msgid "Move History (child moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -519,7 +517,7 @@ msgid "Destination Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -568,7 +566,7 @@ msgid "Location / Product"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr ""
@@ -698,7 +696,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr ""
@@ -781,7 +779,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1005,7 +1003,7 @@ msgid "Author"
msgstr "Autors"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr "Piegādes Pasūtījums"
@@ -1142,7 +1140,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1150,7 +1148,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1173,7 +1171,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1213,7 +1211,7 @@ msgid "Additional Info"
msgstr "Papildus info"
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr "Operācija aizliegta"
@@ -1224,7 +1222,7 @@ msgid "From"
msgstr "No"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1352,13 +1350,12 @@ msgid "None"
msgstr "Nav"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr ""
@@ -1410,7 +1407,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1450,7 +1447,7 @@ msgid "Supplier Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1562,7 +1559,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr ""
@@ -1639,7 +1636,7 @@ msgid "Warehouse Dashboard"
msgstr "Noliktavas instrumentu panelis"
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr ""
@@ -1653,7 +1650,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1710,13 +1707,13 @@ msgid "Shipping Address :"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1793,7 +1790,7 @@ msgid "Quantity per lot"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1801,7 +1798,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr ""
@@ -1938,7 +1935,6 @@ msgstr "Izmaksas"
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr ""
@@ -1996,7 +1992,7 @@ msgid "Inventory loss"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "Dokuments"
@@ -2086,14 +2082,14 @@ msgid "Warehouse board"
msgstr "Noliktavas instrumentu panelis"
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2117,13 +2113,13 @@ msgid "Shipping Type"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2150,7 +2146,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2188,7 +2184,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr ""
@@ -2266,7 +2262,7 @@ msgid "Source"
msgstr "Avots"
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2306,7 +2302,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Kļūda!"
@@ -2372,7 +2368,7 @@ msgid "Maxtor Suppliers"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2483,7 +2479,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2539,7 +2535,7 @@ msgid "Quantity (UOS)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2578,7 +2574,7 @@ msgid "Properties"
msgstr "Īpašības"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Kļūda, nav paertnera!"
@@ -2586,7 +2582,6 @@ msgstr "Kļūda, nav paertnera!"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Incoterms"
@@ -2624,7 +2619,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2710,7 +2705,7 @@ msgid "Date done"
msgstr "Pabeig. datums"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2788,14 +2783,14 @@ msgid "Product"
msgstr "Produkts"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr "Rēķinu izrakstīšana"
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr "Lūdzu norādiet korektu daudzumu!"
@@ -2822,7 +2817,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2968,7 +2963,7 @@ msgid "All at once"
msgstr "Visu uzreiz"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2976,7 +2971,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr ""
@@ -2987,7 +2982,7 @@ msgid "To Invoice"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr ""
@@ -3062,8 +3057,7 @@ msgid "Icon"
msgstr "Ikona"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "Lietotāja Kļūda"
@@ -3090,14 +3084,14 @@ msgstr "Klienti ārpus ES"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3105,7 +3099,7 @@ msgid "Error!"
msgstr "Kļūda!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3137,7 +3131,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3172,8 +3166,8 @@ msgid "Warning"
msgstr "Brīdinājums"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3275,7 +3269,7 @@ msgid "Reporting"
msgstr "Atskaites"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3324,7 +3318,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3335,7 +3329,7 @@ msgid "Customers"
msgstr "Klienti"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr "ir atcelts."
@@ -3346,13 +3340,13 @@ msgid "Stock Inventory Lines"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr ""
@@ -3514,7 +3508,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3527,7 +3521,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr "gatavs apstrādei."
@@ -3543,7 +3537,7 @@ msgid "Set to zero"
msgstr "Ielikt nulli"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3555,13 +3549,13 @@ msgstr "Novembris"
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Neplānotais daudz."
@@ -3599,16 +3593,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Kļūda"
@@ -3741,7 +3735,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3785,7 +3779,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr ""
@@ -3797,7 +3790,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Saražotais daudz."
@@ -3806,7 +3799,6 @@ msgstr "Saražotais daudz."
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr ""
@@ -3860,13 +3852,12 @@ msgid "Invoiced date"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "Uzmanību!"
diff --git a/addons/stock/i18n/mn.po b/addons/stock/i18n/mn.po
index 8935064d5a2..f90010ec546 100644
--- a/addons/stock/i18n/mn.po
+++ b/addons/stock/i18n/mn.po
@@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:56+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:33+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -152,7 +152,7 @@ msgid "UoM"
msgstr "Хэмжих нэгж"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -181,14 +181,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr ""
@@ -244,8 +244,7 @@ msgid "Reference"
msgstr "Маршрутын дугаар"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr ""
@@ -270,7 +269,7 @@ msgid "Split lines"
msgstr "Мөрийг хуваах"
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
@@ -278,10 +277,9 @@ msgstr ""
"байна !"
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Сэрэмжлүүлэг!"
@@ -311,7 +309,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "Нэмэжлэх байхгүй"
@@ -426,7 +424,7 @@ msgid "In Qty"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "Энэ байрлалд бараа алга."
@@ -503,7 +501,7 @@ msgid "Move History (child moves)"
msgstr "Хөдөлгөөний түүх(дэд хөдөлгөөн)"
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -523,7 +521,7 @@ msgid "Destination Location"
msgstr "Хүрэх байрлал"
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -572,7 +570,7 @@ msgid "Location / Product"
msgstr "Байрлал / Бүтээдэхүүн"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr ""
@@ -702,7 +700,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr ""
@@ -785,7 +783,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1009,7 +1007,7 @@ msgid "Author"
msgstr "Зохиогч"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr ""
@@ -1154,7 +1152,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1162,7 +1160,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1185,7 +1183,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1225,7 +1223,7 @@ msgid "Additional Info"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr ""
@@ -1236,7 +1234,7 @@ msgid "From"
msgstr "Эхлэл"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1364,13 +1362,12 @@ msgid "None"
msgstr "Хоосон"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Доод хөдөлгөөнийг хянах"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr ""
@@ -1422,7 +1419,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1462,7 +1459,7 @@ msgid "Supplier Location"
msgstr "Нийлүүлэгчийн байрлал"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1574,7 +1571,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr ""
@@ -1651,7 +1648,7 @@ msgid "Warehouse Dashboard"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr ""
@@ -1665,7 +1662,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1722,13 +1719,13 @@ msgid "Shipping Address :"
msgstr "Усан тээврийн хаяг"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1807,7 +1804,7 @@ msgid "Quantity per lot"
msgstr "Цувралын дугаарын дундаж хэмжээ"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1815,7 +1812,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr ""
@@ -1952,7 +1949,6 @@ msgstr ""
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Барааны орлогын данс"
@@ -2010,7 +2006,7 @@ msgid "Inventory loss"
msgstr "Нөөцийн алдагдал"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr ""
@@ -2100,14 +2096,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2131,13 +2127,13 @@ msgid "Shipping Type"
msgstr "Хөдөлгөөний төрөл"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2164,7 +2160,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2202,7 +2198,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr ""
@@ -2280,7 +2276,7 @@ msgid "Source"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2320,7 +2316,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr ""
@@ -2386,7 +2382,7 @@ msgid "Maxtor Suppliers"
msgstr "Макстор нийлүүлэгчид"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2497,7 +2493,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2553,7 +2549,7 @@ msgid "Quantity (UOS)"
msgstr "Тоо хэмжээ"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2592,7 +2588,7 @@ msgid "Properties"
msgstr "Шинж чанар"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr ""
@@ -2600,7 +2596,6 @@ msgstr ""
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Инкотерм"
@@ -2638,7 +2633,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2724,7 +2719,7 @@ msgid "Date done"
msgstr "Бэлэн болсон огноо"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2802,14 +2797,14 @@ msgid "Product"
msgstr "Бараа"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2836,7 +2831,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2982,7 +2977,7 @@ msgid "All at once"
msgstr "Нэг мөсөн"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2990,7 +2985,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr ""
@@ -3001,7 +2996,7 @@ msgid "To Invoice"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr ""
@@ -3076,8 +3071,7 @@ msgid "Icon"
msgstr "Тэмдэг зураг"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr ""
@@ -3104,14 +3098,14 @@ msgstr "Европын харилцагч биш"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3119,7 +3113,7 @@ msgid "Error!"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3151,7 +3145,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3196,8 +3190,8 @@ msgid "Warning"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3301,7 +3295,7 @@ msgid "Reporting"
msgstr "Тайлан"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3350,7 +3344,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3361,7 +3355,7 @@ msgid "Customers"
msgstr "Харилцагчид"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr ""
@@ -3372,13 +3366,13 @@ msgid "Stock Inventory Lines"
msgstr "Барааны нөөцийн шугам"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr ""
@@ -3540,7 +3534,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3553,7 +3547,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3569,7 +3563,7 @@ msgid "Set to zero"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3581,13 +3575,13 @@ msgstr ""
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr ""
@@ -3625,16 +3619,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr ""
@@ -3767,7 +3761,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3811,7 +3805,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Дээд хөдөлгөөнийг хянах"
@@ -3823,7 +3816,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr ""
@@ -3832,7 +3825,6 @@ msgstr ""
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Агуулахын зарлагын данс"
@@ -3886,13 +3878,12 @@ msgid "Invoiced date"
msgstr "Нэхэмжилсэн огноо"
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "Анхааруулга !"
diff --git a/addons/stock/i18n/nb.po b/addons/stock/i18n/nb.po
index fb0e6536cfe..0849e5acb93 100644
--- a/addons/stock/i18n/nb.po
+++ b/addons/stock/i18n/nb.po
@@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:56+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:33+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -152,7 +152,7 @@ msgid "UoM"
msgstr "Måleenhet"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -181,14 +181,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "Utlever/motta produkter"
@@ -244,8 +244,7 @@ msgid "Reference"
msgstr "Referanse"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr ""
@@ -268,16 +267,15 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Advarsel"
@@ -307,7 +305,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "Ingen fakturering"
@@ -422,7 +420,7 @@ msgid "In Qty"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "Ingen produkter på denne lokasjonen"
@@ -499,7 +497,7 @@ msgid "Move History (child moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -519,7 +517,7 @@ msgid "Destination Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -568,7 +566,7 @@ msgid "Location / Product"
msgstr "Lokasjon / produkt"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr ""
@@ -698,7 +696,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr ""
@@ -782,7 +780,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1006,7 +1004,7 @@ msgid "Author"
msgstr "Forfatter"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr "Leveringsordre"
@@ -1143,7 +1141,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1151,7 +1149,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1174,7 +1172,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1214,7 +1212,7 @@ msgid "Additional Info"
msgstr "Tilleggsinformasjon"
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr ""
@@ -1225,7 +1223,7 @@ msgid "From"
msgstr "Fra"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1353,13 +1351,12 @@ msgid "None"
msgstr "Ingen"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Underliggende sporbarhet"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr "Ingen faktura ble opprettet"
@@ -1411,7 +1408,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1451,7 +1448,7 @@ msgid "Supplier Location"
msgstr "Leverandørlokasjon"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1563,7 +1560,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Levert kvantum"
@@ -1640,7 +1637,7 @@ msgid "Warehouse Dashboard"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "Du kan ikke fjerne en lot-linje!"
@@ -1654,7 +1651,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr "Du kan ikke fjerne plukking som har en %s status!"
@@ -1711,13 +1708,13 @@ msgid "Shipping Address :"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Skaff kvantumet for returnerte produkter."
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1796,7 +1793,7 @@ msgid "Quantity per lot"
msgstr "Kvantum pr lot"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1804,7 +1801,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Mottatt kvantum"
@@ -1941,7 +1938,6 @@ msgstr ""
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr ""
@@ -1999,7 +1995,7 @@ msgid "Inventory loss"
msgstr "Beholdningstap"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "Dokument"
@@ -2089,14 +2085,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2120,13 +2116,13 @@ msgid "Shipping Type"
msgstr "Forsendelestype"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Du kan bare slette forslag til bevegelser"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2153,7 +2149,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2191,7 +2187,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr ""
@@ -2269,7 +2265,7 @@ msgid "Source"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2309,7 +2305,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Feil !"
@@ -2375,7 +2371,7 @@ msgid "Maxtor Suppliers"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2486,7 +2482,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2542,7 +2538,7 @@ msgid "Quantity (UOS)"
msgstr "Kvantum (salgsenhet)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2581,7 +2577,7 @@ msgid "Properties"
msgstr "Egenskaper"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Feil, ingen klient !"
@@ -2589,7 +2585,6 @@ msgstr "Feil, ingen klient !"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Incoterms"
@@ -2627,7 +2622,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2715,7 +2710,7 @@ msgid "Date done"
msgstr "Dato utført"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2794,14 +2789,14 @@ msgid "Product"
msgstr "Produkt"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2828,7 +2823,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2974,7 +2969,7 @@ msgid "All at once"
msgstr "Alt på en gang"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2982,7 +2977,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr ""
@@ -2993,7 +2988,7 @@ msgid "To Invoice"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "Returlinjer"
@@ -3068,8 +3063,7 @@ msgid "Icon"
msgstr "Ikon"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "Brukerfeil"
@@ -3096,14 +3090,14 @@ msgstr ""
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3111,7 +3105,7 @@ msgid "Error!"
msgstr "Feil!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3143,7 +3137,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3178,8 +3172,8 @@ msgid "Warning"
msgstr "Advarsel"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3281,7 +3275,7 @@ msgid "Reporting"
msgstr "Rapportering"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3330,7 +3324,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3341,7 +3335,7 @@ msgid "Customers"
msgstr "Kunder"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr ""
@@ -3352,13 +3346,13 @@ msgid "Stock Inventory Lines"
msgstr "Lagerbeholdningslinje"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr ""
@@ -3520,7 +3514,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3533,7 +3527,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3549,7 +3543,7 @@ msgid "Set to zero"
msgstr "Sett til null"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3561,13 +3555,13 @@ msgstr ""
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Uplanlagt kvantum"
@@ -3605,16 +3599,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Feil"
@@ -3747,7 +3741,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3791,7 +3785,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Overliggende sporbarhet"
@@ -3803,7 +3796,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Produsert antall"
@@ -3812,7 +3805,6 @@ msgstr "Produsert antall"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Konto for utgående lager"
@@ -3866,13 +3858,12 @@ msgid "Invoiced date"
msgstr "Fakturadato"
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "Advarsel !"
diff --git a/addons/stock/i18n/nl.po b/addons/stock/i18n/nl.po
index ccbad9c99c3..cf16a956f9e 100644
--- a/addons/stock/i18n/nl.po
+++ b/addons/stock/i18n/nl.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:55+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:32+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -151,7 +151,7 @@ msgid "UoM"
msgstr "Meeteenheid"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -180,14 +180,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "Geleverde/ontvangen producten"
@@ -243,8 +243,7 @@ msgid "Reference"
msgstr "Referentie"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr ""
@@ -267,16 +266,15 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr ""
@@ -306,7 +304,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr ""
@@ -421,7 +419,7 @@ msgid "In Qty"
msgstr "Per aantal"
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "Geen producten op deze locatie"
@@ -498,7 +496,7 @@ msgid "Move History (child moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -518,7 +516,7 @@ msgid "Destination Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -567,7 +565,7 @@ msgid "Location / Product"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr ""
@@ -697,7 +695,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr ""
@@ -780,7 +778,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1006,7 +1004,7 @@ msgid "Author"
msgstr "Auteur"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr ""
@@ -1143,7 +1141,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1151,7 +1149,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1174,7 +1172,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1214,7 +1212,7 @@ msgid "Additional Info"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr ""
@@ -1225,7 +1223,7 @@ msgid "From"
msgstr "Van"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1353,13 +1351,12 @@ msgid "None"
msgstr "Geen"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Stroomafw. Traceerbaarheid"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr ""
@@ -1411,7 +1408,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1451,7 +1448,7 @@ msgid "Supplier Location"
msgstr "Toeleverlocatie"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1563,7 +1560,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Geleverd aantal"
@@ -1640,7 +1637,7 @@ msgid "Warehouse Dashboard"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "Een eenheidsregel kan niet worden verwijderd!"
@@ -1654,7 +1651,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1711,13 +1708,13 @@ msgid "Shipping Address :"
msgstr "Afleveradres :"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Geeft de aantallen van de geretourneerde producten."
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1795,7 +1792,7 @@ msgid "Quantity per lot"
msgstr "Aantal per batch"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1803,7 +1800,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Ontvangen aantal"
@@ -1940,7 +1937,6 @@ msgstr ""
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Voorraadtoenamerekening"
@@ -1998,7 +1994,7 @@ msgid "Inventory loss"
msgstr "Voorraadverlies"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr ""
@@ -2088,14 +2084,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2119,13 +2115,13 @@ msgid "Shipping Type"
msgstr "Verzendwijze"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Er kunnen alleen concept-wijzigingen worden verwijderd."
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2152,7 +2148,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2190,7 +2186,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr "Winst&Verlies hoeveelheid"
@@ -2268,7 +2264,7 @@ msgid "Source"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2308,7 +2304,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Fout!"
@@ -2374,7 +2370,7 @@ msgid "Maxtor Suppliers"
msgstr "Maxtor leveranciers"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2485,7 +2481,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2541,7 +2537,7 @@ msgid "Quantity (UOS)"
msgstr "Aantal (UOS)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2580,7 +2576,7 @@ msgid "Properties"
msgstr "Waarden"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Fout, geen relatie!"
@@ -2588,7 +2584,6 @@ msgstr "Fout, geen relatie!"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Leveringsvoorwaarden"
@@ -2626,7 +2621,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2712,7 +2707,7 @@ msgid "Date done"
msgstr "Datum Gereed"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2790,14 +2785,14 @@ msgid "Product"
msgstr "Product"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2824,7 +2819,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2970,7 +2965,7 @@ msgid "All at once"
msgstr "Allen te gelijk"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2978,7 +2973,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr ""
@@ -2989,7 +2984,7 @@ msgid "To Invoice"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "Retour regels"
@@ -3064,8 +3059,7 @@ msgid "Icon"
msgstr "Icon"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "Gebruikersfout"
@@ -3092,14 +3086,14 @@ msgstr "Niet-europese afnemers"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3107,7 +3101,7 @@ msgid "Error!"
msgstr "Fout!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3139,7 +3133,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3174,8 +3168,8 @@ msgid "Warning"
msgstr "Waarschuwing"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3279,7 +3273,7 @@ msgid "Reporting"
msgstr "Rapportages"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3328,7 +3322,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3339,7 +3333,7 @@ msgid "Customers"
msgstr "Klanten"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr ""
@@ -3350,13 +3344,13 @@ msgid "Stock Inventory Lines"
msgstr "Stock Inventory Lines"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr ""
@@ -3518,7 +3512,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3531,7 +3525,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3547,7 +3541,7 @@ msgid "Set to zero"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3559,13 +3553,13 @@ msgstr ""
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Niet geplande aantal"
@@ -3603,16 +3597,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Fout"
@@ -3745,7 +3739,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3789,7 +3783,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Upstream traceability"
@@ -3801,7 +3794,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Geproduceerd aantal"
@@ -3810,7 +3803,6 @@ msgstr "Geproduceerd aantal"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Voorraadafnamerekening"
@@ -3864,13 +3856,12 @@ msgid "Invoiced date"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr ""
diff --git a/addons/stock/i18n/nl_BE.po b/addons/stock/i18n/nl_BE.po
index 35f35bd23a8..ff45f46a049 100644
--- a/addons/stock/i18n/nl_BE.po
+++ b/addons/stock/i18n/nl_BE.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:57+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:34+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -151,7 +151,7 @@ msgid "UoM"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -180,14 +180,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr ""
@@ -243,8 +243,7 @@ msgid "Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr ""
@@ -267,16 +266,15 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr ""
@@ -306,7 +304,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr ""
@@ -421,7 +419,7 @@ msgid "In Qty"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr ""
@@ -498,7 +496,7 @@ msgid "Move History (child moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -518,7 +516,7 @@ msgid "Destination Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -567,7 +565,7 @@ msgid "Location / Product"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr ""
@@ -697,7 +695,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr ""
@@ -780,7 +778,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1004,7 +1002,7 @@ msgid "Author"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr ""
@@ -1141,7 +1139,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1149,7 +1147,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1172,7 +1170,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1212,7 +1210,7 @@ msgid "Additional Info"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr ""
@@ -1223,7 +1221,7 @@ msgid "From"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1351,13 +1349,12 @@ msgid "None"
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr ""
@@ -1409,7 +1406,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1449,7 +1446,7 @@ msgid "Supplier Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1561,7 +1558,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr ""
@@ -1638,7 +1635,7 @@ msgid "Warehouse Dashboard"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr ""
@@ -1652,7 +1649,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1709,13 +1706,13 @@ msgid "Shipping Address :"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1792,7 +1789,7 @@ msgid "Quantity per lot"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1800,7 +1797,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr ""
@@ -1937,7 +1934,6 @@ msgstr ""
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr ""
@@ -1995,7 +1991,7 @@ msgid "Inventory loss"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr ""
@@ -2085,14 +2081,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2116,13 +2112,13 @@ msgid "Shipping Type"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2149,7 +2145,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2187,7 +2183,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr ""
@@ -2265,7 +2261,7 @@ msgid "Source"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2305,7 +2301,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr ""
@@ -2371,7 +2367,7 @@ msgid "Maxtor Suppliers"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2482,7 +2478,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2538,7 +2534,7 @@ msgid "Quantity (UOS)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2577,7 +2573,7 @@ msgid "Properties"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr ""
@@ -2585,7 +2581,6 @@ msgstr ""
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr ""
@@ -2623,7 +2618,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2709,7 +2704,7 @@ msgid "Date done"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2787,14 +2782,14 @@ msgid "Product"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2821,7 +2816,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2967,7 +2962,7 @@ msgid "All at once"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2975,7 +2970,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr ""
@@ -2986,7 +2981,7 @@ msgid "To Invoice"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr ""
@@ -3061,8 +3056,7 @@ msgid "Icon"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr ""
@@ -3089,14 +3083,14 @@ msgstr ""
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3104,7 +3098,7 @@ msgid "Error!"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3136,7 +3130,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3171,8 +3165,8 @@ msgid "Warning"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3274,7 +3268,7 @@ msgid "Reporting"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3323,7 +3317,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3334,7 +3328,7 @@ msgid "Customers"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr ""
@@ -3345,13 +3339,13 @@ msgid "Stock Inventory Lines"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr ""
@@ -3513,7 +3507,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3526,7 +3520,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3542,7 +3536,7 @@ msgid "Set to zero"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3554,13 +3548,13 @@ msgstr ""
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr ""
@@ -3598,16 +3592,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr ""
@@ -3740,7 +3734,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3784,7 +3778,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr ""
@@ -3796,7 +3789,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr ""
@@ -3805,7 +3798,6 @@ msgstr ""
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr ""
@@ -3859,13 +3851,12 @@ msgid "Invoiced date"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr ""
diff --git a/addons/stock/i18n/pl.po b/addons/stock/i18n/pl.po
index 838087053b4..deb55871cdb 100644
--- a/addons/stock/i18n/pl.po
+++ b/addons/stock/i18n/pl.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:56+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:33+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -156,7 +156,7 @@ msgid "UoM"
msgstr "JM"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -189,14 +189,14 @@ msgstr ""
"mieć inne konto, to można je ustawić również w Produkcie."
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr "Brak danych częściowego pobrania dla przesunięcia #%s"
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "Dostawa/odbiór produktów"
@@ -255,8 +255,7 @@ msgid "Reference"
msgstr "Numer"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr "Produkty do przetworzenia"
@@ -280,16 +279,15 @@ msgid "Split lines"
msgstr "Podziel pozycje"
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr "Nie możesz anulować pobrania, bo pozycje mają stan wykonano !"
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Uwaga!"
@@ -319,7 +317,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr "Waluta do wyrażenia ceny jednostkowej"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "Brak fakturowania"
@@ -434,7 +432,7 @@ msgid "In Qty"
msgstr "Ilości przychodzące"
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "Brak produktów w tej strefie"
@@ -516,7 +514,7 @@ msgid "Move History (child moves)"
msgstr "Historia przesunięć"
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -537,7 +535,7 @@ msgid "Destination Location"
msgstr "Strefa docelowa"
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr "Nie możesz przetwarzać pobrania bez przesunięć"
@@ -590,7 +588,7 @@ msgid "Location / Product"
msgstr "Strefa / Produkt"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr "Przyjęcie"
@@ -728,7 +726,7 @@ msgid "Process Picking"
msgstr "Przetwarzaj probrania"
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr "Przyszłe przyjęcia"
@@ -814,7 +812,7 @@ msgid "Merge Inventory"
msgstr "Połącz inwentaryzacje"
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr "Przyszłe zyski i straty"
@@ -1082,7 +1080,7 @@ msgid "Author"
msgstr "Autor"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr "Wydanie zewnętrzne"
@@ -1231,7 +1229,7 @@ msgstr ""
"strefa źródłowa dla przesunięć generowanych przez zamówienia produkcji."
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1241,7 +1239,7 @@ msgstr ""
"same."
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr "jest w stanie projekt"
@@ -1266,7 +1264,7 @@ msgid "Chaining Type"
msgstr "Typ powiązania"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr "Do korekty/fakturowania"
@@ -1306,7 +1304,7 @@ msgid "Additional Info"
msgstr "Dodatkowe informacje"
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr "Opracja niedozwolona"
@@ -1317,7 +1315,7 @@ msgid "From"
msgstr "Od"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1447,13 +1445,12 @@ msgid "None"
msgstr "Brak"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Śledzenie wstecz"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr "Nie utworzono faktur"
@@ -1514,7 +1511,7 @@ msgstr ""
"Zostaw to pole puste jeśli strefa ma być współdzielona pomiędzy firmami."
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr "Wprowadź dodatnią ilość dla odpadu !"
@@ -1562,7 +1559,7 @@ msgid "Supplier Location"
msgstr "Strefa dostawców"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr "gdzie odrzucono"
@@ -1677,7 +1674,7 @@ msgid "Stock report by tracking lots"
msgstr "Raport zapasów wg partii magazynowych"
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Ilość bieżąca"
@@ -1754,7 +1751,7 @@ msgid "Warehouse Dashboard"
msgstr "Konsola magazynu"
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "Nie możesz usuwać pozycji partii !"
@@ -1768,7 +1765,7 @@ msgid "Scrap Products"
msgstr "Produkty uszkodzone"
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr "Nie możesz usunąć pobrania, które jest w stanie %s !"
@@ -1825,13 +1822,13 @@ msgid "Shipping Address :"
msgstr "Adres wysyłki:"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Podaj ilości zwróconych produktów"
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1916,7 +1913,7 @@ msgid "Quantity per lot"
msgstr "Ilość wg partii"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1924,7 +1921,7 @@ msgid ""
msgstr "Brak konta przyjęć dla produktu lub jego kategorii: \"%s\" (id: %d)"
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Ilość bieżąca"
@@ -2089,7 +2086,6 @@ msgstr "Koszt"
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Konto dla zapasów wchodzących"
@@ -2149,7 +2145,7 @@ msgid "Inventory loss"
msgstr "Straty inwentaryzacyjne"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "Dokument"
@@ -2241,15 +2237,15 @@ msgid "Warehouse board"
msgstr "Konsola magazynu"
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr "Ilość planowana"
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
-msgstr "Konto wyceny zapasów"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
+msgstr ""
#. module: stock
#: field:stock.move,note:0
@@ -2272,13 +2268,13 @@ msgid "Shipping Type"
msgstr "Typ pobrania"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Możesz usuwać tylko projekty przesunięć"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2305,7 +2301,7 @@ msgid "Location where the system will stock the finished products."
msgstr "Strefa, w której system umieści gotowe produkty."
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2349,7 +2345,7 @@ msgid "Expected date for the picking to be processed"
msgstr "Spodziewana data wykonania pobrania"
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr "Ilość bieżąca"
@@ -2445,7 +2441,7 @@ msgid "Source"
msgstr "Źródło"
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2486,7 +2482,7 @@ msgstr "Nr śledzenia"
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Błąd !"
@@ -2555,7 +2551,7 @@ msgid "Maxtor Suppliers"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2668,7 +2664,7 @@ msgid ""
msgstr "Nie zdefiniowano konta przyjęć dla produktu: '%s' (id: %d)"
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr "Nie można wykonanć przesunięcia z ilością negatywną lub zero !"
@@ -2728,7 +2724,7 @@ msgid "Quantity (UOS)"
msgstr "Ilość (JS)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2768,7 +2764,7 @@ msgid "Properties"
msgstr "Właściwości"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Błąd, brak partnera !"
@@ -2776,7 +2772,6 @@ msgstr "Błąd, brak partnera !"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Incoterms"
@@ -2818,7 +2813,7 @@ msgid "Inventory Reference"
msgstr "Odnośnik inwentaryzacji"
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr "Pobranie wewnętrzne (MM)"
@@ -2906,7 +2901,7 @@ msgid "Date done"
msgstr "Data wykonania"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2984,14 +2979,14 @@ msgid "Product"
msgstr "Produkt"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr "Fakturowanie"
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr "Wprowadź poprawną ilość !"
@@ -3018,7 +3013,7 @@ msgid "Consume Products"
msgstr "Zużycie produktów"
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr "Zbyt mały zapas partii !"
@@ -3169,7 +3164,7 @@ msgid "All at once"
msgstr "Wszystko naraz"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -3179,7 +3174,7 @@ msgstr ""
"wykonanych (wyjątkowo może to wykonać Administrator)."
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr "Przyszłe produkcje"
@@ -3190,7 +3185,7 @@ msgid "To Invoice"
msgstr "Do zafakturowania"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "Pozycje zwrotu"
@@ -3269,8 +3264,7 @@ msgid "Icon"
msgstr "Ikona"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr ""
@@ -3297,14 +3291,14 @@ msgstr "Klienci pozaeuropejscy"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3312,7 +3306,7 @@ msgid "Error!"
msgstr "Błąd!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3345,7 +3339,7 @@ msgstr ""
"To określa, że produkty mają być wydawane wszystkie naraz lub bezpośrednio."
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr "To wydanie nie wymaga fakturowania."
@@ -3387,8 +3381,8 @@ msgid "Warning"
msgstr "Ostrzeżenie"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr "jest wykonane"
@@ -3494,7 +3488,7 @@ msgid "Reporting"
msgstr "Raportowanie"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr " dla "
@@ -3548,7 +3542,7 @@ msgid "Chaining Journal"
msgstr "Dziennik powiązania"
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr "Zbyt mały zapas. Nie mozna rezerwować produktów."
@@ -3559,7 +3553,7 @@ msgid "Customers"
msgstr "Klienci"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr "jest anulowane."
@@ -3570,13 +3564,13 @@ msgid "Stock Inventory Lines"
msgstr "Pozycje inwentaryzacji zapasów"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr "Przetwarzaj dokument"
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr "Przyszłe wydania"
@@ -3753,7 +3747,7 @@ msgid "Existing Lot"
msgstr "Istniejąca partia"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr "Podaj wartoś większą od zera !"
@@ -3768,7 +3762,7 @@ msgstr ""
"źródłowa dla przesunięć generowanych przez zapotrzebowanie."
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr "jest gotowy do przetwarzania."
@@ -3784,7 +3778,7 @@ msgid "Set to zero"
msgstr "Ustaw na zero"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr "Zadne z pobrań nie wymaga fakturowania."
@@ -3796,13 +3790,13 @@ msgstr "Listopad"
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr "Nie zdefiniowano dziennika w kategorii produktu: \"%s\" (id: %d)"
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Ilość bieżąca"
@@ -3842,16 +3836,16 @@ msgid "Move History (parent moves)"
msgstr "Histora przesunięć (przesunięcia nadrzędne)"
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr "Przyszły zapas"
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Błąd"
@@ -3989,7 +3983,7 @@ msgid "Split Move"
msgstr "Podziel przesunięcie"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -4038,7 +4032,6 @@ msgstr ""
"puste, to będzie stosowane konto z kategorii produktu."
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Śledzenie wprzód"
@@ -4050,7 +4043,7 @@ msgid "Location Content"
msgstr "Zawartość strefy"
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Ilość bieżąca"
@@ -4059,7 +4052,6 @@ msgstr "Ilość bieżąca"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Konto dla zapasów wychodzących"
@@ -4113,13 +4105,12 @@ msgid "Invoiced date"
msgstr "Data fakturowania"
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "Ostrzeżenie !"
@@ -4687,6 +4678,9 @@ msgstr "Nieobowiązkowe szczegóły lokalizacji. Tylko do informacji."
#~ msgid "quantity."
#~ msgstr "ilość."
+#~ msgid "Stock Variation Account"
+#~ msgstr "Konto wyceny zapasów"
+
#, python-format
#~ msgid "INV: "
#~ msgstr "FAK: "
diff --git a/addons/stock/i18n/pt.po b/addons/stock/i18n/pt.po
index 4084729eabd..2cb0deea205 100644
--- a/addons/stock/i18n/pt.po
+++ b/addons/stock/i18n/pt.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:56+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:33+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -154,7 +154,7 @@ msgid "UoM"
msgstr "UoM"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -183,14 +183,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "Entregar/Receber Produtos"
@@ -246,8 +246,7 @@ msgid "Reference"
msgstr "Referência"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr "Artigos a processar"
@@ -270,16 +269,15 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Aviso!"
@@ -309,7 +307,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr ""
@@ -424,7 +422,7 @@ msgid "In Qty"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "Sem produto nesta localização."
@@ -501,7 +499,7 @@ msgid "Move History (child moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -521,7 +519,7 @@ msgid "Destination Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -570,7 +568,7 @@ msgid "Location / Product"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr "Receção"
@@ -700,7 +698,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr "Recepções Futuras"
@@ -783,7 +781,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr "Futuro da P&L"
@@ -1007,7 +1005,7 @@ msgid "Author"
msgstr "Autor"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr ""
@@ -1144,7 +1142,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1152,7 +1150,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1175,7 +1173,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1215,7 +1213,7 @@ msgid "Additional Info"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr ""
@@ -1226,7 +1224,7 @@ msgid "From"
msgstr "De"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1354,13 +1352,12 @@ msgid "None"
msgstr "Nenhum"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Rastreabilidade Descendente"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr "Não foram criadas faturas"
@@ -1412,7 +1409,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1452,7 +1449,7 @@ msgid "Supplier Location"
msgstr "Localização do Fornecedor"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1564,7 +1561,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Quantidade Entregue"
@@ -1641,7 +1638,7 @@ msgid "Warehouse Dashboard"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "Não pode remover muitas linhas !"
@@ -1655,7 +1652,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr "Não pode eliminar a recolha que está no estado % s !"
@@ -1712,13 +1709,13 @@ msgid "Shipping Address :"
msgstr "Endereço de Entrega :"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Fornecer as quantidades dos produtos devolvidos."
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1797,7 +1794,7 @@ msgid "Quantity per lot"
msgstr "Quantidade por lote"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1805,7 +1802,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Quantidade Recebida"
@@ -1942,7 +1939,6 @@ msgstr "Custo"
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Conta Stock de Entrada"
@@ -2000,7 +1996,7 @@ msgid "Inventory loss"
msgstr "Perdas de Inventário"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "Documento"
@@ -2090,14 +2086,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr "Quantidade Futura"
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2121,13 +2117,13 @@ msgid "Shipping Type"
msgstr "Tipo de Envio"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Só pode apagar rascunho de movimentos."
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2154,7 +2150,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2192,7 +2188,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr "Quantidade P&L"
@@ -2270,7 +2266,7 @@ msgid "Source"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2311,7 +2307,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Erro !"
@@ -2377,7 +2373,7 @@ msgid "Maxtor Suppliers"
msgstr "Fornecedores Maxtor"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2488,7 +2484,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2544,7 +2540,7 @@ msgid "Quantity (UOS)"
msgstr "Quantidade (UOS)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2583,7 +2579,7 @@ msgid "Properties"
msgstr "Propriedades"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Erro, sem terceiro !"
@@ -2591,7 +2587,6 @@ msgstr "Erro, sem terceiro !"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Incoterms"
@@ -2629,7 +2624,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2715,7 +2710,7 @@ msgid "Date done"
msgstr "Data efectuada"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2794,14 +2789,14 @@ msgid "Product"
msgstr "Produto"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr "Faturação"
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2828,7 +2823,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2974,7 +2969,7 @@ msgid "All at once"
msgstr "Todos de uma vez"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2982,7 +2977,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr "Produções Futuras"
@@ -2993,7 +2988,7 @@ msgid "To Invoice"
msgstr "Para faturar"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "Linhas de Retorno"
@@ -3068,8 +3063,7 @@ msgid "Icon"
msgstr "Ícone"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "Erro de Utilizador"
@@ -3096,14 +3090,14 @@ msgstr "Clientes não Europeus"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3111,7 +3105,7 @@ msgid "Error!"
msgstr "Erro!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3143,7 +3137,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3178,8 +3172,8 @@ msgid "Warning"
msgstr "Aviso"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3283,7 +3277,7 @@ msgid "Reporting"
msgstr "Relatório"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3332,7 +3326,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3343,7 +3337,7 @@ msgid "Customers"
msgstr "Clientes"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr ""
@@ -3354,13 +3348,13 @@ msgid "Stock Inventory Lines"
msgstr "Linhas de Inventário de Stock"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr "Entregas Futuras"
@@ -3522,7 +3516,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3535,7 +3529,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3551,7 +3545,7 @@ msgid "Set to zero"
msgstr "Por a zero"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3563,13 +3557,13 @@ msgstr "Novembro"
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Quantidade não Planeada"
@@ -3607,16 +3601,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr "Stock Futuro"
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Erro"
@@ -3749,7 +3743,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3793,7 +3787,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Rastreabilidade"
@@ -3805,7 +3798,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Quantidade Produzida"
@@ -3814,7 +3807,6 @@ msgstr "Quantidade Produzida"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Conta de Saída de Stock"
@@ -3868,13 +3860,12 @@ msgid "Invoiced date"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "Aviso!"
diff --git a/addons/stock/i18n/pt_BR.po b/addons/stock/i18n/pt_BR.po
index af653fa1c11..a854faf7a70 100644
--- a/addons/stock/i18n/pt_BR.po
+++ b/addons/stock/i18n/pt_BR.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:57+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:34+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -158,7 +158,7 @@ msgid "UoM"
msgstr "Unidade de Medida"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -191,14 +191,14 @@ msgstr ""
"categoria. Também pode ser atribuída diretamente em cada produto."
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr "Faltando dados de separação parcial para movimentação #%s"
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "Entregar/receber produtos"
@@ -257,8 +257,7 @@ msgid "Reference"
msgstr "Referência"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr "Produtos a processar"
@@ -283,7 +282,7 @@ msgid "Split lines"
msgstr "Dividir linhas"
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
@@ -291,10 +290,9 @@ msgstr ""
"status concluído !"
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Atenção!"
@@ -324,7 +322,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr "Moeda do preço unitário de custo"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "Sem faturamento"
@@ -440,7 +438,7 @@ msgid "In Qty"
msgstr "Qtde Ent"
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "Nenhum produto neste local"
@@ -523,7 +521,7 @@ msgid "Move History (child moves)"
msgstr "Histórico de movimentação (filhos)"
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -545,7 +543,7 @@ msgid "Destination Location"
msgstr "Local de destino"
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr "Você não pode processar uma separação sem movimentar estoque"
@@ -598,7 +596,7 @@ msgid "Location / Product"
msgstr "Locação / Produto"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr "Recebimento"
@@ -738,7 +736,7 @@ msgid "Process Picking"
msgstr "Processo de Separação"
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr "Recebimento Futuro"
@@ -823,7 +821,7 @@ msgid "Merge Inventory"
msgstr "Mesclar Inventário"
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1091,7 +1089,7 @@ msgid "Author"
msgstr "Autor"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr "Ordem de Entrega"
@@ -1239,7 +1237,7 @@ msgstr ""
"ordens de produção"
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1249,7 +1247,7 @@ msgstr ""
"este produto e a Conta Variante da categoria para este produto são as mesmas."
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr "está com status provisório."
@@ -1272,7 +1270,7 @@ msgid "Chaining Type"
msgstr "Tipo de Encadeamento"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr "Para ser reembolsado/faturado"
@@ -1312,7 +1310,7 @@ msgid "Additional Info"
msgstr "Informação Adicional"
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr "Operação proibida"
@@ -1323,7 +1321,7 @@ msgid "From"
msgstr "De"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1453,13 +1451,12 @@ msgid "None"
msgstr "Nenhum"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr "Nenhuma fatura foi criada"
@@ -1520,7 +1517,7 @@ msgstr ""
"Deixe este campo vazio se este local é compartilhado entre todas as empresas."
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr "Por favor, lance uma quantidade positiva para sucata!"
@@ -1567,7 +1564,7 @@ msgid "Supplier Location"
msgstr "Localizacão dos Fornecedores"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr "foi sucateado"
@@ -1682,7 +1679,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Quantidade Entregue"
@@ -1759,7 +1756,7 @@ msgid "Warehouse Dashboard"
msgstr "Painel de Armazém"
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "Você não pode remover uma linha do lote"
@@ -1773,7 +1770,7 @@ msgid "Scrap Products"
msgstr "Produtos Sucata"
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr "Você não pode remover separação com status %s !"
@@ -1830,13 +1827,13 @@ msgid "Shipping Address :"
msgstr "Endereço de Envio :"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Fornecer as quantidades dos produtos devolvidos."
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1923,7 +1920,7 @@ msgid "Quantity per lot"
msgstr "Quantidade por Lote"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1933,7 +1930,7 @@ msgstr ""
"categoria: \"%s\" (id: %d)"
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Qtde Recebida"
@@ -2078,7 +2075,6 @@ msgstr "Custo"
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Conta de Entrada de Estoque"
@@ -2138,7 +2134,7 @@ msgid "Inventory loss"
msgstr "Perda de Inventário"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "Documento"
@@ -2231,15 +2227,15 @@ msgid "Warehouse board"
msgstr "Placa de armazém"
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr "Qtde Futura"
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
-msgstr "Conta para Variação de Estoque"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
+msgstr ""
#. module: stock
#: field:stock.move,note:0
@@ -2262,13 +2258,13 @@ msgid "Shipping Type"
msgstr "Tipo de Movimentação"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Você só pode apagar movimentos em rascunho"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2295,7 +2291,7 @@ msgid "Location where the system will stock the finished products."
msgstr "Local onde o sistema estocará os produtos acabados"
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2335,7 +2331,7 @@ msgid "Expected date for the picking to be processed"
msgstr "Data prevista para separação ser processada"
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr ""
@@ -2418,7 +2414,7 @@ msgid "Source"
msgstr "Origem"
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2458,7 +2454,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Erro!"
@@ -2524,7 +2520,7 @@ msgid "Maxtor Suppliers"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2638,7 +2634,7 @@ msgstr ""
"%d)"
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr "Não se pode consumir um movimento com quantidade zero ou negativa !"
@@ -2695,7 +2691,7 @@ msgid "Quantity (UOS)"
msgstr "Quantidade (UdV)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2736,7 +2732,7 @@ msgid "Properties"
msgstr "Propriedades"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Erro, nenhum parceiro !"
@@ -2744,7 +2740,6 @@ msgstr "Erro, nenhum parceiro !"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Inconterms"
@@ -2787,7 +2782,7 @@ msgid "Inventory Reference"
msgstr "Referência de Invetário"
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr "Separação interna"
@@ -2876,7 +2871,7 @@ msgid "Date done"
msgstr "Data de conclusão"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2956,14 +2951,14 @@ msgid "Product"
msgstr "Produto"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr "Faturamento"
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr "Por favor, entre com a Quantidade Adequada !"
@@ -2990,7 +2985,7 @@ msgid "Consume Products"
msgstr "Produtos de Consumo"
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr "Estoque Insuficiente no Lote !"
@@ -3136,7 +3131,7 @@ msgid "All at once"
msgstr "Tudo de uma vez"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -3146,7 +3141,7 @@ msgstr ""
"movimentos de estoque que já foram processados (exceto pelo Administrador)"
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr "Produções Futuras"
@@ -3157,7 +3152,7 @@ msgid "To Invoice"
msgstr "Para Faturar"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "Linhas de retorno"
@@ -3232,8 +3227,7 @@ msgid "Icon"
msgstr "Ícone"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "Erro de usuário"
@@ -3260,14 +3254,14 @@ msgstr "Clientes não Europeus"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3275,7 +3269,7 @@ msgid "Error!"
msgstr "Erro!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3311,7 +3305,7 @@ msgstr ""
"direta"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr "Esta lista de separação não requer faturamento."
@@ -3346,8 +3340,8 @@ msgid "Warning"
msgstr "Aviso"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr "está concluído."
@@ -3453,7 +3447,7 @@ msgid "Reporting"
msgstr "Relatórios"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr " para o "
@@ -3502,7 +3496,7 @@ msgid "Chaining Journal"
msgstr "Diário de Encadeamentos"
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr "Estoque insuficiente, impossível reservar os produtos."
@@ -3513,7 +3507,7 @@ msgid "Customers"
msgstr "Clientes"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr "está cancelado."
@@ -3524,13 +3518,13 @@ msgid "Stock Inventory Lines"
msgstr "Linhas de Inventário de Estoque"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr "Documento do Processo"
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr "Entregas Futuras"
@@ -3704,7 +3698,7 @@ msgid "Existing Lot"
msgstr "Lote Existente"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr "Por favor, especifique pelo menos uma quantidade diferente de zero!"
@@ -3719,7 +3713,7 @@ msgstr ""
"como local origem para os movimentos de estoque gerados pelas aquisições"
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr "está pronto para processamento."
@@ -3735,7 +3729,7 @@ msgid "Set to zero"
msgstr "Coloque zero"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr "Nenhuma destas listas de separação precisam de faturamento."
@@ -3747,14 +3741,14 @@ msgstr "Novembro"
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
"Não há nenhum diário definido para a categoria de produto: \"%s\" (id: %d)"
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Quantidade não planejada"
@@ -3794,16 +3788,16 @@ msgid "Move History (parent moves)"
msgstr "Histórico de Movimentação (pais)"
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr "Estoque Futuro"
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Erro"
@@ -3939,7 +3933,7 @@ msgid "Split Move"
msgstr "Movimento de Divisão"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3985,7 +3979,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr ""
@@ -3997,7 +3990,7 @@ msgid "Location Content"
msgstr "Conteúdo do Local"
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Qtde Produzida"
@@ -4006,7 +3999,6 @@ msgstr "Qtde Produzida"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Conta de Saída do Estoque"
@@ -4060,13 +4052,12 @@ msgid "Invoiced date"
msgstr "Data faturada"
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "Atenção !"
@@ -4504,6 +4495,9 @@ msgstr "Detalhes opcionais do local, apenas em caráter informativo"
#~ msgid "Product "
#~ msgstr "Produto "
+#~ msgid "Stock Variation Account"
+#~ msgstr "Conta para Variação de Estoque"
+
#, python-format
#~ msgid "INV: "
#~ msgstr "INV: "
diff --git a/addons/stock/i18n/ro.po b/addons/stock/i18n/ro.po
index b2bf96f6b3d..b6cc2cd6782 100644
--- a/addons/stock/i18n/ro.po
+++ b/addons/stock/i18n/ro.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:56+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:33+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -159,7 +159,7 @@ msgid "UoM"
msgstr "UM"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -188,14 +188,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "Livrează / Primește Produse"
@@ -251,8 +251,7 @@ msgid "Reference"
msgstr "Referință"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr "Produse de procesat"
@@ -277,17 +276,16 @@ msgid "Split lines"
msgstr "Separare linii"
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
"Nu puteţi anula preluarea, deoarece mișcările de stoc sunt efectuate."
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Atenție!"
@@ -317,7 +315,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr "Moneda în care Unitatea de cost este exprimată"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "Nefacturat"
@@ -432,7 +430,7 @@ msgid "In Qty"
msgstr "In cant"
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "Nici un produs în acestă locație."
@@ -511,7 +509,7 @@ msgid "Move History (child moves)"
msgstr "Istorie mișcări (mișcări copil)"
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -531,7 +529,7 @@ msgid "Destination Location"
msgstr "Locaţie destinaţie"
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr "Nu puteți procesa preluarea fără mișcări de stoc"
@@ -585,7 +583,7 @@ msgid "Location / Product"
msgstr "Locație / Produs"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr "Recepţie"
@@ -715,7 +713,7 @@ msgid "Process Picking"
msgstr "Procesare preluare"
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr "Recepții viitoare"
@@ -799,7 +797,7 @@ msgid "Merge Inventory"
msgstr "Unire inventar"
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1023,7 +1021,7 @@ msgid "Author"
msgstr "Autor"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr "Comandă de livrare"
@@ -1160,7 +1158,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1168,7 +1166,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr "este în starea de ciornă."
@@ -1191,7 +1189,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr "Pentru rambursat/facturat"
@@ -1231,7 +1229,7 @@ msgid "Additional Info"
msgstr "Info adiționale"
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr "Operație interzisă"
@@ -1242,7 +1240,7 @@ msgid "From"
msgstr "De la"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1370,13 +1368,12 @@ msgid "None"
msgstr "Nespecificat"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Trasabilitate în jos"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr "Nu au fost create facturi"
@@ -1428,7 +1425,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1468,7 +1465,7 @@ msgid "Supplier Location"
msgstr "Locație furnizor"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1580,7 +1577,7 @@ msgid "Stock report by tracking lots"
msgstr "Raport stoc după loturi"
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Cant. Livrată"
@@ -1657,7 +1654,7 @@ msgid "Warehouse Dashboard"
msgstr "Panou de bord depozit"
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr ""
@@ -1671,7 +1668,7 @@ msgid "Scrap Products"
msgstr "Produse rebuturi"
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1728,13 +1725,13 @@ msgid "Shipping Address :"
msgstr "Adresă expediere:"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1814,7 +1811,7 @@ msgid "Quantity per lot"
msgstr "Cantitate pe lot"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1822,7 +1819,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Cant. recepționată"
@@ -1959,7 +1956,6 @@ msgstr "Cost"
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Cont intrare stoc"
@@ -2019,7 +2015,7 @@ msgid "Inventory loss"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "Document"
@@ -2109,15 +2105,15 @@ msgid "Warehouse board"
msgstr "Panou depozit"
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr "Cant. viitoare"
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
-msgstr "Cont variații de stoc"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
+msgstr ""
#. module: stock
#: field:stock.move,note:0
@@ -2140,13 +2136,13 @@ msgid "Shipping Type"
msgstr "Tip expediere"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Puteți șterge doar mișcări în starea ciornă."
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2173,7 +2169,7 @@ msgid "Location where the system will stock the finished products."
msgstr "Locația în care sistemul va stoca produsele finite."
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2211,7 +2207,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr ""
@@ -2289,7 +2285,7 @@ msgid "Source"
msgstr "Sursă"
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2329,7 +2325,7 @@ msgstr "Urmărire serial"
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Eroare !"
@@ -2395,7 +2391,7 @@ msgid "Maxtor Suppliers"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2506,7 +2502,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2564,7 +2560,7 @@ msgid "Quantity (UOS)"
msgstr "Cantitate (UOS)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2603,7 +2599,7 @@ msgid "Properties"
msgstr "Proprietăţi"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Eroare, fără partener!"
@@ -2611,7 +2607,6 @@ msgstr "Eroare, fără partener!"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr ""
@@ -2649,7 +2644,7 @@ msgid "Inventory Reference"
msgstr "Referință inventar"
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr "Preluare internă"
@@ -2735,7 +2730,7 @@ msgid "Date done"
msgstr "Data execuției"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2815,14 +2810,14 @@ msgid "Product"
msgstr "Produs"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr "Facturare"
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2849,7 +2844,7 @@ msgid "Consume Products"
msgstr "Consumă produse"
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2995,7 +2990,7 @@ msgid "All at once"
msgstr "Toate deodată"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -3003,7 +2998,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr "Producția viitoare"
@@ -3014,7 +3009,7 @@ msgid "To Invoice"
msgstr "De facturat"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "Linii retur"
@@ -3095,8 +3090,7 @@ msgid "Icon"
msgstr "Iconiţă"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "Eroare Utilizator"
@@ -3123,14 +3117,14 @@ msgstr ""
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3138,7 +3132,7 @@ msgid "Error!"
msgstr "Eroare!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3170,7 +3164,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3205,8 +3199,8 @@ msgid "Warning"
msgstr "Atenție"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr "este gata."
@@ -3308,7 +3302,7 @@ msgid "Reporting"
msgstr "Raportare"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3357,7 +3351,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr "Stoc insuficient, nu se poate face rezervarea produsului."
@@ -3368,7 +3362,7 @@ msgid "Customers"
msgstr "Clienţi"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr "este anulat."
@@ -3379,13 +3373,13 @@ msgid "Stock Inventory Lines"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr "Document proces"
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr "Livrări viitoare"
@@ -3550,7 +3544,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr "Văr rog să specificați o cantitate diferită de zero!"
@@ -3563,7 +3557,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3579,7 +3573,7 @@ msgid "Set to zero"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3591,13 +3585,13 @@ msgstr "Noiembrie"
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Cant neplanificată"
@@ -3635,16 +3629,16 @@ msgid "Move History (parent moves)"
msgstr "Istoric mișcări (mișcări părinte)"
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr "Stoc viitor"
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Eroare"
@@ -3777,7 +3771,7 @@ msgid "Split Move"
msgstr "Împarte mișcarea"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3821,7 +3815,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Trasabulitate în sus"
@@ -3833,7 +3826,7 @@ msgid "Location Content"
msgstr "Locația curentă"
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr ""
@@ -3842,7 +3835,6 @@ msgstr ""
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Cont ieșire din stoc"
@@ -3896,13 +3888,12 @@ msgid "Invoiced date"
msgstr "Dată facură"
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "Atenţie !"
@@ -3967,6 +3958,9 @@ msgstr ""
#~ msgid "is consumed with"
#~ msgstr "este consumat cu"
+#~ msgid "Stock Variation Account"
+#~ msgstr "Cont variații de stoc"
+
#, python-format
#~ msgid "INV: "
#~ msgstr "INV: "
diff --git a/addons/stock/i18n/ru.po b/addons/stock/i18n/ru.po
index 0b8bfa841ea..c0dbf592b08 100644
--- a/addons/stock/i18n/ru.po
+++ b/addons/stock/i18n/ru.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:57+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:33+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -158,7 +158,7 @@ msgid "UoM"
msgstr "Ед. изм."
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -191,14 +191,14 @@ msgstr ""
"установить непосредственно для каждой ТМЦ."
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr "Нет данных для частичного комплектования перемещения #%s"
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "Отгрузка/Получение ТМЦ"
@@ -256,8 +256,7 @@ msgid "Reference"
msgstr "Ссылка"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr "ТМЦ к обработке"
@@ -282,17 +281,16 @@ msgid "Split lines"
msgstr "Разделение позиций"
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
"Вы не можете отменить комплектование так, как складские перемещения сделаны !"
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Внимание!"
@@ -322,7 +320,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr "Валюта в которой выражена стоимость единицы"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "Нет счета"
@@ -437,7 +435,7 @@ msgid "In Qty"
msgstr "В кол-ве"
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "Нет продукции в этом месте"
@@ -519,7 +517,7 @@ msgid "Move History (child moves)"
msgstr "История перемещений (подчиненные перемещения)"
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -539,7 +537,7 @@ msgid "Destination Location"
msgstr "Место назначения"
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr "Вы не можете обработать комплектование без перемещения"
@@ -593,7 +591,7 @@ msgid "Location / Product"
msgstr "Место / Продукция"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr "Прием"
@@ -731,7 +729,7 @@ msgid "Process Picking"
msgstr "Процесс комплектования"
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr "Будущие приходы"
@@ -816,7 +814,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1083,7 +1081,7 @@ msgid "Author"
msgstr "Автор"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr "Заказ на доставку"
@@ -1224,7 +1222,7 @@ msgstr ""
"генерируемых заказами на производство"
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1234,7 +1232,7 @@ msgstr ""
"этой категории одинаковы."
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr "в состоянии \"Черновик\""
@@ -1257,7 +1255,7 @@ msgid "Chaining Type"
msgstr "Тип сцепления"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr "Будет возвращено / выставлено в счете"
@@ -1297,7 +1295,7 @@ msgid "Additional Info"
msgstr "Доп. инфо"
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr "Операция запрещена"
@@ -1308,7 +1306,7 @@ msgid "From"
msgstr "От"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1437,13 +1435,12 @@ msgid "None"
msgstr "Ничего"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Отслеживание вниз"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr "Счетов создано не было"
@@ -1504,7 +1501,7 @@ msgstr ""
"Оставьте это поле пустым, если это место хранения общее для всех компаний"
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr "Пожалуйста предоставьте положительное количество в брак!"
@@ -1550,7 +1547,7 @@ msgid "Supplier Location"
msgstr "Место хранения поставщика"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr "были забракованы"
@@ -1666,7 +1663,7 @@ msgid "Stock report by tracking lots"
msgstr "Отчет о ТМЦ по отслеживаемым партиям"
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Доставленое кол-во"
@@ -1743,7 +1740,7 @@ msgid "Warehouse Dashboard"
msgstr "Инф. панель склада"
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "Вы не можете удалить позицию партии"
@@ -1757,7 +1754,7 @@ msgid "Scrap Products"
msgstr "Бракованная продукция"
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr "Вы не можете удалить комплектование в состоянии: %s !"
@@ -1814,13 +1811,13 @@ msgid "Shipping Address :"
msgstr "Адрес доставки:"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Предоставьте количество возвращенной продукции"
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1908,7 +1905,7 @@ msgid "Quantity per lot"
msgstr "Кол-во в партии"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1916,7 +1913,7 @@ msgid ""
msgstr "Не определен счет входящих ТМЦ или категории ТМЦ: \"%s\" (id: %d)"
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Полученное кол-во"
@@ -2058,7 +2055,6 @@ msgstr "Стоимость"
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Счет стоимости входящих ТМЦ"
@@ -2118,7 +2114,7 @@ msgid "Inventory loss"
msgstr "Потери при инвентаризации"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "Документ"
@@ -2210,15 +2206,15 @@ msgid "Warehouse board"
msgstr "Панель склада"
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr "Будущее Кол-во"
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
-msgstr "Счет изменения стоимости ТМЦ"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
+msgstr ""
#. module: stock
#: field:stock.move,note:0
@@ -2241,13 +2237,13 @@ msgid "Shipping Type"
msgstr "Тип поставки"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Вы можете удалить только черновик перемещения."
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2274,7 +2270,7 @@ msgid "Location where the system will stock the finished products."
msgstr "Место хранения, где система будет хранить готовую продукцию."
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2319,7 +2315,7 @@ msgid "Expected date for the picking to be processed"
msgstr "Ожидаемая дата обработки комплектования"
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr ""
@@ -2416,7 +2412,7 @@ msgid "Source"
msgstr "Источник"
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2457,7 +2453,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Ошибка !"
@@ -2527,7 +2523,7 @@ msgid "Maxtor Suppliers"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2641,7 +2637,7 @@ msgid ""
msgstr "Не определен счет входящих ТМЦ для: \"%s\" (id: %d)"
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2704,7 +2700,7 @@ msgid "Quantity (UOS)"
msgstr "Количество(единицы продажи)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2744,7 +2740,7 @@ msgid "Properties"
msgstr "Свойства"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Ошибка, нет партнера !"
@@ -2752,7 +2748,6 @@ msgstr "Ошибка, нет партнера !"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Инкотермс"
@@ -2797,7 +2792,7 @@ msgid "Inventory Reference"
msgstr "Описание инвентаризации"
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr "Внутреннее комплектование"
@@ -2883,7 +2878,7 @@ msgid "Date done"
msgstr "Дата выполнения"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2963,14 +2958,14 @@ msgid "Product"
msgstr "Продукция"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr "Выставление счета"
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr "Пожалуйста, предоставьте правильное количество !"
@@ -2997,7 +2992,7 @@ msgid "Consume Products"
msgstr "Потребляемые ТМЦ"
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr "Недостаточно ТМЦ в партии !"
@@ -3143,7 +3138,7 @@ msgid "All at once"
msgstr "Все сразу"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -3153,7 +3148,7 @@ msgstr ""
"обработанных перемещениях ТМЦ (исключая администратора)"
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr ""
@@ -3164,7 +3159,7 @@ msgid "To Invoice"
msgstr "В счет"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "Позиции для возврата"
@@ -3239,8 +3234,7 @@ msgid "Icon"
msgstr "Значок"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "Ошибка пользователя"
@@ -3267,14 +3261,14 @@ msgstr "Неевропейские заказчики"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3282,7 +3276,7 @@ msgid "Error!"
msgstr "Ошибка !"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3315,7 +3309,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr "Товары доставляются все за раз или по прямой доставке."
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr "Этот комплектовочный лист не требует выставления счета."
@@ -3350,8 +3344,8 @@ msgid "Warning"
msgstr "Внимание"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr "делается."
@@ -3457,7 +3451,7 @@ msgid "Reporting"
msgstr "Отчетность"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr " для "
@@ -3511,7 +3505,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr "Не хватает остатка, нельзя зарезервировать ТМЦ."
@@ -3522,7 +3516,7 @@ msgid "Customers"
msgstr "Клиенты"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr "отменяется."
@@ -3533,13 +3527,13 @@ msgid "Stock Inventory Lines"
msgstr "Позиции инвентаризации склада"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr "Обработка документа"
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr "Будущие доставки"
@@ -3715,7 +3709,7 @@ msgid "Existing Lot"
msgstr "Существующая партия"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr "Пожалуйста, укажите хотя бы одно ненулевое количество !"
@@ -3731,7 +3725,7 @@ msgstr ""
"снабжения"
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr "готов к обработке."
@@ -3747,7 +3741,7 @@ msgid "Set to zero"
msgstr "Обнулить"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr "Нет комплектовочных листов требующих выставления счетов."
@@ -3759,13 +3753,13 @@ msgstr "Ноябрь"
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr "Не определен журнал для категории ТМЦ: \"%s\" (id: %d)"
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Незапланированное кол-во"
@@ -3805,16 +3799,16 @@ msgid "Move History (parent moves)"
msgstr "История перемещений (родительские перемещения)"
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr "Будущие остатки"
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Ошибка"
@@ -3953,7 +3947,7 @@ msgid "Split Move"
msgstr "Разбивающее перемещение"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -4002,7 +3996,6 @@ msgstr ""
"он не установлен для ТМЦ, то будет использован из категории ТМЦ."
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr ""
@@ -4014,7 +4007,7 @@ msgid "Location Content"
msgstr "Содержимое места хранения"
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Произведенное кол-во"
@@ -4023,7 +4016,6 @@ msgstr "Произведенное кол-во"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Счет стоимости исходящих ТМЦ"
@@ -4077,13 +4069,12 @@ msgid "Invoiced date"
msgstr "Дата выставления счета"
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "Внимание !"
@@ -4719,6 +4710,9 @@ msgstr "Дополнительные подробности локализаци
#~ msgid "STOCK_HOME"
#~ msgstr "STOCK_HOME"
+#~ msgid "Stock Variation Account"
+#~ msgstr "Счет изменения стоимости ТМЦ"
+
#, python-format
#~ msgid "INV: "
#~ msgstr "ИНВ: "
diff --git a/addons/stock/i18n/sl.po b/addons/stock/i18n/sl.po
index 105a28e9bb0..6103711e21c 100644
--- a/addons/stock/i18n/sl.po
+++ b/addons/stock/i18n/sl.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:57+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:34+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -151,7 +151,7 @@ msgid "UoM"
msgstr "ME"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -180,14 +180,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr ""
@@ -243,8 +243,7 @@ msgid "Reference"
msgstr "Sklic"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr ""
@@ -267,16 +266,15 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr ""
@@ -306,7 +304,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr ""
@@ -421,7 +419,7 @@ msgid "In Qty"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr ""
@@ -498,7 +496,7 @@ msgid "Move History (child moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -518,7 +516,7 @@ msgid "Destination Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -567,7 +565,7 @@ msgid "Location / Product"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr ""
@@ -697,7 +695,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr ""
@@ -780,7 +778,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1004,7 +1002,7 @@ msgid "Author"
msgstr "Avtor"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr ""
@@ -1141,7 +1139,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1149,7 +1147,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1172,7 +1170,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1212,7 +1210,7 @@ msgid "Additional Info"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr ""
@@ -1223,7 +1221,7 @@ msgid "From"
msgstr "Od"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1351,13 +1349,12 @@ msgid "None"
msgstr "Brez"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr ""
@@ -1409,7 +1406,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1449,7 +1446,7 @@ msgid "Supplier Location"
msgstr "Lokacija dobavitelja"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1561,7 +1558,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr ""
@@ -1638,7 +1635,7 @@ msgid "Warehouse Dashboard"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr ""
@@ -1652,7 +1649,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1709,13 +1706,13 @@ msgid "Shipping Address :"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1792,7 +1789,7 @@ msgid "Quantity per lot"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1800,7 +1797,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr ""
@@ -1937,7 +1934,6 @@ msgstr ""
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr ""
@@ -1995,7 +1991,7 @@ msgid "Inventory loss"
msgstr "Primanjkljaj inventarja"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr ""
@@ -2085,14 +2081,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2116,13 +2112,13 @@ msgid "Shipping Type"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2149,7 +2145,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2187,7 +2183,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr ""
@@ -2265,7 +2261,7 @@ msgid "Source"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2305,7 +2301,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Napaka!"
@@ -2371,7 +2367,7 @@ msgid "Maxtor Suppliers"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2482,7 +2478,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2538,7 +2534,7 @@ msgid "Quantity (UOS)"
msgstr "Količina (Prodajna EM)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2577,7 +2573,7 @@ msgid "Properties"
msgstr "Lastnosti"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr ""
@@ -2585,7 +2581,6 @@ msgstr ""
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr ""
@@ -2623,7 +2618,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2709,7 +2704,7 @@ msgid "Date done"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2787,14 +2782,14 @@ msgid "Product"
msgstr "Proizvod"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2821,7 +2816,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2967,7 +2962,7 @@ msgid "All at once"
msgstr "Vse naenkrat"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2975,7 +2970,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr ""
@@ -2986,7 +2981,7 @@ msgid "To Invoice"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr ""
@@ -3061,8 +3056,7 @@ msgid "Icon"
msgstr "Ikona"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "NapakaUporabnika"
@@ -3089,14 +3083,14 @@ msgstr "Ne evropske stranke"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3104,7 +3098,7 @@ msgid "Error!"
msgstr "Napaka!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3136,7 +3130,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3171,8 +3165,8 @@ msgid "Warning"
msgstr "Opozorilo"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3274,7 +3268,7 @@ msgid "Reporting"
msgstr "Poročanje"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3323,7 +3317,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3334,7 +3328,7 @@ msgid "Customers"
msgstr "Stranke"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr ""
@@ -3345,13 +3339,13 @@ msgid "Stock Inventory Lines"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr ""
@@ -3513,7 +3507,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3526,7 +3520,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3542,7 +3536,7 @@ msgid "Set to zero"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3554,13 +3548,13 @@ msgstr ""
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr ""
@@ -3598,16 +3592,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Napaka"
@@ -3740,7 +3734,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3784,7 +3778,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr ""
@@ -3796,7 +3789,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr ""
@@ -3805,7 +3798,6 @@ msgstr ""
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr ""
@@ -3859,13 +3851,12 @@ msgid "Invoiced date"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr ""
diff --git a/addons/stock/i18n/sq.po b/addons/stock/i18n/sq.po
index 19dfaa8c0b0..b4bf5de3627 100644
--- a/addons/stock/i18n/sq.po
+++ b/addons/stock/i18n/sq.po
@@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:55+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:32+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -152,7 +152,7 @@ msgid "UoM"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -181,14 +181,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr ""
@@ -244,8 +244,7 @@ msgid "Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr ""
@@ -268,16 +267,15 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr ""
@@ -307,7 +305,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr ""
@@ -422,7 +420,7 @@ msgid "In Qty"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr ""
@@ -499,7 +497,7 @@ msgid "Move History (child moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -519,7 +517,7 @@ msgid "Destination Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -568,7 +566,7 @@ msgid "Location / Product"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr ""
@@ -698,7 +696,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr ""
@@ -781,7 +779,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1005,7 +1003,7 @@ msgid "Author"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr ""
@@ -1142,7 +1140,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1150,7 +1148,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1173,7 +1171,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1213,7 +1211,7 @@ msgid "Additional Info"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr ""
@@ -1224,7 +1222,7 @@ msgid "From"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1352,13 +1350,12 @@ msgid "None"
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr ""
@@ -1410,7 +1407,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1450,7 +1447,7 @@ msgid "Supplier Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1562,7 +1559,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr ""
@@ -1639,7 +1636,7 @@ msgid "Warehouse Dashboard"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr ""
@@ -1653,7 +1650,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1710,13 +1707,13 @@ msgid "Shipping Address :"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1793,7 +1790,7 @@ msgid "Quantity per lot"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1801,7 +1798,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr ""
@@ -1938,7 +1935,6 @@ msgstr ""
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr ""
@@ -1996,7 +1992,7 @@ msgid "Inventory loss"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr ""
@@ -2086,14 +2082,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2117,13 +2113,13 @@ msgid "Shipping Type"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2150,7 +2146,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2188,7 +2184,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr ""
@@ -2266,7 +2262,7 @@ msgid "Source"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2306,7 +2302,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr ""
@@ -2372,7 +2368,7 @@ msgid "Maxtor Suppliers"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2483,7 +2479,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2539,7 +2535,7 @@ msgid "Quantity (UOS)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2578,7 +2574,7 @@ msgid "Properties"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr ""
@@ -2586,7 +2582,6 @@ msgstr ""
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr ""
@@ -2624,7 +2619,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2710,7 +2705,7 @@ msgid "Date done"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2788,14 +2783,14 @@ msgid "Product"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2822,7 +2817,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2968,7 +2963,7 @@ msgid "All at once"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2976,7 +2971,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr ""
@@ -2987,7 +2982,7 @@ msgid "To Invoice"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr ""
@@ -3062,8 +3057,7 @@ msgid "Icon"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr ""
@@ -3090,14 +3084,14 @@ msgstr ""
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3105,7 +3099,7 @@ msgid "Error!"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3137,7 +3131,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3172,8 +3166,8 @@ msgid "Warning"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3275,7 +3269,7 @@ msgid "Reporting"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3324,7 +3318,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3335,7 +3329,7 @@ msgid "Customers"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr ""
@@ -3346,13 +3340,13 @@ msgid "Stock Inventory Lines"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr ""
@@ -3514,7 +3508,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3527,7 +3521,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3543,7 +3537,7 @@ msgid "Set to zero"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3555,13 +3549,13 @@ msgstr ""
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr ""
@@ -3599,16 +3593,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr ""
@@ -3741,7 +3735,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3785,7 +3779,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr ""
@@ -3797,7 +3790,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr ""
@@ -3806,7 +3799,6 @@ msgstr ""
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr ""
@@ -3860,13 +3852,12 @@ msgid "Invoiced date"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr ""
diff --git a/addons/stock/i18n/sr.po b/addons/stock/i18n/sr.po
index e4ab4190a57..ad10863e42a 100644
--- a/addons/stock/i18n/sr.po
+++ b/addons/stock/i18n/sr.po
@@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:57+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:34+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -154,7 +154,7 @@ msgid "UoM"
msgstr "JM"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -183,14 +183,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr ""
@@ -246,8 +246,7 @@ msgid "Reference"
msgstr "Referenca"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr ""
@@ -272,7 +271,7 @@ msgid "Split lines"
msgstr "Podeli linije"
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
@@ -280,10 +279,9 @@ msgstr ""
"'zavrseno' !"
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Upozorenje !"
@@ -313,7 +311,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "Nema Fakturisanja"
@@ -428,7 +426,7 @@ msgid "In Qty"
msgstr "U Kol"
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "Nema proizvoda na ovoj lokaciji."
@@ -507,7 +505,7 @@ msgid "Move History (child moves)"
msgstr "Pomeri Istoriju ( pomeranja podnivoa)"
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -527,7 +525,7 @@ msgid "Destination Location"
msgstr "Lokacija destinacije"
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr "Ne mozes da procesuiras izbor bez pomeranja lagera"
@@ -576,7 +574,7 @@ msgid "Location / Product"
msgstr "Lokacija / Proizvod"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr "Prijem"
@@ -708,7 +706,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr ""
@@ -792,7 +790,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1018,7 +1016,7 @@ msgid "Author"
msgstr "Autor"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr ""
@@ -1155,7 +1153,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1163,7 +1161,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1186,7 +1184,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1226,7 +1224,7 @@ msgid "Additional Info"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr ""
@@ -1237,7 +1235,7 @@ msgid "From"
msgstr "Od"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1365,13 +1363,12 @@ msgid "None"
msgstr "Ništa"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr ""
@@ -1423,7 +1420,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1463,7 +1460,7 @@ msgid "Supplier Location"
msgstr "Lokacija dobavljača"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1575,7 +1572,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Isporučena kol."
@@ -1652,7 +1649,7 @@ msgid "Warehouse Dashboard"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "Ne možete da obrišete stavku partije!"
@@ -1666,7 +1663,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1723,13 +1720,13 @@ msgid "Shipping Address :"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Navedite količine vraćenih proizvoda."
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1808,7 +1805,7 @@ msgid "Quantity per lot"
msgstr "Količina po partiji"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1816,7 +1813,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Primljena kol."
@@ -1953,7 +1950,6 @@ msgstr ""
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Nalog ulaznih zaliha"
@@ -2011,7 +2007,7 @@ msgid "Inventory loss"
msgstr "Popisni gubitak"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr ""
@@ -2101,14 +2097,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2132,13 +2128,13 @@ msgid "Shipping Type"
msgstr "Tip isporuke"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Možete da izbrišete isključivo nacrte premeštanja."
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2165,7 +2161,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2203,7 +2199,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr "P&L kol."
@@ -2281,7 +2277,7 @@ msgid "Source"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2321,7 +2317,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Greška !"
@@ -2387,7 +2383,7 @@ msgid "Maxtor Suppliers"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2498,7 +2494,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2554,7 +2550,7 @@ msgid "Quantity (UOS)"
msgstr "Količina (KOL)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2593,7 +2589,7 @@ msgid "Properties"
msgstr "Osobine"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Greška, nema partnera!"
@@ -2601,7 +2597,6 @@ msgstr "Greška, nema partnera!"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr ""
@@ -2639,7 +2634,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2725,7 +2720,7 @@ msgid "Date done"
msgstr "Datum završetka"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2803,14 +2798,14 @@ msgid "Product"
msgstr "Proizvod"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2837,7 +2832,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2983,7 +2978,7 @@ msgid "All at once"
msgstr "Sve odjednom"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2991,7 +2986,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr ""
@@ -3002,7 +2997,7 @@ msgid "To Invoice"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr ""
@@ -3077,8 +3072,7 @@ msgid "Icon"
msgstr "Ikona"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "Korisnička greška"
@@ -3105,14 +3099,14 @@ msgstr "Kupci koji nisu iz Evrope"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3120,7 +3114,7 @@ msgid "Error!"
msgstr "Greška!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3152,7 +3146,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3187,8 +3181,8 @@ msgid "Warning"
msgstr "Upozorenje"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3292,7 +3286,7 @@ msgid "Reporting"
msgstr "Izveštavanje"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3341,7 +3335,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3352,7 +3346,7 @@ msgid "Customers"
msgstr "Kupac"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr ""
@@ -3363,13 +3357,13 @@ msgid "Stock Inventory Lines"
msgstr "Stavke popisa zaliha"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr ""
@@ -3531,7 +3525,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3544,7 +3538,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3560,7 +3554,7 @@ msgid "Set to zero"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3572,13 +3566,13 @@ msgstr ""
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Neplanirana kol."
@@ -3616,16 +3610,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Greška"
@@ -3758,7 +3752,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3802,7 +3796,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr ""
@@ -3814,7 +3807,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Proizvedena kol."
@@ -3823,7 +3816,6 @@ msgstr "Proizvedena kol."
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Izlazni nalog zaliha"
@@ -3877,13 +3869,12 @@ msgid "Invoiced date"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr ""
diff --git a/addons/stock/i18n/sr@latin.po b/addons/stock/i18n/sr@latin.po
index 8c41165c340..ad2c0c2f3ec 100644
--- a/addons/stock/i18n/sr@latin.po
+++ b/addons/stock/i18n/sr@latin.po
@@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:58+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:35+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -154,7 +154,7 @@ msgid "UoM"
msgstr "JM"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -183,14 +183,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr ""
@@ -246,8 +246,7 @@ msgid "Reference"
msgstr "Referenca"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr ""
@@ -272,7 +271,7 @@ msgid "Split lines"
msgstr "Podeli linije"
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
@@ -280,10 +279,9 @@ msgstr ""
"'zavrseno' !"
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Upozorenje !"
@@ -313,7 +311,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "Nema Fakturisanja"
@@ -428,7 +426,7 @@ msgid "In Qty"
msgstr "U Kol"
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "Nema proizvoda na ovoj lokaciji."
@@ -507,7 +505,7 @@ msgid "Move History (child moves)"
msgstr "Pomeri Istoriju ( pomeranja podnivoa)"
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -527,7 +525,7 @@ msgid "Destination Location"
msgstr "Lokacija destinacije"
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr "Ne mozes da procesuiras izbor bez pomeranja lagera"
@@ -576,7 +574,7 @@ msgid "Location / Product"
msgstr "Lokacija / Proizvod"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr "Prijem"
@@ -708,7 +706,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr ""
@@ -792,7 +790,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1018,7 +1016,7 @@ msgid "Author"
msgstr "Autor"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr ""
@@ -1155,7 +1153,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1163,7 +1161,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1186,7 +1184,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1226,7 +1224,7 @@ msgid "Additional Info"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr ""
@@ -1237,7 +1235,7 @@ msgid "From"
msgstr "Od"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1365,13 +1363,12 @@ msgid "None"
msgstr "Ništa"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr ""
@@ -1423,7 +1420,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1463,7 +1460,7 @@ msgid "Supplier Location"
msgstr "Lokacija dobavljača"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1575,7 +1572,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Isporučena kol."
@@ -1652,7 +1649,7 @@ msgid "Warehouse Dashboard"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "Ne možete da obrišete stavku partije!"
@@ -1666,7 +1663,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1723,13 +1720,13 @@ msgid "Shipping Address :"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Navedite količine vraćenih proizvoda."
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1808,7 +1805,7 @@ msgid "Quantity per lot"
msgstr "Količina po partiji"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1816,7 +1813,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Primljena kol."
@@ -1953,7 +1950,6 @@ msgstr ""
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Nalog ulaznih zaliha"
@@ -2011,7 +2007,7 @@ msgid "Inventory loss"
msgstr "Popisni gubitak"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr ""
@@ -2101,14 +2097,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2132,13 +2128,13 @@ msgid "Shipping Type"
msgstr "Tip isporuke"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Možete da izbrišete isključivo nacrte premeštanja."
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2165,7 +2161,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2203,7 +2199,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr "P&L kol."
@@ -2281,7 +2277,7 @@ msgid "Source"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2321,7 +2317,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Greška !"
@@ -2387,7 +2383,7 @@ msgid "Maxtor Suppliers"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2498,7 +2494,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2554,7 +2550,7 @@ msgid "Quantity (UOS)"
msgstr "Količina (KOL)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2593,7 +2589,7 @@ msgid "Properties"
msgstr "Osobine"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Greška, nema partnera!"
@@ -2601,7 +2597,6 @@ msgstr "Greška, nema partnera!"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr ""
@@ -2639,7 +2634,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2725,7 +2720,7 @@ msgid "Date done"
msgstr "Datum završetka"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2803,14 +2798,14 @@ msgid "Product"
msgstr "Proizvod"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2837,7 +2832,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2983,7 +2978,7 @@ msgid "All at once"
msgstr "Sve odjednom"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2991,7 +2986,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr ""
@@ -3002,7 +2997,7 @@ msgid "To Invoice"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr ""
@@ -3077,8 +3072,7 @@ msgid "Icon"
msgstr "Ikona"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "Korisnička greška"
@@ -3105,14 +3099,14 @@ msgstr "Kupci koji nisu iz Evrope"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3120,7 +3114,7 @@ msgid "Error!"
msgstr "Greška!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3152,7 +3146,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3187,8 +3181,8 @@ msgid "Warning"
msgstr "Upozorenje"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3292,7 +3286,7 @@ msgid "Reporting"
msgstr "Izveštavanje"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3341,7 +3335,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3352,7 +3346,7 @@ msgid "Customers"
msgstr "Kupac"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr ""
@@ -3363,13 +3357,13 @@ msgid "Stock Inventory Lines"
msgstr "Stavke popisa zaliha"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr ""
@@ -3531,7 +3525,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3544,7 +3538,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3560,7 +3554,7 @@ msgid "Set to zero"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3572,13 +3566,13 @@ msgstr ""
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Neplanirana kol."
@@ -3616,16 +3610,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Greška"
@@ -3758,7 +3752,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3802,7 +3796,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr ""
@@ -3814,7 +3807,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Proizvedena kol."
@@ -3823,7 +3816,6 @@ msgstr "Proizvedena kol."
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Izlazni nalog zaliha"
@@ -3877,13 +3869,12 @@ msgid "Invoiced date"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr ""
diff --git a/addons/stock/i18n/stock.pot b/addons/stock/i18n/stock.pot
index b09b739c04e..c9a9f0d78bb 100644
--- a/addons/stock/i18n/stock.pot
+++ b/addons/stock/i18n/stock.pot
@@ -1978,8 +1978,8 @@ msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2036,7 +2036,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid "When real-time inventory valuation is enabled on a product, this account will hold the current value of the products."
msgstr ""
diff --git a/addons/stock/i18n/sv.po b/addons/stock/i18n/sv.po
index 438d2e760e2..50269996506 100644
--- a/addons/stock/i18n/sv.po
+++ b/addons/stock/i18n/sv.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:57+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:34+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -151,7 +151,7 @@ msgid "UoM"
msgstr "UoM"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -180,14 +180,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr ""
@@ -243,8 +243,7 @@ msgid "Reference"
msgstr "Reference"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr ""
@@ -267,16 +266,15 @@ msgid "Split lines"
msgstr "Dela rader"
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Varning!"
@@ -306,7 +304,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr "Valuta som enhetspriset visas i"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "Ej faktura"
@@ -421,7 +419,7 @@ msgid "In Qty"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "No product in this location."
@@ -498,7 +496,7 @@ msgid "Move History (child moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -518,7 +516,7 @@ msgid "Destination Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -567,7 +565,7 @@ msgid "Location / Product"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr ""
@@ -697,7 +695,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr "Framtida mottagningar"
@@ -780,7 +778,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr "Future P&L"
@@ -1004,7 +1002,7 @@ msgid "Author"
msgstr "Author"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr ""
@@ -1141,7 +1139,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1149,7 +1147,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1172,7 +1170,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1212,7 +1210,7 @@ msgid "Additional Info"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr ""
@@ -1223,7 +1221,7 @@ msgid "From"
msgstr "From"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1351,13 +1349,12 @@ msgid "None"
msgstr "None"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Downstream traceability"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr ""
@@ -1409,7 +1406,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1449,7 +1446,7 @@ msgid "Supplier Location"
msgstr "Supplier Location"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1561,7 +1558,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Delivered Qty"
@@ -1638,7 +1635,7 @@ msgid "Warehouse Dashboard"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "You can not remove a lot line !"
@@ -1652,7 +1649,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr "You cannot remove the picking which is in %s state !"
@@ -1709,13 +1706,13 @@ msgid "Shipping Address :"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Provide the quantities of the returned products."
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1794,7 +1791,7 @@ msgid "Quantity per lot"
msgstr "Quantity per lot"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1802,7 +1799,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Received Qty"
@@ -1939,7 +1936,6 @@ msgstr ""
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Stock Input Account"
@@ -1997,7 +1993,7 @@ msgid "Inventory loss"
msgstr "Inventory loss"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr ""
@@ -2087,14 +2083,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr "Future Qty"
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2118,13 +2114,13 @@ msgid "Shipping Type"
msgstr "Shipping Type"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "You can only delete draft moves."
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2151,7 +2147,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2189,7 +2185,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr "P&L Qty"
@@ -2198,7 +2194,7 @@ msgstr "P&L Qty"
#: view:stock.production.lot:0
#: field:stock.production.lot,revisions:0
msgid "Revisions"
-msgstr "Revisions"
+msgstr "Revideringar"
#. module: stock
#: view:stock.picking:0
@@ -2267,7 +2263,7 @@ msgid "Source"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2307,7 +2303,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Error !"
@@ -2373,7 +2369,7 @@ msgid "Maxtor Suppliers"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2484,7 +2480,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2540,7 +2536,7 @@ msgid "Quantity (UOS)"
msgstr "Quantity (UOS)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2579,7 +2575,7 @@ msgid "Properties"
msgstr "Properties"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Error, no partner !"
@@ -2587,7 +2583,6 @@ msgstr "Error, no partner !"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Incoterms"
@@ -2625,7 +2620,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2711,7 +2706,7 @@ msgid "Date done"
msgstr "Date done"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2790,14 +2785,14 @@ msgid "Product"
msgstr "Produkt"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2824,7 +2819,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2970,7 +2965,7 @@ msgid "All at once"
msgstr "All at once"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2978,7 +2973,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr "Framtida produktioner"
@@ -2989,7 +2984,7 @@ msgid "To Invoice"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "Return lines"
@@ -3064,8 +3059,7 @@ msgid "Icon"
msgstr "Icon"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "UserError"
@@ -3092,14 +3086,14 @@ msgstr ""
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3107,7 +3101,7 @@ msgid "Error!"
msgstr "Error!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3139,7 +3133,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3174,8 +3168,8 @@ msgid "Warning"
msgstr "Warning"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3279,7 +3273,7 @@ msgid "Reporting"
msgstr "Rapportering"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3328,7 +3322,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3339,7 +3333,7 @@ msgid "Customers"
msgstr "Customers"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr ""
@@ -3350,13 +3344,13 @@ msgid "Stock Inventory Lines"
msgstr "Stock Inventory Lines"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr "Framtida leveranser"
@@ -3518,7 +3512,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3531,7 +3525,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3547,7 +3541,7 @@ msgid "Set to zero"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3559,13 +3553,13 @@ msgstr ""
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Unplanned Qty"
@@ -3603,16 +3597,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr "Framtida lager"
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Error"
@@ -3745,7 +3739,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3789,7 +3783,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Upstream traceability"
@@ -3801,7 +3794,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Produced Qty"
@@ -3810,7 +3803,6 @@ msgstr "Produced Qty"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Stock Output Account"
@@ -3864,13 +3856,12 @@ msgid "Invoiced date"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "Varning !"
diff --git a/addons/stock/i18n/th.po b/addons/stock/i18n/th.po
index 0aaa6d5ae33..3fa46d3dca7 100644
--- a/addons/stock/i18n/th.po
+++ b/addons/stock/i18n/th.po
@@ -14,8 +14,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:57+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:34+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -152,7 +152,7 @@ msgid "UoM"
msgstr "หน่วยวัด"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -181,14 +181,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr ""
@@ -244,8 +244,7 @@ msgid "Reference"
msgstr "ข้อมูลอ้างอิง"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr ""
@@ -268,16 +267,15 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr ""
@@ -307,7 +305,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr ""
@@ -422,7 +420,7 @@ msgid "In Qty"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr ""
@@ -499,7 +497,7 @@ msgid "Move History (child moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -519,7 +517,7 @@ msgid "Destination Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -568,7 +566,7 @@ msgid "Location / Product"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr ""
@@ -698,7 +696,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr ""
@@ -781,7 +779,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1005,7 +1003,7 @@ msgid "Author"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr ""
@@ -1142,7 +1140,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1150,7 +1148,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1173,7 +1171,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1213,7 +1211,7 @@ msgid "Additional Info"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr ""
@@ -1224,7 +1222,7 @@ msgid "From"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1352,13 +1350,12 @@ msgid "None"
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr ""
@@ -1410,7 +1407,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1450,7 +1447,7 @@ msgid "Supplier Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1562,7 +1559,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr ""
@@ -1639,7 +1636,7 @@ msgid "Warehouse Dashboard"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr ""
@@ -1653,7 +1650,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1710,13 +1707,13 @@ msgid "Shipping Address :"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1793,7 +1790,7 @@ msgid "Quantity per lot"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1801,7 +1798,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr ""
@@ -1938,7 +1935,6 @@ msgstr ""
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr ""
@@ -1996,7 +1992,7 @@ msgid "Inventory loss"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr ""
@@ -2086,14 +2082,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2117,13 +2113,13 @@ msgid "Shipping Type"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2150,7 +2146,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2188,7 +2184,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr ""
@@ -2266,7 +2262,7 @@ msgid "Source"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2306,7 +2302,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr ""
@@ -2372,7 +2368,7 @@ msgid "Maxtor Suppliers"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2483,7 +2479,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2539,7 +2535,7 @@ msgid "Quantity (UOS)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2578,7 +2574,7 @@ msgid "Properties"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr ""
@@ -2586,7 +2582,6 @@ msgstr ""
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr ""
@@ -2624,7 +2619,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2710,7 +2705,7 @@ msgid "Date done"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2788,14 +2783,14 @@ msgid "Product"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2822,7 +2817,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2968,7 +2963,7 @@ msgid "All at once"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2976,7 +2971,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr ""
@@ -2987,7 +2982,7 @@ msgid "To Invoice"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr ""
@@ -3062,8 +3057,7 @@ msgid "Icon"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr ""
@@ -3090,14 +3084,14 @@ msgstr ""
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3105,7 +3099,7 @@ msgid "Error!"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3137,7 +3131,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3172,8 +3166,8 @@ msgid "Warning"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3275,7 +3269,7 @@ msgid "Reporting"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3324,7 +3318,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3335,7 +3329,7 @@ msgid "Customers"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr ""
@@ -3346,13 +3340,13 @@ msgid "Stock Inventory Lines"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr ""
@@ -3514,7 +3508,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3527,7 +3521,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3543,7 +3537,7 @@ msgid "Set to zero"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3555,13 +3549,13 @@ msgstr ""
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr ""
@@ -3599,16 +3593,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr ""
@@ -3741,7 +3735,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3785,7 +3779,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr ""
@@ -3797,7 +3790,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr ""
@@ -3806,7 +3799,6 @@ msgstr ""
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr ""
@@ -3860,13 +3852,12 @@ msgid "Invoiced date"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr ""
diff --git a/addons/stock/i18n/tlh.po b/addons/stock/i18n/tlh.po
index 79533647047..b20814d9889 100644
--- a/addons/stock/i18n/tlh.po
+++ b/addons/stock/i18n/tlh.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:57+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:34+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -151,7 +151,7 @@ msgid "UoM"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -180,14 +180,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr ""
@@ -243,8 +243,7 @@ msgid "Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr ""
@@ -267,16 +266,15 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr ""
@@ -306,7 +304,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr ""
@@ -421,7 +419,7 @@ msgid "In Qty"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr ""
@@ -498,7 +496,7 @@ msgid "Move History (child moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -518,7 +516,7 @@ msgid "Destination Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -567,7 +565,7 @@ msgid "Location / Product"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr ""
@@ -697,7 +695,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr ""
@@ -780,7 +778,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1004,7 +1002,7 @@ msgid "Author"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr ""
@@ -1141,7 +1139,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1149,7 +1147,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1172,7 +1170,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1212,7 +1210,7 @@ msgid "Additional Info"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr ""
@@ -1223,7 +1221,7 @@ msgid "From"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1351,13 +1349,12 @@ msgid "None"
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr ""
@@ -1409,7 +1406,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1449,7 +1446,7 @@ msgid "Supplier Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1561,7 +1558,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr ""
@@ -1638,7 +1635,7 @@ msgid "Warehouse Dashboard"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr ""
@@ -1652,7 +1649,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1709,13 +1706,13 @@ msgid "Shipping Address :"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1792,7 +1789,7 @@ msgid "Quantity per lot"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1800,7 +1797,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr ""
@@ -1937,7 +1934,6 @@ msgstr ""
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr ""
@@ -1995,7 +1991,7 @@ msgid "Inventory loss"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr ""
@@ -2085,14 +2081,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2116,13 +2112,13 @@ msgid "Shipping Type"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2149,7 +2145,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2187,7 +2183,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr ""
@@ -2265,7 +2261,7 @@ msgid "Source"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2305,7 +2301,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr ""
@@ -2371,7 +2367,7 @@ msgid "Maxtor Suppliers"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2482,7 +2478,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2538,7 +2534,7 @@ msgid "Quantity (UOS)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2577,7 +2573,7 @@ msgid "Properties"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr ""
@@ -2585,7 +2581,6 @@ msgstr ""
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr ""
@@ -2623,7 +2618,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2709,7 +2704,7 @@ msgid "Date done"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2787,14 +2782,14 @@ msgid "Product"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2821,7 +2816,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2967,7 +2962,7 @@ msgid "All at once"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2975,7 +2970,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr ""
@@ -2986,7 +2981,7 @@ msgid "To Invoice"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr ""
@@ -3061,8 +3056,7 @@ msgid "Icon"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr ""
@@ -3089,14 +3083,14 @@ msgstr ""
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3104,7 +3098,7 @@ msgid "Error!"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3136,7 +3130,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3171,8 +3165,8 @@ msgid "Warning"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3274,7 +3268,7 @@ msgid "Reporting"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3323,7 +3317,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3334,7 +3328,7 @@ msgid "Customers"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr ""
@@ -3345,13 +3339,13 @@ msgid "Stock Inventory Lines"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr ""
@@ -3513,7 +3507,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3526,7 +3520,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3542,7 +3536,7 @@ msgid "Set to zero"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3554,13 +3548,13 @@ msgstr ""
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr ""
@@ -3598,16 +3592,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr ""
@@ -3740,7 +3734,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3784,7 +3778,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr ""
@@ -3796,7 +3789,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr ""
@@ -3805,7 +3798,6 @@ msgstr ""
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr ""
@@ -3859,13 +3851,12 @@ msgid "Invoiced date"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr ""
diff --git a/addons/stock/i18n/tr.po b/addons/stock/i18n/tr.po
index c85a4612632..f2e8ea401f5 100644
--- a/addons/stock/i18n/tr.po
+++ b/addons/stock/i18n/tr.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:57+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:34+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -158,7 +158,7 @@ msgid "UoM"
msgstr "Ölçü Birimi"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -191,14 +191,14 @@ msgstr ""
"ayarlanabilir."
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr "#%s hareketi için kısmi alım verileri eksik"
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "Ürün Alma/Teslim Etme"
@@ -257,8 +257,7 @@ msgid "Reference"
msgstr "Kaynak"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr "İşlenecek Ürünler"
@@ -283,16 +282,15 @@ msgid "Split lines"
msgstr "Ayırma çizgileri"
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr "Stok hareketi yapıldı durumunda olduğundan alımı iptal edemezsiniz!"
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Uyarı!"
@@ -322,7 +320,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr "Birim maliyetin ifade edildiği para birimi"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "Faturalama yok"
@@ -438,7 +436,7 @@ msgid "In Qty"
msgstr "Gelen Miktar"
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "Bu lokasyonda ürün yok."
@@ -518,7 +516,7 @@ msgid "Move History (child moves)"
msgstr "Hareket Geçmişi (alt hareketler)"
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -540,7 +538,7 @@ msgid "Destination Location"
msgstr "Hedef Lokasyon"
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr "Stok hareketleri olmadan alımı gerçekleştiremezsiniz"
@@ -593,7 +591,7 @@ msgid "Location / Product"
msgstr "Lokasyon / Ürün"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr "Kabul"
@@ -732,7 +730,7 @@ msgid "Process Picking"
msgstr "İşlem Alma"
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr "Gelecek Kabuller"
@@ -817,7 +815,7 @@ msgid "Merge Inventory"
msgstr "Stok Birleştir"
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr "Gelecek Kâr ve Zarar"
@@ -1083,7 +1081,7 @@ msgid "Author"
msgstr "Yazar"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr "Teslim Emri"
@@ -1233,7 +1231,7 @@ msgstr ""
"için kaynak konum olarak, varsayılan yerine bu stok lokasyonu kullanılacaktır"
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1243,7 +1241,7 @@ msgstr ""
"kategorisinde Varyant hesabı aynıdır."
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr "taslak durumunda."
@@ -1268,7 +1266,7 @@ msgid "Chaining Type"
msgstr "Zincirleme Türü"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr "İade edilecek/faturalandırılacak"
@@ -1308,7 +1306,7 @@ msgid "Additional Info"
msgstr "Ek Bilgi"
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr "Operasyon yasaklandı"
@@ -1319,7 +1317,7 @@ msgid "From"
msgstr "Başlangıç"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1449,13 +1447,12 @@ msgid "None"
msgstr "Yok"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Çıkış izlenebilirliği"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr "Hiçbir Fatura oluşturulmadı"
@@ -1517,7 +1514,7 @@ msgstr ""
"Bu lokasyon tüm firmalar arasında paylaşılıyorsa, bu alanı boş bırakın"
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr "Lütfen ıskarta için pozitif bir değer girin!"
@@ -1564,7 +1561,7 @@ msgid "Supplier Location"
msgstr "Tedarikçi Lokasyonu"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr "ıskartaya atıldı"
@@ -1680,7 +1677,7 @@ msgid "Stock report by tracking lots"
msgstr "Lot izleyerek stok raporu"
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Teslim Edilen Miktar"
@@ -1757,7 +1754,7 @@ msgid "Warehouse Dashboard"
msgstr "Depo Performans Değerlendirme Panosu"
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "Bir lot satırını silemezsiniz!"
@@ -1771,7 +1768,7 @@ msgid "Scrap Products"
msgstr "Iskarta Ürünler"
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr "%s durumunda olan bir alımı silemezsiniz!"
@@ -1828,13 +1825,13 @@ msgid "Shipping Address :"
msgstr "Teslimat Adresi:"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "İade edilen ürünlerin miktarını girin."
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1921,7 +1918,7 @@ msgid "Quantity per lot"
msgstr "Lot başına Miktar"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1931,7 +1928,7 @@ msgstr ""
"mevcut değil: \"%s\" (id: %d)"
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Alınan Miktar"
@@ -2094,7 +2091,6 @@ msgstr "Maliyet"
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Stok Giriş Hes."
@@ -2154,7 +2150,7 @@ msgid "Inventory loss"
msgstr "Envanter kaybı"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "Belge"
@@ -2247,15 +2243,15 @@ msgid "Warehouse board"
msgstr "Depo değerlendirme panosu"
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr "Gelecek Miktar"
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
-msgstr "Stok Varyasyon Hesabı"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
+msgstr ""
#. module: stock
#: field:stock.move,note:0
@@ -2278,13 +2274,13 @@ msgid "Shipping Type"
msgstr "Sevkiyat Tipi"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "Sadece taslak hareketlerini silebilirsiniz."
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2311,7 +2307,7 @@ msgid "Location where the system will stock the finished products."
msgstr "Sistemin tamamlanan ürünleri stoklayacağı lokasyon."
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2356,7 +2352,7 @@ msgid "Expected date for the picking to be processed"
msgstr "İşlenecek alım için beklenen tarih"
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr "Kâr ve Zarar Miktarı"
@@ -2452,7 +2448,7 @@ msgid "Source"
msgstr "Kaynak"
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2492,7 +2488,7 @@ msgstr "Seri izleme"
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Hata!"
@@ -2562,7 +2558,7 @@ msgid "Maxtor Suppliers"
msgstr "Maxtor Tedarikçileri"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2676,7 +2672,7 @@ msgstr ""
"%d)"
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr "Negatif veya miktarı sıfır olan bir hareketi kullanamazsınız!"
@@ -2736,7 +2732,7 @@ msgid "Quantity (UOS)"
msgstr "Miktar (2.Br.)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2776,7 +2772,7 @@ msgid "Properties"
msgstr "Özellikler"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Hata, hiç ortak yok!"
@@ -2784,7 +2780,6 @@ msgstr "Hata, hiç ortak yok!"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Teslim Sekilleri"
@@ -2827,7 +2822,7 @@ msgid "Inventory Reference"
msgstr "Envanter Referansı"
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr "Dahili alım"
@@ -2916,7 +2911,7 @@ msgid "Date done"
msgstr "Tamamlanan Tarih"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2995,14 +2990,14 @@ msgid "Product"
msgstr "Ürün"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr "Faturalandırma"
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr "Lütfen Uygun Bir Miktar girin!"
@@ -3029,7 +3024,7 @@ msgid "Consume Products"
msgstr "Ürünleri Kullan"
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr "Lotta Yetersiz Stok!"
@@ -3181,7 +3176,7 @@ msgid "All at once"
msgstr "Tümünü birden"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -3191,7 +3186,7 @@ msgstr ""
"hareketlerinde değiştirilemez (Yönetici hariç)"
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr "Sonraki Üretimler"
@@ -3202,7 +3197,7 @@ msgid "To Invoice"
msgstr "Faturalandırılacak"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "İade kalemleri"
@@ -3283,8 +3278,7 @@ msgid "Icon"
msgstr "ikon"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "Kullanıcı Hatası"
@@ -3311,14 +3305,14 @@ msgstr "Avrupalı Olmayan Müşteriler"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3326,7 +3320,7 @@ msgid "Error!"
msgstr "Hata!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3361,7 +3355,7 @@ msgstr ""
"Bir seferde ya da doğrudan teslimatla teslim edilecek malları belirtir"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr "Bu alım listesi faturalandırma gerektirmez."
@@ -3405,8 +3399,8 @@ msgid "Warning"
msgstr "Uyarı"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr "yapıldı."
@@ -3512,7 +3506,7 @@ msgid "Reporting"
msgstr "Raporlama"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr " için "
@@ -3565,7 +3559,7 @@ msgid "Chaining Journal"
msgstr "Zincirleme Defteri"
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr "Yeterli stok yok, ürünler rezerve edilemiyor."
@@ -3576,7 +3570,7 @@ msgid "Customers"
msgstr "Müşteriler"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr "iptal edildi."
@@ -3587,13 +3581,13 @@ msgid "Stock Inventory Lines"
msgstr "Stok Envanter Kalemleri"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr "İşlem Belgesi"
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr "Sonraki Teslimatlar"
@@ -3769,7 +3763,7 @@ msgid "Existing Lot"
msgstr "Mevcut Lot"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr "En az bir tane sıfır olmayan miktar belirtin!"
@@ -3784,7 +3778,7 @@ msgstr ""
"kaynak konum olarak, varsayılan yerine bu stok lokasyonu kullanılacaktır"
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr "işleme hazır."
@@ -3800,7 +3794,7 @@ msgid "Set to zero"
msgstr "Sıfırla"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr "Bu alım listelerinin hiçbiri faturalandırma gerektirmiyor."
@@ -3812,14 +3806,14 @@ msgstr "Kasım"
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
"Ürün kategorisinde tanımlanan hiçbir defter mevcut değil: \"%s\" (id: %d)"
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Planlanmayan Miktar"
@@ -3859,16 +3853,16 @@ msgid "Move History (parent moves)"
msgstr "Hareket Geçmşi (üst hareketler)"
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr "Sonraki Stok"
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Hata"
@@ -4006,7 +4000,7 @@ msgid "Split Move"
msgstr "Hareketi Ayır"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -4055,7 +4049,6 @@ msgstr ""
"ayarlanmazsa, ürün kategorisinde olan kullanılır."
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Giriş izlenebilirliği"
@@ -4067,7 +4060,7 @@ msgid "Location Content"
msgstr "Lokasyon İçeriği"
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Üretilen Miktar"
@@ -4076,7 +4069,6 @@ msgstr "Üretilen Miktar"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Stok Çıkış Hes."
@@ -4130,13 +4122,12 @@ msgid "Invoiced date"
msgstr "Faturalandırma Tarihi"
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "Uyarı!"
@@ -4792,6 +4783,9 @@ msgstr "Opsiyonel lokalizasyon ayrıntıları, sadece bilgi amaçlı"
#~ msgid "Product "
#~ msgstr "Ürün "
+#~ msgid "Stock Variation Account"
+#~ msgstr "Stok Varyasyon Hesabı"
+
#, python-format
#~ msgid "INV: "
#~ msgstr "FAT: "
diff --git a/addons/stock/i18n/uk.po b/addons/stock/i18n/uk.po
index ad8c818fed7..e910c45882b 100644
--- a/addons/stock/i18n/uk.po
+++ b/addons/stock/i18n/uk.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:57+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:34+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -151,7 +151,7 @@ msgid "UoM"
msgstr "ОВ"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -180,14 +180,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr ""
@@ -243,8 +243,7 @@ msgid "Reference"
msgstr "Посилання"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr ""
@@ -267,16 +266,15 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr ""
@@ -306,7 +304,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr ""
@@ -421,7 +419,7 @@ msgid "In Qty"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr ""
@@ -498,7 +496,7 @@ msgid "Move History (child moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -518,7 +516,7 @@ msgid "Destination Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -567,7 +565,7 @@ msgid "Location / Product"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr ""
@@ -697,7 +695,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr ""
@@ -782,7 +780,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1006,7 +1004,7 @@ msgid "Author"
msgstr "Автор"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr ""
@@ -1143,7 +1141,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1151,7 +1149,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1174,7 +1172,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1214,7 +1212,7 @@ msgid "Additional Info"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr ""
@@ -1225,7 +1223,7 @@ msgid "From"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1353,13 +1351,12 @@ msgid "None"
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Можливість стежити за ходом"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr ""
@@ -1411,7 +1408,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1451,7 +1448,7 @@ msgid "Supplier Location"
msgstr "Постачання звідки"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1563,7 +1560,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr ""
@@ -1640,7 +1637,7 @@ msgid "Warehouse Dashboard"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr ""
@@ -1654,7 +1651,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr ""
@@ -1711,13 +1708,13 @@ msgid "Shipping Address :"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1796,7 +1793,7 @@ msgid "Quantity per lot"
msgstr "Кількість для партії"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1804,7 +1801,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr ""
@@ -1941,7 +1938,6 @@ msgstr ""
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Рахунок надходження Готової Продукції"
@@ -1999,7 +1995,7 @@ msgid "Inventory loss"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr ""
@@ -2089,14 +2085,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2120,13 +2116,13 @@ msgid "Shipping Type"
msgstr "Тип транспортування"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2153,7 +2149,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2191,7 +2187,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr ""
@@ -2269,7 +2265,7 @@ msgid "Source"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2309,7 +2305,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr ""
@@ -2375,7 +2371,7 @@ msgid "Maxtor Suppliers"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2486,7 +2482,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2542,7 +2538,7 @@ msgid "Quantity (UOS)"
msgstr "Кількість (ОП)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2581,7 +2577,7 @@ msgid "Properties"
msgstr "Властивості"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr ""
@@ -2589,7 +2585,6 @@ msgstr ""
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Incoterms"
@@ -2627,7 +2622,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2713,7 +2708,7 @@ msgid "Date done"
msgstr "Дата проведення"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2791,14 +2786,14 @@ msgid "Product"
msgstr "Продукт"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2825,7 +2820,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2971,7 +2966,7 @@ msgid "All at once"
msgstr "Все відразу"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2979,7 +2974,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr ""
@@ -2990,7 +2985,7 @@ msgid "To Invoice"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr ""
@@ -3065,8 +3060,7 @@ msgid "Icon"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr ""
@@ -3093,14 +3087,14 @@ msgstr ""
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3108,7 +3102,7 @@ msgid "Error!"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3140,7 +3134,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3175,8 +3169,8 @@ msgid "Warning"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3280,7 +3274,7 @@ msgid "Reporting"
msgstr "Звіти"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3329,7 +3323,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr ""
@@ -3340,7 +3334,7 @@ msgid "Customers"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr ""
@@ -3351,13 +3345,13 @@ msgid "Stock Inventory Lines"
msgstr "Рядки інвентаризації запасів"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr ""
@@ -3519,7 +3513,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3532,7 +3526,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr ""
@@ -3548,7 +3542,7 @@ msgid "Set to zero"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3560,13 +3554,13 @@ msgstr ""
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr ""
@@ -3604,16 +3598,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr ""
@@ -3746,7 +3740,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3790,7 +3784,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Можливість стежити проти ходу"
@@ -3802,7 +3795,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr ""
@@ -3811,7 +3804,6 @@ msgstr ""
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Рахунок списання Готової Продукції"
@@ -3865,13 +3857,12 @@ msgid "Invoiced date"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr ""
diff --git a/addons/stock/i18n/vi.po b/addons/stock/i18n/vi.po
index 866697da469..981d791ac65 100644
--- a/addons/stock/i18n/vi.po
+++ b/addons/stock/i18n/vi.po
@@ -9,13 +9,13 @@ msgstr ""
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:16+0000\n"
"PO-Revision-Date: 2011-05-02 02:30+0000\n"
-"Last-Translator: Phong Nguyen-Thanh \n"
+"Last-Translator: OpenBMS JSC \n"
"Language-Team: Vietnamese \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:57+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:34+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -153,7 +153,7 @@ msgid "UoM"
msgstr "Đơn vị đo"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -182,14 +182,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr ""
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "Sản phẩm Giao/Nhận"
@@ -245,8 +245,7 @@ msgid "Reference"
msgstr "Reference"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr "Sản phẩm để xử lý"
@@ -269,16 +268,15 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "Cảnh báo!"
@@ -308,7 +306,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "Không hóa đơn"
@@ -423,7 +421,7 @@ msgid "In Qty"
msgstr "Số lượng vào"
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "Không có sản phẩm nào tại địa điểm này."
@@ -500,7 +498,7 @@ msgid "Move History (child moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -520,7 +518,7 @@ msgid "Destination Location"
msgstr "Địa điểm đích"
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr ""
@@ -569,7 +567,7 @@ msgid "Location / Product"
msgstr "Địa điểm / Sản phẩm"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr ""
@@ -699,7 +697,7 @@ msgid "Process Picking"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr "Future Receptions"
@@ -782,7 +780,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr "Future P&L"
@@ -1006,7 +1004,7 @@ msgid "Author"
msgstr "Tác giả"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr "Yêu cầu Giao hàng"
@@ -1143,7 +1141,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1151,7 +1149,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr ""
@@ -1174,7 +1172,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1214,7 +1212,7 @@ msgid "Additional Info"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr ""
@@ -1225,7 +1223,7 @@ msgid "From"
msgstr "From"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1353,13 +1351,12 @@ msgid "None"
msgstr "None"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "Downstream traceability"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr ""
@@ -1411,7 +1408,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1451,7 +1448,7 @@ msgid "Supplier Location"
msgstr "Vị trí nhà cung cấp"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1563,7 +1560,7 @@ msgid "Stock report by tracking lots"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "Số lượng đã giao"
@@ -1640,7 +1637,7 @@ msgid "Warehouse Dashboard"
msgstr "Bảng điều khiển kho"
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "You can not remove a lot line !"
@@ -1654,7 +1651,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr "You cannot remove the picking which is in %s state !"
@@ -1711,13 +1708,13 @@ msgid "Shipping Address :"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "Provide the quantities of the returned products."
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1796,7 +1793,7 @@ msgid "Quantity per lot"
msgstr "Quantity per lot"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1804,7 +1801,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "Số lượng nhận vào"
@@ -1941,7 +1938,6 @@ msgstr ""
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "Stock Input Account"
@@ -1999,7 +1995,7 @@ msgid "Inventory loss"
msgstr "Inventory loss"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "Tài liệu"
@@ -2089,14 +2085,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr "Future Qty"
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2120,13 +2116,13 @@ msgid "Shipping Type"
msgstr "Shipping Type"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "You can only delete draft moves."
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2153,7 +2149,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2191,7 +2187,7 @@ msgid "Expected date for the picking to be processed"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr "P&L Qty"
@@ -2269,7 +2265,7 @@ msgid "Source"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2309,7 +2305,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "Error !"
@@ -2375,7 +2371,7 @@ msgid "Maxtor Suppliers"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2486,7 +2482,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2542,7 +2538,7 @@ msgid "Quantity (UOS)"
msgstr "Quantity (UOS)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2581,7 +2577,7 @@ msgid "Properties"
msgstr "Properties"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "Lỗi, không có đối tác !"
@@ -2589,7 +2585,6 @@ msgstr "Lỗi, không có đối tác !"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "Incoterms"
@@ -2627,7 +2622,7 @@ msgid "Inventory Reference"
msgstr "Tham chiếu tồn kho"
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr ""
@@ -2716,7 +2711,7 @@ msgid "Date done"
msgstr "Ngày hoàn tất"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2795,14 +2790,14 @@ msgid "Product"
msgstr "Product"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr "Hóa đơn"
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr ""
@@ -2829,7 +2824,7 @@ msgid "Consume Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr ""
@@ -2975,7 +2970,7 @@ msgid "All at once"
msgstr "All at once"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2983,7 +2978,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr "Future Productions"
@@ -2994,7 +2989,7 @@ msgid "To Invoice"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "Return lines"
@@ -3069,8 +3064,7 @@ msgid "Icon"
msgstr "Icon"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "UserError"
@@ -3097,14 +3091,14 @@ msgstr ""
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3112,7 +3106,7 @@ msgid "Error!"
msgstr "Lỗi!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3144,7 +3138,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr ""
@@ -3179,8 +3173,8 @@ msgid "Warning"
msgstr "Cảnh báo"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr ""
@@ -3284,7 +3278,7 @@ msgid "Reporting"
msgstr "Reporting"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3333,7 +3327,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr "Không đủ hàng, không thể đặt trước sản phẩm"
@@ -3344,7 +3338,7 @@ msgid "Customers"
msgstr "Các khách hàng"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr "được hủy"
@@ -3355,13 +3349,13 @@ msgid "Stock Inventory Lines"
msgstr "Stock Inventory Lines"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr "Xử lý tài liệu"
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr "Giao hàng tương lai"
@@ -3523,7 +3517,7 @@ msgid "Existing Lot"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr ""
@@ -3536,7 +3530,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr "sẵn sàng để xử lý."
@@ -3552,7 +3546,7 @@ msgid "Set to zero"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr ""
@@ -3564,13 +3558,13 @@ msgstr "Tháng Mười một"
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "Unplanned Qty"
@@ -3608,16 +3602,16 @@ msgid "Move History (parent moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr "Future Stock"
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "Lỗi"
@@ -3750,7 +3744,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3794,7 +3788,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "Upstream traceability"
@@ -3806,7 +3799,7 @@ msgid "Location Content"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "Số lượng sản xuất"
@@ -3815,7 +3808,6 @@ msgstr "Số lượng sản xuất"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "Tài khoản hàng xuất ra"
@@ -3869,13 +3861,12 @@ msgid "Invoiced date"
msgstr "Ngày ra hóa đơn"
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "Cảnh báo !"
diff --git a/addons/stock/i18n/zh_CN.po b/addons/stock/i18n/zh_CN.po
index 3c431d3778f..ddb6f393c05 100644
--- a/addons/stock/i18n/zh_CN.po
+++ b/addons/stock/i18n/zh_CN.po
@@ -13,8 +13,8 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:58+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:34+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -151,7 +151,7 @@ msgid "UoM"
msgstr "计量单位"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -180,14 +180,14 @@ msgid ""
msgstr "在进行实时盘点估值时,所有出库调拨的分录将登记在这科目.它是该产品分类的默认值,它可以直接设在每个产品上."
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr "库存调拨#%s丢失部分装箱单"
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "送货/收货单"
@@ -243,8 +243,7 @@ msgid "Reference"
msgstr "单号"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr "待处理产品"
@@ -267,16 +266,15 @@ msgid "Split lines"
msgstr "拆分明细"
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr "库存调拨在完成状态,不能取消装箱单!"
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "警告!"
@@ -306,7 +304,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr "单位成本金额的币别"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr "无发票"
@@ -421,7 +419,7 @@ msgid "In Qty"
msgstr "入库数量"
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "该库位没有产品。"
@@ -498,7 +496,7 @@ msgid "Move History (child moves)"
msgstr "调拨日志(下级调拨)"
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -518,7 +516,7 @@ msgid "Destination Location"
msgstr "目标库位"
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr "您不能处理没有调拨的装箱单"
@@ -568,7 +566,7 @@ msgid "Location / Product"
msgstr "库位/产品"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr "收货"
@@ -698,7 +696,7 @@ msgid "Process Picking"
msgstr "处理装箱单"
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr "未来的入库"
@@ -781,7 +779,7 @@ msgid "Merge Inventory"
msgstr "合并盘点"
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr "未来的产品和库位"
@@ -1026,7 +1024,7 @@ msgid "Author"
msgstr "建立者"
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr "送货单"
@@ -1167,7 +1165,7 @@ msgid ""
msgstr "对当前产品,这库位将作为默认的生产订单产生的库存调拨的源库位."
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1175,7 +1173,7 @@ msgid ""
msgstr "这产品定义的默认出库科目与用产品分类的变动科目相同,无法创建分录."
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
msgstr "处于草稿状态"
@@ -1198,7 +1196,7 @@ msgid "Chaining Type"
msgstr "库链类型"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr "已开票或退票"
@@ -1238,7 +1236,7 @@ msgid "Additional Info"
msgstr "附加信息"
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr "禁止操作"
@@ -1249,7 +1247,7 @@ msgid "From"
msgstr "来自"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr "您只希望返回已确认,可用或已完成的装箱单!"
@@ -1377,13 +1375,12 @@ msgid "None"
msgstr "空"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr "向下追溯"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr "没有创建发票"
@@ -1440,7 +1437,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr "如果此库位要在所有公司间共享,请保持此字段为空"
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr "“损耗”字段请填写一个正数"
@@ -1485,7 +1482,7 @@ msgid "Supplier Location"
msgstr "供货商库位"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr "已损耗"
@@ -1597,7 +1594,7 @@ msgid "Stock report by tracking lots"
msgstr "批次跟踪库存报表"
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "已配送数量"
@@ -1674,7 +1671,7 @@ msgid "Warehouse Dashboard"
msgstr "仓库控制台"
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr "您不能删除批次明细!"
@@ -1688,7 +1685,7 @@ msgid "Scrap Products"
msgstr "损耗产品"
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr "您不能删除状态为 %s 的装箱单!"
@@ -1745,13 +1742,13 @@ msgid "Shipping Address :"
msgstr "送货地址:"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "输入退货的数量"
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1828,7 +1825,7 @@ msgid "Quantity per lot"
msgstr "每批次数量"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1836,7 +1833,7 @@ msgid ""
msgstr "这产品或它的分类 : \"%s\" (id: %d) 没定义入库科目"
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "已接收数量"
@@ -1986,7 +1983,6 @@ msgstr "成本"
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr "入库科目"
@@ -2044,7 +2040,7 @@ msgid "Inventory loss"
msgstr "盘点盈亏"
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "单据"
@@ -2134,15 +2130,15 @@ msgid "Warehouse board"
msgstr "仓库控制台"
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr "未来数量"
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
-msgstr "库存变动科目"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
+msgstr ""
#. module: stock
#: field:stock.move,note:0
@@ -2165,13 +2161,13 @@ msgid "Shipping Type"
msgstr "运送类型"
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
msgstr "您只可删除草稿调拨"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2198,7 +2194,7 @@ msgid "Location where the system will stock the finished products."
msgstr "系统存储成品的库位"
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2238,7 +2234,7 @@ msgid "Expected date for the picking to be processed"
msgstr "处理此装箱单的预定日期"
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr "损益数量"
@@ -2323,7 +2319,7 @@ msgid "Source"
msgstr "源"
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2363,7 +2359,7 @@ msgstr "跟踪序列"
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "错误!"
@@ -2429,7 +2425,7 @@ msgid "Maxtor Suppliers"
msgstr "Maxtor 供应商"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2540,7 +2536,7 @@ msgid ""
msgstr "这产品 \"%s\" (id: %d)没定义入库科目:."
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr "不能生成一个负数或者为0的调拨!"
@@ -2596,7 +2592,7 @@ msgid "Quantity (UOS)"
msgstr "数量(销售单位)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
@@ -2635,7 +2631,7 @@ msgid "Properties"
msgstr "属性"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "错误,无业务伙伴!"
@@ -2643,7 +2639,6 @@ msgstr "错误,无业务伙伴!"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr "贸易术语"
@@ -2681,7 +2676,7 @@ msgid "Inventory Reference"
msgstr "盘点表单号"
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr "内部装箱单"
@@ -2767,7 +2762,7 @@ msgid "Date done"
msgstr "完成日期"
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2845,14 +2840,14 @@ msgid "Product"
msgstr "产品"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr "开发票"
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr "请填写一个合适的数量!"
@@ -2879,7 +2874,7 @@ msgid "Consume Products"
msgstr "消耗品"
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr "批次库存不足!"
@@ -3027,7 +3022,7 @@ msgid "All at once"
msgstr "全部一次性"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -3035,7 +3030,7 @@ msgid ""
msgstr "不能修改已经处理的库存调拨的数量,计量单位,产品和库位.(除非是管理员)"
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr "未来生产"
@@ -3046,7 +3041,7 @@ msgid "To Invoice"
msgstr "开票"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr "退货明细"
@@ -3123,8 +3118,7 @@ msgid "Icon"
msgstr "图标"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "用户错误"
@@ -3151,14 +3145,14 @@ msgstr "非欧洲客户"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3166,7 +3160,7 @@ msgid "Error!"
msgstr "错误!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3198,7 +3192,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr "它指定送货是一次性交付还是直接交付."
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr "这装箱单不需要开发票."
@@ -3238,8 +3232,8 @@ msgid "Warning"
msgstr "警告"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr "已完成。"
@@ -3341,7 +3335,7 @@ msgid "Reporting"
msgstr "报告"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr " 为了 "
@@ -3392,7 +3386,7 @@ msgid "Chaining Journal"
msgstr "连锁库位账簿"
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr "没足够的库存不能预订这产品"
@@ -3403,7 +3397,7 @@ msgid "Customers"
msgstr "客户"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr "已取消"
@@ -3414,13 +3408,13 @@ msgid "Stock Inventory Lines"
msgstr "库存盘点明细"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr "处理单据"
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr "未来送货"
@@ -3589,7 +3583,7 @@ msgid "Existing Lot"
msgstr "已存在批次"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr "请指定一个不为0的数量!"
@@ -3602,7 +3596,7 @@ msgid ""
msgstr "对现有产品这库存库位将用来替代默认作为库存调拨产生的需求的源库位."
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr "准备过程"
@@ -3618,7 +3612,7 @@ msgid "Set to zero"
msgstr "设为0."
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr "不需要发票的装箱单."
@@ -3630,13 +3624,13 @@ msgstr "11月"
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr "这产品分类: \"%s\" (id: %d)没定义账簿."
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "计划外数量"
@@ -3674,16 +3668,16 @@ msgid "Move History (parent moves)"
msgstr "调拨日志(上级调拨)"
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr "未来库存"
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "错误"
@@ -3818,7 +3812,7 @@ msgid "Split Move"
msgstr "拆分调拨"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3862,7 +3856,6 @@ msgid ""
msgstr "在进行实时库存估值时,对应的出库调拨分录将被记录在这个科目;如果没设置在这产品上就是设置在这产品分类里."
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr "向上追溯"
@@ -3874,7 +3867,7 @@ msgid "Location Content"
msgstr "库位包括"
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "产品数量"
@@ -3883,7 +3876,6 @@ msgstr "产品数量"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "出库科目"
@@ -3937,13 +3929,12 @@ msgid "Invoiced date"
msgstr "开票日期"
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "警告!"
@@ -4791,6 +4782,9 @@ msgstr "可选库位,仅供参考"
#~ msgid "Product "
#~ msgstr "产品 "
+#~ msgid "Stock Variation Account"
+#~ msgstr "库存变动科目"
+
#, python-format
#~ msgid "is consumed with"
#~ msgstr "是消耗品"
diff --git a/addons/stock/i18n/zh_TW.po b/addons/stock/i18n/zh_TW.po
index b59cc94b1b2..e46305688dd 100644
--- a/addons/stock/i18n/zh_TW.po
+++ b/addons/stock/i18n/zh_TW.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:16+0000\n"
-"PO-Revision-Date: 2011-01-28 03:06+0000\n"
+"PO-Revision-Date: 2011-09-27 10:25+0000\n"
"Last-Translator: Walter Cheuk \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:57+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-11 05:34+0000\n"
+"X-Generator: Launchpad (build 14123)\n"
#. module: stock
#: field:product.product,track_outgoing:0
@@ -151,7 +151,7 @@ msgid "UoM"
msgstr "量度單位"
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:104
+#: code:addons/stock/wizard/stock_change_product_qty.py:90
#: model:ir.actions.act_window,name:stock.action_inventory_form
#: model:ir.ui.menu,name:stock.menu_action_inventory_form
#, python-format
@@ -163,7 +163,7 @@ msgstr ""
#: view:report.stock.move:0
#: field:stock.change.standard.price,stock_journal:0
msgid "Stock journal"
-msgstr ""
+msgstr "庫存日誌"
#. module: stock
#: view:report.stock.move:0
@@ -180,14 +180,14 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1170
-#: code:addons/stock/stock.py:2415
+#: code:addons/stock/stock.py:1176
+#: code:addons/stock/stock.py:2378
#, python-format
msgid "Missing partial picking data for move #%s"
msgstr "#%s 調動缺少部份提貨資料"
#. module: stock
-#: model:ir.actions.server,name:stock.action_partial_move_server
+#: model:ir.actions.act_window,name:stock.action_partial_move
msgid "Deliver/Receive Products"
msgstr "交貨/收貨"
@@ -243,8 +243,7 @@ msgid "Reference"
msgstr "參照"
#. module: stock
-#: code:addons/stock/stock.py:666
-#: code:addons/stock/stock.py:1472
+#: code:addons/stock/stock.py:661
#, python-format
msgid "Products to Process"
msgstr ""
@@ -267,16 +266,15 @@ msgid "Split lines"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1120
+#: code:addons/stock/stock.py:1127
#, python-format
msgid "You cannot cancel picking because stock move is in done state !"
msgstr "不能取消提貨,因庫存調動已處於完成狀態!"
#. module: stock
-#: code:addons/stock/stock.py:2233
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
-#: code:addons/stock/wizard/stock_fill_inventory.py:53
+#: code:addons/stock/stock.py:2198
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Warning!"
msgstr "警告!"
@@ -306,7 +304,7 @@ msgid "Currency in which Unit cost is expressed"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "No invoicing"
msgstr ""
@@ -421,7 +419,7 @@ msgid "In Qty"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/wizard/stock_fill_inventory.py:115
#, python-format
msgid "No product in this location."
msgstr "此地點無產品"
@@ -475,7 +473,7 @@ msgstr "調動統計"
#. module: stock
#: view:stock.production.lot:0
msgid "Product Lots Filter"
-msgstr ""
+msgstr "生產批次篩選"
#. module: stock
#: report:lot.stock.overview:0
@@ -498,7 +496,7 @@ msgid "Move History (child moves)"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2015
+#: code:addons/stock/stock.py:1984
#, python-format
msgid ""
"There is no stock output account defined for this product or its category: "
@@ -518,7 +516,7 @@ msgid "Destination Location"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "You can not process picking without stock moves"
msgstr "不能處理提貨,因無庫存調動"
@@ -567,7 +565,7 @@ msgid "Location / Product"
msgstr "地點/產品"
#. module: stock
-#: code:addons/stock/stock.py:1303
+#: code:addons/stock/stock.py:1306
#, python-format
msgid "Reception"
msgstr ""
@@ -636,7 +634,7 @@ msgstr ""
#. module: stock
#: constraint:stock.move:0
msgid "You try to assign a lot which is not from the same product"
-msgstr ""
+msgstr "指定了不同產品的批次"
#. module: stock
#: view:res.partner:0
@@ -697,7 +695,7 @@ msgid "Process Picking"
msgstr "處理提貨"
#. module: stock
-#: code:addons/stock/product.py:358
+#: code:addons/stock/product.py:355
#, python-format
msgid "Future Receptions"
msgstr ""
@@ -780,7 +778,7 @@ msgid "Merge Inventory"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:374
+#: code:addons/stock/product.py:371
#, python-format
msgid "Future P&L"
msgstr ""
@@ -1004,7 +1002,7 @@ msgid "Author"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1302
+#: code:addons/stock/stock.py:1305
#, python-format
msgid "Delivery Order"
msgstr "交貨單"
@@ -1141,7 +1139,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2006
+#: code:addons/stock/stock.py:1975
#, python-format
msgid ""
"Can not create Journal Entry, Output Account defined on this product and "
@@ -1149,10 +1147,10 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1319
+#: code:addons/stock/stock.py:1322
#, python-format
msgid "is in draft state."
-msgstr "尚在草案階段"
+msgstr "尚在草案階段。"
#. module: stock
#: model:ir.actions.act_window,help:stock.action_tracking_form
@@ -1172,7 +1170,7 @@ msgid "Chaining Type"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "To be refunded/invoiced"
msgstr ""
@@ -1212,7 +1210,7 @@ msgid "Additional Info"
msgstr "附加資訊"
#. module: stock
-#: code:addons/stock/stock.py:1619
+#: code:addons/stock/stock.py:1602
#, python-format
msgid "Operation forbidden"
msgstr "禁止此操作"
@@ -1223,7 +1221,7 @@ msgid "From"
msgstr "自"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:77
+#: code:addons/stock/wizard/stock_return_picking.py:79
#, python-format
msgid "You may only return pickings that are Confirmed, Available or Done!"
msgstr ""
@@ -1351,13 +1349,12 @@ msgid "None"
msgstr "無"
#. module: stock
-#: model:ir.actions.act_window,name:stock.action3
#: view:stock.tracking:0
msgid "Downstream traceability"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "No Invoices were created"
msgstr ""
@@ -1402,6 +1399,12 @@ msgid ""
"* Done: has been processed, can't be modified or cancelled anymore\n"
"* Cancelled: has been cancelled, can't be confirmed anymore"
msgstr ""
+"* 草案(Draft): 未確認,不會安排處理直至確認\n"
+"* 確認(Confirmed): 仍等候產品有貨供應\n"
+"* 供貨(Available): 已預留產品,只等候確認\n"
+"* 等待(Waiting): 自動供貨前要再等候下一步 (如於「接單生產(Make-To-Order)」流程)\n"
+"* 完成(Done): 已處理,無法再修改或取消\n"
+"* 取消(Cancelled): 已取消,無法再確認"
#. module: stock
#: help:stock.location,company_id:0
@@ -1409,7 +1412,7 @@ msgid "Let this field empty if this location is shared between all companies"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2233
+#: code:addons/stock/stock.py:2198
#, python-format
msgid "Please provide a positive quantity to scrap!"
msgstr ""
@@ -1440,6 +1443,11 @@ msgid ""
" When the picking is done the state is 'Done'. \n"
"The state is 'Waiting' if the move is waiting for another one."
msgstr ""
+"建立調動時先處於「草案(Draft)」狀態。\n"
+" 然後,如安排者找不到貨,設為「無貨(Not Available)」狀態。\n"
+" 當已預留貨物,變成「供貨(Available)」。\n"
+" 完成提貨後狀態為「完成(Done)」。 \n"
+"如調動正等候其他工作完成,狀態為「等待(Waiting)」。"
#. module: stock
#: selection:report.stock.inventory,location_type:0
@@ -1449,7 +1457,7 @@ msgid "Supplier Location"
msgstr "供應商地點"
#. module: stock
-#: code:addons/stock/stock.py:2254
+#: code:addons/stock/stock.py:2217
#, python-format
msgid "were scrapped"
msgstr ""
@@ -1486,7 +1494,7 @@ msgstr "貨幣"
#. module: stock
#: field:product.product,track_production:0
msgid "Track Manufacturing Lots"
-msgstr ""
+msgstr "追蹤生產批次"
#. module: stock
#: code:addons/stock/wizard/stock_inventory_merge.py:44
@@ -1537,7 +1545,7 @@ msgstr "貨架 2"
#. module: stock
#: field:stock.report.tracklots,tracking_id:0
msgid "Tracking lot"
-msgstr ""
+msgstr "追蹤批次"
#. module: stock
#: view:stock.picking:0
@@ -1558,10 +1566,10 @@ msgstr "本地化"
#. module: stock
#: model:ir.model,name:stock.model_stock_report_tracklots
msgid "Stock report by tracking lots"
-msgstr ""
+msgstr "按追蹤批次庫存報告"
#. module: stock
-#: code:addons/stock/product.py:370
+#: code:addons/stock/product.py:367
#, python-format
msgid "Delivered Qty"
msgstr "交貨量"
@@ -1638,7 +1646,7 @@ msgid "Warehouse Dashboard"
msgstr "庫存儀錶板"
#. module: stock
-#: code:addons/stock/stock.py:512
+#: code:addons/stock/stock.py:510
#, python-format
msgid "You can not remove a lot line !"
msgstr ""
@@ -1652,7 +1660,7 @@ msgid "Scrap Products"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1128
+#: code:addons/stock/stock.py:1135
#, python-format
msgid "You cannot remove the picking which is in %s state !"
msgstr "無能移除處於 %s 狀態之提貨!"
@@ -1709,13 +1717,13 @@ msgid "Shipping Address :"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Provide the quantities of the returned products."
msgstr "提供退貨量"
#. module: stock
-#: code:addons/stock/stock.py:2009
+#: code:addons/stock/stock.py:1978
#, python-format
msgid ""
"Can not create Journal Entry, Input Account defined on this product and "
@@ -1792,7 +1800,7 @@ msgid "Quantity per lot"
msgstr "每批次數量"
#. module: stock
-#: code:addons/stock/stock.py:2012
+#: code:addons/stock/stock.py:1981
#, python-format
msgid ""
"There is no stock input account defined for this product or its category: "
@@ -1800,7 +1808,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:360
+#: code:addons/stock/product.py:357
#, python-format
msgid "Received Qty"
msgstr "接收量"
@@ -1937,7 +1945,6 @@ msgstr "成本"
#: field:product.category,property_stock_account_input_categ:0
#: field:product.template,property_stock_account_input:0
#: field:stock.change.standard.price,stock_account_input:0
-#: field:stock.location,valuation_in_account_id:0
msgid "Stock Input Account"
msgstr ""
@@ -1995,7 +2002,7 @@ msgid "Inventory loss"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1311
+#: code:addons/stock/stock.py:1314
#, python-format
msgid "Document"
msgstr "文件"
@@ -2085,14 +2092,14 @@ msgid "Warehouse board"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:380
+#: code:addons/stock/product.py:377
#, python-format
msgid "Future Qty"
msgstr ""
#. module: stock
-#: field:product.category,property_stock_variation:0
-msgid "Stock Variation Account"
+#: field:product.category,property_stock_valuation_account_id:0
+msgid "Stock Valuation Account"
msgstr ""
#. module: stock
@@ -2116,13 +2123,13 @@ msgid "Shipping Type"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2210
+#: code:addons/stock/stock.py:2175
#, python-format
msgid "You can only delete draft moves."
-msgstr "不能刪除調動草案"
+msgstr "只能刪除調動草案。"
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#: model:ir.actions.act_window,name:stock.act_product_location_open
#: model:ir.ui.menu,name:stock.menu_stock_products_menu
#: view:stock.inventory:0
@@ -2149,7 +2156,7 @@ msgid "Location where the system will stock the finished products."
msgstr ""
#. module: stock
-#: help:product.category,property_stock_variation:0
+#: help:product.category,property_stock_valuation_account_id:0
msgid ""
"When real-time inventory valuation is enabled on a product, this account "
"will hold the current value of the products."
@@ -2187,7 +2194,7 @@ msgid "Expected date for the picking to be processed"
msgstr "提貨預計處理日期"
#. module: stock
-#: code:addons/stock/product.py:376
+#: code:addons/stock/product.py:373
#, python-format
msgid "P&L Qty"
msgstr ""
@@ -2265,7 +2272,7 @@ msgid "Source"
msgstr "來源"
#. module: stock
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:2557
#: model:ir.model,name:stock.model_stock_inventory
#: selection:report.stock.inventory,location_type:0
#: field:stock.inventory.line,inventory_id:0
@@ -2305,7 +2312,7 @@ msgstr ""
#. module: stock
#: code:addons/stock/report/report_stock.py:78
#: code:addons/stock/report/report_stock.py:135
-#: code:addons/stock/stock.py:754
+#: code:addons/stock/stock.py:751
#, python-format
msgid "Error !"
msgstr "錯誤!"
@@ -2371,7 +2378,7 @@ msgid "Maxtor Suppliers"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_change_product_qty.py:80
+#: code:addons/stock/wizard/stock_change_product_qty.py:66
#: code:addons/stock/wizard/stock_change_standard_price.py:106
#, python-format
msgid "Active ID is not set in Context"
@@ -2482,7 +2489,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2339
+#: code:addons/stock/stock.py:2302
#, python-format
msgid "Can not consume a move with negative or zero quantity !"
msgstr ""
@@ -2538,11 +2545,11 @@ msgid "Quantity (UOS)"
msgstr "數量(量度單位)"
#. module: stock
-#: code:addons/stock/stock.py:1664
+#: code:addons/stock/stock.py:1647
#, python-format
msgid ""
"You are moving %.2f %s products but only %.2f %s available in this lot."
-msgstr ""
+msgstr "您正移動%.2f件 %s 產品,但此批次只有%.2f件 %s。"
#. module: stock
#: view:stock.move:0
@@ -2577,7 +2584,7 @@ msgid "Properties"
msgstr "屬性"
#. module: stock
-#: code:addons/stock/stock.py:974
+#: code:addons/stock/stock.py:982
#, python-format
msgid "Error, no partner !"
msgstr "錯誤,無伙伴!"
@@ -2585,7 +2592,6 @@ msgstr "錯誤,無伙伴!"
#. module: stock
#: model:ir.actions.act_window,name:stock.action_incoterms_tree
#: model:ir.model,name:stock.model_stock_incoterms
-#: model:ir.ui.menu,name:stock.menu_action_incoterm_open
#: view:stock.incoterms:0
msgid "Incoterms"
msgstr ""
@@ -2623,7 +2629,7 @@ msgid "Inventory Reference"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1304
+#: code:addons/stock/stock.py:1307
#, python-format
msgid "Internal picking"
msgstr "內部提貨"
@@ -2709,7 +2715,7 @@ msgid "Date done"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:975
+#: code:addons/stock/stock.py:983
#, python-format
msgid ""
"Please put a partner on the picking list if you want to generate invoice."
@@ -2787,14 +2793,14 @@ msgid "Product"
msgstr "產品"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:126
+#: code:addons/stock/wizard/stock_return_picking.py:135
#, python-format
msgid "Invoicing"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:2274
-#: code:addons/stock/stock.py:2334
+#: code:addons/stock/stock.py:2237
+#: code:addons/stock/stock.py:2297
#, python-format
msgid "Please provide Proper Quantity !"
msgstr "請提供合適數量!"
@@ -2821,7 +2827,7 @@ msgid "Consume Products"
msgstr "消耗產品"
#. module: stock
-#: code:addons/stock/stock.py:1663
+#: code:addons/stock/stock.py:1646
#, python-format
msgid "Insufficient Stock in Lot !"
msgstr "批次無足夠庫存!"
@@ -2967,7 +2973,7 @@ msgid "All at once"
msgstr "一次過"
#. module: stock
-#: code:addons/stock/stock.py:1620
+#: code:addons/stock/stock.py:1603
#, python-format
msgid ""
"Quantities, UoMs, Products and Locations cannot be modified on stock moves "
@@ -2975,7 +2981,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:386
+#: code:addons/stock/product.py:383
#, python-format
msgid "Future Productions"
msgstr "未來生產"
@@ -2986,7 +2992,7 @@ msgid "To Invoice"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:115
+#: code:addons/stock/wizard/stock_return_picking.py:120
#, python-format
msgid "Return lines"
msgstr ""
@@ -3032,7 +3038,7 @@ msgstr ""
#. module: stock
#: view:stock.inventory:0
msgid "Lot Inventory"
-msgstr ""
+msgstr "批次存貨"
#. module: stock
#: view:stock.move:0
@@ -3061,8 +3067,7 @@ msgid "Icon"
msgstr "圖示"
#. module: stock
-#: code:addons/stock/stock.py:2209
-#: code:addons/stock/stock.py:2617
+#: code:addons/stock/stock.py:2174
#, python-format
msgid "UserError"
msgstr "用戶錯誤"
@@ -3089,14 +3094,14 @@ msgstr "非歐洲客戶"
#: code:addons/stock/product.py:100
#: code:addons/stock/product.py:121
#: code:addons/stock/product.py:147
-#: code:addons/stock/stock.py:2006
-#: code:addons/stock/stock.py:2009
-#: code:addons/stock/stock.py:2012
-#: code:addons/stock/stock.py:2015
-#: code:addons/stock/stock.py:2018
-#: code:addons/stock/stock.py:2021
-#: code:addons/stock/stock.py:2339
-#: code:addons/stock/wizard/stock_fill_inventory.py:47
+#: code:addons/stock/stock.py:1975
+#: code:addons/stock/stock.py:1978
+#: code:addons/stock/stock.py:1981
+#: code:addons/stock/stock.py:1984
+#: code:addons/stock/stock.py:1987
+#: code:addons/stock/stock.py:1990
+#: code:addons/stock/stock.py:2302
+#: code:addons/stock/wizard/stock_fill_inventory.py:48
#: code:addons/stock/wizard/stock_splitinto.py:49
#: code:addons/stock/wizard/stock_splitinto.py:53
#, python-format
@@ -3104,7 +3109,7 @@ msgid "Error!"
msgstr "錯誤!"
#. module: stock
-#: code:addons/stock/stock.py:2021
+#: code:addons/stock/stock.py:1990
#, python-format
msgid ""
"There is no inventory variation account defined on the product category: "
@@ -3136,7 +3141,7 @@ msgid "It specifies goods to be delivered all at once or by direct delivery"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#, python-format
msgid "This picking list does not require invoicing."
msgstr "本次提貨無須發票"
@@ -3171,8 +3176,8 @@ msgid "Warning"
msgstr "警告"
#. module: stock
-#: code:addons/stock/stock.py:1318
-#: code:addons/stock/stock.py:2589
+#: code:addons/stock/stock.py:1321
+#: code:addons/stock/stock.py:2557
#, python-format
msgid "is done."
msgstr "完成"
@@ -3274,7 +3279,7 @@ msgid "Reporting"
msgstr "報告"
#. module: stock
-#: code:addons/stock/stock.py:1313
+#: code:addons/stock/stock.py:1316
#, python-format
msgid " for the "
msgstr ""
@@ -3323,7 +3328,7 @@ msgid "Chaining Journal"
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:732
+#: code:addons/stock/stock.py:729
#, python-format
msgid "Not enough stock, unable to reserve the products."
msgstr "庫存不足,無法保留產品"
@@ -3334,7 +3339,7 @@ msgid "Customers"
msgstr "客戶"
#. module: stock
-#: code:addons/stock/stock.py:1317
+#: code:addons/stock/stock.py:1320
#, python-format
msgid "is cancelled."
msgstr "已取消"
@@ -3345,13 +3350,13 @@ msgid "Stock Inventory Lines"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_partial_picking.py:97
+#: code:addons/stock/wizard/stock_partial_picking.py:74
#, python-format
msgid "Process Document"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:368
+#: code:addons/stock/product.py:365
#, python-format
msgid "Future Deliveries"
msgstr "未來交貨"
@@ -3501,6 +3506,11 @@ msgid ""
" When the picking it done the state is 'Done'. \n"
"The state is 'Waiting' if the move is waiting for another one."
msgstr ""
+"建立調動時先處於「草案(Draft)」狀態。\n"
+" 然後設為「確認(Confirmed)」狀態。\n"
+" 如庫存有貨,變成「供貨(Available)」。\n"
+" 完成提貨後狀態為「完成(Done)」。 \n"
+"如調動正等候其他工作完成,狀態為「等待(Waiting)」。"
#. module: stock
#: view:board.board:0
@@ -3513,7 +3523,7 @@ msgid "Existing Lot"
msgstr "現有批次"
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Please specify at least one non-zero quantity!"
msgstr "請指定至少一個非零值!"
@@ -3526,7 +3536,7 @@ msgid ""
msgstr ""
#. module: stock
-#: code:addons/stock/stock.py:1316
+#: code:addons/stock/stock.py:1319
#, python-format
msgid "is ready to process."
msgstr "可以處理"
@@ -3542,7 +3552,7 @@ msgid "Set to zero"
msgstr "設為零"
#. module: stock
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
#, python-format
msgid "None of these picking lists require invoicing."
msgstr "此等提貨皆無須發票"
@@ -3554,13 +3564,13 @@ msgstr "十一月"
#. module: stock
#: code:addons/stock/product.py:101
-#: code:addons/stock/stock.py:2018
+#: code:addons/stock/stock.py:1987
#, python-format
msgid "There is no journal defined on the product category: \"%s\" (id: %d)"
msgstr ""
#. module: stock
-#: code:addons/stock/product.py:382
+#: code:addons/stock/product.py:379
#, python-format
msgid "Unplanned Qty"
msgstr "未計劃量"
@@ -3598,16 +3608,16 @@ msgid "Move History (parent moves)"
msgstr "調動歷史(上級調動)"
#. module: stock
-#: code:addons/stock/product.py:364
+#: code:addons/stock/product.py:361
#, python-format
msgid "Future Stock"
msgstr "未來庫存"
#. module: stock
-#: code:addons/stock/stock.py:512
-#: code:addons/stock/stock.py:1120
-#: code:addons/stock/stock.py:1128
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:101
+#: code:addons/stock/stock.py:510
+#: code:addons/stock/stock.py:1127
+#: code:addons/stock/stock.py:1135
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:113
#, python-format
msgid "Error"
msgstr "錯誤"
@@ -3720,7 +3730,7 @@ msgstr ""
#. module: stock
#: constraint:stock.move:0
msgid "You must assign a production lot for this product"
-msgstr "須為此產品分配生產批次"
+msgstr "須為此產品指定生產批次"
#. module: stock
#: view:stock.move:0
@@ -3740,7 +3750,7 @@ msgid "Split Move"
msgstr ""
#. module: stock
-#: code:addons/stock/wizard/stock_return_picking.py:92
+#: code:addons/stock/wizard/stock_return_picking.py:97
#, python-format
msgid ""
"There are no products to return (only lines in Done state and not fully "
@@ -3784,7 +3794,6 @@ msgid ""
msgstr ""
#. module: stock
-#: model:ir.actions.act_window,name:stock.action5
#: view:stock.tracking:0
msgid "Upstream traceability"
msgstr ""
@@ -3796,7 +3805,7 @@ msgid "Location Content"
msgstr "地點內容"
#. module: stock
-#: code:addons/stock/product.py:388
+#: code:addons/stock/product.py:385
#, python-format
msgid "Produced Qty"
msgstr "生產量"
@@ -3805,7 +3814,6 @@ msgstr "生產量"
#: field:product.category,property_stock_account_output_categ:0
#: field:product.template,property_stock_account_output:0
#: field:stock.change.standard.price,stock_account_output:0
-#: field:stock.location,valuation_out_account_id:0
msgid "Stock Output Account"
msgstr "庫存輸出帳戶"
@@ -3817,7 +3825,7 @@ msgstr ""
#. module: stock
#: model:ir.model,name:stock.model_stock_report_prodlots
msgid "Stock report by production lots"
-msgstr "生產批次回報之庫存"
+msgstr "按生產批次庫存報告"
#. module: stock
#: view:stock.location:0
@@ -3859,13 +3867,12 @@ msgid "Invoiced date"
msgstr "發票日期"
#. module: stock
-#: code:addons/stock/stock.py:732
-#: code:addons/stock/wizard/stock_fill_inventory.py:106
+#: code:addons/stock/stock.py:729
+#: code:addons/stock/wizard/stock_invoice_onshipping.py:83
#: code:addons/stock/wizard/stock_invoice_onshipping.py:85
-#: code:addons/stock/wizard/stock_invoice_onshipping.py:87
-#: code:addons/stock/wizard/stock_return_picking.py:77
-#: code:addons/stock/wizard/stock_return_picking.py:92
-#: code:addons/stock/wizard/stock_return_picking.py:194
+#: code:addons/stock/wizard/stock_return_picking.py:79
+#: code:addons/stock/wizard/stock_return_picking.py:97
+#: code:addons/stock/wizard/stock_return_picking.py:204
#, python-format
msgid "Warning !"
msgstr "警告!"
@@ -3878,7 +3885,7 @@ msgstr "輸出"
#. module: stock
#: selection:stock.move.split.lines,action:0
msgid "Keep in one lot"
-msgstr ""
+msgstr "保持為同一批次"
#. module: stock
#: view:product.product:0
diff --git a/addons/stock/product.py b/addons/stock/product.py
index b6fa45c7836..5341e80fb09 100644
--- a/addons/stock/product.py
+++ b/addons/stock/product.py
@@ -44,13 +44,12 @@ class product_product(osv.osv):
stock_output_acc = product_obj.categ_id.property_stock_account_output_categ and product_obj.categ_id.property_stock_account_output_categ.id or False
journal_id = product_obj.categ_id.property_stock_journal and product_obj.categ_id.property_stock_journal.id or False
- account_variation = product_obj.categ_id.property_stock_variation and product_obj.categ_id.property_stock_variation.id or False
-
+ account_valuation = product_obj.categ_id.property_stock_valuation_account_id and product_obj.categ_id.property_stock_valuation_account_id.id or False
return {
'stock_account_input': stock_input_acc,
'stock_account_output': stock_output_acc,
'stock_journal': journal_id,
- 'property_stock_variation': account_variation
+ 'property_stock_valuation_account_id': account_valuation
}
def do_change_standard_price(self, cr, uid, ids, datas, context=None):
@@ -71,9 +70,9 @@ class product_product(osv.osv):
stock_input_acc = datas.get('stock_input_account', False)
journal_id = datas.get('stock_journal', False)
product_obj=self.browse(cr, uid, ids, context=context)[0]
- account_variation = product_obj.categ_id.property_stock_variation
- account_variation_id = account_variation and account_variation.id or False
- if not account_variation_id: raise osv.except_osv(_('Error!'), _('Variation Account is not specified for Product Category: %s') % (product_obj.categ_id.name))
+ account_valuation = product_obj.categ_id.property_stock_valuation_account_id
+ account_valuation_id = account_valuation and account_valuation.id or False
+ if not account_valuation_id: raise osv.except_osv(_('Error!'), _('Valuation Account is not specified for Product Category: %s') % (product_obj.categ_id.name))
move_ids = []
loc_ids = location_obj.search(cr, uid,[('usage','=','internal')])
for rec_id in ids:
@@ -132,7 +131,7 @@ class product_product(osv.osv):
})
move_line_obj.create(cr, uid, {
'name': product.categ_id.name,
- 'account_id': account_variation_id,
+ 'account_id': account_valuation_id,
'credit': amount_diff,
'move_id': move_id
})
@@ -158,7 +157,7 @@ class product_product(osv.osv):
})
move_line_obj.create(cr, uid, {
'name': product.categ_id.name,
- 'account_id': account_variation_id,
+ 'account_id': account_valuation_id,
'debit': amount_diff,
'move_id': move_id
})
@@ -449,10 +448,10 @@ class product_category(osv.osv):
type='many2one', relation='account.account',
string='Stock Output Account', view_load=True,
help='When doing real-time inventory valuation, counterpart Journal Items for all outgoing stock moves will be posted in this account. This is the default value for all products in this category, it can also directly be set on each product.'),
- 'property_stock_variation': fields.property('account.account',
+ 'property_stock_valuation_account_id': fields.property('account.account',
type='many2one',
relation='account.account',
- string="Stock Variation Account",
+ string="Stock Valuation Account",
view_load=True,
help="When real-time inventory valuation is enabled on a product, this account will hold the current value of the products.",),
}
diff --git a/addons/stock/product_view.xml b/addons/stock/product_view.xml
index 226fa13b594..39d155b57d4 100644
--- a/addons/stock/product_view.xml
+++ b/addons/stock/product_view.xml
@@ -27,7 +27,7 @@
-
+
@@ -82,7 +82,7 @@
-
+
+
+
+ Product Kanban
+ product.product
+ kanban
+
+
+
+
+
+
+
+
+
+
+ []
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ No Stock
+
+
On Hand , Available
+
Public Price : , Cost :
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ product.normal.stock.property.form.inherit
diff --git a/addons/stock/report/UPS.xml b/addons/stock/report/UPS.xml
deleted file mode 100644
index 0349fda556d..00000000000
--- a/addons/stock/report/UPS.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ES
-
- 1
-
-
- PP
-
-
-
-
-
diff --git a/addons/stock/report/__init__.py b/addons/stock/report/__init__.py
index 18bfe2609c2..412e77f3f17 100644
--- a/addons/stock/report/__init__.py
+++ b/addons/stock/report/__init__.py
@@ -20,7 +20,6 @@
##############################################################################
import product_stock
-import ups
import picking
import lot_overview_all
import report_stock
diff --git a/addons/stock/report/report_stock_move.py b/addons/stock/report/report_stock_move.py
index 07289a4379a..d728cbf0e29 100644
--- a/addons/stock/report/report_stock_move.py
+++ b/addons/stock/report/report_stock_move.py
@@ -86,19 +86,19 @@ class report_stock_move(osv.osv):
sum(al.in_value - al.out_value) as value
FROM (SELECT
CASE WHEN sp.type in ('out') THEN
- sum(sm.product_qty * pu.factor)
+ sum(sm.product_qty * pu.factor / pu2.factor)
ELSE 0.0
END AS out_qty,
CASE WHEN sp.type in ('in') THEN
- sum(sm.product_qty * pu.factor)
+ sum(sm.product_qty * pu.factor / pu2.factor)
ELSE 0.0
END AS in_qty,
CASE WHEN sp.type in ('out') THEN
- sum(sm.product_qty * pu.factor) * pt.standard_price
+ sum(sm.product_qty * pu.factor / pu2.factor) * pt.standard_price
ELSE 0.0
END AS out_value,
CASE WHEN sp.type in ('in') THEN
- sum(sm.product_qty * pu.factor) * pt.standard_price
+ sum(sm.product_qty * pu.factor / pu2.factor) * pt.standard_price
ELSE 0.0
END AS in_value,
min(sm.id) as sm_id,
@@ -126,6 +126,7 @@ class report_stock_move(osv.osv):
LEFT JOIN stock_picking sp ON (sm.picking_id=sp.id)
LEFT JOIN product_product pp ON (sm.product_id=pp.id)
LEFT JOIN product_uom pu ON (sm.product_uom=pu.id)
+ LEFT JOIN product_uom pu2 ON (sm.product_uom=pu2.id)
LEFT JOIN product_template pt ON (pp.product_tmpl_id=pt.id)
LEFT JOIN stock_location sl ON (sm.location_id = sl.id)
@@ -176,17 +177,16 @@ CREATE OR REPLACE view report_stock_inventory AS (
m.product_id as product_id, pt.categ_id as product_categ_id, l.usage as location_type,
m.company_id,
m.state as state, m.prodlot_id as prodlot_id,
- coalesce(sum(-pt.standard_price * m.product_qty)::decimal, 0.0) as value,
- CASE when pt.uom_id = m.product_uom THEN
- coalesce(sum(-m.product_qty)::decimal, 0.0)
- ELSE
- coalesce(sum(-m.product_qty * pu.factor)::decimal, 0.0) END as product_qty
+
+ coalesce(sum(-pt.standard_price * m.product_qty * pu.factor / pu2.factor)::decimal, 0.0) as value,
+ coalesce(sum(-m.product_qty * pu.factor / pu2.factor)::decimal, 0.0) as product_qty
FROM
stock_move m
LEFT JOIN stock_picking p ON (m.picking_id=p.id)
LEFT JOIN product_product pp ON (m.product_id=pp.id)
LEFT JOIN product_template pt ON (pp.product_tmpl_id=pt.id)
LEFT JOIN product_uom pu ON (pt.uom_id=pu.id)
+ LEFT JOIN product_uom pu2 ON (m.product_uom=pu2.id)
LEFT JOIN product_uom u ON (m.product_uom=u.id)
LEFT JOIN stock_location l ON (m.location_id=l.id)
GROUP BY
@@ -199,17 +199,15 @@ CREATE OR REPLACE view report_stock_inventory AS (
m.product_id as product_id, pt.categ_id as product_categ_id, l.usage as location_type,
m.company_id,
m.state as state, m.prodlot_id as prodlot_id,
- coalesce(sum(pt.standard_price * m.product_qty )::decimal, 0.0) as value,
- CASE when pt.uom_id = m.product_uom THEN
- coalesce(sum(m.product_qty)::decimal, 0.0)
- ELSE
- coalesce(sum(m.product_qty * pu.factor)::decimal, 0.0) END as product_qty
+ coalesce(sum(pt.standard_price * m.product_qty * pu.factor / pu2.factor)::decimal, 0.0) as value,
+ coalesce(sum(m.product_qty * pu.factor / pu2.factor)::decimal, 0.0) as product_qty
FROM
stock_move m
LEFT JOIN stock_picking p ON (m.picking_id=p.id)
LEFT JOIN product_product pp ON (m.product_id=pp.id)
LEFT JOIN product_template pt ON (pp.product_tmpl_id=pt.id)
LEFT JOIN product_uom pu ON (pt.uom_id=pu.id)
+ LEFT JOIN product_uom pu2 ON (m.product_uom=pu2.id)
LEFT JOIN product_uom u ON (m.product_uom=u.id)
LEFT JOIN stock_location l ON (m.location_dest_id=l.id)
GROUP BY
diff --git a/addons/stock/stock.py b/addons/stock/stock.py
index 283b9247b63..ad40dff00e8 100644
--- a/addons/stock/stock.py
+++ b/addons/stock/stock.py
@@ -622,8 +622,8 @@ class stock_picking(osv.osv):
'location_dest_id': fields.many2one('stock.location', 'Dest. Location',help="Location where the system will stock the finished products.", select=True),
'move_type': fields.selection([('direct', 'Partial Delivery'), ('one', 'All at once')], 'Delivery Method', required=True, help="It specifies goods to be delivered all at once or by direct delivery"),
'state': fields.selection([
- ('draft', 'Draft'),
- ('auto', 'Waiting'),
+ ('draft', 'New'),
+ ('auto', 'Waiting Another Operation'),
('confirmed', 'Waiting Availability'),
('assigned', 'Ready to Process'),
('done', 'Done'),
@@ -664,8 +664,8 @@ class stock_picking(osv.osv):
def action_process(self, cr, uid, ids, context=None):
if context is None: context = {}
- partial_id = self.pool.get("stock.partial.picking").create(
- cr, uid, {}, context=dict(context, active_ids=ids))
+ context = dict(context, active_ids=ids, active_model=self._name)
+ partial_id = self.pool.get("stock.partial.picking").create(cr, uid, {}, context=context)
return {
'name':_("Products to Process"),
'view_mode': 'form',
@@ -677,7 +677,7 @@ class stock_picking(osv.osv):
'nodestroy': True,
'target': 'new',
'domain': '[]',
- 'context': dict(context, active_ids=ids)
+ 'context': context,
}
def copy(self, cr, uid, id, default=None, context=None):
@@ -848,7 +848,11 @@ class stock_picking(osv.osv):
for pick in self.browse(cr, uid, ids, context=context):
todo = []
for move in pick.move_lines:
- if move.state == 'assigned':
+ if move.state == 'draft':
+ self.pool.get('stock.move').action_confirm(cr, uid, [move.id],
+ context=context)
+ todo.append(move.id)
+ elif move.state in ('assigned','confirmed'):
todo.append(move.id)
if len(todo):
self.pool.get('stock.move').action_done(cr, uid, todo,
@@ -1470,6 +1474,8 @@ class stock_move(osv.osv):
def action_partial_move(self, cr, uid, ids, context=None):
if context is None: context = {}
+ if context.get('active_model') != self._name:
+ context.update(active_ids=ids, active_model=self._name)
partial_id = self.pool.get("stock.partial.move").create(
cr, uid, {}, context=context)
return {
@@ -1528,13 +1534,13 @@ class stock_move(osv.osv):
'product_qty': fields.float('Quantity', digits_compute=dp.get_precision('Product UoM'), required=True,states={'done': [('readonly', True)]}),
'product_uom': fields.many2one('product.uom', 'Unit of Measure', required=True,states={'done': [('readonly', True)]}),
- 'product_uos_qty': fields.float('Quantity (UOS)', digits_compute=dp.get_precision('Product UoM')),
- 'product_uos': fields.many2one('product.uom', 'Product UOS'),
+ 'product_uos_qty': fields.float('Quantity (UOS)', digits_compute=dp.get_precision('Product UoM'), states={'done': [('readonly', True)]}),
+ 'product_uos': fields.many2one('product.uom', 'Product UOS', states={'done': [('readonly', True)]}),
'product_packaging': fields.many2one('product.packaging', 'Packaging', help="It specifies attributes of packaging like type, quantity of packaging,etc."),
'location_id': fields.many2one('stock.location', 'Source Location', required=True, select=True,states={'done': [('readonly', True)]}, help="Sets a location if you produce at a fixed location. This can be a partner location if you subcontract the manufacturing operations."),
'location_dest_id': fields.many2one('stock.location', 'Destination Location', required=True,states={'done': [('readonly', True)]}, select=True, help="Location where the system will stock the finished products."),
- 'address_id': fields.many2one('res.partner.address', 'Destination Address', help="Optional address where goods are to be delivered, specifically used for allotment"),
+ 'address_id': fields.many2one('res.partner.address', 'Destination Address ', states={'done': [('readonly', True)]}, help="Optional address where goods are to be delivered, specifically used for allotment"),
'prodlot_id': fields.many2one('stock.production.lot', 'Production Lot', states={'done': [('readonly', True)]}, help="Production lot is used to put a serial number on the production", select=True),
'tracking_id': fields.many2one('stock.tracking', 'Pack', select=True, states={'done': [('readonly', True)]}, help="Logistical shipping unit: pallet, box, pack ..."),
@@ -1546,7 +1552,7 @@ class stock_move(osv.osv):
'move_history_ids2': fields.many2many('stock.move', 'stock_move_history_ids', 'child_id', 'parent_id', 'Move History (parent moves)'),
'picking_id': fields.many2one('stock.picking', 'Reference', select=True,states={'done': [('readonly', True)]}),
'note': fields.text('Notes'),
- 'state': fields.selection([('draft', 'Draft'), ('waiting', 'Waiting'), ('confirmed', 'Not Available'), ('assigned', 'Available'), ('done', 'Done'), ('cancel', 'Cancelled')], 'State', readonly=True, select=True,
+ 'state': fields.selection([('draft', 'New'), ('waiting', 'Waiting Another Move'), ('confirmed', 'Waiting Availability'), ('assigned', 'Available'), ('done', 'Done'), ('cancel', 'Cancelled')], 'State', readonly=True, select=True,
help='When the stock move is created it is in the \'Draft\' state.\n After that, it is set to \'Not Available\' state if the scheduler did not find the products.\n When products are reserved it is set to \'Available\'.\n When the picking is done the state is \'Done\'.\
\nThe state is \'Waiting\' if the move is waiting for another one.'),
'price_unit': fields.float('Unit Price', digits_compute= dp.get_precision('Account'), help="Technical field used to record the product cost set by the user during a picking confirmation (when average price costing method is used)"),
@@ -2027,14 +2033,14 @@ class stock_move(osv.osv):
else:
acc_dest = accounts['stock_account_output']
- acc_variation = accounts.get('property_stock_variation', False)
+ acc_valuation = accounts.get('property_stock_valuation_account_id', False)
journal_id = accounts['stock_journal']
- if acc_dest == acc_variation:
- raise osv.except_osv(_('Error!'), _('Can not create Journal Entry, Output Account defined on this product and Variant account on category of this product are same.'))
+ if acc_dest == acc_valuation:
+ raise osv.except_osv(_('Error!'), _('Can not create Journal Entry, Output Account defined on this product and Valuation account on category of this product are same.'))
- if acc_src == acc_variation:
- raise osv.except_osv(_('Error!'), _('Can not create Journal Entry, Input Account defined on this product and Variant account on category of this product are same.'))
+ if acc_src == acc_valuation:
+ raise osv.except_osv(_('Error!'), _('Can not create Journal Entry, Input Account defined on this product and Valuation account on category of this product are same.'))
if not acc_src:
raise osv.except_osv(_('Error!'), _('There is no stock input account defined for this product or its category: "%s" (id: %d)') % \
@@ -2045,10 +2051,10 @@ class stock_move(osv.osv):
if not journal_id:
raise osv.except_osv(_('Error!'), _('There is no journal defined on the product category: "%s" (id: %d)') % \
(move.product_id.categ_id.name, move.product_id.categ_id.id,))
- if not acc_variation:
- raise osv.except_osv(_('Error!'), _('There is no inventory variation account defined on the product category: "%s" (id: %d)') % \
+ if not acc_valuation:
+ raise osv.except_osv(_('Error!'), _('There is no inventory Valuation account defined on the product category: "%s" (id: %d)') % \
(move.product_id.categ_id.name, move.product_id.categ_id.id,))
- return journal_id, acc_src, acc_dest, acc_variation
+ return journal_id, acc_src, acc_dest, acc_valuation
def _get_reference_accounting_values_for_valuation(self, cr, uid, move, context=None):
"""
@@ -2098,17 +2104,17 @@ class stock_move(osv.osv):
if move.location_id.company_id \
and (move.location_id.usage == 'internal' and move.location_dest_id.usage != 'internal'\
or move.location_id.company_id != move.location_dest_id.company_id):
- journal_id, acc_src, acc_dest, acc_variation = self._get_accounting_data_for_valuation(cr, uid, move, src_company_ctx)
+ journal_id, acc_src, acc_dest, acc_valuation = self._get_accounting_data_for_valuation(cr, uid, move, src_company_ctx)
reference_amount, reference_currency_id = self._get_reference_accounting_values_for_valuation(cr, uid, move, src_company_ctx)
- account_moves += [(journal_id, self._create_account_move_line(cr, uid, move, acc_variation, acc_dest, reference_amount, reference_currency_id, context))]
+ account_moves += [(journal_id, self._create_account_move_line(cr, uid, move, acc_valuation, acc_dest, reference_amount, reference_currency_id, context))]
# Incoming moves (or cross-company input part)
if move.location_dest_id.company_id \
and (move.location_id.usage != 'internal' and move.location_dest_id.usage == 'internal'\
or move.location_id.company_id != move.location_dest_id.company_id):
- journal_id, acc_src, acc_dest, acc_variation = self._get_accounting_data_for_valuation(cr, uid, move, dest_company_ctx)
+ journal_id, acc_src, acc_dest, acc_valuation = self._get_accounting_data_for_valuation(cr, uid, move, dest_company_ctx)
reference_amount, reference_currency_id = self._get_reference_accounting_values_for_valuation(cr, uid, move, src_company_ctx)
- account_moves += [(journal_id, self._create_account_move_line(cr, uid, move, acc_src, acc_variation, reference_amount, reference_currency_id, context))]
+ account_moves += [(journal_id, self._create_account_move_line(cr, uid, move, acc_src, acc_valuation, reference_amount, reference_currency_id, context))]
move_obj = self.pool.get('account.move')
for j_id, move_lines in account_moves:
@@ -2123,14 +2129,9 @@ class stock_move(osv.osv):
""" Makes the move done and if all moves are done, it will finish the picking.
@return:
"""
- partial_datas=''
picking_ids = []
move_ids = []
- partial_obj=self.pool.get('stock.partial.picking')
wf_service = netsvc.LocalService("workflow")
- partial_id=partial_obj.search(cr,uid,[])
- if partial_id:
- partial_datas = partial_obj.read(cr, uid, partial_id, context=context)[0]
if context is None:
context = {}
@@ -2160,9 +2161,6 @@ class stock_move(osv.osv):
self.action_done(cr, uid, [move.move_dest_id.id], context=context)
self._create_product_valuation_moves(cr, uid, move, context=context)
- prodlot_id = partial_datas and partial_datas.get('move%s_prodlot_id' % (move.id), False)
- if prodlot_id:
- self.write(cr, uid, [move.id], {'prodlot_id': prodlot_id}, context=context)
if move.state not in ('confirmed','done','assigned'):
todo.append(move.id)
@@ -2239,6 +2237,7 @@ class stock_move(osv.osv):
return super(stock_move, self).unlink(
cr, uid, ids, context=ctx)
+ # _create_lot function is not used anywhere
def _create_lot(self, cr, uid, ids, product_id, prefix=False):
""" Creates production lot
@return: Production lot id
@@ -2284,6 +2283,7 @@ class stock_move(osv.osv):
self.action_done(cr, uid, res)
return res
+ # action_split function is not used anywhere
def action_split(self, cr, uid, ids, quantity, split_by_qty=1, prefix=False, with_lot=True, context=None):
""" Split Stock Move lines into production lot which specified split by quantity.
@param cr: the database cursor
diff --git a/addons/stock/stock_data.xml b/addons/stock/stock_data.xml
index bcde818c78a..c0c872e99f2 100644
--- a/addons/stock/stock_data.xml
+++ b/addons/stock/stock_data.xml
@@ -2,12 +2,17 @@
+
+ Stock Journal Sequence
+
+ STJ/%(year)s/
+ Stock JournalSTJgeneral
-
+
diff --git a/addons/stock/stock_demo.xml b/addons/stock/stock_demo.xml
index 7bcda8a200e..386a4d60e30 100644
--- a/addons/stock/stock_demo.xml
+++ b/addons/stock/stock_demo.xml
@@ -260,9 +260,9 @@
-
- property_stock_variation
-
+
+ property_stock_valuation_account_id
+
diff --git a/addons/stock/stock_incoterms.xml b/addons/stock/stock_incoterms.xml
index fb9082161ba..b349fea42fa 100644
--- a/addons/stock/stock_incoterms.xml
+++ b/addons/stock/stock_incoterms.xml
@@ -57,6 +57,10 @@
DAPDelivered At Place
+
+ DDP
+ Delivered Duty Paid
+
diff --git a/addons/stock/stock_sequence.xml b/addons/stock/stock_sequence.xml
index cabf24dda5b..a8515c2f0df 100644
--- a/addons/stock/stock_sequence.xml
+++ b/addons/stock/stock_sequence.xml
@@ -29,6 +29,7 @@
stock.picking.inIN/5
+
@@ -36,6 +37,7 @@
stock.picking.outOUT/5
+
@@ -43,6 +45,7 @@
stock.picking.internalINT/5
+
diff --git a/addons/stock/wizard/stock_partial_move.py b/addons/stock/wizard/stock_partial_move.py
index 2c593e811c5..ec348656ce0 100644
--- a/addons/stock/wizard/stock_partial_move.py
+++ b/addons/stock/wizard/stock_partial_move.py
@@ -2,7 +2,7 @@
##############################################################################
#
# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
+# Copyright (C) 2004-TODAY OpenERP SA ().
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
@@ -20,210 +20,65 @@
##############################################################################
from osv import fields, osv
-from tools.translate import _
+from tools.misc import DEFAULT_SERVER_DATETIME_FORMAT
import time
-import decimal_precision as dp
-
-class stock_partial_move_memory_out(osv.osv_memory):
- _name = "stock.move.memory.out"
- _rec_name = 'product_id'
+class stock_partial_move_line(osv.osv_memory):
+ _inherit = "stock.partial.picking.line"
+ _name = "stock.partial.move.line"
_columns = {
- 'product_id' : fields.many2one('product.product', string="Product", required=True),
- 'quantity' : fields.float("Quantity", required=True),
- 'product_uom': fields.many2one('product.uom', 'Unit of Measure', required=True),
- 'prodlot_id' : fields.many2one('stock.production.lot', 'Production Lot'),
- 'location_id': fields.many2one('stock.location', 'Location', required=True),
- 'location_dest_id': fields.many2one('stock.location', 'Dest. Location', required=True),
- 'move_id' : fields.many2one('stock.move', "Move"),
- 'wizard_id' : fields.many2one('stock.partial.move', string="Wizard"),
- 'cost' : fields.float('Cost', digits_compute = dp.get_precision('Purchase Price'),help="Unit Cost for this product line"),
- 'currency' : fields.many2one('res.currency', string="Currency", help="Currency in which Unit cost is expressed"),
+ 'wizard_id' : fields.many2one('stock.partial.move', string="Wizard", ondelete='CASCADE'),
}
-
-class stock_partial_move_memory_in(osv.osv_memory):
- _inherit = "stock.move.memory.out"
- _name = "stock.move.memory.in"
-
+
class stock_partial_move(osv.osv_memory):
_name = "stock.partial.move"
- _description = "Partial Move"
+ _inherit = 'stock.partial.picking'
+ _description = "Partial Move Processing Wizard"
_columns = {
'date': fields.datetime('Date', required=True),
- 'type': fields.char("Type", size=3),
- 'product_moves_out' : fields.one2many('stock.move.memory.out', 'wizard_id', 'Moves'),
- 'product_moves_in' : fields.one2many('stock.move.memory.in', 'wizard_id', 'Moves'),
- }
-
-
- def __is_in(self,cr, uid, move_ids):
- """
- @return: True if one of the moves has as picking type 'in'
- """
- if not move_ids:
- return False
-
- move_obj = self.pool.get('stock.move')
- move_ids = move_obj.search(cr, uid, [('id','in',move_ids)])
-
- for move in move_obj.browse(cr, uid, move_ids):
- if move.picking_id.type == 'in' and move.product_id.cost_method == 'average':
- return True
- return False
-
- def __get_picking_type(self, cr, uid, move_ids):
- if self.__is_in(cr, uid, move_ids):
- return "product_moves_in"
- else:
- return "product_moves_out"
-
- def view_init(self, cr, uid, fields_list, context=None):
- res = super(stock_partial_move, self).view_init(cr, uid, fields_list, context=context)
- move_obj = self.pool.get('stock.move')
-
- if context is None:
- context = {}
- for move in move_obj.browse(cr, uid, context.get('active_ids', []), context=context):
- if move.state in ('done', 'cancel'):
- raise osv.except_osv(_('Invalid action !'), _('Cannot deliver products which are already delivered !'))
-
- return res
-
-
- def __create_partial_move_memory(self, move):
- move_memory = {
- 'product_id' : move.product_id.id,
- 'quantity' : move.product_qty,
- 'product_uom' : move.product_uom.id,
- 'prodlot_id' : move.prodlot_id.id,
- 'move_id' : move.id,
- }
-
- if move.picking_id.type == 'in':
- move_memory.update({
- 'cost' : move.product_id.standard_price,
- 'currency' : move.product_id.company_id and move.product_id.company_id.currency_id and move.product_id.company_id.currency_id.id or False,
- })
- return move_memory
+ 'move_ids' : fields.one2many('stock.partial.move.line', 'wizard_id', 'Moves'),
- def __get_active_stock_moves(self, cr, uid, context=None):
- move_obj = self.pool.get('stock.move')
- if context is None:
- context = {}
-
- res = []
- for move in move_obj.browse(cr, uid, context.get('active_ids', []), context=context):
- if move.state in ('done', 'cancel'):
- continue
- res.append(self.__create_partial_move_memory(move))
-
+ # picking_id is not used for move processing, so we remove the required attribute
+ # from the inherited column, and ignore it
+ 'picking_id': fields.many2one('stock.picking', 'Picking'),
+ }
+
+ def default_get(self, cr, uid, fields, context=None):
+ if context is None: context = {}
+ # no call to super!
+ res = {}
+ move_ids = context.get('active_ids', [])
+ if not move_ids or not context.get('active_model') == 'stock.move':
+ return res
+ if 'move_ids' in fields:
+ move_ids = self.pool.get('stock.move').browse(cr, uid, move_ids, context=context)
+ moves = [self._partial_move_for(cr, uid, m) for m in move_ids if m.state not in ('done','cancel')]
+ res.update(move_ids=moves)
+ if 'date' in fields:
+ res.update(date=time.strftime(DEFAULT_SERVER_DATETIME_FORMAT))
return res
-
- _defaults = {
- 'product_moves_in' : __get_active_stock_moves,
- 'product_moves_out' : __get_active_stock_moves,
- 'date' : lambda *a : time.strftime('%Y-%m-%d %H:%M:%S'),
- }
-
-
- def fields_view_get(self, cr, uid, view_id=None, view_type='form', context=None, toolbar=False, submenu=False):
- if not context:
- context = {}
-
- message = {
- 'title' : _('Deliver Products'),
- 'info' : _('Delivery Information'),
- 'button' : _('Deliver'),
- }
- if context:
- if context.get('product_receive', False):
- message = {
- 'title' : _('Receive Products'),
- 'info' : _('Receive Information'),
- 'button' : _('Receive'),
- }
-
- move_ids = context.get('active_ids', False)
- message['picking_type'] = self.__get_picking_type(cr, uid, move_ids)
- result = super(stock_partial_move, self).fields_view_get(cr, uid, view_id, view_type, context, toolbar, submenu)
- _moves_fields = result['fields']
- _moves_fields.update({
- 'product_moves_in' : {'relation': 'stock.move.memory.in', 'type' : 'one2many', 'string' : 'Product Moves'},
- 'product_moves_out' : {'relation': 'stock.move.memory.out', 'type' : 'one2many', 'string' : 'Product Moves'}
- })
-
- _moves_arch_lst = """
-
-
-
-
-
-
-
-
-
-
-
-
""" % message
-
- result['arch'] = _moves_arch_lst
- result['fields'] = _moves_fields
- return result
-
+
def do_partial(self, cr, uid, ids, context=None):
- """ Makes partial moves and pickings done.
- @param self: The object pointer.
- @param cr: A database cursor
- @param uid: ID of the user currently logged in
- @param fields: List of fields for which we want default values
- @param context: A standard dictionary
- @return: A dictionary which of fields with values.
- """
-
- if context is None:
- context = {}
- move_obj = self.pool.get('stock.move')
-
- move_ids = context.get('active_ids', False)
+ # no call to super!
+ assert len(ids) == 1, 'Partial move processing may only be done one form at a time'
partial = self.browse(cr, uid, ids[0], context=context)
- partial_datas = {
+ partial_data = {
'delivery_date' : partial.date
}
-
- p_moves = {}
- picking_type = self.__get_picking_type(cr, uid, move_ids)
-
- moves_list = picking_type == 'product_moves_in' and partial.product_moves_in or partial.product_moves_out
- for product_move in moves_list:
- p_moves[product_move.move_id.id] = product_move
-
- moves_ids_final = []
- for move in move_obj.browse(cr, uid, move_ids, context=context):
- if move.state in ('done', 'cancel'):
- continue
- if not p_moves.get(move.id):
- continue
- partial_datas['move%s' % (move.id)] = {
- 'product_id' : p_moves[move.id].product_id.id,
- 'product_qty' : p_moves[move.id].quantity,
- 'product_uom' :p_moves[move.id].product_uom.id,
- 'prodlot_id' : p_moves[move.id].prodlot_id.id,
+ moves_ids = []
+ for move in partial.move_ids:
+ move_id = move.move_id.id
+ partial_data['move%s' % (move_id)] = {
+ 'product_id': move.product_id.id,
+ 'product_qty': move.quantity,
+ 'product_uom': move.product_uom.id,
+ 'prodlot_id': move.prodlot_id.id,
}
-
- moves_ids_final.append(move.id)
- if (move.picking_id.type == 'in') and (move.product_id.cost_method == 'average'):
- partial_datas['move%s' % (move.id)].update({
- 'product_price' : p_moves[move.id].cost,
- 'product_currency': p_moves[move.id].currency.id,
- })
-
-
- move_obj.do_partial(cr, uid, moves_ids_final, partial_datas, context=context)
+ moves_ids.append(move_id)
+ if (move.move_id.picking_id.type == 'in') and (move.product_id.cost_method == 'average'):
+ partial_data['move%s' % (move_id)].update(product_price=move.cost,
+ product_currency=move.currency.id)
+ self.pool.get('stock.move').do_partial(cr, uid, moves_ids, partial_data, context=context)
return {'type': 'ir.actions.act_window_close'}
-stock_partial_move()
-stock_partial_move_memory_out()
-stock_partial_move_memory_in()
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
diff --git a/addons/stock/wizard/stock_partial_move_view.xml b/addons/stock/wizard/stock_partial_move_view.xml
index 8d4be66b243..2df6adcc9e7 100644
--- a/addons/stock/wizard/stock_partial_move_view.xml
+++ b/addons/stock/wizard/stock_partial_move_view.xml
@@ -1,16 +1,13 @@
-
-
-
Deliver/Receive Productscodeaction = obj.action_partial_move(context=context)
-
+
@@ -19,75 +16,60 @@
-
-
-
- stock.move.memory.tree
- stock.move.memory.in
- tree
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- stock.move.memory.form
- stock.move.memory.in
+
+ stock.partial.move.form
+ stock.partial.moveform
+
+
diff --git a/addons/stock/wizard/stock_partial_picking.py b/addons/stock/wizard/stock_partial_picking.py
index 9ac3fab9f72..3580b21035d 100644
--- a/addons/stock/wizard/stock_partial_picking.py
+++ b/addons/stock/wizard/stock_partial_picking.py
@@ -1,9 +1,8 @@
-
# -*- coding: utf-8 -*-
##############################################################################
#
# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
+# Copyright (C) 2004-TODAY OpenERP SA ().
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
@@ -20,169 +19,119 @@
#
##############################################################################
-from osv import fields, osv
-from tools.translate import _
import time
+from osv import fields, osv
+from tools.misc import DEFAULT_SERVER_DATETIME_FORMAT
+
+class stock_partial_picking_line(osv.TransientModel):
+ _name = "stock.partial.picking.line"
+ _rec_name = 'product_id'
+ _columns = {
+ 'product_id' : fields.many2one('product.product', string="Product", required=True, ondelete='CASCADE'),
+ 'quantity' : fields.float("Quantity", required=True),
+ 'product_uom': fields.many2one('product.uom', 'Unit of Measure', required=True, ondelete='CASCADE'),
+ 'prodlot_id' : fields.many2one('stock.production.lot', 'Production Lot', ondelete='CASCADE'),
+ 'location_id': fields.many2one('stock.location', 'Location', required=True, ondelete='CASCADE'),
+ 'location_dest_id': fields.many2one('stock.location', 'Dest. Location', required=True, ondelete='CASCADE'),
+ 'move_id' : fields.many2one('stock.move', "Move", ondelete='CASCADE'),
+ 'wizard_id' : fields.many2one('stock.partial.picking', string="Wizard", ondelete='CASCADE'),
+ 'update_cost': fields.boolean('Need cost update'),
+ 'cost' : fields.float("Cost", help="Unit Cost for this product line"),
+ 'currency' : fields.many2one('res.currency', string="Currency", help="Currency in which Unit cost is expressed", ondelete='CASCADE'),
+ }
class stock_partial_picking(osv.osv_memory):
_name = "stock.partial.picking"
- _description = "Partial Picking"
+ _description = "Partial Picking Processing Wizard"
_columns = {
'date': fields.datetime('Date', required=True),
- 'product_moves_out' : fields.one2many('stock.move.memory.out', 'wizard_id', 'Moves'),
- 'product_moves_in' : fields.one2many('stock.move.memory.in', 'wizard_id', 'Moves'),
+ 'move_ids' : fields.one2many('stock.partial.picking.line', 'wizard_id', 'Product Moves'),
+ 'picking_id': fields.many2one('stock.picking', 'Picking', required=True, ondelete='CASCADE'),
}
-
- def get_picking_type(self, cr, uid, picking, context=None):
- picking_type = picking.type
- for move in picking.move_lines:
- if picking.type == 'in' and move.product_id.cost_method == 'average':
- picking_type = 'in'
- break
- else:
- picking_type = 'out'
- return picking_type
-
+
def default_get(self, cr, uid, fields, context=None):
- """ To get default values for the object.
- @param self: The object pointer.
- @param cr: A database cursor
- @param uid: ID of the user currently logged in
- @param fields: List of fields for which we want default values
- @param context: A standard dictionary
- @return: A dictionary which of fields with values.
- """
- if context is None:
- context = {}
-
- pick_obj = self.pool.get('stock.picking')
+ if context is None: context = {}
res = super(stock_partial_picking, self).default_get(cr, uid, fields, context=context)
picking_ids = context.get('active_ids', [])
- if not picking_ids:
+ if not picking_ids or (not context.get('active_model') == 'stock.picking') \
+ or len(picking_ids) != 1:
+ # Partial Picking Processing may only be done for one picking at a time
return res
-
- result = []
- for pick in pick_obj.browse(cr, uid, picking_ids, context=context):
- pick_type = self.get_picking_type(cr, uid, pick, context=context)
- for m in pick.move_lines:
- if m.state in ('done', 'cancel'):
- continue
- result.append(self.__create_partial_picking_memory(m, pick_type))
-
- if 'product_moves_in' in fields:
- res.update({'product_moves_in': result})
- if 'product_moves_out' in fields:
- res.update({'product_moves_out': result})
+ picking_id, = picking_ids
+ if 'picking_id' in fields:
+ res.update(picking_id=picking_id)
+ if 'move_ids' in fields:
+ picking = self.pool.get('stock.picking').browse(cr, uid, picking_id, context=context)
+ moves = [self._partial_move_for(cr, uid, m) for m in picking.move_lines if m.state not in ('done','cancel')]
+ res.update(move_ids=moves)
if 'date' in fields:
- res.update({'date': time.strftime('%Y-%m-%d %H:%M:%S')})
+ res.update(date=time.strftime(DEFAULT_SERVER_DATETIME_FORMAT))
return res
-
- def fields_view_get(self, cr, uid, view_id=None, view_type='form', context=None, toolbar=False, submenu=False):
- result = super(stock_partial_picking, self).fields_view_get(cr, uid, view_id, view_type, context, toolbar, submenu)
-
- pick_obj = self.pool.get('stock.picking')
- picking_ids = context.get('active_ids', False)
- if not picking_ids:
- # not called through an action (e.g. buildbot), return the default.
- return result
-
- for pick in pick_obj.browse(cr, uid, picking_ids, context=context):
- picking_type = self.get_picking_type(cr, uid, pick, context=context)
+ def _product_cost_for_average_update(self, cr, uid, move):
+ """Returns product cost and currency ID for the given move, suited for re-computing
+ the average product cost.
- _moves_arch_lst = """
-
-
-
- """ % (_('Process Document'), _('Products'), "product_moves_" + picking_type)
- _moves_fields = result['fields']
+ :return: map of the form::
- # add field related to picking type only
- _moves_fields.update({
- 'product_moves_' + picking_type: {'relation': 'stock.move.memory.'+picking_type, 'type' : 'one2many', 'string' : 'Product Moves'},
- })
+ {'cost': 123.34,
+ 'currency': 42}
+ """
+ # Currently, the cost on the product form is supposed to be expressed in the currency
+ # of the company owning the product. If not set, we fall back to the picking's company,
+ # which should work in simple cases.
+ return {'cost': move.product_id.standard_price,
+ 'currency': move.product_id.company_id.currency_id.id \
+ or move.picking_id.company_id.currency_id.id \
+ or False}
- _moves_arch_lst += """
-
-
-
-
-
-
-
"""
- result['arch'] = _moves_arch_lst
- result['fields'] = _moves_fields
- return result
-
- def __create_partial_picking_memory(self, picking, pick_type):
- move_memory = {
- 'product_id' : picking.product_id.id,
- 'quantity' : picking.product_qty,
- 'product_uom' : picking.product_uom.id,
- 'prodlot_id' : picking.prodlot_id.id,
- 'move_id' : picking.id,
- 'location_id' : picking.location_id.id,
- 'location_dest_id' : picking.location_dest_id.id,
+ def _partial_move_for(self, cr, uid, move):
+ partial_move = {
+ 'product_id' : move.product_id.id,
+ 'quantity' : move.product_qty,
+ 'product_uom' : move.product_uom.id,
+ 'prodlot_id' : move.prodlot_id.id,
+ 'move_id' : move.id,
+ 'location_id' : move.location_id.id,
+ 'location_dest_id' : move.location_dest_id.id,
}
-
- if pick_type == 'in':
- move_memory.update({
- 'cost' : picking.product_id.standard_price,
- 'currency' : picking.product_id.company_id and picking.product_id.company_id.currency_id and picking.product_id.company_id.currency_id.id or False,
- })
- return move_memory
+ if move.picking_id.type == 'in' and move.product_id.cost_method == 'average':
+ partial_move.update(update_cost=True, **self._product_cost_for_average_update(cr, uid, move))
+ return partial_move
def do_partial(self, cr, uid, ids, context=None):
- """ Makes partial moves and pickings done.
- @param self: The object pointer.
- @param cr: A database cursor
- @param uid: ID of the user currently logged in
- @param fields: List of fields for which we want default values
- @param context: A standard dictionary
- @return: A dictionary which of fields with values.
- """
- pick_obj = self.pool.get('stock.picking')
- stock_move_obj = self.pool.get('stock.move')
- picking_ids = context.get('active_ids', False)
+ assert len(ids) == 1, 'Partial picking processing may only be done one at a time'
+ stock_picking = self.pool.get('stock.picking')
+ stock_move = self.pool.get('stock.move')
partial = self.browse(cr, uid, ids[0], context=context)
- partial_datas = {
+ partial_data = {
'delivery_date' : partial.date
}
- for pick in pick_obj.browse(cr, uid, picking_ids, context=context):
- picking_type = self.get_picking_type(cr, uid, pick, context=context)
- moves_list = picking_type == 'in' and partial.product_moves_in or partial.product_moves_out
- for move in moves_list:
- if not move.move_id.id:
- seq_obj_name = 'stock.picking.' + picking_type
- move_id = stock_move_obj.create(cr,uid,{'name' : self.pool.get('ir.sequence').get(cr, uid, seq_obj_name),
- 'product_id': move.product_id.id,
- 'product_qty': move.quantity,
- 'product_uom': move.product_uom.id,
- 'prodlot_id': move.prodlot_id.id,
- 'location_id' : move.location_id.id,
- 'location_dest_id' : move.location_dest_id.id,
- 'picking_id': pick.id
- },context=context)
- stock_move_obj.action_done(cr, uid, [move_id], context)
- else:
- move_id = move.move_id.id
-
- partial_datas['move%s' % (move_id)] = {
- 'product_id': move.product_id.id,
- 'product_qty': move.quantity,
- 'product_uom': move.product_uom.id,
- 'prodlot_id': move.prodlot_id.id,
- }
- if (picking_type == 'in') and (move.product_id.cost_method == 'average'):
- partial_datas['move%s' % (move.move_id.id)].update({
- 'product_price' : move.cost,
- 'product_currency': move.currency.id,
- })
- pick_obj.do_partial(cr, uid, picking_ids, partial_datas, context=context)
+ picking_type = partial.picking_id.type
+ for move in partial.move_ids:
+ move_id = move.move_id.id
+ if not move_id:
+ seq_obj_name = 'stock.picking.' + picking_type
+ move_id = stock_move.create(cr,uid,{'name' : self.pool.get('ir.sequence').get(cr, uid, seq_obj_name),
+ 'product_id': move.product_id.id,
+ 'product_qty': move.quantity,
+ 'product_uom': move.product_uom.id,
+ 'prodlot_id': move.prodlot_id.id,
+ 'location_id' : move.location_id.id,
+ 'location_dest_id' : move.location_dest_id.id,
+ 'picking_id': partial.picking_id.id
+ },context=context)
+ stock_move.action_done(cr, uid, [move_id], context)
+ partial_data['move%s' % (move_id)] = {
+ 'product_id': move.product_id.id,
+ 'product_qty': move.quantity,
+ 'product_uom': move.product_uom.id,
+ 'prodlot_id': move.prodlot_id.id,
+ }
+ if (picking_type == 'in') and (move.product_id.cost_method == 'average'):
+ partial_data['move%s' % (move.move_id.id)].update(product_price=move.cost,
+ product_currency=move.currency.id)
+ stock_picking.do_partial(cr, uid, [partial.picking_id.id], partial_data, context=context)
return {'type': 'ir.actions.act_window_close'}
-stock_partial_picking()
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
diff --git a/addons/stock/wizard/stock_partial_picking_view.xml b/addons/stock/wizard/stock_partial_picking_view.xml
index 4887c1e16d8..be85d266673 100644
--- a/addons/stock/wizard/stock_partial_picking_view.xml
+++ b/addons/stock/wizard/stock_partial_picking_view.xml
@@ -9,5 +9,59 @@
new
+
+ stock.partial.picking.form
+ stock.partial.picking
+ form
+
+
+
+
diff --git a/addons/stock/wizard/stock_replacement.py b/addons/stock/wizard/stock_replacement.py
deleted file mode 100644
index 17f4d5a62ab..00000000000
--- a/addons/stock/wizard/stock_replacement.py
+++ /dev/null
@@ -1,61 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-from osv import fields, osv
-from tools.translate import _
-import time
-
-class stock_replacement(osv.osv_memory):
- """
- This class has been defined for replacement wizard
- """
- _name = "stock.replacement"
- _description = "Stock Replacement"
-
- def get_composant(self, cr, uid, ids, context=None):
- return {}
-
- def replace_composant(self, cr, uid, ids, context=None):
- """ To open a new wizard that acknowledge, a replacement task
- @return: It returns the replacement acknowledgement form
- """
- return {
- 'name': False,
- 'view_type': 'form',
- 'view_mode': 'form',
- 'res_model': 'stock.replacement.result',
- 'type': 'ir.actions.act_window',
- 'target':'new',
- }
-
-stock_replacement()
-
-class stock_replacement_result(osv.osv_memory):
- """
- This class has been defined for replacement result
- """
- _name = "stock.replacement.result"
- _description = "Stock Replacement result"
-
-stock_replacement_result()
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
diff --git a/addons/stock/wizard/stock_replacement_view.xml b/addons/stock/wizard/stock_replacement_view.xml
deleted file mode 100644
index cea5bfedbe8..00000000000
--- a/addons/stock/wizard/stock_replacement_view.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-
-
-
-
- Stock Replacement
- stock.replacement
- form
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Stock Replacement result
- stock.replacement.result
- form
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/stock/wizard/stock_ups.py b/addons/stock/wizard/stock_ups.py
deleted file mode 100644
index fb47587f254..00000000000
--- a/addons/stock/wizard/stock_ups.py
+++ /dev/null
@@ -1,95 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-import netsvc
-from osv import fields, osv
-from tools.translate import _
-
-class stock_ups(osv.osv_memory):
- _name = "stock.ups"
- _description = "Stock ups"
-
- def ups_save(self, cr, uid, ids, context=None):
- return {
- 'name': False,
- 'view_type': 'form',
- 'view_mode': 'form',
- 'res_model': 'stock.ups.final',
- 'type': 'ir.actions.act_window',
- 'target':'new',
- }
-
- def ups_upload(self, cr, uid, ids, context=None):
- return {
- 'name': False,
- 'view_type': 'form',
- 'view_mode': 'form',
- 'res_model': 'stock.ups.upload',
- 'type': 'ir.actions.act_window',
- 'target':'new',
- }
-
- _columns = {
- 'weight': fields.float('Lot weight', required=True),
- }
-
- _defaults = {
- 'weight': lambda *a: 3.0,
- }
-stock_ups()
-
-class stock_ups_final(osv.osv_memory):
- _name = "stock.ups.final"
- _description = "Stock ups final"
-
- def create_xmlfile(self, cr, uid, ids, context=None):
- """ Creates xml report file.
- @return: xml file
- """
- data={}
- report = netsvc._group['report']['report.stock.move.lot.ups_xml']
- data['report_type'] = 'raw'
- return {'xmlfile' : report.create(uid, context['active_id'], ids, {})}
-
- _columns = {
- 'xmlfile': fields.binary('XML File'),
- }
-
-stock_ups_final()
-
-class stock_ups_upload(osv.osv_memory):
- _name = "stock.ups.upload"
- _description = "Stock ups upload"
-
- def upload_xmlfile(self, cr, uid, ids, context=None):
- """ Uploads xml report file.
- @return:
- """
- data={}
- report = netsvc._group['report']['report.stock.move.lot.ups_xml']
- data['report_type'] = 'raw'
- fp = file('/tmp/test.xml', 'w').write(report.create(uid, context['active_id'], ids, {}))
- return {'type': 'ir.actions.act_window_close'}
-
-stock_ups_upload()
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
diff --git a/addons/stock/wizard/stock_ups_view.xml b/addons/stock/wizard/stock_ups_view.xml
deleted file mode 100644
index cbce721e1b9..00000000000
--- a/addons/stock/wizard/stock_ups_view.xml
+++ /dev/null
@@ -1,56 +0,0 @@
-
-
-
-
-
- Stock ups
- stock.ups
- form
-
-
-
-
-
-
-
-
-
-
-
-
-
- Stock ups
- stock.ups.final
- form
-
-
-
-
-
-
-
-
-
-
-
- Stock ups
- stock.ups.upload
- form
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/stock_invoice_directly/__openerp__.py b/addons/stock_invoice_directly/__openerp__.py
index 98c63dca506..69acadeb8bd 100644
--- a/addons/stock_invoice_directly/__openerp__.py
+++ b/addons/stock_invoice_directly/__openerp__.py
@@ -23,7 +23,7 @@
{
'name': 'Invoice Picking Directly',
'version': '1.0',
- 'category': 'Warehouse',
+ 'category': 'Hidden',
'complexity': "easy",
'description': """
Invoice Wizard for Delivery.
diff --git a/addons/stock_invoice_directly/test/stock_invoice_directly.yml b/addons/stock_invoice_directly/test/stock_invoice_directly.yml
index 6d70540b4d5..795da509d04 100644
--- a/addons/stock_invoice_directly/test/stock_invoice_directly.yml
+++ b/addons/stock_invoice_directly/test/stock_invoice_directly.yml
@@ -38,33 +38,19 @@
"active_ids": [ref("stock.menu_action_picking_tree")], "active_id": ref("stock.menu_action_picking_tree"),
})
-
- I create a record for partial picking.
--
- !record {model: stock.partial.picking, id: stock_partial_picking_0}:
- date: !eval time.strftime('%Y-%m-%d %H:%M:%S')
--
- I make picking order Done.
+ I process the delivery
-
!python {model: stock.partial.picking}: |
- pick_obj = self.pool.get('stock.picking')
- partial = self.browse(cr, uid, ref('stock_partial_picking_0'), context)
- partial_datas = {
- 'delivery_date' : partial.date
- }
- for pick in pick_obj.browse(cr, uid, [ref('stock_picking_out0')]):
- for m in pick.move_lines:
- partial_datas['move%s'%(m.id)] = {
- 'product_id' : m.product_id.id,
- 'product_qty' : m.product_qty,
- 'product_uom' : m.product_uom.id
- }
- pick_obj.do_partial(cr, uid, [ref('stock_picking_out0')], partial_datas, context=context)
+ partial_id = self.create(cr, uid, {}, context={'active_model':'stock.picking',
+ 'active_ids':[ref('stock_picking_out0')]})
+ self.do_partial(cr, uid, [partial_id])
+
-
As the Invoice state of the picking order is To be invoiced. I create invoice for my outgoing picking order.
-
!python {model: stock.invoice.onshipping}: |
- wiz_id = self.create(cr, uid, {'invoice_date': '2010-08-04', 'journal_id': ref('account.bank_journal')},
- {'active_ids': [ref("stock_picking_out0")]})
+ wiz_id = self.create(cr, uid, {'invoice_date': '2010-08-04', 'journal_id': ref('account.sales_journal')},
+ {'active_ids': [ref("stock_picking_out0")], "active_model": "stock.picking"})
self.create_invoice(cr, uid, [wiz_id], {"lang": "en_US",
"search_default_available": 1, "tz": False, "active_model": "stock.picking",
"contact_display": "partner", "active_ids": [ref("stock_picking_out0")], "active_id": ref("stock_picking_out0")})
diff --git a/addons/stock_invoice_directly/wizard/stock_invoice.py b/addons/stock_invoice_directly/wizard/stock_invoice.py
index 11b31725a88..3725d9b6d7f 100644
--- a/addons/stock_invoice_directly/wizard/stock_invoice.py
+++ b/addons/stock_invoice_directly/wizard/stock_invoice.py
@@ -25,24 +25,15 @@ class invoice_directly(osv.osv_memory):
_inherit = 'stock.partial.picking'
def do_partial(self, cr, uid, ids, context=None):
- """ Makes partial moves and pickings done and
- launches Create invoice wizard if invoice state is To be Invoiced.
- @param self: The object pointer.
- @param cr: A database cursor
- @param uid: ID of the user currently logged in
- @param context: A standard dictionary
- @return:
+ """Launch Create invoice wizard if invoice state is To be Invoiced,
+ after processing the partial picking.
"""
- if context is None:
- context = {}
+ if context is None: context = {}
result = super(invoice_directly, self).do_partial(cr, uid, ids, context)
- pick_obj = self.pool.get('stock.picking')
- context.update({'active_model':'stock.picking'})
- picking_ids = context.get('active_ids', False)
- if picking_ids:
- context.update({'active_id':picking_ids[0]})
- pick = pick_obj.browse(cr, uid, picking_ids, context=context)[0]
- if pick.invoice_state == '2binvoiced':
+ partial = self.browse(cr, uid, ids[0], context)
+ context.update(active_model='stock.picking',
+ active_ids=[partial.picking_id.id])
+ if partial.picking_id.invoice_state == '2binvoiced':
return {
'name': 'Create Invoice',
'view_type': 'form',
@@ -55,5 +46,5 @@ class invoice_directly(osv.osv_memory):
return {'type': 'ir.actions.act_window_close'}
invoice_directly()
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
diff --git a/addons/stock_location/__openerp__.py b/addons/stock_location/__openerp__.py
index ba81a42de5a..1c4b7841a10 100644
--- a/addons/stock_location/__openerp__.py
+++ b/addons/stock_location/__openerp__.py
@@ -21,9 +21,9 @@
{
- 'name': 'Warehouse Locations Paths',
+ 'name': 'Advanced Routes',
'version': '1.0',
- 'category': 'Warehouse',
+ 'category': 'Manufacturing',
'description': """
This module supplements the Warehouse application by effectively implementing Push and Pull inventory flows.
============================================================================================================
@@ -96,8 +96,8 @@ You can use the demo data as follow:
],
'installable': True,
'test':[
-# 'test/stock_location_pull_flow.yml',
-# 'test/stock_location_push_flow.yml',
+ 'test/stock_location_pull_flow.yml',
+ 'test/stock_location_push_flow.yml',
],
'active': False,
'certificate': '0046505115101',
diff --git a/addons/stock_location/test/stock_location_pull_flow.yml b/addons/stock_location/test/stock_location_pull_flow.yml
index 557162c725d..dec830b2d77 100644
--- a/addons/stock_location/test/stock_location_pull_flow.yml
+++ b/addons/stock_location/test/stock_location_pull_flow.yml
@@ -28,7 +28,7 @@
I create a account type Receivable.
-
!record {model: account.account.type, id: account_account_type_receivable0}:
- close_method: balance
+ close_method: unreconciled
code: receivable_test
name: Receivable For Tests
sign: 1
@@ -126,7 +126,7 @@
I create a product and define the pulled flow condition for stock move.
I set shipping type Sending Goods. and set Procurement type to move.
-
- !record {model: product.product, id: product_product_hpcdwriters0}:
+ !record {model: product.product, id: product_product_hpcdwriters01}:
categ_id: product_category_computer0
cost_method: standard
list_price: 1000.0
@@ -179,7 +179,7 @@
name: Testing pulled flow
priority: '1'
procure_method: make_to_order
- product_id: product_product_hpcdwriters0
+ product_id: product_product_hpcdwriters01
product_qty: 5.0
product_uom: product.product_uom_unit
product_uos: product.product_uom_unit
@@ -194,15 +194,7 @@
!python {model: procurement.order.compute.all}: |
proc_obj = self.pool.get('procurement.order')
proc_obj._procure_confirm(cr,uid)
--
- I check the state of procurement order is cancel and stock move is cancel.
--
- !python {model: procurement.order }: |
- from tools.translate import _
- procurement_ids=self.search(cr, uid, [('id', '=', ref('procurement_order_test0'))])
- if procurement_ids:
- order=self.browse(cr,uid,procurement_ids)[0]
- assert(order.state=='cancel')
+
-
I check the new procurement order has been created .
-
diff --git a/addons/stock_location/test/stock_location_push_flow.yml b/addons/stock_location/test/stock_location_push_flow.yml
index db2ae388317..b6a938e99e5 100644
--- a/addons/stock_location/test/stock_location_push_flow.yml
+++ b/addons/stock_location/test/stock_location_push_flow.yml
@@ -33,7 +33,7 @@
I set the chain location Supplier to stock Input
Stock Input to Quality test and Quality test -Stock .
-
- !record {model: product.product, id: product_product_hpcdwriters0}:
+ !record {model: product.product, id: product_product_hpcdwriters01}:
categ_id: product_category_computer0
cost_method: standard
list_price: 1000.0
@@ -72,7 +72,7 @@
location_dest_id: stock.stock_location_stock
location_id: stock.stock_location_suppliers
name: 'HP CD writers'
- product_id: product_product_hpcdwriters0
+ product_id: product_product_hpcdwriters01
product_qty: 6.0
product_uom: product.product_uom_unit
product_uos_qty: 6.0
diff --git a/addons/stock_no_autopicking/__openerp__.py b/addons/stock_no_autopicking/__openerp__.py
index 9b12ac49c34..bd5629579cc 100644
--- a/addons/stock_no_autopicking/__openerp__.py
+++ b/addons/stock_no_autopicking/__openerp__.py
@@ -23,7 +23,7 @@
{
'name': 'Stock No Auto-Picking',
'version': '1.0',
- 'category': 'Warehouse',
+ 'category': 'Hidden',
'description': """
This module allows an intermediate picking process to provide raw materials to production orders.
=================================================================================================
diff --git a/addons/stock_planning/__openerp__.py b/addons/stock_planning/__openerp__.py
index eb3cb385078..e3043758b94 100644
--- a/addons/stock_planning/__openerp__.py
+++ b/addons/stock_planning/__openerp__.py
@@ -23,7 +23,7 @@
"name": "Master Procurement Schedule",
"version": "1.2",
"author": "OpenERP SA and Grzegorz Grzelak (OpenGLOBE)",
- "category": "Warehouse",
+ "category": "Hidden",
"images": ["images/master_procurement_schedule.jpeg","images/sales_forecast.jpeg","images/stock_planning_line.jpeg","images/stock_sales_period.jpeg"],
"depends": ["crm", "stock","sale"],
"complexity": "expert",
diff --git a/addons/stock_planning/i18n/fr.po b/addons/stock_planning/i18n/fr.po
index 28e37d8934e..a5dd24c6c6b 100644
--- a/addons/stock_planning/i18n/fr.po
+++ b/addons/stock_planning/i18n/fr.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:16+0000\n"
-"PO-Revision-Date: 2011-01-13 22:58+0000\n"
-"Last-Translator: Quentin THEURET \n"
+"PO-Revision-Date: 2011-09-26 12:15+0000\n"
+"Last-Translator: lholivier \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 05:51+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-09-27 04:47+0000\n"
+"X-Generator: Launchpad (build 14028)\n"
#. module: stock_planning
#: code:addons/stock_planning/wizard/stock_planning_createlines.py:73
@@ -473,7 +473,7 @@ msgstr "Erreur !"
#: code:addons/stock_planning/stock_planning.py:626
#, python-format
msgid "Manual planning for %s"
-msgstr ""
+msgstr "Planification manuelle pour %s"
#. module: stock_planning
#: field:stock.sale.forecast,analyzed_user_id:0
@@ -1648,7 +1648,7 @@ msgstr ""
#. module: stock_planning
#: field:stock.planning,history:0
msgid "Procurement History"
-msgstr "Historique du besoin"
+msgstr "Historique d'approvisionnement"
#. module: stock_planning
#: help:stock.period.createlines,date_start:0
diff --git a/addons/stock_planning/stock_planning.py b/addons/stock_planning/stock_planning.py
index fe0b2f8f3ce..3ec992ecd0c 100644
--- a/addons/stock_planning/stock_planning.py
+++ b/addons/stock_planning/stock_planning.py
@@ -46,7 +46,7 @@ class stock_period(osv.osv):
'name': fields.char('Period Name', size=64, required=True),
'date_start': fields.datetime('Start Date', required=True),
'date_stop': fields.datetime('End Date', required=True),
- 'state': fields.selection([('draft','Draft'), ('open','Open'),('close','Close')], 'State')
+ 'state': fields.selection([('draft','Draft'), ('open','Open'),('close','Close')], 'State'),
}
_defaults = {
'state': 'draft'
diff --git a/addons/stock_planning/test/stock_planning.yml b/addons/stock_planning/test/stock_planning.yml
index 77f1d5a427d..df2f53dbb6e 100644
--- a/addons/stock_planning/test/stock_planning.yml
+++ b/addons/stock_planning/test/stock_planning.yml
@@ -38,6 +38,18 @@
date_start: !eval "'%s-07-29 00:00:00' %(datetime.now().year)"
date_stop: !eval "'%s-07-31 23:59:00' %(datetime.now().year)"
name: !eval "'%s, week 31' %(datetime.now().year)"
+-
+ I validate in open state module stock.period
+-
+ !python {model: stock.period}: |
+ self.button_open(cr, uid, [ref("stock_period_01")], {"lang": 'en_GB', "tz": False, "active_model": 'ir.ui.menu', "active_id": ref("stock_planning.menu_stock_period_main"), "active_ids": [ref("stock_planning.menu_stock_period_main")], "department_id": False})
+
+-
+ I validate in close state module stock.period
+-
+ !python {model: stock.period}: |
+ self.button_close(cr, uid, [ref("stock_period_01")], {"lang": 'en_GB', "tz": False, "active_model": 'ir.ui.menu', "active_id": ref("stock_planning.menu_stock_period_main"), "active_ids": [ref("stock_planning.menu_stock_period_main")], "department_id": False})
+
-
Now I create the forecast for this period for all PCs.
-
@@ -54,6 +66,66 @@
'en_US', "active_model": "ir.ui.menu", "active_ids": [ref("stock_planning.menu_stock_sale_forecast_createlines")],
"tz": False, "active_id": ref("stock_planning.menu_stock_sale_forecast_createlines"),
})
+
+-
+ I create stock.period.createlines for the first week of august.
+-
+ !record {model: stock.period.createlines, id: stock_period_createlines_week01}:
+ date_start: !eval "'%s-08-01' %(datetime.now().year)"
+ date_stop: !eval "'%s-08-06' %(datetime.now().year)"
+ name: !eval "'%s, week 31' %(datetime.now().year)"
+
+-
+ Performing an osv_memory action create_stock_periods on module stock.period.createlines
+-
+ !python {model: stock.period.createlines}: |
+ self.create_stock_periods(cr, uid, [ref("stock_period_createlines_week01")], {"lang":
+ 'en_US', "name": 'Weekly', "interval": 6, "active_model": "ir.ui.menu", "active_ids": [ref("stock_planning.menu_stock_period_creatlines")],
+ "tz": False, "active_id": ref("stock_planning.menu_stock_period_creatlines"),
+ })
+-
+ I create stock.period.createlines for the month of august - september
+-
+ !record {model: stock.period.createlines, id: stock_period_createlines_month01}:
+ date_start: !eval "'%s-08-01' %(datetime.now().year)"
+ date_stop: !eval "'%s-09-01' %(datetime.now().year)"
+ name: !eval "'%s, month 8' %(datetime.now().year)"
+
+-
+ Performing an osv_memory action create_stock_periods on module stock.period.createlines
+-
+ !python {model: stock.period.createlines}: |
+ self.create_stock_periods(cr, uid, [ref("stock_period_createlines_month01")], {"lang":
+ 'en_US', "name": 'Monthly', "interval": 6, "active_model": "ir.ui.menu", "active_ids": [ref("stock_planning.menu_stock_period_creatlines")],
+ "tz": False, "active_id": ref("stock_planning.menu_stock_period_creatlines"),
+ })
+
+-
+ I create stock.period.createlines for the Day of august
+-
+ !record {model: stock.period.createlines, id: stock_period_createlines_day01}:
+ date_start: !eval "'%s-08-01' %(datetime.now().year)"
+ date_stop: !eval "'%s-08-01' %(datetime.now().year)"
+ name: !eval "'%s, day 01' %(datetime.now().year)"
+
+-
+ Performing an osv_memory action create_stock_periods on module stock.period.createlines
+-
+ !python {model: stock.period.createlines}: |
+ self.create_stock_periods(cr, uid, [ref("stock_period_createlines_day01")], {"lang":
+ 'en_US', "name": 'Daily', "interval": 6, "active_model": "ir.ui.menu", "active_ids": [ref("stock_planning.menu_stock_period_creatlines")],
+ "tz": False, "active_id": ref("stock_planning.menu_stock_period_creatlines"),
+ })
+
+-
+ I Read date_start on module stock.period.createlines.
+-
+ !python {model: stock.period.createlines }: |
+ self._get_new_period_start(cr, uid,{"lang":'en_US', "active_model": "ir.ui.menu",
+ "active_ids": [ref("stock_planning.menu_stock_period_creatlines")],
+ "tz": False, "active_id": ref("stock_planning.menu_stock_period_creatlines"),"department_id": False
+ })
+
-
I create a sale order for PC1-Basic PC and PC3-Medium PC.
-
@@ -100,11 +172,29 @@
'analyzed_period1_id': ref("stock_period_03"),
'analyzed_user_id': ref("base.user_root"),
'analyzed_warehouse_id': ref("stock.warehouse0")}
+ context = {"lang": "en_US", "tz":False, "search_default_create_uid": 1, "active_model": "ir.ui.menu",
+ "department_id": False, "active_ids": [ref("stock_planning.menu_stock_sale_forecast_all")],
+ "active_id": ref("stock_planning.menu_stock_sale_forecast_all"), }
self.write(cr, uid, forecast_ids, write_dict)
- self.calculate_sales_history(cr, uid, forecast_ids, {"lang": "en_US", "tz":
+ self.calculate_sales_history(cr, uid, forecast_ids, context)
+ self.action_validate(cr, uid, forecast_ids, context)
+
+-
+ Now I applying onchange and unlink forecast record for the product PC3
+-
+ !python {model: stock.sale.forecast}: |
+ forecast_ids = self.search(cr, uid, [('product_id','=',ref('product.product_product_pc3'))])
+ self.unlink(cr, uid, forecast_ids, {"lang": "en_US", "tz":
False, "search_default_create_uid": 1, "active_model": "ir.ui.menu", "department_id":
False, "active_ids": [ref("stock_planning.menu_stock_sale_forecast_all")], "active_id":
ref("stock_planning.menu_stock_sale_forecast_all"), })
+ self.product_id_change(cr, uid, forecast_ids, ref('product.product_product_20'))
+ self.onchange_uom(cr, uid, forecast_ids, ref('product.product_uom_unit'), False, ref('product.product_uom_unit'), ref('product.product_product_20'))
+ self.product_amt_change(cr, uid, forecast_ids, 5.0, ref('product.product_uom_unit'), ref('product.product_product_20'))
+ self.product_amt_change(cr, uid, forecast_ids, 5.0, ref('product.product_uom_unit'), ref('product.product_product_20'))
+ self._to_default_uom_factor(cr, uid, ref('product.product_product_20'), ref('product.product_uom_unit'), {})
+ self.onchange_company(cr, uid, forecast_ids, ref('stock.res_company_tinyshop0'))
+
-
I create Master procurement schedule for the third week of July.
-
@@ -113,10 +203,22 @@
period_id: stock_period_03
product_categ_id: product.product_category_pc
warehouse_id: stock.warehouse0
+
+-
+ I create source warehouse for supply from another warehouse.
+-
+ !record {model: stock.warehouse, id: stock_warehouse_0}:
+ name: shop1
+ company_id: base.main_company
+ lot_input_id: stock.stock_location_stock
+ lot_stock_id: stock.stock_location_stock
+ lot_output_id: stock.stock_location_output
+
-
Performing an osv_memory action create_planning on module stock.planning.createlines
-
!python {model: stock.planning.createlines}: |
+ self.onchange_company(cr, uid, ref("stock_planning_createlines_0"), ref('stock.res_company_tinyshop0'))
self.create_planning(cr, uid, [ref("stock_planning_createlines_0")], {"lang":
"en_US", "tz": False, "active_model": "ir.ui.menu", "active_ids": [ref("stock_planning.menu_stock_planning_createlines")],
"active_id": ref("stock_planning.menu_stock_planning_createlines"), "department_id":
@@ -126,11 +228,17 @@
-
!python {model: stock.planning}: |
planning_ids = self.search(cr, uid, [('product_id','=',ref('product.product_product_pc1')),('period_id','=',ref('stock_period_03'))])
- self.write(cr, uid, planning_ids, {'to_procure': 30.0,'planned_outgoing': 40.0})
- self.calculate_planning(cr, uid, planning_ids, {"lang": "en_US", "tz": False,
- "active_model": "ir.ui.menu", "active_ids": [ref("stock_planning.menu_stock_planning")],
+ self.write(cr, uid, planning_ids, {'to_procure': 30.0,'planned_outgoing': 40.0,'supply_warehouse_id': ref("stock_warehouse_0")})
+ self.onchange_company(cr, uid, planning_ids, ref('stock.res_company_tinyshop0'))
+ self.onchange_uom(cr, uid, planning_ids, ref('product.product_uom_unit'), ref('product.product_product_pc1'),ref('product.product_uom_unit'), False, False)
+ self.product_id_change(cr, uid, planning_ids, ref('product.product_product_20'))
+ context = {"lang": "en_US", "tz": False, "active_model": "ir.ui.menu",
+ "active_ids": [ref("stock_planning.menu_stock_planning")],
"active_id": ref("stock_planning.menu_stock_planning"), "department_id": False,
- })
+ }
+ self.calculate_planning(cr, uid, planning_ids, context)
+ self.internal_supply(cr, uid, planning_ids, context)
+
-
I create a procurement order for the incoming products left.
-
diff --git a/addons/stock_planning/wizard/stock_planning_create_periods.py b/addons/stock_planning/wizard/stock_planning_create_periods.py
index 05f8aa925a9..963ff416822 100644
--- a/addons/stock_planning/wizard/stock_planning_create_periods.py
+++ b/addons/stock_planning/wizard/stock_planning_create_periods.py
@@ -46,6 +46,7 @@ class stock_period_createlines(osv.osv_memory):
'date_start': fields.date('Start Date', required=True, help="Starting date for planning period."),
'date_stop': fields.date('End Date', required=True, help="Ending date for planning period."),
'period_ids': fields.one2many('stock.period', 'planning_id', 'Periods'),
+ 'period_ids': fields.many2many('stock.period', 'stock_period_createlines_stock_period_rel', 'wizard_id', 'period_id', 'Periods'),
}
_defaults={
'date_start': _get_new_period_start,
diff --git a/addons/subscription/__openerp__.py b/addons/subscription/__openerp__.py
index d2010c47987..581d54c9c4b 100644
--- a/addons/subscription/__openerp__.py
+++ b/addons/subscription/__openerp__.py
@@ -21,9 +21,9 @@
{
- 'name': 'Subscription and recurring operations',
+ 'name': 'Recurring Documents',
'version': '1.0',
- 'category': 'Tools',
+ 'category': 'Hidden',
'description': """
Create recurring documents.
===========================
diff --git a/addons/subscription/i18n/et.po b/addons/subscription/i18n/et.po
index cb52a15396d..6190bcdec45 100644
--- a/addons/subscription/i18n/et.po
+++ b/addons/subscription/i18n/et.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:16+0000\n"
-"PO-Revision-Date: 2010-10-30 14:37+0000\n"
-"Last-Translator: Fabien (Open ERP) \n"
+"PO-Revision-Date: 2011-10-11 18:14+0000\n"
+"Last-Translator: Aare Vesi \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 04:58+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-12 04:39+0000\n"
+"X-Generator: Launchpad (build 14124)\n"
#. module: subscription
#: field:subscription.subscription,doc_source:0
@@ -30,7 +30,7 @@ msgstr "Objekt"
#. module: subscription
#: view:subscription.subscription:0
msgid "This Week"
-msgstr ""
+msgstr "See nädal"
#. module: subscription
#: view:subscription.subscription:0
@@ -76,13 +76,13 @@ msgstr "Nädalad"
#. module: subscription
#: view:subscription.subscription:0
msgid "Today"
-msgstr ""
+msgstr "Täna"
#. module: subscription
#: code:addons/subscription/subscription.py:44
#, python-format
msgid "Error !"
-msgstr ""
+msgstr "Viga !"
#. module: subscription
#: model:ir.actions.act_window,name:subscription.action_subscription_form
@@ -265,7 +265,7 @@ msgstr "Väär"
#. module: subscription
#: view:subscription.subscription:0
msgid "Group By..."
-msgstr ""
+msgstr "Grupeeri..."
#. module: subscription
#: view:subscription.subscription:0
diff --git a/addons/subscription/subscription.py b/addons/subscription/subscription.py
index 0f2630ffbb5..466defd1fa2 100644
--- a/addons/subscription/subscription.py
+++ b/addons/subscription/subscription.py
@@ -38,12 +38,6 @@ class subscription_document(osv.osv):
_defaults = {
'active' : lambda *a: True,
}
-
- def write(self, cr, uid, ids, vals, context=None):
- if 'model' in vals:
- raise osv.except_osv(_('Error !'),_('You cannot modify the Object linked to the Document Type!\nCreate another Document instead !'))
- return super(subscription_document, self).write(cr, uid, ids, vals, context=context)
-
subscription_document()
class subscription_document_fields(osv.osv):
diff --git a/addons/survey/__openerp__.py b/addons/survey/__openerp__.py
index 5a551c28a3d..e9bd92f5840 100644
--- a/addons/survey/__openerp__.py
+++ b/addons/survey/__openerp__.py
@@ -20,9 +20,9 @@
##############################################################################
{
- 'name': 'Survey Module',
+ 'name': 'Survey',
'version': '1.0',
- 'category': 'Tools',
+ 'category': 'Hidden',
'description': """
This module is used for surveying.
==================================
diff --git a/addons/survey/i18n/et.po b/addons/survey/i18n/et.po
index 727fa44a098..d58d104c052 100644
--- a/addons/survey/i18n/et.po
+++ b/addons/survey/i18n/et.po
@@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2011-01-11 11:16+0000\n"
-"PO-Revision-Date: 2010-05-13 09:26+0000\n"
-"Last-Translator: lyyser \n"
+"PO-Revision-Date: 2011-10-11 18:13+0000\n"
+"Last-Translator: Aare Vesi \n"
"Language-Team: Estonian \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 05:44+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
+"X-Launchpad-Export-Date: 2011-10-12 04:40+0000\n"
+"X-Generator: Launchpad (build 14124)\n"
#. module: survey
#: view:survey.print:0
@@ -88,7 +88,7 @@ msgstr ""
#: view:survey.question:0
#: view:survey.request:0
msgid "Group By..."
-msgstr ""
+msgstr "Grupeeri..."
#. module: survey
#: view:survey.send.invitation.log:0
@@ -163,12 +163,12 @@ msgstr ""
#. module: survey
#: view:survey:0
msgid "Completed"
-msgstr ""
+msgstr "Valmis"
#. module: survey
#: selection:survey.question,required_type:0
msgid "Exactly"
-msgstr ""
+msgstr "Täpselt"
#. module: survey
#: view:survey:0
diff --git a/addons/survey/specification/final spec b/addons/survey/specification/specification.txt
similarity index 100%
rename from addons/survey/specification/final spec
rename to addons/survey/specification/specification.txt
diff --git a/addons/survey/survey.py b/addons/survey/survey.py
index 78b824af004..8bce83380b6 100644
--- a/addons/survey/survey.py
+++ b/addons/survey/survey.py
@@ -58,7 +58,7 @@ class survey(osv.osv):
help="Set to one if survey is answerable only once"),
'response_user': fields.integer('Maximum Answer per User',
help="Set to one if you require only one Answer per user"),
- 'state': fields.selection([('draft', 'Draft'), ('open', 'Open'), ('close', 'Closed'), ('cancel', 'Cancelled')], 'Status', readonly=True),
+ 'state': fields.selection([('open', 'Open'), ('close', 'Closed'), ('cancel', 'Cancelled')], 'Status', readonly=True),
'responsible_id': fields.many2one('res.users', 'Responsible', help="User responsible for survey"),
'tot_start_survey': fields.integer("Total Started Survey", readonly=1),
'tot_comp_survey': fields.integer("Total Completed Survey", readonly=1),
@@ -70,17 +70,13 @@ class survey(osv.osv):
'invited_user_ids': fields.many2many('res.users', 'survey_invited_user_rel', 'sid', 'uid', 'Invited User'),
}
_defaults = {
- 'state': lambda * a: "draft",
+ 'state': lambda * a: "open",
'tot_start_survey': lambda * a: 0,
'tot_comp_survey': lambda * a: 0,
'send_response': lambda * a: 1,
'response_user': lambda * a:1,
}
- def survey_draft(self, cr, uid, ids, arg):
- self.write(cr, uid, ids, {'state': 'draft'})
- return True
-
def survey_open(self, cr, uid, ids, arg):
self.write(cr, uid, ids, {'state': 'open', 'date_open': strftime("%Y-%m-%d %H:%M:%S")})
return True
diff --git a/addons/survey/survey_demo.xml b/addons/survey/survey_demo.xml
index 97e8daeb5b4..89571bd647a 100644
--- a/addons/survey/survey_demo.xml
+++ b/addons/survey/survey_demo.xml
@@ -1281,6 +1281,7 @@
20
+ open5
@@ -2140,7 +2141,7 @@
Community SurveyPlease take a few minutes to complete this survey on the quality of service we provide. We welcome your feedback and appreciate your honesty. With your help, we hope to strengthen the bond between our clients.
- draft
+ open
diff --git a/addons/survey/survey_view.xml b/addons/survey/survey_view.xml
index 00ac7620be7..f92ce45a037 100644
--- a/addons/survey/survey_view.xml
+++ b/addons/survey/survey_view.xml
@@ -180,14 +180,12 @@
-
+
-
-
+
@@ -261,7 +259,8 @@
-
+
+
diff --git a/addons/survey/test/survey00.yml b/addons/survey/test/survey00.yml
index 7bfe8a5320d..fa56e9fac39 100644
--- a/addons/survey/test/survey00.yml
+++ b/addons/survey/test/survey00.yml
@@ -144,8 +144,8 @@
Give answer of the survey, Run "Answer a Survey" wizard and select the survey and press on start button then run the selected survey.
-
!python {model: survey.name.wiz}: |
- ids = self.create(cr, uid, {'survey_id': ref("survey_partner_0")})
- self.action_next(cr, uid, [ids], context)
+ id = self.create(cr, uid, {'survey_id': ref("survey_partner_0")})
+ self.action_next(cr, uid, [id], context)
-
Give answer of the first and second page in "Partner Feedback" suvey.
-
diff --git a/addons/survey/wizard/survey_answer.py b/addons/survey/wizard/survey_answer.py
index 471290af2cb..be43a409774 100644
--- a/addons/survey/wizard/survey_answer.py
+++ b/addons/survey/wizard/survey_answer.py
@@ -40,14 +40,6 @@ class survey_question_wiz(osv.osv_memory):
def fields_view_get(self, cr, uid, view_id=None, view_type='form', context=None, toolbar=False, submenu=False):
"""
Fields View Get method :- generate the new view and display the survey pages of selected survey.
-
- @param self: The object pointer
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param view_id : view id of the current object.
- @param view_type : which type of view is create. like :- form, tree ,search etc...
- @param context: A standard dictionary for contextual values
- @return : Dictionary value for created view of particular survey pages.
"""
result = super(survey_question_wiz, self).fields_view_get(cr, uid, view_id, \
@@ -88,7 +80,7 @@ class survey_question_wiz(osv.osv_memory):
if not survey_id:
# Try one more time to find it
if sur_name_rec and sur_name_rec.survey_id:
- survey_id = sur_name_rec.survey_id[0]
+ survey_id = sur_name_rec.survey_id.id
else:
# raise osv.except_osv(_('Error!'), _("Cannot locate survey for the question wizard!"))
# If this function is called without a survey_id in
@@ -398,10 +390,10 @@ class survey_question_wiz(osv.osv_memory):
sur_response_obj.write(cr, uid, [sur_name_read.response], {'state' : 'done'})
if sur_rec.send_response:
- survey_data = survey_obj.browse(cr, uid, int(survey_id))
+ survey_data = survey_obj.browse(cr, uid, survey_id)
response_id = surv_name_wiz.read(cr, uid, context.get('sur_name_id',False))['response']
context.update({'response_id':response_id})
- report = self.create_report(cr, uid, [int(survey_id)], 'report.survey.browse.response', survey_data.title,context)
+ report = self.create_report(cr, uid, [survey_id], 'report.survey.browse.response', survey_data.title,context)
attachments = {}
file = open(addons.get_module_resource('survey', 'report') + survey_data.title + ".pdf")
file_data = ""
@@ -445,15 +437,6 @@ class survey_question_wiz(osv.osv_memory):
def create_report(self, cr, uid, res_ids, report_name=False, file_name=False, context=None):
"""
If any user give answer of survey then last create report of this answer and if 'E-mail Notification on Answer' set True in survey then send mail on responsible person of this survey and attach survey answer report in pdf format.
-
- @param self: The object pointer
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param res_ids: List of survey answer IDs,
- @param report_name: name of the report,
- @param file_name: To give file name of the report,
- @param context: A standard dictionary for contextual values,
- @return : Dictionary value for created report with file nameself.
"""
if not report_name or not res_ids:
return (False, Exception('Report name and Resources ids are required !!!'))
@@ -474,13 +457,6 @@ class survey_question_wiz(osv.osv_memory):
def default_get(self, cr, uid, fields_list, context=None):
"""
Assign Default value in particular field. If Browse Answers wizard run then read the value into database and Assigne to a particular fields.
-
- @param self: The object pointer
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param fields_list: List of fields of current view,
- @param context: A standard dictionary for contextual values,
- @return : Dictionary value for fields list with value.
"""
value = {}
if context is None:
@@ -556,13 +532,6 @@ class survey_question_wiz(osv.osv_memory):
def create(self, cr, uid, vals, context=None):
"""
Create the Answer of survey and store in survey.response object, and if set validation of question then check the value of question if value is wrong then raise the exception.
-
- @param self: The object pointer
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param vals: Values,
- @param context: A standard dictionary for contextual values
- @return : True.
"""
if context is None: context = {}
if context.has_key('active') and context.get('active',False):
@@ -600,9 +569,10 @@ class survey_question_wiz(osv.osv_memory):
#click first time on next button then increemnet on total start suvey
if not sur_name_read['store_ans']:
his_id = self.pool.get('survey.history').create(cr, uid, {'user_id': uid, \
- 'date': strftime('%Y-%m-%d %H:%M:%S'), 'survey_id': sur_name_read['survey_id']})
- sur_rec = survey_obj.read(cr, uid, sur_name_read['survey_id'])
- survey_obj.write(cr, uid, sur_name_read['survey_id'], {'tot_start_survey' : sur_rec['tot_start_survey'] + 1})
+ 'date': strftime('%Y-%m-%d %H:%M:%S'), 'survey_id': sur_name_read['survey_id'][0]})
+ survey_id = sur_name_read['survey_id'][0]
+ sur_rec = survey_obj.read(cr, uid, survey_id)
+ survey_obj.write(cr, uid, survey_id, {'tot_start_survey' : sur_rec['tot_start_survey'] + 1})
if context.has_key('cur_id'):
if context.has_key('request') and context.get('request',False):
self.pool.get(context.get('object',False)).write(cr, uid, [int(context.get('cur_id',False))], {'response' : response_id})
@@ -1016,13 +986,6 @@ class survey_question_wiz(osv.osv_memory):
def action_new_question(self,cr, uid, ids, context=None):
"""
New survey.Question form.
-
- @param self: The object pointer
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of survey.question.wiz IDs
- @param context: A standard dictionary for contextual values
- @return : Dictionary value for Open new survey.Qestion form.
"""
if context is None:
context = {}
@@ -1044,13 +1007,6 @@ class survey_question_wiz(osv.osv_memory):
def action_new_page(self, cr, uid, ids, context=None):
"""
New survey.Page form.
-
- @param self: The object pointer
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of survey.question.wiz IDs
- @param context: A standard dictionary for contextual values
- @return : Dictionary value for Open new survey.page form.
"""
if context is None:
context = {}
@@ -1072,13 +1028,6 @@ class survey_question_wiz(osv.osv_memory):
def action_edit_page(self,cr, uid, ids, context=None):
"""
Edit survey.page.
-
- @param self: The object pointer
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of survey.question.wiz IDs
- @param context: A standard dictionary for contextual values
- @return : Dictionary value for Open Edit survey.page form.
"""
if context is None:
context = {}
@@ -1101,13 +1050,6 @@ class survey_question_wiz(osv.osv_memory):
def action_delete_page(self,cr, uid, ids, context=None):
"""
Delete survey.page.
-
- @param self: The object pointer
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of survey.question.wiz IDs
- @param context: A standard dictionary for contextual values
- @return : Dictionary value for Open next survey.page form, but delete the selected page.
"""
if context is None:
context = {}
@@ -1134,13 +1076,6 @@ class survey_question_wiz(osv.osv_memory):
def action_edit_question(self,cr, uid, ids, context=None):
"""
Edit survey.question.
-
- @param self: The object pointer
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of survey.question.wiz IDs
- @param context: A standard dictionary for contextual values
- @return : Dictionary value for Open Edit survey.question form.
"""
if context is None:
context = {}
@@ -1163,13 +1098,6 @@ class survey_question_wiz(osv.osv_memory):
def action_delete_question(self,cr, uid, ids, context=None):
"""
Delete survey.question.
-
- @param self: The object pointer
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of survey.question.wiz IDs
- @param context: A standard dictionary for contextual values
- @return : Dictionary value for Open same survey.page form, but delete the selected survey.question in current survey.page.
"""
if context is None:
context = {}
@@ -1197,13 +1125,6 @@ class survey_question_wiz(osv.osv_memory):
def action_forward_previous(self, cr, uid, ids, context=None):
"""
Goes to previous Survey Answer.
-
- @param self: The object pointer
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of survey.question.wiz IDs
- @param context: A standard dictionary for contextual values
- @return : Dictionary value for Open Previous Answer form.
"""
if context is None:
context = {}
@@ -1229,13 +1150,6 @@ class survey_question_wiz(osv.osv_memory):
def action_forward_next(self, cr, uid, ids, context=None):
"""
Goes to Next Survey Answer.
-
- @param self: The object pointer
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of survey.question.wiz IDs
- @param context: A standard dictionary for contextual values
- @return : Dictionary value for Open Next Answer form.
"""
if context is None:
context = {}
@@ -1261,13 +1175,6 @@ class survey_question_wiz(osv.osv_memory):
def action_next(self, cr, uid, ids, context=None):
"""
Goes to Next page.
-
- @param self: The object pointer
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of survey.question.wiz IDs
- @param context: A standard dictionary for contextual values
- @return : Dictionary value for Open Next survey.page form.
"""
if context is None:
context = {}
@@ -1288,13 +1195,6 @@ class survey_question_wiz(osv.osv_memory):
def action_previous(self, cr, uid, ids, context=None):
"""
Goes to previous page.
-
- @param self: The object pointer
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of survey.question.wiz IDs
- @param context: A standard dictionary for contextual values
- @return : Dictionary value for Open Previous survey.page form.
"""
if context is None:
context = {}
diff --git a/addons/survey/wizard/survey_browse_answer.py b/addons/survey/wizard/survey_browse_answer.py
index 1798a7c418c..5af913993b2 100644
--- a/addons/survey/wizard/survey_browse_answer.py
+++ b/addons/survey/wizard/survey_browse_answer.py
@@ -24,26 +24,9 @@ from osv import fields
class survey_browse_answer(osv.osv_memory):
_name = 'survey.browse.answer'
-
- def _get_survey(self, cr, uid, context=None):
- """
- Set the value in survey_id field,
-
- @param self: The object pointer
- @param cr: the current row, from the database cursor,
- @param context: A standard dictionary for contextual values,
- @return : Tuple in list with values.
- """
- surv_obj = self.pool.get("survey")
- surv_resp_obj = self.pool.get("survey.response")
- result = []
- for sur in surv_obj.browse(cr, uid, surv_obj.search(cr, uid, [])):
- if surv_resp_obj.search(cr, uid, [('survey_id', '=', sur.id)]):
- result.append((sur.id, sur.title))
- return result
_columns = {
- 'survey_id': fields.selection(_get_survey, "Survey", required="1"),
+ 'survey_id': fields.many2one('survey', "Survey", required="1"),
'response_id': fields.many2one("survey.response", "Survey Answers", help="If this field is empty, all answers of the selected survey will be print."),
}
@@ -51,13 +34,6 @@ class survey_browse_answer(osv.osv_memory):
"""
Open Browse Response wizard. if you select only survey_id then this wizard open with all response_ids and
if you select survey_id and response_id then open the particular response of the survey.
-
- @param self: The object pointer
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of survey.browse.answer IDs,
- @param context: A standard dictionary for contextual values,
- @return : Dictionary value for Open the browse answer wizard.
"""
if context is None: context = {}
record = self.read(cr, uid, ids, [])
@@ -66,8 +42,8 @@ class survey_browse_answer(osv.osv_memory):
res_id = [(record.get('response_id') and record['response_id'][0])]
else:
sur_response_obj = self.pool.get('survey.response')
- res_id = sur_response_obj.search(cr, uid, [('survey_id', '=',int(record['survey_id']))])
- context.update({'active' : True,'survey_id' : record['survey_id'], 'response_id' : res_id, 'response_no' : 0})
+ res_id = sur_response_obj.search(cr, uid, [('survey_id', '=', record['survey_id'][0])])
+ context.update({'active' : True,'survey_id' : record['survey_id'][0], 'response_id' : res_id, 'response_no' : 0})
search_obj = self.pool.get('ir.ui.view')
search_id = search_obj.search(cr,uid,[('model','=','survey.question.wiz'),('name','=','Survey Search')])
return {
diff --git a/addons/survey/wizard/survey_print.py b/addons/survey/wizard/survey_print.py
index 87767f34a68..6ae84ed37cc 100644
--- a/addons/survey/wizard/survey_print.py
+++ b/addons/survey/wizard/survey_print.py
@@ -27,8 +27,7 @@ from tools.translate import _
class survey_print(osv.osv_memory):
_name = 'survey.print'
_columns = {
- 'survey_ids': fields.many2many('survey','survey_print',\
- 'survey_id','print_id', "Survey", required="1"),
+ 'survey_ids': fields.many2many('survey', string="Survey", required="1"),
'orientation' : fields.selection([('vertical','Portrait(Vertical)'),\
('horizontal','Landscape(Horizontal)')], 'Orientation'),
'paper_size' : fields.selection([('letter','Letter (8.5" x 11")'),\
diff --git a/addons/survey/wizard/survey_print_statistics.py b/addons/survey/wizard/survey_print_statistics.py
index 10b321fcf45..bd8b9f2ad14 100644
--- a/addons/survey/wizard/survey_print_statistics.py
+++ b/addons/survey/wizard/survey_print_statistics.py
@@ -26,20 +26,12 @@ from tools.translate import _
class survey_print_statistics(osv.osv_memory):
_name = 'survey.print.statistics'
_columns = {
- 'survey_ids': fields.many2many('survey','survey_print_statistics','survey_id',\
- 'print_id', "Survey", required="1"),
+ 'survey_ids': fields.many2many('survey', string="Survey", required="1"),
}
def action_next(self, cr, uid, ids, context=None):
"""
Print Survey Statistics in pdf format.
-
- @param self: The object pointer
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of Survey statistics IDs
- @param context: A standard dictionary for contextual values
- @return: Dictionary value for created survey statistics report
"""
if context is None:
context = {}
diff --git a/addons/survey/wizard/survey_selection.py b/addons/survey/wizard/survey_selection.py
index c6eebd62a67..a803459899c 100644
--- a/addons/survey/wizard/survey_selection.py
+++ b/addons/survey/wizard/survey_selection.py
@@ -26,71 +26,8 @@ from tools.translate import _
class survey_name_wiz(osv.osv_memory):
_name = 'survey.name.wiz'
- def default_get(self, cr, uid, fields, context=None):
- """
- Set the default value in survey_id field. if open this wizard in survey form then set the default value in survey_id = active survey id.
-
- @param self: The object pointer
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param fields: List of Survey statistics IDs
- @param context: A standard dictionary for contextual values
- @return : Dictionary value for created survey statistics report
- """
- if context is None:
- context = {}
- data = super(survey_name_wiz, self).default_get(cr, uid, fields, context)
- if context.has_key('survey_id'):
- data['survey_id'] = context.get('survey_id',False)
- return data
-
- def _get_survey(self, cr, uid, context=None):
- """
- Set the value In survey_id field.
-
- @param self: The object pointer
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of Survey statistics IDs
- @param context: A standard dictionary for contextual values
- @return: Dictionary value for created survey statistics report
- """
- surv_obj = self.pool.get("survey")
- result = []
- if context.has_key('survey_id'):
- for sur in surv_obj.browse(cr, uid, [context.get('survey_id',False)]):
- result.append((sur.id, sur.title))
- return result
- survey_user_group_id = self.pool.get('res.groups').search(cr, uid, [('name', '=', 'Survey / User')])
- group_id = self.pool.get('res.groups').search(cr, uid, [('name', 'in', ('Tools / Manager','Tools / User','Survey / User'))])
- user_obj = self.pool.get('res.users')
- user_rec = user_obj.read(cr, uid, uid, [])
- if survey_user_group_id:
- if survey_user_group_id == user_rec['groups_id']:
- for sur in surv_obj.browse(cr, uid, surv_obj.search(cr, uid, [])):
- if sur.state == 'open':
- u_list = []
- for use in sur.invited_user_ids:
- u_list.append(use.id)
- if uid in u_list:
- result.append((sur.id, sur.title))
- return result
- for sur in surv_obj.browse(cr, uid, surv_obj.search(cr, uid, [])):
- if sur.state == 'open':
- res = False
- for i in group_id:
- if i in user_rec['groups_id']:
- res = True
- break
- elif sur.id in user_rec['survey_id']:
- res = True
- break
- if res:
- result.append((sur.id, sur.title))
- return result
-
_columns = {
- 'survey_id': fields.selection(_get_survey, "Survey", required="1"),
+ 'survey_id': fields.many2one('survey', 'Survey', required=True, ondelete='cascade'),
'page_no': fields.integer('Page Number'),
'note': fields.text("Description"),
'page': fields.char('Page Position',size = 12),
@@ -99,10 +36,11 @@ class survey_name_wiz(osv.osv_memory):
'response': fields.char('Answer',size=16)
}
_defaults = {
- 'page_no': lambda * a: - 1,
- 'page': lambda * a: 'next',
- 'transfer': lambda * a: 1,
- 'response': lambda * a: 0,
+ 'page_no': -1,
+ 'page': 'next',
+ 'transfer': 1,
+ 'response': 0,
+ 'survey_id': lambda self,cr,uid,context:context.get('survey_id',False),
}
def action_next(self, cr, uid, ids, context=None):
@@ -110,30 +48,22 @@ class survey_name_wiz(osv.osv_memory):
Start the survey, Increment in started survey field but if set the max_response_limit of
survey then check the current user how many times start this survey. if current user max_response_limit
is reach then this user can not start this survey(Raise Exception).
-
- @param self: The object pointer
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of Survey IDs
- @param context: A standard dictionary for contextual values
- @return : Dictionary value for open survey question wizard.
"""
survey_obj = self.pool.get('survey')
search_obj = self.pool.get('ir.ui.view')
if context is None: context = {}
this = self.browse(cr, uid, ids, context=context)[0]
- survey_id = this.survey_id
+ survey_id = this.survey_id.id
context.update({'survey_id': survey_id, 'sur_name_id': this.id})
cr.execute('select count(id) from survey_history where user_id=%s\
and survey_id=%s' % (uid,survey_id))
res = cr.fetchone()[0]
- user_limit = survey_obj.read(cr, uid, survey_id, ['response_user'])['response_user']
- if user_limit and res >= user_limit:
+ sur_rec = survey_obj.browse(cr,uid,survey_id,context=context)
+ if sur_rec.response_user and res >= sur_rec.response_user:
raise osv.except_osv(_('Warning !'),_("You can not give response for this survey more than %s times") % (user_limit))
- sur_rec = survey_obj.browse(cr,uid,ids,context=context)[0]
if sur_rec.max_response_limit and sur_rec.max_response_limit <= sur_rec.tot_start_survey:
raise osv.except_osv(_('Warning !'),_("You can not give more response. Please contact the author of this survey for further assistance."))
@@ -152,16 +82,10 @@ class survey_name_wiz(osv.osv_memory):
def on_change_survey(self, cr, uid, ids, survey_id, context=None):
"""
on change event of survey_id field, if note is available in selected survey then display this note in note fields.
- @param ids: List of Survey IDs
- @param survey_id: Id of Survey
- @param context: A standard dictionary for contextual values
- @return : Dictionary values of notes fields.
"""
if not survey_id:
return {}
notes = self.pool.get('survey').read(cr, uid, survey_id, ['note'])['note']
return {'value': {'note': notes}}
-survey_name_wiz()
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
diff --git a/addons/survey/wizard/survey_selection.xml b/addons/survey/wizard/survey_selection.xml
index a72566f7888..144525979dd 100644
--- a/addons/survey/wizard/survey_selection.xml
+++ b/addons/survey/wizard/survey_selection.xml
@@ -15,7 +15,8 @@
+ on_change="on_change_survey(survey_id)" width="250"
+ domain="[('state','=','open')]"/>
diff --git a/addons/thunderbird/__openerp__.py b/addons/thunderbird/__openerp__.py
index 51e4153e897..5b124af05aa 100644
--- a/addons/thunderbird/__openerp__.py
+++ b/addons/thunderbird/__openerp__.py
@@ -20,12 +20,12 @@
#
##############################################################################
{
- "name" : "Thunderbird Interface",
+ "name" : "Thunderbird Plug-In",
"version" : "1.0",
"author" : ['OpenERP SA', 'Axelor'],
"website" : "http://www.openerp.com/",
"depends" : ["base","mail"],
- "category" : "Tools",
+ "category" : "Customer Relationship Management",
"description": """
This module is required for the Thuderbird Plug-in to work properly.
====================================================================
diff --git a/addons/thunderbird/i18n/da.po b/addons/thunderbird/i18n/da.po
new file mode 100644
index 00000000000..594e02b8f74
--- /dev/null
+++ b/addons/thunderbird/i18n/da.po
@@ -0,0 +1,151 @@
+# Danish translation for openobject-addons
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR , 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2011-01-11 11:16+0000\n"
+"PO-Revision-Date: 2011-09-22 20:28+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Danish \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2011-09-23 04:39+0000\n"
+"X-Generator: Launchpad (build 14012)\n"
+
+#. module: thunderbird
+#: field:thunderbird.installer,plugin_file:0
+#: field:thunderbird.installer,thunderbird:0
+msgid "Thunderbird Plug-in"
+msgstr ""
+
+#. module: thunderbird
+#: help:thunderbird.installer,plugin_file:0
+msgid ""
+"Thunderbird plug-in file. Save as this file and install this plug-in in "
+"thunderbird."
+msgstr ""
+
+#. module: thunderbird
+#: help:thunderbird.installer,thunderbird:0
+msgid ""
+"Allows you to select an object that you would like to add to your email and "
+"its attachments."
+msgstr ""
+
+#. module: thunderbird
+#: help:thunderbird.installer,pdf_file:0
+msgid "The documentation file :- how to install Thunderbird Plug-in."
+msgstr ""
+
+#. module: thunderbird
+#: model:ir.model,name:thunderbird.model_email_server_tools
+msgid "Email Server Tools"
+msgstr ""
+
+#. module: thunderbird
+#: view:thunderbird.installer:0
+msgid "_Close"
+msgstr ""
+
+#. module: thunderbird
+#: field:thunderbird.installer,pdf_file:0
+msgid "Installation Manual"
+msgstr "Installations manual"
+
+#. module: thunderbird
+#: field:thunderbird.installer,description:0
+msgid "Description"
+msgstr "Beskrivelse:"
+
+#. module: thunderbird
+#: view:thunderbird.installer:0
+msgid "title"
+msgstr ""
+
+#. module: thunderbird
+#: model:ir.ui.menu,name:thunderbird.menu_base_config_plugins_thunderbird
+#: view:thunderbird.installer:0
+msgid "Thunderbird Plug-In"
+msgstr ""
+
+#. module: thunderbird
+#: view:thunderbird.installer:0
+msgid ""
+"This plug-in allows you to link your e-mail to OpenERP's documents. You can "
+"attach it to any existing one in OpenERP or create a new one."
+msgstr ""
+
+#. module: thunderbird
+#: model:ir.module.module,shortdesc:thunderbird.module_meta_information
+msgid "Thunderbird Interface"
+msgstr ""
+
+#. module: thunderbird
+#: model:ir.model,name:thunderbird.model_thunderbird_installer
+msgid "thunderbird.installer"
+msgstr ""
+
+#. module: thunderbird
+#: field:thunderbird.installer,name:0
+#: field:thunderbird.installer,pdf_name:0
+msgid "File name"
+msgstr "Fil Navn"
+
+#. module: thunderbird
+#: view:thunderbird.installer:0
+msgid "Installation and Configuration Steps"
+msgstr ""
+
+#. module: thunderbird
+#: field:thunderbird.installer,progress:0
+msgid "Configuration Progress"
+msgstr ""
+
+#. module: thunderbird
+#: model:ir.actions.act_window,name:thunderbird.action_thunderbird_installer
+#: model:ir.actions.act_window,name:thunderbird.action_thunderbird_wizard
+#: view:thunderbird.installer:0
+msgid "Thunderbird Plug-In Configuration"
+msgstr ""
+
+#. module: thunderbird
+#: model:ir.model,name:thunderbird.model_thunderbird_partner
+msgid "Thunderbid Plugin Tools"
+msgstr ""
+
+#. module: thunderbird
+#: view:thunderbird.installer:0
+msgid "Configure"
+msgstr "Konfigurer"
+
+#. module: thunderbird
+#: view:thunderbird.installer:0
+msgid "Skip"
+msgstr "Spring over"
+
+#. module: thunderbird
+#: field:thunderbird.installer,config_logo:0
+msgid "Image"
+msgstr "Billede"
+
+#. module: thunderbird
+#: model:ir.module.module,description:thunderbird.module_meta_information
+msgid ""
+"\n"
+" This module is required for the thuderbird plug-in to work\n"
+" properly.\n"
+" The Plugin allows you archive email and its attachments to the "
+"selected \n"
+" OpenERP objects. You can select a partner, a task, a project, an "
+"analytical\n"
+" account,or any other object and attach selected mail as eml file in \n"
+" attachment of selected record. You can create Documents for crm Lead,\n"
+" HR Applicant and project issue from selected mails.\n"
+"\n"
+" "
+msgstr ""
diff --git a/addons/thunderbird/installer.py b/addons/thunderbird/installer.py
index 5bf11218842..35d31b9d636 100644
--- a/addons/thunderbird/installer.py
+++ b/addons/thunderbird/installer.py
@@ -41,7 +41,7 @@ class thunderbird_installer(osv.osv_memory):
'pdf_name':fields.char('File name', size=64),
'thunderbird':fields.boolean('Thunderbird Plug-in', help="Allows you to select an object that you would like to add to your email and its attachments."),
'plugin_file':fields.binary('Thunderbird Plug-in', readonly=True, help="Thunderbird plug-in file. Save as this file and install this plug-in in thunderbird."),
- 'pdf_file':fields.char('Installation Manual', size="264", help="The documentation file :- how to install Thunderbird Plug-in.", readonly=True),
+ 'pdf_file':fields.char('Installation Manual', size=264, help="The documentation file :- how to install Thunderbird Plug-in.", readonly=True),
'description':fields.text('Description', readonly=True)
}
diff --git a/addons/thunderbird/thunderbird_installer.xml b/addons/thunderbird/thunderbird_installer.xml
index 2ab1d97fe46..2fb5d3177c3 100644
--- a/addons/thunderbird/thunderbird_installer.xml
+++ b/addons/thunderbird/thunderbird_installer.xml
@@ -9,26 +9,24 @@