تخطي للذهاب إلى المحتوى
القائمة
لقد تم الإبلاغ عن هذا السؤال
2 الردود
3852 أدوات العرض

i have created a custom field "designation" in 'stock.picking' , now i want to get the value of the description of the product (in purchase.order) in that field  automatically when user push in the button " Reception by item"  (in my custom field)

------------------------------------------------------------------------------

stock_view.xml

<?xml version="1.0" encoding="utf-8"?>

<openerp>

<data>

<record id="bl_stock_picking_tree" model="ir.ui.view">

<field name="name">bl.stock.picking.tree</field>

<field name="model">stock.picking</field>

<field name="inherit_id" ref="stock.vpicktree"/>

<field name="arch" type="xml">

<xpath expr="//field[@name='partner_id']" position="after">

<field name="num_bl"/>

<field name="designation"/>

</xpath>

</field>

</record>

<record id="bl_stock_picking_view_form" model="ir.ui.view">

<field name="name">bl.stock.picking.form</field>

<field name="model">stock.picking</field>

<field name="inherit_id" ref="stock.view_picking_form"/>

<field name="arch" type="xml">

<xpath expr="//field[@name='partner_id']" position="after">

<field name="num_bl"/>

<field name="designation"/>

</xpath>

</field>

        </record>

    </data>

</openerp>

---------------------------------------------------------------------------------------------

from openerp.osv import fields, osv

from openerp import tools

import openerp.addons.decimal_precision as dp

from openerp.tools.translate import _

class StockPicking(osv.osv):

_inherit = 'stock.picking'

def _get_designation(self,cr,uid,values,context=None):

designation=self.pool.get('purchase.order').browse(cr,uid,values.get('order_id')).product_uom.id

print StockQuantTreeDesignation

print values

return super (StockPicking,self).create(cr,uid,values,context)

_columns = {

'num_bl': fields.char( string="Numéro de BL fournisseur",required=True,select=True),

'designation': fields.char( string="Désignation",required=True,select=True,store=True, compute='_get_designation'),

}

-----------------------------------------------------------------------------------------------------

i have write this code but nothing is happened any help please

الصورة الرمزية
إهمال
الكاتب أفضل إجابة

  thank you very much for your answer but always the field is not filled automatically    

الصورة الرمزية
إهمال
أفضل إجابة

def _get_designation(self,cr,uid,values,context=None):         purchase_obj=self.pool.get('purchase.order').search[('name','=',self.origin)]

        for purchase in purchase_obj.order_line:

           self.designation = purchase.product_id.name

     

 

الصورة الرمزية
إهمال
الكاتب

thank you very much for your answer but always the field is not filled automatically

please add your origin all the time to match with purchase order name.(make origin required)