SALE,PURCHASE: fix default value when domain defined from relate action
authorced <>
Thu, 24 May 2007 07:44:06 +0000 (07:44 +0000)
committerced <>
Thu, 24 May 2007 07:44:06 +0000 (07:44 +0000)
bzr revid: ced-d248a39d772a94cf740614386b564bb21f708a2b

addons/purchase/purchase.py
addons/purchase/purchase_view.xml
addons/sale/sale.py
addons/sale/sale_view.xml

index 3a9c9f0..69d0629 100644 (file)
@@ -117,7 +117,9 @@ class purchase_order(osv.osv):
                'name': lambda obj, cr, uid, context: obj.pool.get('ir.sequence').get(cr, uid, 'purchase.order'),
                'shipped': lambda *a: 0,
                'invoice_method': lambda *a: 'order',
-               'invoiced': lambda *a: 0
+               'invoiced': lambda *a: 0,
+               'partner_address_id': lambda self, cr, uid, context: context.get('partner_id', False) and self.pool.get('res.partner').address_get(cr, uid, [context['partner_id']], ['default'])['default'],
+               'pricelist_id': lambda self, cr, uid, context: context.get('partner_id', False) and self.pool.get('res.partner').browse(cr, uid, context['partner_id']).property_product_pricelist_purchase[0],
        }
        _name = "purchase.order"
        _description = "Purchase order"
index 0b17d14..9c1eb8a 100644 (file)
 
        <act_window name="Purchases"
                domain="[('partner_id', '=', active_id)]"
+               context="{'partner_id': active_id}"
                res_model="purchase.order"
                src_model="res.partner"
                id="act_res_partner_2_purchase_order"/>
index 91bfbcb..69807cb 100644 (file)
@@ -162,7 +162,11 @@ class sale_order(osv.osv):
                'state': lambda *a: 'draft',
                'user_id': lambda obj, cr, uid, context: uid,
                'name': lambda obj, cr, uid, context: obj.pool.get('ir.sequence').get(cr, uid, 'sale.order'),
-               'invoice_quantity': lambda *a: 'order'
+               'invoice_quantity': lambda *a: 'order',
+               'partner_invoice_id': lambda self, cr, uid, context: context.get('partner_id', False) and self.pool.get('res.partner').address_get(cr, uid, [context['partner_id']], ['invoice'])['invoice'],
+               'partner_order_id': lambda self, cr, uid, context: context.get('partner_id', False) and  self.pool.get('res.partner').address_get(cr, uid, [context['partner_id']], ['contact'])['contact'],
+               'partner_shipping_id': lambda self, cr, uid, context: context.get('partner_id', False) and self.pool.get('res.partner').address_get(cr, uid, [context['partner_id']], ['delivery'])['delivery'],
+               'pricelist_id': lambda self, cr, uid, context: context.get('partner_id', False) and self.pool.get('res.partner').browse(cr, uid, context['partner_id']).property_product_pricelist[0],
        }
        _order = 'name desc'
 
index 75b67a1..11cd7af 100644 (file)
 
        <act_window name="Sales"
                domain="[('partner_id', '=', active_id)]"
+               context="{'partner_id': active_id}"
                res_model="sale.order"
                src_model="res.partner"
                id="act_res_partner_2_sale_order"/>