Merge branch 'develop' of https://github.com/AravindPranera/erpnext-1 into AravindPranera-develop
diff --git a/erpnext/buying/doctype/request_for_quotation/request_for_quotation.js b/erpnext/buying/doctype/request_for_quotation/request_for_quotation.js
index f6d9ca9..3801141 100644
--- a/erpnext/buying/doctype/request_for_quotation/request_for_quotation.js
+++ b/erpnext/buying/doctype/request_for_quotation/request_for_quotation.js
@@ -254,6 +254,21 @@
}
})
}, __("Get items from"));
+ // Get items from Opportunity
+ this.frm.add_custom_button(__('Opportunity'),
+ function() {
+ erpnext.utils.map_current_doc({
+ method: "erpnext.crm.doctype.opportunity.opportunity.make_request_for_quotation",
+ source_doctype: "Opportunity",
+ target: me.frm,
+ setters: {
+ company: me.frm.doc.company
+ },
+ get_query_filters: {
+ enquiry_type: "Sales"
+ }
+ })
+ }, __("Get items from"));
// Get items from open Material Requests based on supplier
this.frm.add_custom_button(__('Possible Supplier'), function() {
// Create a dialog window for the user to pick their supplier
diff --git a/erpnext/crm/doctype/opportunity/opportunity.py b/erpnext/crm/doctype/opportunity/opportunity.py
index 8bc7ad8..31f74a6 100644
--- a/erpnext/crm/doctype/opportunity/opportunity.py
+++ b/erpnext/crm/doctype/opportunity/opportunity.py
@@ -245,6 +245,27 @@
return doclist
+ @frappe.whitelist()
+ def make_request_for_quotation(source_name, target_doc=None):
+ doclist = get_mapped_doc("Opportunity", source_name, {
+ "Opportunity": {
+ "doctype": "Request for Quotation",
+ "validation": {
+ "enquiry_type": ["=", "Sales"]
+ }
+ },
+ "Opportunity Item": {
+ "doctype": "Request for Quotation Item",
+ "field_map": [
+ ["name", "opportunity_item"],
+ ["parent", "opportunity"],
+ ["uom", "uom"]
+ ]
+ }
+ }, target_doc)
+
+ return doclist
+
@frappe.whitelist()
def make_supplier_quotation(source_name, target_doc=None):
doclist = get_mapped_doc("Opportunity", source_name, {
@@ -284,4 +305,4 @@
doc.status = "Closed"
doc.flags.ignore_permissions = True
doc.flags.ignore_mandatory = True
- doc.save()
\ No newline at end of file
+ doc.save()