我在销售订单中有一个基于product.product的Many2one('product_weight')字段。我尝试在销售订单行(产品)中返回该字段值。在product.template中我添加了一个check_box('is_weight')。因此,在'product_weight'的销售订单中,只有重量产品可用。那么,如何在销售订单行(product_id)中返回'product_weight'值?
我的代码在这里:
class sale_order_pet(models.Model):
_inherit = "sale.order"
product_weight = fields.Many2one('product.product', string='Service products', domain="[('is_weight','=',True)]")
@api.onchange('product_id')
def _onchange_action_weight_add(self):
res = self.product_id
print"resss:::", res
if res:
line_values = {'product_id': self.product_weight.id,
}
sale_order_line = self.env['sale.order.line'].create(line_values)
提前致谢
答案 0 :(得分:0)
您可以使用此代码:
@api.onchange('product_weight ')
def _onchange_action_weight_add(self):
res = self.product_id
print"resss:::", res
if res:
line_values = {
'order_id': self.id,
'product_id': self.product_weight.id,
}
sale_order_line = self.env['sale.order.line'].create(line_values)
答案 1 :(得分:0)
试试这个:
<强> sale_order_line.py 强>
class sale_order_line(models.Model):
_inherit =&#34; sale.order.line&#34;
product_weight = fields.Float(&#39;重量&#39;,
相关=&#39; product_id.weight&#39;,
digits = dp.get_precision(&#39;产品重量&#39;),
help =&#34; Kg内容物的重量,不包括任何包装, 。等&#34)
对于xml,您可以继承sale.view_order_form:
<强> sale_order_views.xml 强>
<record id="view_weight_order_form" model="ir.ui.view">
<field name="name">sale.order.form</field>
<field name="model">sale.order</field>
<field name="inherit_id" ref="sale.view_order_form"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='order_line']/tree/field[@name='product_id']"
position="after">
<field name="product_weight "/>
</xpath>
</field>
</record>
我希望这可以帮助你...