diff --git a/hr/doctype/expense_claim/expense_claim.py b/hr/doctype/expense_claim/expense_claim.py
index 4cf4939..bc4e131 100644
--- a/hr/doctype/expense_claim/expense_claim.py
+++ b/hr/doctype/expense_claim/expense_claim.py
@@ -46,5 +46,8 @@
 		
 @webnotes.whitelist()
 def get_approver_list():
-	return [r[0] for r in webnotes.conn.sql("""select distinct parent from `tabUserRole`
+	roles = [r[0] for r in webnotes.conn.sql("""select distinct parent from `tabUserRole`
 		where role='Expense Approver'""")]
+	if not roles:
+		webnotes.msgprint("No Expense Approvers. Please assign 'Expense Approver' Role to atleast one user.")
+	return roles
diff --git a/hr/doctype/leave_application/leave_application.py b/hr/doctype/leave_application/leave_application.py
index 5fec5a3..1cf23ac 100755
--- a/hr/doctype/leave_application/leave_application.py
+++ b/hr/doctype/leave_application/leave_application.py
@@ -119,5 +119,9 @@
 
 @webnotes.whitelist()
 def get_approver_list():
-	return [r[0] for r in webnotes.conn.sql("""select distinct parent from `tabUserRole`
+	roles = [r[0] for r in webnotes.conn.sql("""select distinct parent from `tabUserRole`
 		where role='Leave Approver'""")]
+	if not roles:
+		webnotes.msgprint("No Leave Approvers. Please assign 'Leave Approver' Role to atleast one user.")
+		
+	return roles
diff --git a/patches/december_2012/repost_ordered_qty.py b/patches/december_2012/repost_ordered_qty.py
new file mode 100644
index 0000000..c798b6c
--- /dev/null
+++ b/patches/december_2012/repost_ordered_qty.py
@@ -0,0 +1,17 @@
+def execute():
+	import webnotes
+	from webnotes.utils import flt
+	bins = webnotes.conn.sql("select item_code, warehouse, name, ordered_qty from `tabBin`")
+	for d in bins:
+		ordered_qty = webnotes.conn.sql("""
+			select sum(ifnull(po_item.qty, 0) - ifnull(po_item.received_qty, 0)) 
+			from `tabPurchase Order Item` po_item, `tabPurchase Order` po
+			where po_item.parent = po.name and po.docstatus = 1 and po.status != 'Stopped' 
+			and po_item.item_code = %s and po_item.warehouse = %s
+		""", (d[0], d[1]))
+
+		if flt(d[3]) != flt(ordered_qty[0][0]):
+			print d[3], ordered_qty[0][0]
+			
+			webnotes.conn.sql("""update `tabBin` set ordered_qty = %s where name = %s""",
+			 	(ordered_qty and ordered_qty[0][0] or 0, d[2]))
\ No newline at end of file
diff --git a/patches/december_2012/repost_projected_qty.py b/patches/december_2012/repost_projected_qty.py
new file mode 100644
index 0000000..4e4f522
--- /dev/null
+++ b/patches/december_2012/repost_projected_qty.py
@@ -0,0 +1,5 @@
+def execute():
+	import webnotes
+	webnotes.conn.sql("""update `tabBin` 
+		set projected_qty = ifnull(actual_qty, 0) + ifnull(indented_qty, 0) + 
+			ifnull(ordered_qty, 0) + ifnull(planned_qty, 0) - ifnull(reserved_qty, 0)""")
\ No newline at end of file
diff --git a/patches/patch_list.py b/patches/patch_list.py
index d21014c..88a7773 100644
--- a/patches/patch_list.py
+++ b/patches/patch_list.py
@@ -713,4 +713,12 @@
 		'patch_module': 'patches.december_2012',
 		'patch_file': 'expense_leave_reload',
 	},
+	{
+		'patch_module': 'patches.december_2012',
+		'patch_file': 'repost_ordered_qty',
+	},
+	{
+		'patch_module': 'patches.december_2012',
+		'patch_file': 'repost_projected_qty',
+	},
 ]
\ No newline at end of file
