Skip to Content
Menu
Musisz się zarejestrować, aby móc wchodzić w interakcje z tą społecznością.
To pytanie dostało ostrzeżenie
2 Odpowiedzi
3373 Widoki

I have created a "assign" button in Helpdesk Module which on click opens a Maintenance Request form with some data from helpdesk. And the problem is that I've to save the request manually every time. What should I do to save the maintenance request automatically and not affecting the current method on button click.

Here's my python method for button. 

@api.multi
def on_assigned(self):
return {
'res_model': 'maintenance.request',
'type': 'ir.actions.act_window',
'context': {
'default_helpdesk_id': self.id,
'default_name': self.name,
},
'domain': [('customer_id', '=', self.customer_id)],
'view_mode': 'form',
'view_type': 'form',
'res_id': self.env['maintenance.request'].search([('helpdesk_id', '=', self.id)]).id,
'view_id': self.env.ref("maintenance.hr_equipment_request_view_form").id,
}

I just want to add the "Save" functionality on this button click. Any luck? 

Awatar
Odrzuć
Najlepsza odpowiedź

Hi,

Here in the button click you are returning maintenance.request model with some default values inside the context, so for the record to be created you have to click the Save Button. As you need to create the record without clicking the save button, what you can do is that, create record in the maintenance.request model from code and return the created record id in the return.

@api.multi
def on_assigned(self):
vals = {
'helpdesk_id': self.id,
'name': self.name
}
# you can update above dictionary with other values and required fields
new_rec = self.env['maintenance.request'].create(vals)

return {
'name': _('Maintenance Request'),
'view_type': 'form',
'view_mode': 'form',
'view_id': self.env.ref("maintenance.hr_equipment_request_view_form").id,
'res_model': 'maintenance.request',
'domain': [('customer_id', '=', self.customer_id)],
'context': {
'default_helpdesk_id': self.id,
'default_name': self.name,
}, 'type': 'ir.actions.act_window',
'res_id': new_rec.id,
}

Thanks

Awatar
Odrzuć
Autor Najlepsza odpowiedź

Edited:

@niyas Raphy thanks for the help its working but it is showing the maintenance form. Can I redirect it back to previous form. How?

Awatar
Odrzuć

'target': 'new' remove it and try

Powiązane posty Odpowiedzi Widoki Czynność
2
sie 20
5440
3
lut 24
4714
2
mar 22
5271
2
lip 24
2459
1
cze 24
4980