[FIX] Account: account journals code and journal name should be unique

lp bug: https://launchpad.net/bugs/669532 fixed

bzr revid: mra@mra-laptop-20101103081713-p0hgynh02lr0v2wp
This commit is contained in:
Mustufa Rangwala 2010-11-03 13:47:13 +05:30
parent 546e3960a5
commit 4dfe00adee
2 changed files with 20 additions and 7 deletions

View File

@ -614,9 +614,22 @@ class account_journal(osv.osv):
'user_id': lambda self,cr,uid,context: uid,
'company_id': lambda self,cr,uid,c: self.pool.get('res.users').browse(cr, uid, uid, c).company_id.id,
}
_sql_constraints = [
('code_company_uniq', 'unique (code, company_id)', 'The code of the journal must be unique per company !'),
('name_company_uniq', 'unique (name, company_id)', 'The name of the journal must be unique per company !'),
]
_order = 'code'
def copy(self, cr, uid, id, default={}, context=None, done_list=[], local=False):
journal = self.browse(cr, uid, id, context=context)
if not default:
default = {}
default = default.copy()
default['code'] = (journal['code'] or '') + '(copy)'
default['name'] = (journal['name'] or '') + '(copy)'
return super(account_journal, self).copy(cr, uid, id, default, context=context)
def write(self, cr, uid, ids, vals, context=None):
if 'company_id' in vals:
move_lines = self.pool.get('account.move.line').search(cr, uid, [('journal_id', 'in', ids)])

View File

@ -342,7 +342,7 @@
<record id="sales_journal" model="account.journal">
<field name="name">Sales Journal - (test)</field>
<field name="code">SAJ</field>
<field name="code">SAJ - (test)</field>
<field name="type">sale</field>
<field name="view_id" ref="account_sp_journal_view"/>
<field name="sequence_id" ref="sequence_sale_journal"/>
@ -353,7 +353,7 @@
</record>
<record id="refund_sales_journal" model="account.journal">
<field name="name">Sales Credit Note Journal - (test)</field>
<field name="code">SCNJ</field>
<field name="code">SCNJ- (test)</field>
<field name="type">sale_refund</field>
<field eval="True" name="refund_journal"/>
<field name="view_id" ref="account_sp_refund_journal_view"/>
@ -366,7 +366,7 @@
<record id="expenses_journal" model="account.journal">
<field name="name">Expenses Journal - (test)</field>
<field name="code">EXJ</field>
<field name="code">EXJ- (test)</field>
<field name="type">purchase</field>
<field name="view_id" ref="account_sp_journal_view"/>
<field name="sequence_id" ref="sequence_purchase_journal"/>
@ -377,7 +377,7 @@
</record>
<record id="refund_expenses_journal" model="account.journal">
<field name="name">Expenses Credit Notes Journal - (test)</field>
<field name="code">ECNJ</field>
<field name="code">ECNJ- (test)</field>
<field name="type">purchase_refund</field>
<field eval="True" name="refund_journal"/>
<field name="view_id" ref="account_sp_refund_journal_view"/>
@ -390,7 +390,7 @@
<record id="bank_journal" model="account.journal">
<field name="name">Bank Journal - (test)</field>
<field name="code">BNK</field>
<field name="code">BNK- (test)</field>
<field name="type">bank</field>
<field name="view_id" ref="account_journal_bank_view"/>
<field name="sequence_id" ref="sequence_bank_journal"/>
@ -401,7 +401,7 @@
</record>
<record id="check_journal" model="account.journal">
<field name="name">Checks Journal - (test)</field>
<field name="code">CHK</field>
<field name="code">CHK- (test)</field>
<field name="type">bank</field>
<field name="view_id" ref="account_journal_bank_view"/>
<field name="sequence_id" ref="sequence_check_journal"/>
@ -412,7 +412,7 @@
</record>
<record id="cash_journal" model="account.journal">
<field name="name">Cash Journal - (test)</field>
<field name="code">CSH</field>
<field name="code">CSH- (test)</field>
<field name="type">cash</field>
<field name="view_id" ref="account_journal_bank_view"/>
<field name="sequence_id" ref="sequence_cash_journal"/>