From 6c90db2ddee959e90bcffca7feb53d3d10e2b404 Mon Sep 17 00:00:00 2001 From: Vo Minh Thu Date: Thu, 29 Sep 2011 14:48:58 +0200 Subject: [PATCH 1/5] [IMP] ir_sequence: adapt addons code to server changes. bzr revid: vmt@openerp.com-20110929124858-9nr2gbpuxc6k7ofx --- addons/account/sequence.py | 29 ++++++++++++----------------- 1 file changed, 12 insertions(+), 17 deletions(-) diff --git a/addons/account/sequence.py b/addons/account/sequence.py index 1683e5feb06..30e8d62a350 100644 --- a/addons/account/sequence.py +++ b/addons/account/sequence.py @@ -46,23 +46,18 @@ class ir_sequence(osv.osv): 'fiscal_ids': fields.one2many('account.sequence.fiscalyear', 'sequence_main_id', 'Sequences') } - def get_id(self, cr, uid, sequence_id, test='id', context=None): - if context is None: - context = {} - cr.execute('select id from ir_sequence where ' - + test + '=%s and active=%s', (sequence_id, True,)) - res = cr.dictfetchone() - if res: - for line in self.browse(cr, uid, res['id'], - context=context).fiscal_ids: - if line.fiscalyear_id.id == context.get('fiscalyear_id', False): - return super(ir_sequence, self).get_id(cr, uid, - line.sequence_id.id, - test="id", - context=context) - return super(ir_sequence, self).get_id(cr, uid, sequence_id, test, - context=context) + + def _select_by_code_or_id(self, cr, uid, sequence_code_or_id, code_or_id, + for_update_no_wait, context=None): + res = super(ir_sequence, self)._select_by_code_or_id(cr, uid, + sequence_code_or_id, code_or_id, False, context) + if not res: + return + for line in self.browse(cr, uid, res['id'], context).fiscal_ids: + if line.fiscalyear_id.id == context.get('fiscalyear_id'): + return super(ir_sequence, self)._select_by_code_or_id(cr, uid, + line.sequence_id.id, 'id', False, context) ir_sequence() -# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: \ No newline at end of file +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: From bd341cc6fee241aa45f71b0770527df683e0472a Mon Sep 17 00:00:00 2001 From: Vo Minh Thu Date: Thu, 29 Sep 2011 15:22:54 +0200 Subject: [PATCH 2/5] [IMP] ir_sequence: call it with the new methods. bzr revid: vmt@openerp.com-20110929132254-eevlq6t9d6i6um7z --- addons/account/account.py | 2 +- addons/account/account_bank_statement.py | 4 ++-- addons/account/account_cash_statement.py | 4 ++-- addons/account/account_move_line.py | 2 +- addons/account_sequence/account_sequence.py | 2 +- addons/account_voucher/account_voucher.py | 2 +- addons/point_of_sale/wizard/pos_open_statement.py | 4 ++-- 7 files changed, 10 insertions(+), 10 deletions(-) diff --git a/addons/account/account.py b/addons/account/account.py index 34306b703aa..538f9ed3b4e 100644 --- a/addons/account/account.py +++ b/addons/account/account.py @@ -1214,7 +1214,7 @@ class account_move(osv.osv): else: if journal.sequence_id: c = {'fiscalyear_id': move.period_id.fiscalyear_id.id} - new_name = obj_sequence.get_id(cr, uid, journal.sequence_id.id, context=c) + new_name = obj_sequence.next_by_id(cr, uid, journal.sequence_id.id, c) else: raise osv.except_osv(_('Error'), _('No sequence defined on the journal !')) diff --git a/addons/account/account_bank_statement.py b/addons/account/account_bank_statement.py index 4cc2ed89786..98051a319fd 100644 --- a/addons/account/account_bank_statement.py +++ b/addons/account/account_bank_statement.py @@ -340,9 +340,9 @@ class account_bank_statement(osv.osv): else: if st.journal_id.sequence_id: c = {'fiscalyear_id': st.period_id.fiscalyear_id.id} - st_number = obj_seq.get_id(cr, uid, st.journal_id.sequence_id.id, context=c) + st_number = obj_seq.next_by_id(cr, uid, st.journal_id.sequence_id.id, context=c) else: - st_number = obj_seq.get(cr, uid, 'account.bank.statement') + st_number = obj_seq.next_by_code(cr, uid, 'account.bank.statement') for line in st.move_line_ids: if line.state <> 'valid': diff --git a/addons/account/account_cash_statement.py b/addons/account/account_cash_statement.py index dc78d19bab4..ebc97fe8a84 100644 --- a/addons/account/account_cash_statement.py +++ b/addons/account/account_cash_statement.py @@ -294,9 +294,9 @@ class account_cash_statement(osv.osv): if statement.name and statement.name == '/': if statement.journal_id.sequence_id: c = {'fiscalyear_id': statement.period_id.fiscalyear_id.id} - st_number = obj_seq.get_id(cr, uid, statement.journal_id.sequence_id.id, context=c) + st_number = obj_seq.next_by_id(cr, uid, statement.journal_id.sequence_id.id, context=c) else: - st_number = obj_seq.get(cr, uid, 'account.cash.statement') + st_number = obj_seq.next_by_code(cr, uid, 'account.cash.statement') vals.update({ 'name': st_number }) diff --git a/addons/account/account_move_line.py b/addons/account/account_move_line.py index 1322226bfb6..ce349fc4f4e 100644 --- a/addons/account/account_move_line.py +++ b/addons/account/account_move_line.py @@ -1221,7 +1221,7 @@ class account_move_line(osv.osv): vals['move_id'] = res[0] if not vals.get('move_id', False): if journal.sequence_id: - #name = self.pool.get('ir.sequence').get_id(cr, uid, journal.sequence_id.id) + #name = self.pool.get('ir.sequence').next_by_id(cr, uid, journal.sequence_id.id) v = { 'date': vals.get('date', time.strftime('%Y-%m-%d')), 'period_id': context['period_id'], diff --git a/addons/account_sequence/account_sequence.py b/addons/account_sequence/account_sequence.py index 1649a8890fa..8b87b3f40ae 100644 --- a/addons/account_sequence/account_sequence.py +++ b/addons/account_sequence/account_sequence.py @@ -35,7 +35,7 @@ class account_move(osv.osv): seq_no = False for move in self.browse(cr, uid, ids, context=context): if move.journal_id.internal_sequence_id: - seq_no = obj_sequence.get_id(cr, uid, move.journal_id.internal_sequence_id.id, context=context) + seq_no = obj_sequence.next_by_id(cr, uid, move.journal_id.internal_sequence_id.id, context=context) if seq_no: self.write(cr, uid, [move.id], {'internal_sequence_number': seq_no}) return res diff --git a/addons/account_voucher/account_voucher.py b/addons/account_voucher/account_voucher.py index da9dbe87893..005e5d9ab46 100644 --- a/addons/account_voucher/account_voucher.py +++ b/addons/account_voucher/account_voucher.py @@ -674,7 +674,7 @@ class account_voucher(osv.osv): if inv.number: name = inv.number elif inv.journal_id.sequence_id: - name = seq_obj.get_id(cr, uid, inv.journal_id.sequence_id.id) + name = seq_obj.next_by_id(cr, uid, inv.journal_id.sequence_id.id) else: raise osv.except_osv(_('Error !'), _('Please define a sequence on the journal !')) if not inv.reference: diff --git a/addons/point_of_sale/wizard/pos_open_statement.py b/addons/point_of_sale/wizard/pos_open_statement.py index 038ca3b6990..47c5348943b 100644 --- a/addons/point_of_sale/wizard/pos_open_statement.py +++ b/addons/point_of_sale/wizard/pos_open_statement.py @@ -53,9 +53,9 @@ class pos_open_statement(osv.osv_memory): continue 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, From f734d04490566332c232f7d9fda4b471600aba58 Mon Sep 17 00:00:00 2001 From: Vo Minh Thu Date: Fri, 30 Sep 2011 17:45:50 +0200 Subject: [PATCH 3/5] [FIX] account/sequence: forgot the fallback case. bzr revid: vmt@openerp.com-20110930154550-49m7dwzcpylnz91s --- addons/account/sequence.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/addons/account/sequence.py b/addons/account/sequence.py index 30e8d62a350..e31b09aeb67 100644 --- a/addons/account/sequence.py +++ b/addons/account/sequence.py @@ -57,6 +57,8 @@ class ir_sequence(osv.osv): if line.fiscalyear_id.id == context.get('fiscalyear_id'): return super(ir_sequence, self)._select_by_code_or_id(cr, uid, line.sequence_id.id, 'id', False, context) + return super(ir_sequence, self)._select_by_code_or_id(cr, uid, + res['id'], 'id', False, context) ir_sequence() From ee70781dbeaa3021162b22f60cb43c3cf55b80d8 Mon Sep 17 00:00:00 2001 From: Antony Lesuisse Date: Sat, 1 Oct 2011 01:36:30 +0200 Subject: [PATCH 4/5] [IMP] account ir_sequence fiscal year using the new _next api bzr revid: al@openerp.com-20110930233630-c8pbenf99yaekt3t --- addons/account/sequence.py | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/addons/account/sequence.py b/addons/account/sequence.py index e31b09aeb67..5c9039e43c3 100644 --- a/addons/account/sequence.py +++ b/addons/account/sequence.py @@ -47,18 +47,12 @@ class ir_sequence(osv.osv): 'sequence_main_id', 'Sequences') } - def _select_by_code_or_id(self, cr, uid, sequence_code_or_id, code_or_id, - for_update_no_wait, context=None): - res = super(ir_sequence, self)._select_by_code_or_id(cr, uid, - sequence_code_or_id, code_or_id, False, context) - if not res: - return - for line in self.browse(cr, uid, res['id'], context).fiscal_ids: - if line.fiscalyear_id.id == context.get('fiscalyear_id'): - return super(ir_sequence, self)._select_by_code_or_id(cr, uid, - line.sequence_id.id, 'id', False, context) - return super(ir_sequence, self)._select_by_code_or_id(cr, uid, - res['id'], 'id', False, context) + def _next(self, cr, uid, seq_ids, context=None): + for seq in self.browse(cr, uid, seq_ids, context): + for line in seq.fiscal_ids: + if line.fiscalyear_id.id == context.get('fiscalyear_id'): + return super(ir_sequence, self)._next(cr, uid, [line.sequence_id.id], context) + return super(ir_sequence, self)._next(cr, uid, seq_ids, context) ir_sequence() From 53c6ab6752f85847184dda52537f096cedfa8dac Mon Sep 17 00:00:00 2001 From: Antony Lesuisse Date: Sat, 1 Oct 2011 02:04:55 +0200 Subject: [PATCH 5/5] [IMP] rename sequence into ir_sequence bzr revid: al@openerp.com-20111001000455-opnivkh5nvvutv2y --- addons/account/__init__.py | 2 +- addons/account/__openerp__.py | 2 +- addons/account/{sequence.py => ir_sequence.py} | 0 addons/account/{sequence_view.xml => ir_sequence_view.xml} | 0 4 files changed, 2 insertions(+), 2 deletions(-) rename addons/account/{sequence.py => ir_sequence.py} (100%) rename addons/account/{sequence_view.xml => ir_sequence_view.xml} (100%) diff --git a/addons/account/__init__.py b/addons/account/__init__.py index 52c65f0c3da..1b64386f6af 100644 --- a/addons/account/__init__.py +++ b/addons/account/__init__.py @@ -32,7 +32,7 @@ import account_analytic_line import wizard import report import product -import sequence +import ir_sequence import company import res_currency diff --git a/addons/account/__openerp__.py b/addons/account/__openerp__.py index d1726d164b6..0a75b52213f 100644 --- a/addons/account/__openerp__.py +++ b/addons/account/__openerp__.py @@ -119,7 +119,7 @@ module named account_voucher. 'process/statement_process.xml', 'process/customer_invoice_process.xml', 'process/supplier_invoice_process.xml', - 'sequence_view.xml', + 'ir_sequence_view.xml', 'company_view.xml', 'board_account_view.xml', "wizard/account_report_profit_loss_view.xml", diff --git a/addons/account/sequence.py b/addons/account/ir_sequence.py similarity index 100% rename from addons/account/sequence.py rename to addons/account/ir_sequence.py diff --git a/addons/account/sequence_view.xml b/addons/account/ir_sequence_view.xml similarity index 100% rename from addons/account/sequence_view.xml rename to addons/account/ir_sequence_view.xml