如何在Openerp中仅显示一个组的按钮

时间:2014-04-24 11:57:30

标签: openerp openerp-7

我想在销售订单中仅为一个组显示“创建发票”按钮。这是可能的吗? 我在Sales中创建了一个新组,它是Sales / Branch Head。可以为所有用户隐藏“创建发票”按钮,并仅显示“Sales / Branch领导“ group.Thanks提前

2 个答案:

答案 0 :(得分:3)

您可以使用groups属性。来自帐户模块的示例:

        <record id="view_invoice_line_tree" model="ir.ui.view">
        <field name="name">account.invoice.line.tree</field>
        <field name="model">account.invoice.line</field>
        <field name="type">tree</field>
        <field name="arch" type="xml">
            <tree string="Invoice Line">
                <field name="name"/>
                <field name="account_id" groups="account.group_account_user"/>
                <field name="quantity"/>
                <field name="uos_id"/>
                <field name="price_unit"/>
                <field name="discount" groups="base.group_extended"/>
                <field name="price_subtotal"/>
            </tree>
        </field>
    </record>

答案 1 :(得分:0)

您可以在没有要显示的按钮的情况下为所有其他用户创建视图。然后创建一个继承第一个视图的其他视图,并将要显示的按钮添加到所需的组。这是我正在使用的一个例子,并且正在为我工​​作。

<?xml version="1.0"?>
<openerp>
    <data>
        <!-- ##################################################### SHOW BUTTON ONLY TO MEMBERS OF SOME_GROUP ############################################################ -->
        <record model="ir.ui.view"  id="unique_id_of_your_new_view">
            <field name="name">view.unique.id.of.your.new.view</field>
            <field name="model">your.model</field>
            <field name="inherit_id" ref="id_of_view_youre_inheriting"/>
            <field name="groups_id" eval="[(6, 0, [ref('name_of_your_group') ])]"/>
            <field name="arch" type="xml">
                <field name="some_field_in_your_main_view" position="after">
                    <!-- whatever you will place here will be shown only to members of 'name_of_your_group' -->
                    <button name="your_button" class="oe_highlight" string="This button is not shown to everybody"  /> 
                </field>
            </field>
        </record>
    </data>
</openerp>