Hello Luis, Thanks for reporting the issue.
This has been fixed in lp:~openerp-dev/openobject- addons/5.0-bug-776644-vro by revision 2911 [email protected]. It will be merged in stable 5.0 soon. Thanks ** Changed in: openobject-addons Status: Confirmed => Fix Committed -- You received this bug notification because you are a member of C2C OERPScenario, which is subscribed to the OpenERP Project Group. https://bugs.launchpad.net/bugs/776644 Title: [V5]Invoiced Repair Orders Status in OpenERP Modules (addons): Fix Committed Bug description: When try to invoice a lot of repair orders the module fails. i did a bit little test and repair the fail changed the object name invoice.obj by inv.obj in the code. ( part code atached) Regards Luis class mrp_repair_fee(osv.osv, ProductChangeMixin): _name = 'mrp.repair.fee' _description = 'Repair Fees line' def copy_data(self, cr, uid, id, default=None, context=None): if not default: default = {} default.update( {'invoice_line_id':False,'invoiced':False}) return super(mrp_repair_fee, self).copy_data(cr, uid, id, default, context) def _amount_line(self, cr, uid, ids, field_name, arg, context): res = {} cur_obj=self.pool.get('res.currency') for line in self.browse(cr, uid, ids): res[line.id] = line.to_invoice and line.price_unit * line.product_uom_qty or 0 cur = line.repair_id.pricelist_id.currency_id res[line.id] = cur_obj.round(cr, uid, cur, res[line.id]) return res _columns = { 'repair_id': fields.many2one('mrp.repair', 'Repair Order Ref', required=True, ondelete='cascade', select=True), 'name': fields.char('Description', size=64, select=True,required=True), 'product_id': fields.many2one('product.product', 'Product'), 'product_uom_qty': fields.float('Quantity', digits=(16,2), required=True), 'price_unit': fields.float('Unit Price', required=True), 'product_uom': fields.many2one('product.uom', 'Product UoM', required=True), 'price_subtotal': fields.function(_amount_line, method=True, string='Subtotal',digits=(16, int(config['price_accuracy']))), 'tax_id': fields.many2many('account.tax', 'repair_fee_line_tax', 'repair_fee_line_id', 'tax_id', 'Taxes'), 'invoice_line_id': fields.many2one('account.invoice.line', 'Invoice Line', readonly=True), 'to_invoice': fields.boolean('To Invoice'), 'invoiced': fields.boolean('Invoiced',readonly=True), } invoice=invoice_obj.browse(cr, uid,inv_id) -----------> inv.obj invoice_vals = { 'name': invoice.name +', '+repair.name, 'origin': invoice.origin+', '+repair.name, 'comment':(comment and (invoice.comment and invoice.comment+"\n"+comment or comment)) or (invoice.comment and invoice.comment or ''), } invoice_obj.write(cr, uid, [inv_id],invoice_vals,context=context) --------> inv.obj. else: if not repair.partner_id.property_account_receivable: raise osv.except_osv(_('Error !'), _('No account defined for partner "%s".') % repair.partner_id.name ) account_id = repair.partner_id.property_account_receivable.id inv = { 'name': repair.name, 'origin':repair.name, 'type': 'out_invoice', 'account_id': account_id, 'partner_id': repair.partner_id.id, 'address_invoice_id': repair.address_id.id, 'currency_id': repair.pricelist_id.currency_id.id, 'comment': repair.quotation_notes, 'fiscal_position': repair.partner_id.property_account_position.id } inv_obj = self.pool.get('account.invoice') inv_id = inv_obj.create(cr, uid, inv) invoices_group[repair.partner_invoice_id.id] = inv_id self.write(cr, uid, repair.id , {'invoiced':True,'invoice_id' : inv_id}) To manage notifications about this bug go to: https://bugs.launchpad.net/openobject-addons/+bug/776644/+subscriptions _______________________________________________ Mailing list: https://launchpad.net/~c2c-oerpscenario Post to : [email protected] Unsubscribe : https://launchpad.net/~c2c-oerpscenario More help : https://help.launchpad.net/ListHelp

