在 Odoo 中使用 PHP api 为销售订单设置 tax_id
Set the tax_id for a sales order with PHP api in Odoo
我在 Odoo sale.order.line
模型上设置 tax_id
遇到了很多奇怪的麻烦。我的初始代码有点像这样:
$sale_order_line = $models->execute_kw($info['database'], $info['uid'], $info['password'], 'sale.order.line', 'create', array(
array(
'name' => $product['name'],
'order_id' => (int) $sale_order,
'product_id' => (int) $product['id'],
'product_uom' => 1,
'product_uom_qty' => (float) $line_item->quantity->value(),
'price_unit' => $product['list_price'],
'tax_id' => array(13),
)
));
13这个id是肯定存在的,而且在前端创建的订单项上已经设置好了。我试过将它作为单个整数、字符串、整数数组、字符串数组、整数数组等传递,但再次检索模型时仍然没有设置 tax_id。
我什至尝试过 create
没有税,然后 write
之后设置税,因为我想也许 many2many
关系,那将是让它识别它们之间的联系的唯一方法,但这也不起作用。
提前致谢。
由于tax_id
是Many2many字段,所以不能直接传id数组给它。
使用这个语法'tax_id'=>array(array(6,0,array(13)))
有关更多信息,请在此处访问我的答案
希望它能解决您的问题。
我在 Odoo sale.order.line
模型上设置 tax_id
遇到了很多奇怪的麻烦。我的初始代码有点像这样:
$sale_order_line = $models->execute_kw($info['database'], $info['uid'], $info['password'], 'sale.order.line', 'create', array(
array(
'name' => $product['name'],
'order_id' => (int) $sale_order,
'product_id' => (int) $product['id'],
'product_uom' => 1,
'product_uom_qty' => (float) $line_item->quantity->value(),
'price_unit' => $product['list_price'],
'tax_id' => array(13),
)
));
13这个id是肯定存在的,而且在前端创建的订单项上已经设置好了。我试过将它作为单个整数、字符串、整数数组、字符串数组、整数数组等传递,但再次检索模型时仍然没有设置 tax_id。
我什至尝试过 create
没有税,然后 write
之后设置税,因为我想也许 many2many
关系,那将是让它识别它们之间的联系的唯一方法,但这也不起作用。
提前致谢。
由于tax_id
是Many2many字段,所以不能直接传id数组给它。
使用这个语法'tax_id'=>array(array(6,0,array(13)))
有关更多信息,请在此处访问我的答案
希望它能解决您的问题。