[MERGE] Merged Valencia's branch for the fix of variable declaration inside mrp_repai...
authorJay Vora (OpenERP) <jvo@tinyerp.com>
Fri, 19 Aug 2011 06:55:31 +0000 (12:25 +0530)
committerJay Vora (OpenERP) <jvo@tinyerp.com>
Fri, 19 Aug 2011 06:55:31 +0000 (12:25 +0530)
bzr revid: jvo@tinyerp.com-20110819065531-c0vv9qawn9k5dang

1  2 
addons/mrp_repair/mrp_repair.py

@@@ -255,6 -255,7 +255,10 @@@ class mrp_repair(osv.osv)
      def action_invoice_create(self, cr, uid, ids, group=False, context=None):
          res={}
          invoices_group = {}
+         inv_obj = self.pool.get('account.invoice')
++        invoice_line_obj = self.pool.get('account.invoice.line')
++        repair_fee_obj = self.pool.get('mrp.repair.fee')
++        repair_line_obj = self.pool.get('mrp.repair.line')
          for repair in self.browse(cr, uid, ids, context=context):
              res[repair.id]=False
              if repair.state in ('draft','cancel') or repair.invoice_id:
              comment=repair.quotation_notes
              if (repair.invoice_method != 'none'):
                  if group and repair.partner_invoice_id.id in invoices_group:
--                    inv_id= invoices_group[repair.partner_invoice_id.id]
-                     invoice=invoice_obj.browse(cr, uid,inv_id)
 -                    invoice=inv_obj.browse(cr, uid,inv_id)
++                    inv_id = invoices_group[repair.partner_invoice_id.id]
++                    invoice = inv_obj.browse(cr, uid,inv_id)
                      invoice_vals = {
                          'name': invoice.name +', '+repair.name,
                          'origin': invoice.origin+', '+repair.name,
                          else:
                              raise osv.except_osv(_('Error !'), _('No account defined for product "%s".') % operation.product_id.name )
  
--                        invoice_line_id = self.pool.get('account.invoice.line').create(cr, uid, {
++                        invoice_line_id = invoice_line_obj.create(cr, uid, {
                              'invoice_id': inv_id,
                              'name': name,
                              'origin':repair.name,
                              'price_subtotal' : operation.product_uom_qty*operation.price_unit,
                              'product_id' : operation.product_id and operation.product_id.id or False
                              })
--                        self.pool.get('mrp.repair.line').write(cr, uid, [operation.id], {'invoiced':True,'invoice_line_id':invoice_line_id})
++                        repair_line_obj.write(cr, uid, [operation.id], {'invoiced':True,'invoice_line_id':invoice_line_id})
                  for fee in repair.fees_lines:
                      if fee.to_invoice == True:
                          if group:
                              account_id = fee.product_id.categ_id.property_account_income_categ.id
                          else:
                              raise osv.except_osv(_('Error !'), _('No account defined for product "%s".') % fee.product_id.name)
--                        invoice_fee_id = self.pool.get('account.invoice.line').create(cr, uid, {
++                        invoice_fee_id = invoice_line_obj.create(cr, uid, {
                              'invoice_id': inv_id,
                              'name': name,
                              'origin':repair.name,
                              'price_unit': fee.price_unit,
                              'price_subtotal': fee.product_uom_qty*fee.price_unit
                              })
--                        self.pool.get('mrp.repair.fee').write(cr, uid, [fee.id], {'invoiced':True,'invoice_line_id':invoice_fee_id})
++                        repair_fee_obj.write(cr, uid, [fee.id], {'invoiced':True,'invoice_line_id':invoice_fee_id})
                  res[repair.id]=inv_id
          #self.action_invoice_end(cr, uid, ids)
          return res