Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Odoo 如果订单行中的所有复选框均为true,则将复选框设置为true_Odoo_Odoo 12 - Fatal编程技术网

Odoo 如果订单行中的所有复选框均为true,则将复选框设置为true

Odoo 如果订单行中的所有复选框均为true,则将复选框设置为true,odoo,odoo-12,Odoo,Odoo 12,在NewSalesOrders页面上,我添加了一个复选框,如果订单行表中的(单价>成本)为true 问题是我需要确定订单行表中的所有复选框是否为真,然后在表外设置一个复选框为真,但我无法确定如何设置 在x_studio_check_min_成本计算中,当我添加此 for record in self: for one_check in record.invoice_ids.invoice_line_ids.sale_line_ids.x_studio_min_price_sale_by

在NewSalesOrders页面上,我添加了一个复选框,如果订单行表中的(单价>成本)为true

问题是我需要确定订单行表中的所有复选框是否为真,然后在表外设置一个复选框为真,但我无法确定如何设置

在x_studio_check_min_成本计算中,当我添加此

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"
文件“”,第2行,在
ValueError::“bool”对象在计算时不可编辑”
“对于self中的记录:\n对于一次签入记录。发票\u id.发票\u行\u id.销售\u行\u id.x工作室\u最小\u价格\u销售\u按成本:\n如果一次检查==True:\n记录[('x工作室\u检查\u最小\u成本')]=True\n其他:\n记录[('x工作室\u检查\u最小\u成本])]=False\n”
我使用奥多工作室,因为我是奥多新手,没有创建模块的经验


感谢您的帮助

签出此代码,希望对您有所帮助

  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\u studio\u check\u min\u cost
的计算选项中,
您可以看到高级属性标题,对吗?在依赖项字段的下方,将字段名设置为order\u行,在计算字段复制粘贴上面的代码(注意缩进)。

您好,我为问题添加了更多信息。另外,我在哪里可以添加这个代码(odoo.sh)嗨,Moaz,我在答案中做了一些更改,检查并更新。
x\u studio\u check\u min\u cost
在我加载页面时默认为
True
,这不是问题,但如果一行为
True
签出,则忽略其他行。我需要将所有按成本计算的最低售价设置为
False
,以便检查最小成本。be
True
表示如果所有行中按成本计算的最低价格销售为False,那么字段Check Min Cost,been True,这是您需要的吗?