在新的“销售订单”页面上,如果订单行表中的((单价>成本)(单价>成本),我添加了一个复选框,则为true
问题是我需要确定Lines表中的所有复选框是否都为true,然后将表外的复选框设置为true,但我无法确定
在添加此代码时在x_studio_check_min_cost计算中
for record in self:
for one_check in record.invoice_ids.invoice_line_ids.sale_line_ids.x_studio_min_price_sale_by_cost:
if one_check == True:
record[('x_studio_check_min_cost')] = True
else:
record[('x_studio_check_min_cost')] = False
在销售订单中,出现此错误
File "", line 2, in <module>
ValueError: <class 'TypeError'>: "'bool' object is not iterable" while evaluating
"for record in self:\n for one_check in record.invoice_ids.invoice_line_ids.sale_line_ids.x_studio_min_price_sale_by_cost:\n if one_check == True:\n record[('x_studio_check_min_cost')] = True\n else:\n record[('x_studio_check_min_cost')] = False\n"
我正在使用odoo Studio,因为我是odoo的新手,并且没有创建模块的经验
感谢您的帮助
答案 0 :(得分:1)
签出此代码,希望对您有所帮助。
for record in self:
flag = False
if any(line.x_studio_min_price_sale_by_cost for line in record.order_line):
flag = True
if not flag:
record['x_studio_check_min_cost'] = True
在字段x_studio_check_min_cost
的计算选项中,
您可以看到高级属性头,对吗?在 Dependencies (依赖项)字段的下面,将字段名称设置为order_line,在 Compute (复制)字段中,粘贴上面的代码(注意缩进)。