中菁- odoo  ERP 实施 杭州

示例图片三
首页 > Odoo资讯 > odoo知识库

Odoo(OpenERP)视图继承总结

2017-03-27 09:25:55 中菁- odoo ERP 实施 杭州 阅读

ODOO支持的视图类型:form、tree、search...
支持的定位方法:
<notebook position="inside">
<xpath expr="//page[@name='page_history']"position="inside">
<field name="mobile"position="after">
<filter name="consumable"position="after">
<group name="bank"position="after">
<xpath expr="//field[@name='standard_price']"position="replace">
<xpath expr="//button[@name='open_ui']"position="replace">

<xpath expr="//div[@class='oe_employee_details']/h4/a"position="after">

<xpath expr="/form/sheet/notebook/page/field[@name='line_ids']/tree/field[@name='analytic_account_id']"position="replace">
<xpath expr="/form/sheet/notebook/page/field[@name='line_ids']/form/group/field[@name='analytic_account_id']"position="replace">

支持的规则:before、after、replace、inside、attributes
插入:
position='before'
position="after"

<field name="mobile"position="after">
<field name="sale_order_count"/>
</field>

<filter name="consumable"position="after">
<separator/>
<filter name="filter_to_qty_available"string="
在手数量>0"icon="terp-accessories-archiver+"domain="[('qty_available','>',0)]"/>
<filter name="filter_to_virtual_available"string="预测数量>0"icon="terp-accessories-archiver+"domain="[('virtual_available','>',0)]"/>
</filter>
替换:
position="replace"
<xpath expr="//field[@name='standard_price']"position="replace">
<group name='cost_prices'colspan="2"col="4">
<field name="standard_price"nolabel="1"attrs="{'readonly':[('cost_method','=','average')]}"/>
<field name="cost_price_extra"groups="product.group_product_variant"/>
</group>
</xpath>
<xpath expr="//button[@name='open_ui']"position="replace">
<button name="open_ui"type="object"string="Start Selling"attrs="{'invisible':[('pos_state','not in',('opened',))]}"class="oe_highlight"invisible="True"/>
</xpath>
内部创建:?
position="inside"
<xpath expr="//page[@name='page_history']"position="inside">
<group name="grp_task"string="Tasks">
<field name="task_ids"colspan="4"nolabel="1">
<tree string="Tasks"editable="bottom">
<field name="name"/>
</tree>
</field>
</group>
</xpath>
修改属性:修改属性能够实现的功能,不要使用replace
position="attributes"

<xpath expr="//field[@name='name']"position="attributes">
<attribute name="required">1</attribute>
</xpath>
示例代码:
<record id="product_normal_variant_form_view"model="ir.ui.view">
<field name="name">product.normal.variant.form</field>
<field name="model">product.product</field>
<field name="type">form</field>
<field name="inherit_id"ref="product.product_normal_form_view"/>
<field name="arch"type="xml">
<data>
<xpath expr="//field[@name='name']"position="attributes">
<attribute name="required">1</attribute>
</xpath>
<xpath expr="//field[@name='standard_price']"position="replace">
<group name='cost_prices'colspan="2"col="4">
<field name="standard_price"nolabel="1"attrs="{'readonly':[('cost_method','=','average')]}"/>
<field name="cost_price_extra"groups="product.group_product_variant"/>
</group>
</xpath>

<sheet>
<group col="2"colspan="2"groups="base.group_extended"position="replace">
<group colspan="2"col="6"name="weight"groups="base.group_extended">
<field name="is_multi_variants"invisible="1"/>
</group>
</group>
</sheet>
</data>
</field>
</record>
<!--
隐藏open_ui按钮-->
<record model="ir.ui.view"id="pos_session_opening_form_view_openui">
<field name="name">pos.session.opening.form.view.openui</field>
<field name="model">pos.session.opening</field>
<field name="inherit_id"ref="point_of_sale.pos_session_opening_form_view"/>
<field name="arch"type="xml">
<xpath expr="//button[@name='open_ui']"position="replace">
<button name="open_ui"type="object"string="Start Selling"attrs="{'invisible':[('pos_state','not in',('opened',))]}"class="oe_highlight"invisible="True"/>
</xpath>
</field>
</record>
<record id="product_search_form_view_filter"model="ir.ui.view">
<field name="name">product.search.form.filter</field>
<field name="model">product.product</field>
<field name="inherit_id"ref="product.product_search_form_view"/>
<field name="arch"type="xml">
<filter name="consumable"position="after">
<separator/>
<filter name="filter_to_qty_available"string="在手数量>0"icon="terp-accessories-archiver+"domain="[('qty_available','>',0)]"/>
<filter name="filter_to_virtual_available"string="预测数量>0"icon="terp-accessories-archiver+"domain="[('virtual_available','>',0)]"/>
</filter>
</field>
</record>
<!--kanban view inherit-->
<record model="ir.ui.view"id="crm_lead_partner_kanban_view">
<field name="name">res.partner.kanban.saleorder.inherit</field>
<field name="model">res.partner</field>
<field name="inherit_id"ref="base.res_partner_kanban_view"/>
<field name="priority"eval="20"/>
<field name="arch"type="xml">
<field name="mobile"position="after">
<field name="sale_order_count"/>
</field>
<xpath expr="//div[@class='oe_kanban_partner_links']"position="inside">
<a name="%(sale.act_res_partner_2_sale_order)d"type="action"t-if="record.sale_order_count.value>0">
<t t-esc="record.sale_order_count.value"/>Sales
</a>
</xpath>
</field>
</record>
<!--inherit form-->
<record id="view_task_partner_info_form"model="ir.ui.view">
<field name="name">res.partner.task.info.inherit</field>
<field name="model">res.partner</field>
<field name="inherit_id"ref="base.view_partner_form"/>
<field name="arch"type="xml">
<xpath expr="//page[@name='page_history']"position="attributes">
<attribute name="invisible">False</attribute>
</xpath>
<xpath expr="//page[@name='page_history']"position="inside">
<group name="grp_task"string="Tasks">
<field name="task_ids"colspan="4"nolabel="1">
<tree string="Tasks"editable="bottom">
<field name="name"/>
</tree>
</field>
</group>
</xpath>
</field>
</record>


Powered by MetInfo 5.3.15 ©2008-2018 www.metinfo.cn