From 4463d93eeaa9495835647831f8c3d623d873aa8a Mon Sep 17 00:00:00 2001 From: "Quentin (OpenERP)" Date: Wed, 19 Oct 2011 10:14:03 +0200 Subject: [PATCH] [FIX] partially reverted commit 5220 which was wrongly reverting few enhancements bzr revid: qdp-launchpad@openerp.com-20111019081403-4zeh9qlw6p8d2va0 --- addons/account/account.py | 9 ++++++++- addons/account/account_invoice.py | 2 +- addons/account/account_invoice_view.xml | 2 ++ 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/addons/account/account.py b/addons/account/account.py index af5d16b4420..95c9b9f7b71 100644 --- a/addons/account/account.py +++ b/addons/account/account.py @@ -966,10 +966,17 @@ class account_period(osv.osv): return False def find(self, cr, uid, dt=None, context=None): + if context is None: context = {} if not dt: dt = time.strftime('%Y-%m-%d') #CHECKME: shouldn't we check the state of the period? - ids = self.search(cr, uid, [('date_start','<=',dt),('date_stop','>=',dt)]) + args = [('date_start', '<=' ,dt), ('date_stop', '>=', dt)] + if context.get('company_id', False): + args.append(('company_id', '=', context['company_id'])) + else: + company_id = self.pool.get('res.users').browse(cr, uid, uid, context=context).company_id.id + args.append(('company_id', '=', company_id)) + ids = self.search(cr, uid, args, context=context) if not ids: raise osv.except_osv(_('Error !'), _('No period defined for this date: %s !\nPlease create one.')%dt) return ids diff --git a/addons/account/account_invoice.py b/addons/account/account_invoice.py index 146dbe019ec..8f873065014 100644 --- a/addons/account/account_invoice.py +++ b/addons/account/account_invoice.py @@ -209,7 +209,7 @@ class account_invoice(osv.osv): \n* The \'Open\' state is used when user create invoice,a invoice number is generated.Its in open state till user does not pay invoice. \ \n* The \'Paid\' state is set automatically when invoice is paid.\ \n* The \'Cancelled\' state is used when user cancel invoice.'), - 'date_invoice': fields.date('Invoice Date', states={'paid':[('readonly',True)], 'open':[('readonly',True)], 'close':[('readonly',True)]}, select=True, help="Keep empty to use the current date"), + 'date_invoice': fields.date('Invoice Date', readonly=True, states={'draft':[('readonly',False)]}, select=True, help="Keep empty to use the current date"), 'date_due': fields.date('Due Date', states={'paid':[('readonly',True)], 'open':[('readonly',True)], 'close':[('readonly',True)]}, select=True, help="If you use payment terms, the due date will be computed automatically at the generation "\ "of accounting entries. If you keep the payment term and the due date empty, it means direct payment. The payment term may compute several due dates, for example 50% now, 50% in one month."), diff --git a/addons/account/account_invoice_view.xml b/addons/account/account_invoice_view.xml index c0b6a7cf993..efc7a24031c 100644 --- a/addons/account/account_invoice_view.xml +++ b/addons/account/account_invoice_view.xml @@ -234,6 +234,7 @@ + @@ -332,6 +333,7 @@ +