تخطي للذهاب إلى المحتوى
القائمة
لقد تم الإبلاغ عن هذا السؤال
2 الردود
4036 أدوات العرض

Hi,

I am newbie to Odoo and I am working on fleet module.

In that module there are 2 forms Vehicle and Vehicle Contract. There is a lookup of vehicle in vehicle contract form.

Task is: I have to print a list of all contracts made for a vehicle on a Vehicle form.


Thanks in advance

الصورة الرمزية
إهمال
أفضل إجابة

Hello Gaurav,

There is already contract state button in the vehicle form view and you can also see all the related contract with particular vehicles.

Thanks,

الصورة الرمزية
إهمال
الكاتب أفضل إجابة

Thanks Jignesh,

Your solution solved my issue. I found one more solution.


def _get_vehicles(self, cr, uid, ids, fields, arg, context=None):

res = {}

#vehicle = self.env['fleet.vehicle']

for _obj in self.browse(cr, uid, ids, context=context):

#('vehicle_id','=', self.vehicle_id)

_orders = self.pool.get('fleet.vehicle.log.contract').search(cr, uid, [('vehicle_id','=',context.get('active_id', False))], context=context)

res[_obj.id] =_orders

return res


'vehicle_ids' : fields.function(_get_vehicles, string="Vehicles", type="many2many", relation='fleet.vehicle'),


<field name="vehicle_ids" nolabel="1" >


But loop is getting all the contracts not for a particular vehicle. Can you tell me, what I am missing?

الصورة الرمزية
إهمال

Hello, See method return_action_to_open method in fleet.py of fleet module. you can get more idea. Thanks,

المنشورات ذات الصلة الردود أدوات العرض النشاط
3
ديسمبر 19
8786
1
فبراير 23
3838
1
أكتوبر 19
13260
2
أغسطس 25
2854
1
يوليو 25
1160