【发布时间】:2017-05-10 18:04:38
【问题描述】:
我正在尝试在 stock.quant 中插入一条新记录。当我通过这个 SQL 查询尝试它时,这有效:
INSERT INTO stock_quant (create_date, qty, create_uid, location_id, company_id, write_date, write_uid, product_id, in_date) VALUES (now(), +20, 1, 12, 1, now(), 1, 8, now())
现在我想在 Odoo 中做同样的事情。 我试过这样:
stock_quant_obj = self.env[('stock.quant')]
stock_quant = stock_quant_obj.search_read(['&', ('product_id', '=', id_huidigproduct), ('realtimemeting', '=', True)], ['qty'])
if stock_quant == []:
stock_quant_obj.create({'product_id': self.id, 'qty': 100, 'location_id:': 12, 'company_id': 1, 'realtimemeting': True})
但这给了我一个完整性错误:
完整性错误
操作无法完成,可能有以下原因:
- 删除:您可能正试图删除一条记录,而其他记录仍在引用它
- 创建/更新:未正确设置必填字段
[带有引用的对象:location_id - location.id]
我认为这可能与 location_id 是 stock.quant 中的 many2one 字段有关。但是 product_id 也是如此,它不会出错。
我还尝试将“12”替换为 obj_magazijn 和 obj_magazijn.id:
obj_magazijn ==> stock.location(12,)
obj_magazijn.id ==> 12
和
obj_magazijn = self.env[('stock.location')].search([('id', '=', 12)])
有谁知道这个错误的真正原因和/或知道解决方案吗?
【问题讨论】: