suppose I have 10 samsung s4 in my stock with 10 different serial numnbers while generating a sale order i select samsung s4 in products there is one2many line in sale.order.line where i need to select available serial numbers(m2o field) of the particular phone now my problem is how to use domain so that selected serial numbers are not shown in list for selling eg : if i have selected serial no 1,2,3 under three lines of sale order line then in line 4 ..selected serial number should not be shown
Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:
- 客户关系管理
- e-Commerce
- 会计
- 库存
- PoS
- Project
- MRP
此问题已终结
1
回复
4440
查看
Hi,
Consider the following example.
inherit='sale.order.line'
@api.onchange('product_id')
def onchange_product_id(self):
if self.product_id:
domain = [
('product_id', '=', self.product_id.id),
('id', 'not in', self.order_id.order_line.mapped('product_serial_number_id').ids)
]
return {'domain': {'product_serial_number_id': domain}}
else:
return{}
This onchange method sets the domain filter on the product_serial_number_id field based on the selected Samsung S4 product and the serial numbers that have already been selected in other sale order lines. The order_id field is used to access the parent sale.order record, and its order_line field is used to access the existing sale order line records.
Regards
相关帖文 | 回复 | 查看 | 活动 | |
---|---|---|---|---|
|
7
4月 23
|
18496 | ||
|
0
9月 20
|
2225 | ||
|
1
9月 19
|
3459 | ||
|
0
4月 16
|
2647 | ||
|
3
3月 16
|
13250 |