Hello,
I'm trying to do a wizard. But when I try to launch it on OpenERP, I have a blank view. I think I miss something, but I don't know what.
XML:
<openerp>
<data>
<record model="ir.ui.view" id="view_staff_pay_push_form">
<field name="name">staff.pay.push.form</field>
<field name="model">staff.pay.push</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Pay Push" version="7.0">
<field invisible="1" name="state"/>
<group states="init">
<field name="user_id"/>
</group>
<group states="defineAmount">
<field name="amount"/>
</group>
<footer states="init">
<button name="action_next" string="Next"/>
</footer>
<footer states="defineAmount">
<button name="action_previous" string="Previous"/>
</footer>
</form>
</field>
</record>
<record model="ir.ui.view" id="view_staff_pay_push_tree">
<field name="name">staff.pay.push.tree</field>
<field name="model">staff.pay.push</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="Pay Push" version="7.0">
<field name="user_id"/>
<field name="amount"/>
</tree>
</field>
</record>
<record model="ir.actions.act_window" id="show_Field">
<field name="name">Pay Push</field>
<field name="res_model">staff.pay.push</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
</record>
<menuitem name="Field" id="menu_staff_pay_pushs" sequence="49" parent="menu_staff_options" action="show_Field" groups="group_staff_management_in_charge"/>
</data>
</openerp>
Python file:
from openerp.osv import osv, fields
from openerp.osv.orm import TransientModel
class staff_pay_push(TransientModel):
_name="staff.pay.push"
_columns={
'user_id':fields.many2one('res.users', 'User', relate=True),
'amount': fields.float('Amount', readonly=False),
'state': fields.selection([('init', 'init'),('defineAmount', 'defineAmount')])
}
def action_next(self, cr, uid, ids, context=None):
#your treatment to click button next
#...
# update state to step2
self.write(cr, uid, ids, {'state': 'defineAmount',}, context=context)
#return view
return {
'type': 'ir.actions.act_window',
'res_model': 'staff_pay_push',
'view_mode': 'form',
'view_type': 'form',
'res_id': this.id,
'views': [(False, 'form')],
'target': 'new',
'context' : context
}
def action_previous(self, cr, uid, ids, context=None):
#your treatment to click button previous
#...
# update state to step1
self.write(cr, uid, ids, {'state': 'init',}, context=context)
#return view
return {
'type': 'ir.actions.act_window',
'res_model': 'staff_pay_push',
'view_mode': 'form',
'view_type': 'form',
'res_id': this.id,
'views': [(False, 'form')],
'target': 'new',
}
staff_pay_push()