Siirry sisältöön
Menu
Sinun on rekisteröidyttävä, jotta voit olla vuorovaikutuksessa yhteisön kanssa.
Tämä kysymys on merkitty
2 Vastaukset
11176 Näkymät

my field


state = fields.Selection(string="Status", selection=[('draft', 'Draft'), ('confirm', 'Confirm'),
('validate', 'Validated'), ('refuse', 'Refuse'),('reset','Reset to Draft'),('cancel','Cancel'),
('approved', 'Approved'), ], default="draft", track_visibility='onchange', )



My view 

button name="confirm_request" string="Confirm" class="oe_highlight" states="draft" type="object"/>
<button name="validate_request" string="Validate" class="oe_highlight" states="confirm" type="object" groups="hr.group_hr_user"/>
<button name="approve_request" string="Approve" class="oe_highlight" states="validate" type="object" groups="hr.group_hr_manager"/>
<button name="refuse_request" string="Refuse" states="confirm,validate" type="object" groups="hr.group_hr_user,hr.group_hr_manager"/>
<button name="%(launch_customer_wizard)d" type="action" state="validate"
string="Cancel" class="oe_highlight"/>
<field name="state" widget="statusbar" statusbar_visible="draft,confirm,validate"/>
Avatar
Hylkää
Paras vastaus

It's a two steps manipulation, you create the button in the view as you did for refurse,confirm and validate, then you create a function with the same name as the button's name. here's the simplest way to do it:

@api.multi
def action_draft(self):
self.write({'state': 'draft'})

<button name="action_draft" string="return to draft" states="confirm,validate" type="object"groups="hr.group_hr_user,hr.group_hr_manager"/>
Avatar
Hylkää
Tekijä

ok, I see . Thank you very much

Paras vastaus

Hello

add new button "Reset to Draft" with type object. and call the method which set the State to "Draft".

for more information you can see into Sale order or Accounting Invoice part.


Avatar
Hylkää