打开menuitem按钮单击OpenERP

时间:2015-03-13 10:14:46

标签: python button module menuitem openerp-7

我正试图在按下OpenERP按钮时获得menuitem的行为。我实现的按钮打开了搜索页面,但它永远不会进入我创建的搜索菜单项。在搜索菜单中,我有产品搜索,位置搜索和员工搜索。但点击打开搜索表单bnut永远不会更新屏幕的左侧部分。作为参考,我正在粘贴图像。

enter image description here 当我从顶部菜单条点击Search Product menuitem时,上面的图片是截图。

enter image description here 这个截图是我点击搜索按钮的时候。

我希望按钮的行为如第一张图片所示。

到目前为止,我的搜索代码是:

def search_click (self,cr,uid,ids,context):
    return {
           'type': 'ir.actions.act_window',
           'res_model': 'target model name',
           'view_type': 'form',
           'view_mode': 'form',
}

My View xml是:

<?xml version="1.0" ?>
<openerp>
    <data>
<!--########################################Model -->
    <record id="home_form_view" model="ir.ui.view">
               <field name="name">home.form</field>
               <field name="model">home.form</field>          
               <field eval="7" name="priority"/>
               <field name="arch" type="xml">
                  <form string="FORM DATA" version="7.0"  create="false" edit="false" save="false">    
                    <button colspan="4" string="Search" name="search_click" type="action"/>
                  </form>
               </field>
       </record>



<!--#######################################Dealer-->
<record id="home_new_action" model="ir.actions.act_window">
            <field name="name">Home</field>
            <field name="res_model">home.form</field>
            <field name="type">ir.actions.act_window</field>
            <field name="view_type">form</field>
            <field name="view_mode">form</field>
            <field name="res_id">20</field>
            <field name="view_id" ref="home_form_view"/>
</record>
<record id="home_new_form" model="ir.actions.act_window.view">
            <field eval="3" name="sequence"/>       
            <field name="view_mode">form</field>
            <field name="view_id" ref="home_form_view"/>    
            <field name="act_window_id" ref="home_new_action"/>
</record>

 <!--#######################################-->

        <menuitem id="myhome" name="Home" sequence="0" />
    <menuitem id="myhome_menu" name=" " parent="myhome" />
    <menuitem action="home_new_action" id="homeform0_menu" name="Home" parent="myhome_menu"/>
    </data>
</openerp>

请指导我正确的方向,因为我现在一无所知。

问候。

1 个答案:

答案 0 :(得分:0)

试试以下......

tree_view_id = self.pool.get('ir.model.data').get_object_reference(cr, uid, 'module_name', 'external_id_of_tree_view')
form_view_id = self.pool.get('ir.model.data').get_object_reference(cr, uid, 'module_name', 'external_id_of_form_view')

return {
       'name': ('Execute Your Action'),
       'view_type': 'form',
       'res_model': 'model_name',
       'view_id': False,
       'context':context,
       'views': [(tree_view_id and tree_view_id[1] or 0, 'tree'), (form_view_id and form_view_id[1] or 0, 'form')],
       'type': 'ir.actions.act_window',
       'target': 'current',
       'nodestroy': True
   }

我希望这会有所帮助。