如何创建一种基于采购订单中字段选择显示销售订单ID的方法?销售订单参考已集成到采购中

时间:2018-10-06 19:53:01

标签: odoo sales purchase-order

我已在采购订单表格中添加了销售订单参考。我还在销售和购买表格中添加了一个自定义字段。该字段为“交易者名称”。我需要采购订单中的销售订单参考字段来显示基于交易者姓名的选择中的销售订单ID。

我在创建销售订单时选择了交易者名称,并且希望采购订单表单中的销售订单引用显示与特定交易者名称链接的相同销售订单ID。

示例:

  1. 销售订单->交易者名称= abc ---> so#200

  2. 购买表格--->选择交易者名称“ abc”和销售订单参考字段应自动显示所选交易者名称下的所有销售订单编号

注意:交易者姓名字段已提取到采购订单表格中

根据所选的销售订单ID,还应该从销售订单表格中提取相同的订单行

代码在odoo 11中

这是我的代码:

* purchase_views.xml

<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="purchase_order_form_inherit" model="ir.ui.view">
<field name="name">purchase.order.form.inherit</field>
<field name="model">purchase.order</field>
<field name="inherit_id" ref="purchase.purchase_order_form"/>
<field name="arch" type="xml">
<field name="partner_ref" position="after">
<field name="x_trader_name"/>
<field name="sale_order_id"/>

 </field>
 </field>

* purchase.py

from odoo import models, fields

    class PurchaseOrder(models.Model):
    _inherit = 'purchase.order'
    sale_order_id = fields.Many2one(
    'sale.order',
    "Sale Order",
    help="Reference to Sale Order",
    )
    </record>
    </odoo>

1 个答案:

答案 0 :(得分:0)

您需要过滤销售订单。

trader name添加onchange方法并获取所有相关的销售订单,然后更改sale_order_id的域以仅显示所需的记录。

您应该返回:

{'domain':{'sale_order_id':[('id','in',SO_IDS)]}}