Bỏ qua để đến Nội dung
Menu
Câu hỏi này đã bị gắn cờ
5 Trả lời
6289 Lượt xem

Hello,

I experimented a case in sale orders and in purchase order. Per example in purchase order, if the RFQ is confirmed as order, when we try to add line we got the following SQL error. The field product_uom containt a non-null constraint and the insert query doesn't feed this field...why?  Same thing in sale order when the quote is confirmed as an order.


Thanks

 odoo.sql_db: bad query: b'INSERT INTO "purchase_order_line" ("id", "order_id", "product_qty", "price_unit", "account_analytic_id", "sequence", "date_planned", "name", "create_uid", "write_uid", "create_date", "write_date") VALUES(nextval(\'purchase_order_line_id_seq\'), 338, \'1\', \'0.00\', NULL, 10, \'2018-06-07 00:38:46\', \'QAA-B-01\', 1, 1, (now() at time zone \'UTC\'), (now() at time zone \'UTC\')) RETURNING id'
ERROR: null value in column "product_uom" violates not-null constraint
DETAIL:  Failing row contains (1196, SAV-B-01, 10, 1, 2018-06-07 00:38:46, null, null, 0.00, null, null, null, 338, null, null, null, null, null, null, null, null, 1, 2018-06-07 00:38:56.169986, 1, 2018-06-07 00:38:56.169986)

Ảnh đại diện
Huỷ bỏ
Tác giả Câu trả lời hay nhất

Finally, the field is not transfered because there is an attribute on field product_uom: attrs="{'readonly': [('state', 'in', ('purchase', 'done', 'cancel'))]}"

Because the status of pruchase order is "purchase", the field is readonly and not in values during the insert. Why this field is readonly?

Thanks

Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

This is a wild guess but in Odoo any readonly field will not be stored in the database. So what I think happens here is that in your view when you choose a product, the product_uom field is properly set by the onchange event but since it's readonly it will be only visual. In that case you need to make your product_uom field as non-readonly.

It would be nice to see which version of odoo you have to help you more.

Ảnh đại diện
Huỷ bỏ
Tác giả

Hi, I am using v11 community. I'll take a look about your hint. Thanks

Câu trả lời hay nhất

Hi,

In the error message itself, there is the hint about the issue.  In the sale.order.line and in the purchase.order.line the product_uom field is a required field.


As you haven't supplied the value for the field in your Insert query you are getting the issue. So update the query by providing the product_uom.

Also, check and make sure that no other required fields are missed


Thanks

Ảnh đại diện
Huỷ bỏ
Tác giả

Hi,

I saw the message, but the product_uom is feeded on the new line at screen. So it's why I don't understand the error message.

Thanks

Bài viết liên quan Trả lời Lượt xem Hoạt động
1
thg 8 24
5715
0
thg 3 15
3397
1
thg 5 24
1400
1
thg 6 23
3054
0
thg 3 23
2034