Merge lp:~vauxoo/addons-vauxoo/rico-contract_fix_customer_invoice-dev_ernesto into lp:~vauxoo/addons-vauxoo/rico_contract_dev_rodo

Status: Merged
Merged at revision: 638
Proposed branch: lp:~vauxoo/addons-vauxoo/rico-contract_fix_customer_invoice-dev_ernesto
Merge into: lp:~vauxoo/addons-vauxoo/rico_contract_dev_rodo
Diff against target: 81 lines (+23/-10)
2 files modified
account_analytic_analysis_rent/__openerp__.py (+5/-1)
account_analytic_analysis_rent/account_analytic_account_rent.py (+18/-9)
To merge this branch: bzr merge lp:~vauxoo/addons-vauxoo/rico-contract_fix_customer_invoice-dev_ernesto
Reviewer Review Type Date Requested Status
Luis Ernesto García Medina - http://www.vauxoo.com Pending
Julio Serna-http://www.vauxoo.com Pending
Review via email: mp+201987@code.launchpad.net

Description of the change

Corrige error en vista de clientes al instalar el modulo de account_analytic_analysis_rent y entrar a alguna factura de cliente, para solucionarse se hereda la función name_get y se agrega una validación para evitar el error.

To post a comment you must log in.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'account_analytic_analysis_rent/__openerp__.py'
2--- account_analytic_analysis_rent/__openerp__.py 2013-08-16 16:34:03 +0000
3+++ account_analytic_analysis_rent/__openerp__.py 2014-01-16 19:27:55 +0000
4@@ -29,7 +29,11 @@
5 'description' : """
6 This module added product in account_analytic_analysis to product control
7 """,
8- 'data' : ['account_analytic_account_rent.xml','product_view.xml','account_analytic_analysis_report.xml','wizard/lines_invoice_create_view.xml','res_company_view.xml'],
9+ 'data' : ['account_analytic_account_rent.xml',
10+ 'product_view.xml',
11+ 'account_analytic_analysis_report.xml',
12+ 'wizard/lines_invoice_create_view.xml',
13+ 'res_company_view.xml'],
14 'installable': True,
15 'auto_install': False,
16 }
17
18=== modified file 'account_analytic_analysis_rent/account_analytic_account_rent.py'
19--- account_analytic_analysis_rent/account_analytic_account_rent.py 2013-09-13 18:44:30 +0000
20+++ account_analytic_analysis_rent/account_analytic_account_rent.py 2014-01-16 19:27:55 +0000
21@@ -125,7 +125,7 @@
22 for prod in product_ids:
23 if prod[2]['product_id']:
24 for feature in product_obj.browse(cr, uid, prod[2]['product_id'], context=context).feature_ids:
25- list_feature.append({'name':feature.name.id, 'product_line_id':prod[2]['product_id'],'counter':feature.counter, 'prodlot_feature_id' : prod[2]['prodlot_id']})
26+ list_feature.append({'name': feature.name and feature.name.id or False, 'product_line_id':prod[2]['product_id'],'counter':feature.counter or False, 'prodlot_feature_id' : prod[2]['prodlot_id']})
27 return {'value':{'feature_ids': [(0, 6, data) for data in list_feature]}}
28
29 def _get_journal(self, cr, uid, context=None):
30@@ -189,9 +189,9 @@
31 else:
32 raise osv.except_osv(_('Error!'), _('You not have a configured client location'))
33 for contract in self.browse(cr, uid , ids , context=context):
34- picking_id=picking_obj.create(cr, uid, {'origin':contract.name, 'address_id':contract.contact_id.id,'date':contract.date_start,'type':'in'}, context=context)
35+ picking_id=picking_obj.create(cr, uid, {'origin':contract.name or False, 'address_id': contract.contact_id and contract.contact_id.id or False,'date':contract.date_start or False,'type':'in'}, context=context)
36 for prod in contract.product_ids:
37- move_obj.create(cr, uid, {'name':prod.product_id.name,'product_id':prod.product_id.id,'product_qty':1,'picking_id':picking_id,'product_uom':prod.product_id.uom_id.id,'location_id':location,'location_dest_id':warehouse.lot_input_id.id, 'prodlot_id':prod.prodlot_id.id}, context=context)
38+ move_obj.create(cr, uid, {'name':prod.product_id.name,'product_id':prod.product_id.id,'product_qty':1,'picking_id':picking_id,'product_uom':prod.product_id.uom_id.id,'location_id':location,'location_dest_id': warehouse.lot_input_id and warehouse.lot_input_id.id or False, 'prodlot_id': prod.prodlot_id and prod.prodlot_id.id or 1}, context=context)
39 product_obj.write(cr, uid, prod.product_id.id, {'rent':False, 'contract_id': False}, context=context)
40 return super(account_analytic_account, self).set_close(cr, uid, ids, context=context)
41
42@@ -207,9 +207,9 @@
43 for contract in self.browse(cr, uid , ids , context=context):
44 date_invoice=contract.date_start
45 #~ date_invoice=datetime.strptime(contract.date_start, "%Y-%m-%d")
46- picking_id=picking_obj.create(cr, uid, {'origin':contract.name, 'address_id':contract.contact_id.id,'date':contract.date_start,'type':'out'}, context=context)
47+ picking_id=picking_obj.create(cr, uid, {'origin':contract.name, 'address_id': contract.contact_id and contract.contact_id.id or False,'date':contract.date_start,'type':'out'}, context=context)
48 for prod in contract.product_ids:
49- move_obj.create(cr, uid, {'name':prod.product_id.name,'product_id':prod.product_id.id,'product_qty':1,'picking_id':picking_id,'product_uom':prod.product_id.uom_id.id,'location_id':warehouse.lot_stock_id.id,'location_dest_id':warehouse.lot_output_id.id, 'prodlot_id':prod.prodlot_id.id}, context=context)
50+ move_obj.create(cr, uid, {'name':prod.product_id.name,'product_id':prod.product_id.id,'product_qty':1,'picking_id':picking_id,'product_uom':prod.product_id.uom_id.id,'location_id': warehouse.lot_stock_id and warehouse.lot_stock_id.id or False,'location_dest_id': warehouse.lot_output_id and warehouse.lot_output_id.id or False, 'prodlot_id': prod.prodlot_id and prod.prodlot_id.id or 1}, context=context)
51 for line in range(0,contract.term_id.no_term):
52 for prod in contract.product_ids:
53 a = prod.product_id.product_tmpl_id.property_account_income.id
54@@ -217,8 +217,8 @@
55 a = prod.product_id.categ_id.property_account_income_categ.id
56 for feature in contract.feature_ids:
57 if feature.product_line_id.id==prod.product_id.id:
58- line_obj.create(cr, uid, {'date':date_invoice,'name':feature.name.name,'product_id':prod.product_id.id,'product_uom_id':prod.product_id.uom_id.id,'general_account_id':a,'to_invoice':1,'account_id':contract.id,'journal_id':contract.journal_id.analytic_journal_id.id,'amount':feature.cost, 'feature_id':feature.id, 'prodlot_id':prod.prodlot_id.id},context=context)
59- product_obj.write(cr, uid, prod.product_id.id, {'rent':True,'contract_id':contract.id}, context=context)
60+ line_obj.create(cr, uid, {'date':date_invoice,'name':feature.name and feature.name.name or False,'product_id':prod.product_id.id,'product_uom_id':prod.product_id.uom_id.id,'general_account_id':a,'to_invoice':1,'account_id': contract and contract.id or False,'journal_id': contract.journal_id and contract.journal_id.analytic_journal_id and contract.journal_id.analytic_journal_id.id or False,'amount': feature and feature.cost or False, 'feature_id':feature and feature.id or False, 'prodlot_id': prod.prodlot_id and prod.prodlot_id.id or 1},context=context)
61+ product_obj.write(cr, uid, prod.product_id.id, {'rent':True,'contract_id': contract and contract.id or False}, context=context)
62 date_invoice=(datetime.strptime(date_invoice, "%Y-%m-%d") + relativedelta(months=1)).strftime("%Y-%m-%d")
63 return super(account_analytic_account, self).set_open(cr, uid, ids, context=context)
64
65@@ -257,5 +257,14 @@
66 res['product']=line.product_id.id
67 return res
68 hr_timesheet_invoice_create()
69-
70-
71+
72+
73+class stock_production_lot(osv.osv):
74+ _inherit='stock.production.lot'
75+
76+ def name_get(self, cr, uid, ids, context=None):
77+ if ids and ids[0] == False:
78+ ids=[]
79+ return super(stock_production_lot, self).name_get(
80+ cr, uid, ids, context=context)
81+stock_production_lot()

Subscribers

People subscribed via source and target branches

to all changes: