Odoo:覆盖" create_attendees()"方法

时间:2016-07-07 15:59:39

标签: openerp

我正在使用Odoo 8。

我在合作伙伴表单上添加了一个智能按钮,以显示合作伙伴的当前机会。当我点击按钮时,我想打开已过滤机会的列表。这有效,但不在机会列表中(应该是crm_case_tree_view_oppor);它会打开一个潜在客户列表(我的机会在里面?> crm_case_tree_view_leads)。

因此,当我点击创建按钮(位于列表顶部)时,它会打开潜在客户表单而非机会表单。

这是我的代码:

我继承的合作伙伴表格中的智能按钮:

<button class="oe_inline oe_stat_button" type="action" name="%(action_current_opportunity_partner_list)d" icon="fa fa-star-o">
    <field string="Opp. en cours" name="opportunity_current_count" widget="statinfo"/>
</button>

相关行动:

<record id="action_current_opportunity_partner_list" model="ir.actions.act_window">
    <field name="domain">[('partner_id.id', '=', active_id), ('probability', '!=', 0), ('probability', '!=', 100)]</field>
    <field name="view_mode">tree,form</field>
</record>

我如何告诉Odoo打开机会列表(crm.crm_case_tree_view_oppor),之后,创建按钮创建机会而非潜在客户?

2 个答案:

答案 0 :(得分:0)

您需要在ir.actions.act_window上添加一个view_id,如:

<field name="view_id" ref="crm.crm_case_tree_view_oppor" />

不要忘记在模块依赖项中设置crm(__openerp __。py)

对于第二个问题(创建),为您的操作添加一个上下文:

<field name="context">{'stage_type': 'opportunity', 'default_type': 'opportunity', 'default_user_id': uid, 'needaction_menu_ref': 'sale.menu_sale_quotations'}</field>

只是从“机会”菜单项后面的窗口操作中复制了一个。

答案 1 :(得分:0)

所以我只需用这个替换我的按钮:

<button class="oe_inline oe_stat_button" type="action" name="crm.crm_case_category_act_oppor11" icon="fa fa-star" context="{'search_default_partner_id': active_id}">
    <field string="Opportunités" name="opportunity_total_count" widget="statinfo"/>
</button>

只需将名称更改为“crm.crm_case_category_act_oppor11”并删除我自己的行为。

立即行动。

之前的列表工作,按钮不是“创建”按钮。我没有任何解释。