跳至內容
選單
此問題已被標幟
4 回覆
11271 瀏覽次數

I have a button in a wizard, and what I need when I click it, keep the wizard opened. (Odoo 13)

頭像
捨棄
作者 最佳答案

I resolved it in an easy way, just returned the same wizard in a new action like this:

## here I change what I need example:

self.my_field_ids = [(6, 0, my_values_ids)]
return {
'name': 'Same title',
'view_mode': 'form',
'view_id': False,
'res_model': self._name,
'domain': [],
'context': dict(self._context, active_ids=self.ids),
'type': 'ir.actions.act_window',
'target': 'new',
'res_id': self.id,
}
頭像
捨棄

Nice!

最佳答案

More appropriate way to make this happen is this and it will not close the wizard

return { 
'type' : 'ir.actions.do_nothing'
}
頭像
捨棄

It works in back dates

最佳答案
It works for me:

action = self.env["ir.actions.actions"]._for_xml_id("current_model.current_action")
action['res_id'] = self.id
return action


頭像
捨棄
最佳答案

If I'm not mistaken previously it was possible with the attribute special='string', e.g.:

<button name="do_stuff" type="object" string="Do Stuff" class="oe_highlight" special="string"/>

Be cautious: (even if it helped) the object would not be saved before the button is triggered. For example, some of compute, inverse, create/write method would not have take a place. Thus, the behavior would be different in comparison to normal button, some figures might be not yet calculated.

Alternatively, it should be done by adding JavaScript event handlers.

頭像
捨棄
作者

thank you for your answer.

相關帖文 回覆 瀏覽次數 活動
1
4月 24
2181
0
11月 23
1149
1
9月 23
1156
2
8月 23
3262
2
4月 23
31054