Odoo Help

Welcome!

This community is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.

0

Why my wizard is blank?

By
Luis Domingues
on 4/18/14, 2:33 PM 1,127 views

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:

<?xml version="1.0"?>
<openerp>
<data>
    <!-- form view -->
    <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>
    <!-- action -->
    <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>
    <!-- menu -->
    <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()
1

Vasiliy Birukov

--Vasiliy Birukov--
3446
| 6 6 8
Russian Federation
--Vasiliy Birukov--

Help develop and implement any project on base Odoo.

Vasiliy Birukov
On 5/9/14, 8:07 AM

You need define initial value of state field. Or through defaults values or through context.

For example in your py file add:

_defaults = {
    'state': 'init',
}
0

Jagdish Panchal

--Jagdish Panchal--
2674
| 5 3 6
Gandhinagar, India
--Jagdish Panchal--

OpenERP Developer

Jagdish Panchal
On 4/19/14, 2:25 AM

Hi,

Try this code

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)
    ir_model_data = self.pool.get('ir.model.data')
    view_id = ir_model_data.get_object_reference(cr, uid, 'your_module_name', 'view_staff_pay_push_form')[1]
    #return view
    return {
        'name': _('Test '),
        'type': 'ir.actions.act_window',
        'res_model': 'staff.pay.push',
        'view_mode': 'form',
        'view_type': 'form',
        'view_id': view_id,
        'views': [(view_id, 'form')],
        'target': 'new',
         }

This code don't seems to be the solution. I steel have my blank page.

Luis Domingues
on 4/20/14, 10:30 AM

Your Answer

Please try to give a substantial answer. If you wanted to comment on the question or answer, just use the commenting tool. Please remember that you can always revise your answers - no need to answer the same question twice. Also, please don't forget to vote - it really helps to select the best questions and answers!

About This Community

This community is for professionals and enthusiasts of our products and services. Read Guidelines

Question tools

0 follower(s)

Stats

Asked: 4/18/14, 2:33 PM
Seen: 1127 times
Last updated: 3/16/15, 8:10 AM