[FIX] account: Invoice journal type must match with invoice type
lp bug: https://launchpad.net/bugs/550441 fixed bzr revid: mra@tinyerp.com-20100406130731-f1lkrei6v55qll1z
This commit is contained in:
parent
082bf8ccec
commit
72ad145ae8
|
@ -443,8 +443,9 @@ class account_invoice(osv.osv):
|
|||
return {'value': {}}
|
||||
|
||||
def onchange_company_id(self, cr, uid, ids, company_id, part_id, type, invoice_line, currency_id):
|
||||
val={}
|
||||
dom={}
|
||||
val = {}
|
||||
dom = {}
|
||||
obj_journal = self.pool.get('account.journal')
|
||||
if company_id and part_id and type:
|
||||
acc_id = False
|
||||
partner_obj = self.pool.get('res.partner').browse(cr,uid,part_id)
|
||||
|
@ -488,13 +489,20 @@ class account_invoice(osv.osv):
|
|||
_('invoice line account company is not match with invoice company.'))
|
||||
else:
|
||||
continue
|
||||
if company_id:
|
||||
val['journal_id']=False
|
||||
journal_ids=self.pool.get('account.journal').search(cr,uid,[('company_id','=',company_id)])
|
||||
dom={'journal_id': [('id','in',journal_ids)]}
|
||||
if company_id and type:
|
||||
if type in ('out_invoice', 'out_refund'):
|
||||
journal_type = 'sale'
|
||||
else:
|
||||
journal_type = 'purchase'
|
||||
journal_ids = obj_journal.search(cr, uid, [('company_id','=',company_id), ('type', '=', journal_type)])
|
||||
if journal_ids:
|
||||
val['journal_id'] = journal_ids[0]
|
||||
else:
|
||||
raise osv.except_osv(_('Configration Error !'),
|
||||
_('Can not find account journal for this company in invoice, Please Create journal.'))
|
||||
dom = {'journal_id': [('id', 'in', journal_ids)]}
|
||||
else:
|
||||
journal_ids=self.pool.get('account.journal').search(cr,uid,[])
|
||||
dom={'journal_id': [('id','in',journal_ids)]}
|
||||
journal_ids = obj_journal.search(cr, uid, [])
|
||||
|
||||
if currency_id and company_id:
|
||||
currency = self.pool.get('res.currency').browse(cr, uid, currency_id)
|
||||
|
|
Loading…
Reference in New Issue