У меня странное количество проблем с установкой tax_id
на Оду sale.order.line
моделей. Мой начальный код выглядит примерно так:
$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 определенно существует и был установлен в позициях заказа, созданных во внешнем интерфейсе. Я попытался передать его в виде единого целого числа, строки, массива целых чисел, массива строк, массива массивов целых чисел и т. Д. И т. Д., Но все равно не задано значение tax_id при получении модели обратно.
Я даже пытался сделать create
без налога, а затем делает write
впоследствии, чтобы установить налог, потому что я подумал, возможно, с many2many
отношения, это был бы единственный способ заставить их распознать связь между ними, но это тоже не сработало.
Заранее спасибо.
Как tax_id
это Many2many поле, поэтому использование не может передать прямой массив id в него.
использовать этот синтаксис 'tax_id'=>array(array(6,0,array(13)))
Для получения дополнительной информации посетите мой ответ здесь Create-A-записи-в-many2many стол
Я надеюсь, что это может решить вашу проблему.
Других решений пока нет …