如何使用Odoo 9.0中的自定义模型将自定义字段添加到数据透视视图

时间:2016-09-24 09:54:38

标签: python openerp pivot-table odoo-9

我花了很多时间搜索并尝试在Odoo 9.0销售点报告中添加自定义字段到数据透视图。我不知道我必须在自定义模块中编写什么才能将新字段(特别是付款方式)添加到pivot中。

感谢您的帮助,祝您度过愉快的一天;)

编辑:

在这里,您有我想做的事情,我想为其他人添加现场付款方式:

enter image description here

2 个答案:

答案 0 :(得分:2)

你有没有在Odoo Addons文件夹下检查过,例如你的问题,请检查Odoo / addons / point_of_sale / report / 有pos_report.py和pos_order_report_view.xml

  1. 您可以在里面添加自定义字段 _columns = { ..... }
  2. 在其中添加自定义查询。 def init(self,cr):     tools.drop_view_if_exists(cr,'report_transaction_pos')     cr.execute( “””     .........     “” “” “”)
  3. 添加自定义视图 pos_order_report_view.xml 3.1创建自己的记录或只使用视图继承。
  4. p.s如果您在我的回答中找到了需要改进的地方,请通知我:)谢谢。

答案 1 :(得分:0)

如果答案太迟,请原谅我。

我认为最好的方法是通过在您自己的模块中添加新字段来覆盖数据透视视图。安装模块时,将使用您的自定义版本覆盖默认视图。以下是我为Timesheets模块做的一个例子:

<?xml version="1.0" encoding="UTF-8"?>
<odoo>
    <data>
        <record model="ir.ui.view" id="timesheets_pivot_extension">
            <field name="name">timesheets.pivot</field>
            <field name="model">account.analytic.line</field>
            <field name="inherit_id" ref="hr_timesheet.view_hr_timesheet_line_pivot"/>
            <field name="arch" type="xml">
                <pivot>
                    <field name="my_custom_field" type="measure" />
                </pivot>
            </field>
        </record>
    </data>
</odoo>

在这里,ofc,“my_custom_field”是我自己的字段,我将其添加到account.analytic.line模型(Timesheets)中。 这也很容易:

class AccountAnalyticLine(models.Model):
    _inherit = 'account.analytic.line'

    my_custom_field = fields.Float(store=True, readonly=True)

就是这样。我使用Odoo中的ORM层在某个时刻使用我自己的值填充此自定义字段。

希望它有所帮助,祝你好运!

此致 鲍里斯