有没有办法在 Odoo 8 视图中显示比指定精度更少的小数?

Is there any way to show less decimals than the specified accuracy in Odoo 8 views?

我正在尝试管理 Odoo 8 中的以下行为:

将产品价格设置为 5 位小数。为此,我将产品价格的小数精度设置为 5。

sale.order 视图中,仅显示 3 位小数,但计算该行的小计时会考虑 5 位小数。对于这一步,我正在修改视图以将其放在 price_unit 字段上:

<xpath expr="//field[@name='order_line']/tree/field[@name='price_unit']" position="replace">
    <field name="price_unit" digits="(16,3)"/>
</xpath>

但是 digits 属性正在改变结果。

Example:

I store a product with price 1,00123. I add 5 units of it on a sale order. If I do not use digits in the XML view, the subtotal is 5,01. Because 1,00123 * 5 = 5,00615, rounding this to Account Accuracy (2 decimals) gives 5,01. But if I use digits in XML view, the subtotal is 5,00. Because 1,001 * 5 = 5,005, rounding this to Account Accuracy (2 decimals) gives 5,00.

In fact, I show with logger the line.price_unit value in sale.order.line method _calc_line_base_price. With digits in XML view, line.price_unit values 1,001, without it, it gives 1,00123.

谁能告诉我如何在 XML 中显示 3 位小数的价格单位 查看而不改变 5 位小数的小数精度?肯定是 仅用于可视化。

如果 xml digits 确实在计算中被考虑在内(目前无法验证),您总是可以有两个字段 - 隐藏一个用于最准确的计算,另一个用于显示目的,它以指定的精度显示已计算的数字。