1

我是 Odoo 会计的新手。我在计算供应商账单的借方和贷方金额时遇到问题。我在采购订单行中添加了两个新字段,discount_type 和 discount_amt。小计值必须是 (price_unit * quantity) - 折扣。我可以计算小计金额。但是当我检查日记帐项目时,借方和贷方金额没有改变。我的意思是没有减去折扣金额。但是当我保存表格时,我得到了一个错误,说借方和贷方不平衡。我怎样才能做到这一点?

    def compute_price_subtotal(self):

    for line in self:

        line.discount_type = line.purchase_line_id.discount_type
        line.discount_amt = line.purchase_line_id.discount_amt

        qty = line.quantity or 0
        price_unit = line.price_unit or 0

        subtotal = price_unit * qty

        discount_type = line.discount_type
        discount_amount = line.discount_amt

        if discount_type == 'fixed':
            discount = discount_amount * qty
            line.price_subtotal = subtotal - discount

        elif discount_type == 'percentage':
            discount = subtotal * (discount_amount / 100)
            line.price_subtotal = subtotal - discount

        else:
            line.price_subtotal = subtotal

        if line.move_id.type in line.move_id.get_outbound_types():
            sign = 1
        elif line.move_id.type in line.move_id.get_inbound_types():
            sign = -1
        else:
            sign = 1

        price_subtotal = sign * line.price_subtotal

        line.update({
            'debit': price_subtotal > 0.0 and price_subtotal or 0.0,
            'credit': price_subtotal < 0.0 and -price_subtotal or 0.0,
        })

上述方法是计算price_subtotal、借方和贷方。

在此处输入图像描述

图中未税金额为13800,税金为690。所以总金额为13800 + 690 = 14490。但在Journal items中显示为15000,小计值不同。

在此处输入图像描述

4

1 回答 1

2

这是因为您只修改了您感兴趣的行。这试图修改借方/贷方,但它使账户移动不平衡。由于这违反了约束,因此防止了对会计的修改。

在更新其中的任何内容之前,您需要平衡移动。这也涉及更新税行和应付/应收行。拥有所有这些行后,您可以更新整个帐户移动。

这意味着你必须做这样的事情:(假设计算已经完成)


lines_to_write = [
    (1, line_A_id, line_A_values),
    (1, tax_line_id, tax_line_values),
    (1, receivable_line_id, receivable_line_values)
]
move.write({'line_ids': lines_to_write})

您可以在此处获取命令列表

顺便说一句,要在更改业务字段时重新计算借方和贷方,您可以(应该)调用方法_get_fields_onchange_subtotal_model来获取新值,然后使用这些新值更新帐户移动线。

原因之一是会计和发票可能使用不同的货币。

免责声明:只有在您确定自己在做什么的情况下,您才应该修改税款。这可能会对用户的税务报告产生影响。

于 2021-04-14T23:55:24.257 回答