Skip to Content
Meniu
Trebuie să fiți înregistrat pentru a interacționa cu comunitatea.
Această întrebare a fost marcată
1 Răspunde
4335 Vizualizări

How can  i assign a vendor a certain warehouse to deliver to  in odoo 13?

Imagine profil
Abandonează
Cel mai bun răspuns

Hi Yash,

There is no default option to do the mentioned process. But we can do a modification in both the vendor model and purchase module to set a default warehouse for a vendor.

First, let's inherit the 'res.partner' to add a new field to select the warehouse operation

class DefaultWarehouse(models.Model):
_inherit = 'res.partner'

default_warehouse_id = fields.Many2one('stock.picking.type',                         string="DefaultWarehouse",domain=[('code', '=', 'incoming')])


Then let's add this in the view 

<record id="default_warehouse" model="ir.ui.view">
  <field name="name">default.warehouse</field>
  <field name="model">res.partner</field>
  <field name="inherit_id" ref="base.view_partner_form"/>
  <field name="arch" type="xml">
  <xpath expr="//group[@name='purchase']" position="inside">
  <field name="default_warehouse_id"/>
  </xpath>
  </field>
</record>

Next, we can inherit the purchase.order model so that when we select a vendor the delivery location will get assigned automatically

class PurchaseOrder(models.Model):
  _inherit = 'purchase.order'

    @api.onchange('partner_id')
    def get_warehouse(self):
        if self.partner_id.default_warehouse_id:
            self.picking_type_id = self.partner_id.default_warehouse_id

Like this, we can assign a default warehouse for a vendor. Hope this helps. Thank you.

Imagine profil
Abandonează
Related Posts Răspunsuri Vizualizări Activitate
1
iun. 21
2949
1
apr. 21
2035
7
mar. 24
34957
1
aug. 25
199
1
iul. 25
2660