From d549927afcfa42f5f141d3c468edefadd7228dc8 Mon Sep 17 00:00:00 2001 From: "GPA(OpenERP),VRA(OpenERP)" <> Date: Mon, 30 Nov 2009 11:52:07 +0530 Subject: [PATCH] [MERGE] Merged Multicompany branch bzr revid: jvo@tinyerp.com-20091130062207-7yxysaq03yypk2be --- addons/account/account_invoice_view.xml | 3 +- addons/account/invoice.py | 6 +- addons/account/security/account_security.xml | 12 ++ addons/account_budget/crossovered_budget.py | 2 +- addons/account_voucher/voucher.py | 4 +- addons/debian/po/sl.po | 41 +++++++ addons/mrp/mrp.py | 14 ++- addons/mrp/mrp_view.xml | 7 +- addons/mrp/security/mrp_security.xml | 65 +++++++++++ addons/project/project.py | 1 + addons/project/project_view.xml | 1 + addons/purchase/purchase.py | 2 +- addons/purchase/purchase_view.xml | 2 +- addons/sale/sale.py | 2 +- addons/sale/sale_view.xml | 3 +- addons/stock/security/stock_security.xml | 32 +++++- addons/stock/stock.py | 12 +- addons/stock/stock_demo.xml | 110 +++++++++++++++++++ addons/stock/stock_view.xml | 8 ++ 19 files changed, 306 insertions(+), 21 deletions(-) create mode 100644 addons/debian/po/sl.po diff --git a/addons/account/account_invoice_view.xml b/addons/account/account_invoice_view.xml index d728eed9ffc..f5beac34601 100644 --- a/addons/account/account_invoice_view.xml +++ b/addons/account/account_invoice_view.xml @@ -63,6 +63,7 @@ + @@ -288,7 +289,7 @@ - + diff --git a/addons/account/invoice.py b/addons/account/invoice.py index fa55c444dd1..232e583da32 100644 --- a/addons/account/invoice.py +++ b/addons/account/invoice.py @@ -314,9 +314,7 @@ class account_invoice(osv.osv): 'state': lambda *a: 'draft', 'journal_id': _get_journal, 'currency_id': _get_currency, - 'company_id': lambda self, cr, uid, context: \ - self.pool.get('res.users').browse(cr, uid, uid, - context=context).company_id.id, + 'company_id': lambda self,cr,uid,c: self.pool.get('res.company')._company_default_get(cr, uid, 'account.invoice', c), 'reference_type': lambda *a: 'none', 'check_total': lambda *a: 0.0, } @@ -1079,7 +1077,7 @@ class account_invoice_line(osv.osv): 'invoice_line_tax_id': fields.many2many('account.tax', 'account_invoice_line_tax', 'invoice_line_id', 'tax_id', 'Taxes', domain=[('parent_id','=',False)]), 'note': fields.text('Notes'), 'account_analytic_id': fields.many2one('account.analytic.account', 'Analytic Account'), - 'company_id': fields.related('invoice_id','company_id',type='many2one',object='res.company',string='Company') + 'company_id': fields.related('invoice_id','company_id',type='many2one',relation='res.company',string='Company') } _defaults = { 'quantity': lambda *a: 1, diff --git a/addons/account/security/account_security.xml b/addons/account/security/account_security.xml index 396e195ac5a..f551d77ccaa 100644 --- a/addons/account/security/account_security.xml +++ b/addons/account/security/account_security.xml @@ -46,6 +46,7 @@ child_of user.company_id.id + ['|',('company_id','=',False),('company_id','child_of',[user.company_id.id])] @@ -59,6 +60,7 @@ child_of user.company_id.id + ['|',('company_id','=',False),('company_id','child_of',[user.company_id.id])] @@ -70,6 +72,7 @@ child_of user.company_id.id + ['|','|',('company_id','=',False),('company_id.child_ids','child_of',[user.company_id.id]),('company_id','child_of',[user.company_id.id])] @@ -82,6 +85,7 @@ child_of user.company_id.id + ['|','|',('company_id','=',False),('company_id.child_ids','child_of',[user.company_id.id]),('company_id','child_of',[user.company_id.id])] @@ -93,6 +97,7 @@ child_of user.company_id.id + ['|',('company_id','=',False),('company_id','child_of',[user.company_id.id])] @@ -105,6 +110,7 @@ = False + ['|',('company_id','=',False),('company_id','child_of',[user.company_id.id])] @@ -117,6 +123,7 @@ child_of user.company_id.id + ['|',('company_id','=',False),('company_id','child_of',[user.company_id.id])] @@ -130,6 +137,7 @@ child_of user.company_id.id + ['|',('company_id','=',False),('company_id','child_of',[user.company_id.id])] @@ -142,6 +150,7 @@ child_of user.company_id.id + ['|',('company_id','=',False),('company_id','child_of',[user.company_id.id])] @@ -154,6 +163,7 @@ child_of user.company_id.id + ['|',('company_id','=',False),('company_id','child_of',[user.company_id.id])] @@ -166,6 +176,7 @@ child_of user.company_id.id + ['|',('company_id','=',False),('company_id','child_of',[user.company_id.id])] @@ -178,6 +189,7 @@ child_of user.company_id.id + ['|',('company_id','=',False),('company_id','child_of',[user.company_id.id])] diff --git a/addons/account_budget/crossovered_budget.py b/addons/account_budget/crossovered_budget.py index 694ac6c1a8d..b350b15e9f3 100644 --- a/addons/account_budget/crossovered_budget.py +++ b/addons/account_budget/crossovered_budget.py @@ -49,7 +49,7 @@ class account_budget_post(osv.osv): } _defaults = { 'sequence': lambda *a: 1, - 'company_id': lambda self,cr,uid,c: self.pool.get('res.users').browse(cr, uid, uid, c).company_id.id, + 'company_id': lambda self,cr,uid,c: self.pool.get('res.company')._company_default_get(cr, uid, 'account.budget.post', c) } _order = "sequence, name" diff --git a/addons/account_voucher/voucher.py b/addons/account_voucher/voucher.py index 7493f24c18a..4c550cc11bd 100755 --- a/addons/account_voucher/voucher.py +++ b/addons/account_voucher/voucher.py @@ -133,9 +133,7 @@ class account_voucher(osv.osv): 'type': _get_type, 'reference_type': lambda *a: 'none', 'journal_id':_get_journal, - 'company_id': lambda self, cr, uid, context: \ - self.pool.get('res.users').browse(cr, uid, uid, - context=context).company_id.id, + 'company_id': lambda self,cr,uid,c: self.pool.get('res.company')._company_default_get(cr, uid, 'account.voucher', c), 'currency_id': _get_currency, } diff --git a/addons/debian/po/sl.po b/addons/debian/po/sl.po new file mode 100644 index 00000000000..4bb62d9c492 --- /dev/null +++ b/addons/debian/po/sl.po @@ -0,0 +1,41 @@ +# Slovenian translation for openobject-addons +# Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2009. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2009-08-24 22:41+0300\n" +"PO-Revision-Date: 2009-11-26 12:58+0000\n" +"Last-Translator: Simon Vidmar \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: 2009-11-27 04:51+0000\n" +"X-Generator: Launchpad (build Unknown)\n" + +#. Type: string +#. Description +#: ../openerp-server.templates:1001 +msgid "Dedicated system account for the Open ERP server:" +msgstr "Posebni sistemski račun za strežnik OpenERP:" + +#. Type: string +#. Description +#: ../openerp-server.templates:1001 +msgid "" +"The Open ERP server must use a dedicated account for its operation so that " +"the system's security is not compromised by running it with superuser " +"privileges." +msgstr "" +"Strežnik OpenERP mora uporabljati posebni račun zato, da varnost strežnika " +"ni ogrožena pri delovanju s posebnimi sistemskimi pravicami." + +#. Type: string +#. Description +#: ../openerp-server.templates:1001 +msgid "Please choose that account's username." +msgstr "Prosim, izberite uporabniško ime tega računa." diff --git a/addons/mrp/mrp.py b/addons/mrp/mrp.py index 1dbf4f07009..71a4fd29328 100644 --- a/addons/mrp/mrp.py +++ b/addons/mrp/mrp.py @@ -63,12 +63,14 @@ class mrp_workcenter(osv.osv): help="Complete this only if you want automatic analytic accounting entries on production orders."), 'costs_journal_id': fields.many2one('account.analytic.journal', 'Analytic Journal'), 'costs_general_account_id': fields.many2one('account.account', 'General Account', domain=[('type','<>','view')]), + 'company_id': fields.many2one('res.company','Company',required=True), } _defaults = { 'active': lambda *a: 1, 'type': lambda *a: 'machine', 'time_efficiency': lambda *a: 1.0, 'capacity_per_cycle': lambda *a: 1.0, + 'company_id': lambda self,cr,uid,c: self.pool.get('res.company')._company_default_get(cr, uid, 'mrp.workcenter', c) } mrp_workcenter() @@ -199,7 +201,8 @@ class mrp_bom(osv.osv): 'revision_ids': fields.one2many('mrp.bom.revision', 'bom_id', 'BoM Revisions'), 'revision_type': fields.selection([('numeric','numeric indices'),('alpha','alphabetical indices')], 'Index type'), 'child_ids': fields.function(_child_compute,relation='mrp.bom', method=True, string="BoM Hierarchy", type='many2many'), - 'child_complete_ids': fields.function(_child_compute,relation='mrp.bom', method=True, string="BoM Hierarchy", type='many2many') + 'child_complete_ids': fields.function(_child_compute,relation='mrp.bom', method=True, string="BoM Hierarchy", type='many2many'), + 'company_id': fields.many2one('res.company','Company',required=True), } _defaults = { 'active': lambda *a: 1, @@ -207,6 +210,7 @@ class mrp_bom(osv.osv): 'product_qty': lambda *a: 1.0, 'product_rounding': lambda *a: 1.0, 'type': lambda *a: 'normal', + 'company_id': lambda self,cr,uid,c: self.pool.get('res.company')._company_default_get(cr, uid, 'mrp.bom', c) } _order = "sequence" _sql_constraints = [ @@ -442,6 +446,7 @@ class mrp_production(osv.osv): 'sale_name': fields.function(_sale_name_calc, method=True, type='char', string='Sale Name'), 'sale_ref': fields.function(_sale_ref_calc, method=True, type='char', string='Sale Ref'), + 'company_id': fields.many2one('res.company','Company',required=True), } _defaults = { 'priority': lambda *a: '1', @@ -449,6 +454,7 @@ class mrp_production(osv.osv): 'date_planned': lambda *a: time.strftime('%Y-%m-%d %H:%M:%S'), 'product_qty': lambda *a: 1.0, 'name': lambda x,y,z,c: x.pool.get('ir.sequence').get(y,z,'mrp.production') or '/', + 'company_id': lambda self,cr,uid,c: self.pool.get('res.company')._company_default_get(cr, uid, 'mrp.production', c), } _order = 'date_planned asc, priority desc'; def unlink(self, cr, uid, ids, context=None): @@ -825,6 +831,7 @@ class mrp_procurement(osv.osv): help='When a procurement is created the state is set to \'Draft\'.\n If the procurement is confirmed, the state is set to \'Confirmed\'.\ \nAfter confirming the state is set to \'Running\'.\n If any exception arises in the order then the state is set to \'Exception\'.\n Once the exception is removed the state becomes \'Ready\'.\n It is in \'Waiting\'. state when the procurement is waiting for another one to finish.'), 'note' : fields.text('Note'), + 'company_id': fields.many2one('res.company','Company',required=True), } _defaults = { 'state': lambda *a: 'draft', @@ -832,6 +839,7 @@ class mrp_procurement(osv.osv): 'date_planned': lambda *a: time.strftime('%Y-%m-%d %H:%M:%S'), 'close_move': lambda *a: 0, 'procure_method': lambda *a: 'make_to_order', + 'company_id': lambda self,cr,uid,c: self.pool.get('res.company')._company_default_get(cr, uid, 'mrp.procurement', c) } def unlink(self, cr, uid, ids, context=None): @@ -1191,7 +1199,8 @@ class stock_warehouse_orderpoint(osv.osv): "a requisition to bring the virtual stock to the Max Quantity."), 'qty_multiple': fields.integer('Qty Multiple', required=True, help="The requisition quantity will by rounded up to this multiple."), - 'procurement_id': fields.many2one('mrp.procurement', 'Purchase Order') + 'procurement_id': fields.many2one('mrp.procurement', 'Purchase Order'), + 'company_id': fields.many2one('res.company','Company',required=True), } _defaults = { 'active': lambda *a: 1, @@ -1199,6 +1208,7 @@ class stock_warehouse_orderpoint(osv.osv): 'qty_multiple': lambda *a: 1, 'name': lambda x,y,z,c: x.pool.get('ir.sequence').get(y,z,'mrp.warehouse.orderpoint') or '', 'product_uom': lambda sel, cr, uid, context: context.get('product_uom', False), + 'company_id': lambda self,cr,uid,c: self.pool.get('res.company')._company_default_get(cr, uid, 'stock.warehouse.orderpoint', c) } def onchange_warehouse_id(self, cr, uid, ids, warehouse_id, context={}): if warehouse_id: diff --git a/addons/mrp/mrp_view.xml b/addons/mrp/mrp_view.xml index c415a12d7c3..98e6fe5b907 100644 --- a/addons/mrp/mrp_view.xml +++ b/addons/mrp/mrp_view.xml @@ -109,6 +109,7 @@ + @@ -235,6 +236,7 @@ + @@ -457,10 +459,9 @@