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

Hello, I want to open wizard with action server.Here with atteched my code is there any changes i have to do thanks in advance



Wizard:

fromodooimportmodels, fields, api
classSOBGenerateWizard(models.TransientModel):_name='sob.generate.wizard'_description='SOB Generate Wizard'
message=fields.Text(string='Message', readonly=True)

@api.modeldefaction_close(self):return {'type': 'ir.actions.act_window_close'}


xml:

<odoo><data><recordid="view_sob_generate_wizard_form"model="ir.ui.view"><fieldname="name">sob.generate.wizard.formfield><fieldname="model">sob.generate.wizardfield><fieldname="arch"type="xml"><formstring="SOB Generate Wizard"><group><fieldname="message"readonly="1"/>group><footer><buttonname="action_close"string="OK"class="btn-secondary"/>footer>form>field>record><recordid="action_sob_generate_wizard"model="ir.actions.act_window"><fieldname="name">SOB Generate Wizardfield><fieldname="type">ir.actions.act_windowfield><fieldname="res_model">sob.generate.wizardfield><fieldname="view_mode">formfield><fieldname="view_id"ref="view_sob_generate_wizard_form"/><fieldname="target">newfield>record>data>odoo>

server action function:

wizard=self.env['sob.generate.wizard'].create({'message': _("SOB Successfully Generated")})return {'name': 'SOB Generate Wizard','type': 'ir.actions.act_window','res_model': 'sob.generate.wizard','view_mode': 'form','res_id': wizard.id,'target': 'new',# 'context': {'default_message': message}, }

頭像
捨棄
最佳答案

Hi,

Create a server action

Then create a function on the corresponding model and return an action here mentioning the model and view_id.


<record id="model_product_template_inherit" model=" ir.actions.server">

    <field name="name">Wizard</field>

<field name="model_id" ref=product.model_product_template"/>

<field name="binding_view_types">form</field>

    <field name="state">code</field>

<field name="code">action=recor.open_wizard()</field>

</record>


def open_wizard(self):

    return {

        'name': 'Wizard',

        'type': 'ir.actions.act_window',

        'view_mode': 'form',

        "view_type": "form",

        'res_model': ' product .generation.wizard',

         'target': 'new',

        'view_id': self.env.ref

         ('product_generation.product_generation_wizard_form').id,

        'context': {'active_id': self.id},

     }


Hope it helps

頭像
捨棄
最佳答案

Hi, 

You can follow this link for this: https://youtu.be/oMnHpHH54QU

and following link for exact behavior: https://youtu.be/WW06SrlW4hI

Hope it helps,

Thanks

頭像
捨棄
相關帖文 回覆 瀏覽次數 活動
3
3月 24
1837
2
12月 24
3037
0
3月 24
1424
0
11月 23
1238
1
8月 23
5005