sale : onchange on shipping policy and override create and write on sale.order
bzr revid: mra@tinyerp.com-20081201130056-i2x4ye670oa72hlo
This commit is contained in:
parent
3a47894f81
commit
7d8e5ee0e9
|
@ -296,6 +296,32 @@ class sale_order(osv.osv):
|
||||||
payment_term = part.property_payment_term and part.property_payment_term.id or False
|
payment_term = part.property_payment_term and part.property_payment_term.id or False
|
||||||
return {'value':{'partner_invoice_id': addr['invoice'], 'partner_order_id':addr['contact'], 'partner_shipping_id':addr['delivery'], 'pricelist_id': pricelist, 'payment_term' : payment_term}}
|
return {'value':{'partner_invoice_id': addr['invoice'], 'partner_order_id':addr['contact'], 'partner_shipping_id':addr['delivery'], 'pricelist_id': pricelist, 'payment_term' : payment_term}}
|
||||||
|
|
||||||
|
def shipping_policy_change(self, cr, uid, ids, policy, context={}):
|
||||||
|
if not policy:
|
||||||
|
return {}
|
||||||
|
inv_qty = 'order'
|
||||||
|
if policy=='prepaid':
|
||||||
|
inv_qty = 'order'
|
||||||
|
elif policy=='picking':
|
||||||
|
inv_qty = 'procurement'
|
||||||
|
return {'value':{'invoice_quantity':inv_qty}}
|
||||||
|
|
||||||
|
def write(self, cr, uid, ids, vals, context=None):
|
||||||
|
if vals.has_key('order_policy'):
|
||||||
|
if vals['order_policy']=='prepaid':
|
||||||
|
vals.update({'invoice_quantity':'order'})
|
||||||
|
elif vals['order_policy']=='picking':
|
||||||
|
vals.update({'invoice_quantity':'procurement'})
|
||||||
|
return super(sale_order, self).write(cr, uid, ids, vals, context=context)
|
||||||
|
|
||||||
|
def create(self, cr, uid, vals, context={}):
|
||||||
|
if vals.has_key('order_policy'):
|
||||||
|
if vals['order_policy']=='prepaid':
|
||||||
|
vals.update({'invoice_quantity':'order'})
|
||||||
|
if vals['order_policy']=='picking':
|
||||||
|
vals.update({'invoice_quantity':'procurement'})
|
||||||
|
return super(sale_order, self).create(cr, uid, vals, context=context)
|
||||||
|
|
||||||
def button_dummy(self, cr, uid, ids, context={}):
|
def button_dummy(self, cr, uid, ids, context={}):
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
|
|
@ -202,9 +202,9 @@
|
||||||
<field groups="base.group_extended" name="incoterm"/>
|
<field groups="base.group_extended" name="incoterm"/>
|
||||||
<field groups="base.group_extended" name="picking_policy" required="True"/>
|
<field groups="base.group_extended" name="picking_policy" required="True"/>
|
||||||
<field name="user_id"/>
|
<field name="user_id"/>
|
||||||
<field name="order_policy"/>
|
<field name="order_policy" on_change="shipping_policy_change(order_policy)"/>
|
||||||
<field groups="base.group_extended" name="origin"/>
|
<field groups="base.group_extended" name="origin"/>
|
||||||
<field groups="base.group_extended" name="invoice_quantity" attrs="{'readonly':[('order_policy','=','prepaid')]}"/>
|
<field groups="base.group_extended" name="invoice_quantity" attrs="{'readonly':[('order_policy','=','prepaid'),('order_policy','=','picking')]}"/>
|
||||||
<field name="payment_term"/>
|
<field name="payment_term"/>
|
||||||
<separator colspan="4" string="Notes"/>
|
<separator colspan="4" string="Notes"/>
|
||||||
<field colspan="4" name="note" nolabel="1"/>
|
<field colspan="4" name="note" nolabel="1"/>
|
||||||
|
|
Loading…
Reference in New Issue