diff --git a/erpnext/manufacturing/doctype/production_order/production_order.js b/erpnext/manufacturing/doctype/production_order/production_order.js
index 36cb1ae..471b46b 100644
--- a/erpnext/manufacturing/doctype/production_order/production_order.js
+++ b/erpnext/manufacturing/doctype/production_order/production_order.js
@@ -204,12 +204,13 @@
 			method:"erpnext.manufacturing.doctype.production_order.production_order.make_time_log",
 			args: {
 				"name": doc.name,
-				"operation": child.idx + ". " + child.operation,
+				"operation": child.operation,
 				"from_time": child.planned_start_time,
 				"to_time": child.planned_end_time,
 				"project": doc.project,
 				"workstation": child.workstation,
-				"qty": flt(doc.qty) - flt(child.completed_qty)
+				"qty": flt(doc.qty) - flt(child.completed_qty),
+				"operation_id": child.name
 			},
 			callback: function(r) {
 				var doclist = frappe.model.sync(r.message);
diff --git a/erpnext/manufacturing/doctype/production_order/production_order.json b/erpnext/manufacturing/doctype/production_order/production_order.json
index 59473ad..07cc5c6 100644
--- a/erpnext/manufacturing/doctype/production_order/production_order.json
+++ b/erpnext/manufacturing/doctype/production_order/production_order.json
@@ -167,19 +167,22 @@
    "read_only": 0
   }, 
   {
-   "default": "", 
+   "default": "now", 
    "fieldname": "planned_start_date", 
    "fieldtype": "Datetime", 
    "label": "Planned Start Date", 
    "permlevel": 0, 
-   "precision": ""
+   "precision": "", 
+   "reqd": 1
   }, 
   {
    "fieldname": "planned_end_date", 
    "fieldtype": "Datetime", 
    "label": "Planned End Date", 
+   "no_copy": 1, 
    "permlevel": 0, 
-   "precision": ""
+   "precision": "", 
+   "read_only": 1
   }, 
   {
    "fieldname": "column_break_13", 
@@ -354,8 +357,8 @@
  "icon": "icon-cogs", 
  "idx": 1, 
  "in_create": 0, 
- "is_submittable": 1,
- "modified": "2015-03-10 17:02:28.401930", 
+ "is_submittable": 1, 
+ "modified": "2015-04-13 02:44:17.319988", 
  "modified_by": "Administrator", 
  "module": "Manufacturing", 
  "name": "Production Order", 
diff --git a/erpnext/manufacturing/doctype/production_order/production_order.py b/erpnext/manufacturing/doctype/production_order/production_order.py
index 6818ba9..fa27e95 100644
--- a/erpnext/manufacturing/doctype/production_order/production_order.py
+++ b/erpnext/manufacturing/doctype/production_order/production_order.py
@@ -248,6 +248,7 @@
 		self.planned_end_date = self.operations[-1].planned_end_time
 
 		if time_logs:
+			frappe.local.message_log = []
 			frappe.msgprint(_("Time Logs created:") + "\n" + "\n".join(time_logs))
 
 	def set_operation_start_end_time(self, i, d):
diff --git a/erpnext/manufacturing/doctype/production_order_operation/production_order_operation.json b/erpnext/manufacturing/doctype/production_order_operation/production_order_operation.json
index faa7687..40ecec5 100644
--- a/erpnext/manufacturing/doctype/production_order_operation/production_order_operation.json
+++ b/erpnext/manufacturing/doctype/production_order_operation/production_order_operation.json
@@ -126,7 +126,7 @@
   }, 
   {
    "allow_on_submit": 1, 
-   "depends_on": "eval:(doc.docstatus==1 && doc.status!=\"Completed\")", 
+   "depends_on": "eval:(doc.docstatus==1)", 
    "fieldname": "show_time_logs", 
    "fieldtype": "Button", 
    "label": "Show Time Logs", 
@@ -277,6 +277,7 @@
    "read_only": 1
   }, 
   {
+   "allow_on_submit": 1, 
    "depends_on": "eval:(doc.docstatus==1 && doc.status!=\"Completed\")", 
    "fieldname": "make_time_log", 
    "fieldtype": "Button", 
@@ -292,7 +293,7 @@
  "is_submittable": 0, 
  "issingle": 0, 
  "istable": 1, 
- "modified": "2015-03-24 07:02:54.203235", 
+ "modified": "2015-04-01 08:23:58.556092", 
  "modified_by": "Administrator", 
  "module": "Manufacturing", 
  "name": "Production Order Operation", 
diff --git a/erpnext/projects/doctype/time_log/time_log.js b/erpnext/projects/doctype/time_log/time_log.js
index 91971f3..a49b1f1 100644
--- a/erpnext/projects/doctype/time_log/time_log.js
+++ b/erpnext/projects/doctype/time_log/time_log.js
@@ -41,45 +41,4 @@
 	if(frm._setting_hours) return;
 	frm.set_value("hours", moment(cur_frm.doc.to_time).diff(moment(cur_frm.doc.from_time),
 		"hours"));
-});
-
-cur_frm.set_query("production_order", function(doc) {
-	return {
-		"filters": {
-			"docstatus": 1
-		}
-	};
-});
-
-cur_frm.add_fetch('task','project','project');
-
-$.extend(cur_frm.cscript, {
-	production_order: function(doc) {
-		if (doc.production_order){
-			var operations = [];
-			frappe.model.with_doc("Production Order", doc.production_order, function(pro) {
-				doc = frappe.get_doc("Production Order",pro);
-				$.each(doc.operations , function(i, row){
-					operations[i] = row.operation;
-				});
-			frappe.meta.get_docfield("Time Log", "operation", me.frm.doc.name).options = "\n" + operations.join("\n");
-			refresh_field("operation");
-			})
-		}
-	},
-
-	operation: function(doc) {
-		return frappe.call({
-			method: "erpnext.projects.doctype.time_log.time_log.get_workstation",
-			args: {
-				"production_order": doc.production_order,
-				"operation": doc.operation
-			},
-			callback: function(r) {
-				if(!r.exc) {
-					cur_frm.set_value("workstation", r.message)
-				}
-			}
-		});
-	}
-});
+});
\ No newline at end of file
diff --git a/erpnext/projects/doctype/time_log/time_log.json b/erpnext/projects/doctype/time_log/time_log.json
index 6ef576f..20b5c0c 100644
--- a/erpnext/projects/doctype/time_log/time_log.json
+++ b/erpnext/projects/doctype/time_log/time_log.json
@@ -117,7 +117,7 @@
    "options": "Production Order", 
    "permlevel": 0, 
    "precision": "", 
-   "read_only": 0
+   "read_only": 1
   }, 
   {
    "depends_on": "", 
@@ -127,7 +127,7 @@
    "options": "Operation", 
    "permlevel": 0, 
    "precision": "", 
-   "read_only": 0
+   "read_only": 1
   }, 
   {
    "depends_on": "", 
@@ -155,7 +155,7 @@
    "options": "Workstation", 
    "permlevel": 0, 
    "precision": "", 
-   "read_only": 0
+   "read_only": 1
   }, 
   {
    "depends_on": "", 
@@ -242,7 +242,7 @@
  "icon": "icon-time", 
  "idx": 1, 
  "is_submittable": 1, 
- "modified": "2015-03-24 08:10:31.412670", 
+ "modified": "2015-04-06 02:47:16.187046", 
  "modified_by": "Administrator", 
  "module": "Projects", 
  "name": "Time Log", 
diff --git a/erpnext/projects/doctype/time_log/time_log.py b/erpnext/projects/doctype/time_log/time_log.py
index a499c8f..c385c09 100644
--- a/erpnext/projects/doctype/time_log/time_log.py
+++ b/erpnext/projects/doctype/time_log/time_log.py
@@ -207,20 +207,6 @@
 			self.quantity = None
 
 @frappe.whitelist()
-def get_workstation(production_order, operation):
-	"""Returns workstation name from Production Order against an associated Operation.
-
-	:param production_order string
-	:param operation string
-	"""
-	if operation:
-		idx, operation = operation.split('. ',1)
-
-		workstation = frappe.db.sql("""select workstation from `tabProduction Order Operation` where idx=%s and
-			parent=%s and operation = %s""", (idx, production_order, operation))
-		return workstation[0][0] if workstation else ""
-
-@frappe.whitelist()
 def get_events(start, end, filters=None):
 	"""Returns events for Gantt / Calendar view rendering.
 
diff --git a/erpnext/stock/doctype/stock_entry/stock_entry.py b/erpnext/stock/doctype/stock_entry/stock_entry.py
index bd2d945..0196c31 100644
--- a/erpnext/stock/doctype/stock_entry/stock_entry.py
+++ b/erpnext/stock/doctype/stock_entry/stock_entry.py
@@ -474,8 +474,8 @@
 			pro_doc = frappe.get_doc("Production Order", self.production_order)
 			_validate_production_order(pro_doc)
 			pro_doc.run_method("update_status")
+			pro_doc.run_method("update_production_order_qty")
 			if self.purpose == "Manufacture":
-				pro_doc.run_method("update_production_order_qty")
 				self.update_planned_qty(pro_doc)
 
 	def update_planned_qty(self, pro_doc):
