From e3ad0798bda07f8d9606da58befb8c4e863a405e Mon Sep 17 00:00:00 2001 From: "Turkesh Patel (Open ERP)" Date: Fri, 9 Nov 2012 10:57:48 +0530 Subject: [PATCH] [IMP] sale:Add a button 'New Copy of Quotation' that is visible in cancel state only and opens new so. bzr revid: tpa@tinyerp.com-20121109052748-bgwqr3vwnhjkl93y --- addons/sale/sale.py | 15 +++++++++++++++ addons/sale/sale_view.xml | 1 + 2 files changed, 16 insertions(+) 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"/>