首页 > 解决方案 > 如何根据采购订单中的字段选择创建一种显示销售订单 ID 的方法?销售订单参考已集成在采购中

问题描述

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

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

例子:

  1. 销售订单-->trader name = 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>

*购买.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>

标签: odoo

解决方案


您需要过滤您的销售订单。

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

你应该返回:

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

推荐阅读