İçereği Atla
Menü
Bu soru işaretlendi
2 Cevaplar
3768 Görünümler

On clicking the button action we are opening the popup window.


Pop up window


Empty record inserted to the database



we want to prevent this empty record save in the database.

Avatar
Vazgeç
En İyi Yanıt

Hello Gopal,

You have to use TransientModel to open popup.

Avatar
Vazgeç
En İyi Yanıt

Hello, 

Your view shows that , there is no required field in you table (class) , in xml of your wizard , make any field view mandatory , so empty  record wont be created in db. for example 

<field name="gender" required="1"/>

Hope it helps,

Thank you

Avatar
Vazgeç
Üretici

if i set required ="1" pop up not open so that only i did not set the required attribute

I understand your issue, in your button get waiting list make sure that you fetch all the data for the columns in tree view. If any data is missing raise User Error so that no new empty record will be created. If you allow this for every iteration your doing if there is no data a new empty record will be created which is waste of db space.

Üretici

It is a action button (button type is action) . on clicking the action button it was go to the create action method (odoo create method ) then call the popup so in that create action empty record is inserting.

You can also call the same action in py file and give the button type as object... and you can raise error if data is not filled.

action = self.env.ref('module.action_view').read()[0]

if fields:

action['views'] = [(self.env.ref('module.wizard_form_view').id, 'form')]

action['res_id'] = wizard_ids and wizard_ids[0] or False

else:

raise UserError(_("Warning!.\n"))

return action

Üretici

Type=object also same problem. we tried deleted the empty record after insert before popup. delete working fine.

thanks for your suggestion and help

İlgili Gönderiler Cevaplar Görünümler Aktivite
3
Eki 24
17455
1
Şub 20
4775
0
Mar 15
3567
2
Mar 15
4836
1
Kas 24
1009