← Back to team overview

clearcorp team mailing list archive

lp:~rr.clearcorp/openerp-ccorp-addons/6.1-account_invoice_journal_defaults into lp:openerp-ccorp-addons

 

Ronald Rubi has proposed merging lp:~rr.clearcorp/openerp-ccorp-addons/6.1-account_invoice_journal_defaults into lp:openerp-ccorp-addons.

Requested reviews:
  CLEARCORP drivers (clearcorp-drivers)

For more details, see:
https://code.launchpad.net/~rr.clearcorp/openerp-ccorp-addons/6.1-account_invoice_journal_defaults/+merge/138244

Fix create account.invoice where vals don't have journal_id
-- 
https://code.launchpad.net/~rr.clearcorp/openerp-ccorp-addons/6.1-account_invoice_journal_defaults/+merge/138244
Your team CLEARCORP development team is subscribed to branch lp:openerp-ccorp-addons.
=== modified file 'account_invoice_journal_defaults/account_invoice_journal_defaults.py'
--- account_invoice_journal_defaults/account_invoice_journal_defaults.py	2012-11-20 22:02:13 +0000
+++ account_invoice_journal_defaults/account_invoice_journal_defaults.py	2012-12-05 16:41:26 +0000
@@ -56,30 +56,31 @@
         return result
     
     def create(self, cr, uid, vals, context=None):
-        journal_val_id = vals['journal_id']
-        journal_id = self.pool.get('account.journal').search(cr,uid,[('id','=',journal_val_id)])
-        journal_obj = self.pool.get('account.journal').browse(cr, uid, journal_id, context=context)
-        
-        for journal in journal_obj:
-            if journal.type == 'sale':
-                acc_id = journal.default_receivable_account_id.id
-            elif journal.type == 'purchase':
-                acc_id = journal.default_payable_account_id.id
-            elif journal.type == 'sale_refund':
-                acc_id = journal.default_payable_account_id.id
-            elif journal.type == 'purchase_refund':
-                acc_id = journal.default_receivable_account_id.id
-            
-            if journal and journal.id:   
-                currency_id = journal.currency and journal.currency.id or journal.company_id.currency_id.id
-            else:
-                currency_id = False
-                    
-        if not 'account_id' in vals:
-            vals['account_id'] = acc_id
-            
-        if not 'currency_id' in vals:
-            vals['currency_id'] = currency_id
+        if 'journal_id' in vals:
+            journal_val_id = vals['journal_id']
+            journal_id = self.pool.get('account.journal').search(cr,uid,[('id','=',journal_val_id)])
+            journal_obj = self.pool.get('account.journal').browse(cr, uid, journal_id, context=context)
+            
+            for journal in journal_obj:
+                if journal.type == 'sale':
+                    acc_id = journal.default_receivable_account_id.id
+                elif journal.type == 'purchase':
+                    acc_id = journal.default_payable_account_id.id
+                elif journal.type == 'sale_refund':
+                    acc_id = journal.default_payable_account_id.id
+                elif journal.type == 'purchase_refund':
+                    acc_id = journal.default_receivable_account_id.id
+                
+                if journal and journal.id:   
+                    currency_id = journal.currency and journal.currency.id or journal.company_id.currency_id.id
+                else:
+                    currency_id = False
+                        
+            if not 'account_id' in vals:
+                vals['account_id'] = acc_id
+                
+            if not 'currency_id' in vals:
+                vals['currency_id'] = currency_id
         
         return super(AccountInvoice, self).create(cr, uid, vals, context=context)
     


Follow ups