diff --git a/erpnext/manufacturing/report/cost_of_poor_quality_report/cost_of_poor_quality_report.py b/erpnext/manufacturing/report/cost_of_poor_quality_report/cost_of_poor_quality_report.py
index 0dcad44..c79ded6 100644
--- a/erpnext/manufacturing/report/cost_of_poor_quality_report/cost_of_poor_quality_report.py
+++ b/erpnext/manufacturing/report/cost_of_poor_quality_report/cost_of_poor_quality_report.py
@@ -1,8 +1,6 @@
-# Copyright (c) 2013, Frappe Technologies Pvt. Ltd. and contributors
+# Copyright (c) 2021, Frappe Technologies Pvt. Ltd. and contributors
 # For license information, please see license.txt
 
-from __future__ import unicode_literals
-
 import frappe
 from frappe import _
 from frappe.utils import flt
@@ -31,7 +29,7 @@
 
 		for row in job_cards:
 			row.operating_cost = flt(row.hour_rate) * (flt(row.total_time_in_mins) / 60.0)
-			update_raw_material_cost(row, report_filters)
+			# update_raw_material_cost(row, report_filters)
 			data.append(row)
 
 	return data
@@ -47,11 +45,11 @@
 
 	return filters
 
-def update_raw_material_cost(row, filters):
-	row.rm_cost = 0.0
-	for data in frappe.get_all("Job Card Item", fields = ["amount"],
-		filters={"parent": row.name, "docstatus": 1}):
-		row.rm_cost += data.amount
+# def update_raw_material_cost(row, filters):
+# 	row.rm_cost = 0.0
+# 	for data in frappe.get_all("Job Card Item", fields = ["amount"],
+# 		filters={"parent": row.name, "docstatus": 1}):
+# 		row.rm_cost += data.amount
 
 def get_columns(filters):
 	return [
@@ -60,7 +58,7 @@
 			"fieldtype": "Link",
 			"fieldname": "name",
 			"options": "Job Card",
-			"width": "100"
+			"width": "120"
 		},
 		{
 			"label": _("Work Order"),
@@ -112,18 +110,18 @@
 			"label": _("Operating Cost"),
 			"fieldtype": "Currency",
 			"fieldname": "operating_cost",
-			"width": "100"
+			"width": "150"
 		},
-		{
-			"label": _("Raw Material Cost"),
-			"fieldtype": "Currency",
-			"fieldname": "rm_cost",
-			"width": "100"
-		},
+		# {
+		# 	"label": _("Raw Material Cost"),
+		# 	"fieldtype": "Currency",
+		# 	"fieldname": "rm_cost",
+		# 	"width": "100"
+		# },
 		{
 			"label": _("Total Time (in Mins)"),
 			"fieldtype": "Float",
 			"fieldname": "total_time_in_mins",
-			"width": "100"
+			"width": "150"
 		}
 	]
