SO 带有额外折扣字段的小计不会传递给发票
SO subtotal with extra discount field does not pass over to invoice
这个问题是在我达到 之后出现的。
总而言之,我在销售订单中创建了一个新的额外折扣字段。它是按小计计算的。它作为销售订单的一部分按预期工作。
之后,我确认了,发送了产品,并创建了发票。
我发现从该 SO 创建的发票中的小计与 SO 中的值不同,因为发票中的小计未通过包含额外折扣进行计算。
我研究了 Sale 模型中的 _create_invoices
方法,但我不知道在哪里进行小计计算。
我的目标是使发票小计计算得到与当前 SO 小计相同的值。当然,小计后的其他计算字段,如未税金额、税收和总计也必须与 SO 匹配。
================
更新
好的,现在我知道要使用哪些了。我只覆盖 _get_price_total_and_subtotal_model
和 _prepare_invoice_line
。这使我能够将额外折扣从销售发送到发票。但是,当我从销售中创建发票时,发票中显示的单价会减去折扣,但如果我从发票手动创建发票(我在发票中也有额外的折扣字段)单价不会因额外折扣而减少,只有小计打了折扣,这就是我要找的结果。唯一的问题是为什么从销售中创建发票会更改单价?
最后,在花了整整一周的时间弄清楚它是如何工作的之后,我只需要在 account.move.line
模型中覆盖 _get_price_total_and_subtotal_model
和 create
。和 _prepare_invoice_line
在 sale.order.line
模型中。
谢谢 CZoellner 的建议。
这个问题是在我达到
总而言之,我在销售订单中创建了一个新的额外折扣字段。它是按小计计算的。它作为销售订单的一部分按预期工作。
之后,我确认了,发送了产品,并创建了发票。
我发现从该 SO 创建的发票中的小计与 SO 中的值不同,因为发票中的小计未通过包含额外折扣进行计算。
我研究了 Sale 模型中的 _create_invoices
方法,但我不知道在哪里进行小计计算。
我的目标是使发票小计计算得到与当前 SO 小计相同的值。当然,小计后的其他计算字段,如未税金额、税收和总计也必须与 SO 匹配。
================
更新
好的,现在我知道要使用哪些了。我只覆盖 _get_price_total_and_subtotal_model
和 _prepare_invoice_line
。这使我能够将额外折扣从销售发送到发票。但是,当我从销售中创建发票时,发票中显示的单价会减去折扣,但如果我从发票手动创建发票(我在发票中也有额外的折扣字段)单价不会因额外折扣而减少,只有小计打了折扣,这就是我要找的结果。唯一的问题是为什么从销售中创建发票会更改单价?
最后,在花了整整一周的时间弄清楚它是如何工作的之后,我只需要在 account.move.line
模型中覆盖 _get_price_total_and_subtotal_model
和 create
。和 _prepare_invoice_line
在 sale.order.line
模型中。
谢谢 CZoellner 的建议。