Cost center-wise net profit in financial analytics report
diff --git a/erpnext/accounts/page/financial_analytics/financial_analytics.js b/erpnext/accounts/page/financial_analytics/financial_analytics.js
index 4574390..2da9381 100644
--- a/erpnext/accounts/page/financial_analytics/financial_analytics.js
+++ b/erpnext/accounts/page/financial_analytics/financial_analytics.js
@@ -232,7 +232,7 @@
 				indent: 0,
 				opening: 0,
 				checked: false,
-				report_type: me.pl_or_bs,
+				report_type: me.pl_or_bs=="Balance Sheet"? "Balance Sheet" : "Profit and Loss",
 			};
 			me.item_by_name[net_profit.name] = net_profit;
 
@@ -244,7 +244,7 @@
 
 			$.each(me.data, function(i, ac) {
 				if(!ac.parent_account && me.apply_filter(ac, "company") &&
-						ac.report_type==me.pl_or_bs) {
+						ac.report_type==net_profit.report_type) {
 					$.each(me.columns, function(i, col) {
 						if(col.formatter==me.currency_formatter && col.balance_type=="Dr") {
 							var bal = net_profit[col.date+"_dr"] -
diff --git a/erpnext/selling/sales_common.js b/erpnext/selling/sales_common.js
index 63ffb36..aba390e 100644
--- a/erpnext/selling/sales_common.js
+++ b/erpnext/selling/sales_common.js
@@ -481,7 +481,27 @@
 
 	set_dynamic_labels: function() {
 		this._super();
-		set_sales_bom_help(this.frm.doc);
+		this.set_sales_bom_help(this.frm.doc);
+	},
+
+	set_sales_bom_help: function(doc) {
+		if(!cur_frm.fields_dict.packing_list) return;
+		if ((doc.packing_details || []).length) {
+			$(cur_frm.fields_dict.packing_list.row.wrapper).toggle(true);
+
+			if (inList(['Delivery Note', 'Sales Invoice'], doc.doctype)) {
+				help_msg = "<div class='alert alert-warning'>" +
+					__("For 'Sales BOM' items, warehouse, serial no and batch no will be considered from the 'Packing List' table. If warehouse and batch no are same for all packing items for any 'Sales BOM' item, those values can be entered in the main item table, values will be copied to 'Packing List' table.")+
+				"</div>";
+				frappe.meta.get_docfield(doc.doctype, 'sales_bom_help', doc.name).options = help_msg;
+			}
+		} else {
+			$(cur_frm.fields_dict.packing_list.row.wrapper).toggle(false);
+			if (inList(['Delivery Note', 'Sales Invoice'], doc.doctype)) {
+				frappe.meta.get_docfield(doc.doctype, 'sales_bom_help', doc.name).options = '';
+			}
+		}
+		refresh_field('sales_bom_help');
 	},
 
 	change_form_labels: function(company_currency) {
@@ -574,26 +594,5 @@
 			var df = frappe.meta.get_docfield(fname[0], fname[1], me.frm.doc.name);
 			if(df) df.label = label;
 		});
-	},
-});
-
-// Help for Sales BOM items
-var set_sales_bom_help = function(doc) {
-	if(!cur_frm.fields_dict.packing_list) return;
-	if ((doc.packing_details || []).length) {
-		$(cur_frm.fields_dict.packing_list.row.wrapper).toggle(true);
-
-		if (inList(['Delivery Note', 'Sales Invoice'], doc.doctype)) {
-			help_msg = "<div class='alert alert-warning'>" +
-				__("For 'Sales BOM' items, warehouse, serial no and batch no will be considered from the 'Packing List' table. If warehouse and batch no are same for all packing items for any 'Sales BOM' item, those values can be entered in the main item table, values will be copied to 'Packing List' table.")+
-			"</div>";
-			frappe.meta.get_docfield(doc.doctype, 'sales_bom_help', doc.name).options = help_msg;
-		}
-	} else {
-		$(cur_frm.fields_dict.packing_list.row.wrapper).toggle(false);
-		if (inList(['Delivery Note', 'Sales Invoice'], doc.doctype)) {
-			frappe.meta.get_docfield(doc.doctype, 'sales_bom_help', doc.name).options = '';
-		}
 	}
-	refresh_field('sales_bom_help');
-}
+});