diff --git a/addons/sale/sale.py b/addons/sale/sale.py
index 033dd778f1f..203d791cff2 100644
--- a/addons/sale/sale.py
+++ b/addons/sale/sale.py
@@ -264,6 +264,21 @@ class sale_order(osv.osv):
return osv.osv.unlink(self, cr, uid, unlink_ids, context=context)
+ def new_quotation(self, cr, uid, ids, default=None, context=None):
+ id = self.copy(cr, uid, ids[0], context=None)
+ view_ref = self.pool.get('ir.model.data').get_object_reference(cr, uid, 'sale', 'view_order_form')
+ view_id = view_ref and view_ref[1] or False,
+ return {
+ 'type': 'ir.actions.act_window',
+ 'name': _('Sales Order'),
+ 'res_model': 'sale.order',
+ 'res_id': id,
+ 'view_type': 'form',
+ 'view_mode': 'form',
+ 'view_id': view_id,
+ 'target': 'current',
+ }
+
def onchange_pricelist_id(self, cr, uid, ids, pricelist_id, order_lines, context=None):
if not pricelist_id:
return {}
diff --git a/addons/sale/sale_view.xml b/addons/sale/sale_view.xml
index 838c63f34a1..b854ea0eb94 100644
--- a/addons/sale/sale_view.xml
+++ b/addons/sale/sale_view.xml
@@ -176,6 +176,7 @@
attrs="{'invisible': [('invoice_exists', '=', False)]}" groups="base.group_user"/>
+