diff --git a/selling/doctype/sales_common/sales_common.py b/selling/doctype/sales_common/sales_common.py
index 700a61a..ea46d2a 100644
--- a/selling/doctype/sales_common/sales_common.py
+++ b/selling/doctype/sales_common/sales_common.py
@@ -330,9 +330,9 @@
 		for d in getlist(obj.doclist, obj.fname):
 			if d.item_code:
 				item = webnotes.conn.sql("""select docstatus, is_sales_item, 
-					is_service_item, default_income_account, default_expense_account from tabItem where name = %s""", 
-					d.item_code, as_dict=True)
-				if item.sales_item == 'No' and item.service_item == 'No':
+					is_service_item, default_income_account from tabItem where name = %s""", 
+					d.item_code, as_dict=True)[0]
+				if item.is_sales_item == 'No' and item.is_service_item == 'No':
 					msgprint("Item : '%s' is neither Sales nor Service Item" % (d.item_code))
 					raise Exception
 				if d.income_account and not default_income_account:
diff --git a/selling/doctype/sales_order/sales_order.js b/selling/doctype/sales_order/sales_order.js
index 54f3b7f..27db426 100644
--- a/selling/doctype/sales_order/sales_order.js
+++ b/selling/doctype/sales_order/sales_order.js
@@ -69,14 +69,35 @@
 				cur_frm.add_custom_button('Unstop', cur_frm.cscript['Unstop Sales Order']);
 			}
 		}
-	
+
+		if (this.frm.doc.docstatus===0) {
+			cur_frm.add_custom_button(wn._('From Quotation'), 
+				function() {
+					wn.model.map_current_doc({
+						method: "selling.doctype.quotation.quotation.make_sales_order",
+						source_doctype: "Quotation",
+						get_query_filters: {
+							docstatus: 1,
+							status: ["!=", "Order Lost"],
+							order_type: cur_frm.doc.order_type,
+							customer: cur_frm.doc.customer || undefined,
+							company: cur_frm.doc.company
+						}
+					})
+				});
+		}
+
 		this.order_type(doc);
 	},
 	
 	order_type: function() {
 		this.frm.toggle_reqd("delivery_date", this.frm.doc.order_type == "Sales");
 	},
-	
+
+	tc_name: function() {
+		this.get_terms();
+	},
+
 	reserved_warehouse: function(doc, cdt, cdn) {
 		this.warehouse(doc, cdt, cdn);
 	},
@@ -115,16 +136,6 @@
 			source_name: cur_frm.doc.name
 		})
 	},
-	
-	pull_quotation_details: function() {
-		wn.model.map_current_doc({
-			method: "selling.doctype.quotation.quotation.make_sales_order",
-			source_name: cur_frm.doc.quotation_no,
-		});
-		unhide_field(['quotation_date', 'customer_address', 
-			'contact_person', 'territory', 'customer_group']);
-	}
-
 });
 
 // for backward compatibility: combine new and previous states
@@ -151,22 +162,6 @@
 		ORDER BY `tabProject`.name ASC LIMIT 50', {cond:cond});
 }
 
-
-cur_frm.fields_dict['quotation_no'].get_query = function(doc) {
-	var cond='';
-	if(doc.order_type) cond = ' ifnull(`tabQuotation`.order_type, "") = "'
-		+doc.order_type+'" and';
-	if(doc.customer) cond += ' ifnull(`tabQuotation`.customer, "") = "'
-		+doc.customer+'" and';
-	
-	return repl('SELECT DISTINCT name, customer, transaction_date FROM `tabQuotation` \
-		WHERE `tabQuotation`.company = "' 
-		+ doc.company + '" and `tabQuotation`.`docstatus` = 1 \
-			and `tabQuotation`.status != "Order Lost" \
-			and %(cond)s `tabQuotation`.%(key)s LIKE "%s" \
-			ORDER BY `tabQuotation`.`name` DESC LIMIT 50', {cond:cond});
-}
-
 cur_frm.cscript['Stop Sales Order'] = function() {
 	var doc = cur_frm.doc;
 
diff --git a/selling/doctype/sales_order/sales_order.txt b/selling/doctype/sales_order/sales_order.txt
index c0b812c..572164a 100644
--- a/selling/doctype/sales_order/sales_order.txt
+++ b/selling/doctype/sales_order/sales_order.txt
@@ -2,7 +2,7 @@
  {
   "creation": "2013-06-18 12:39:59", 
   "docstatus": 0, 
-  "modified": "2013-07-06 18:38:37", 
+  "modified": "2013-07-08 15:54:25", 
   "modified_by": "Administrator", 
   "owner": "Administrator"
  }, 
@@ -33,8 +33,8 @@
   "parent": "Sales Order", 
   "parentfield": "permissions", 
   "parenttype": "DocType", 
-  "read": 1, 
-  "report": 1
+  "permlevel": 0, 
+  "read": 1
  }, 
  {
   "doctype": "DocType", 
@@ -366,55 +366,6 @@
  }, 
  {
   "doctype": "DocField", 
-  "fieldname": "section_break0", 
-  "fieldtype": "Section Break"
- }, 
- {
-  "description": "Quotation no against which this Sales Order is made ", 
-  "doctype": "DocField", 
-  "fieldname": "quotation_no", 
-  "fieldtype": "Link", 
-  "in_filter": 1, 
-  "label": "Quotation No", 
-  "no_copy": 0, 
-  "oldfieldname": "quotation_no", 
-  "oldfieldtype": "Link", 
-  "options": "Quotation", 
-  "print_hide": 1, 
-  "search_index": 1, 
-  "width": "150px"
- }, 
- {
-  "depends_on": "eval:doc.quotation_no", 
-  "doctype": "DocField", 
-  "fieldname": "quotation_date", 
-  "fieldtype": "Date", 
-  "hidden": 1, 
-  "label": "Quotation Date", 
-  "no_copy": 0, 
-  "oldfieldname": "quotation_date", 
-  "oldfieldtype": "Date", 
-  "print_hide": 1, 
-  "read_only": 1, 
-  "reqd": 0, 
-  "width": "100px"
- }, 
- {
-  "doctype": "DocField", 
-  "fieldname": "pull_quotation_details", 
-  "fieldtype": "Button", 
-  "label": "Pull Quotation Items", 
-  "oldfieldtype": "Button", 
-  "print_hide": 1
- }, 
- {
-  "doctype": "DocField", 
-  "fieldname": "col_break20", 
-  "fieldtype": "Column Break", 
-  "width": "50%"
- }, 
- {
-  "doctype": "DocField", 
   "fieldname": "net_total_export", 
   "fieldtype": "Currency", 
   "label": "Net Total (Export)", 
@@ -649,24 +600,6 @@
  }, 
  {
   "doctype": "DocField", 
-  "fieldname": "column_break_58", 
-  "fieldtype": "Column Break"
- }, 
- {
-  "doctype": "DocField", 
-  "fieldname": "get_terms", 
-  "fieldtype": "Button", 
-  "label": "Get Terms and Conditions", 
-  "oldfieldtype": "Button", 
-  "print_hide": 1
- }, 
- {
-  "doctype": "DocField", 
-  "fieldname": "section_break_60", 
-  "fieldtype": "Section Break"
- }, 
- {
-  "doctype": "DocField", 
   "fieldname": "terms", 
   "fieldtype": "Text Editor", 
   "label": "Terms and Conditions Details", 
@@ -975,22 +908,12 @@
   "print_hide": 1
  }, 
  {
-  "amend": 0, 
-  "cancel": 0, 
-  "create": 0, 
-  "doctype": "DocPerm", 
-  "permlevel": 1, 
-  "role": "Sales Manager", 
-  "submit": 0, 
-  "write": 0
- }, 
- {
   "amend": 1, 
   "cancel": 1, 
   "create": 1, 
   "doctype": "DocPerm", 
-  "permlevel": 0, 
-  "role": "Sales Manager", 
+  "report": 1, 
+  "role": "Sales User", 
   "submit": 1, 
   "write": 1
  }, 
@@ -999,63 +922,18 @@
   "cancel": 1, 
   "create": 1, 
   "doctype": "DocPerm", 
-  "permlevel": 0, 
-  "role": "Sales User", 
+  "report": 1, 
+  "role": "Maintenance User", 
   "submit": 1, 
   "write": 1
  }, 
  {
-  "amend": 0, 
-  "cancel": 0, 
-  "create": 0, 
   "doctype": "DocPerm", 
-  "permlevel": 1, 
-  "role": "Sales User", 
-  "submit": 0, 
-  "write": 0
+  "role": "Accounts User"
  }, 
  {
   "doctype": "DocPerm", 
-  "match": "customer_name", 
-  "permlevel": 0, 
+  "match": "customer", 
   "role": "Customer"
- }, 
- {
-  "amend": 1, 
-  "cancel": 1, 
-  "create": 1, 
-  "doctype": "DocPerm", 
-  "permlevel": 0, 
-  "role": "Maintenance Manager", 
-  "submit": 1, 
-  "write": 1
- }, 
- {
-  "amend": 0, 
-  "cancel": 0, 
-  "create": 0, 
-  "doctype": "DocPerm", 
-  "permlevel": 1, 
-  "role": "Maintenance Manager", 
-  "submit": 0
- }, 
- {
-  "amend": 1, 
-  "cancel": 1, 
-  "create": 1, 
-  "doctype": "DocPerm", 
-  "permlevel": 0, 
-  "role": "Maintenance User", 
-  "submit": 1, 
-  "write": 1
- }, 
- {
-  "amend": 0, 
-  "cancel": 0, 
-  "create": 0, 
-  "doctype": "DocPerm", 
-  "permlevel": 1, 
-  "role": "Maintenance User", 
-  "submit": 0
  }
 ]
\ No newline at end of file
