diff --git a/patches/february_2013/fix_outstanding.py b/patches/february_2013/fix_outstanding.py
index 07ea51a..22a6ee1 100644
--- a/patches/february_2013/fix_outstanding.py
+++ b/patches/february_2013/fix_outstanding.py
@@ -1,15 +1,24 @@
 def execute():
 	import webnotes
 	from webnotes.utils import flt
-	for dt in ["Sales Invoice", "Purchase Invoice"]:
-		records = webnotes.conn.sql("""select name, outstanding_amount from `tab%s` 
-			where docstatus = 1""" % dt)
-		for r in records:
-			outstanding = webnotes.conn.sql("""
-				select sum(ifnull(debit, 0)) - sum(ifnull(credit, 0)) from `tabGL Entry`
-				where against_voucher = %s and against_voucher_type = %s 
-				and ifnull(is_cancelled, 'No') = 'No'""", (r[0], dt))
-			if flt(r[1]) != abs(flt(outstanding[0][0])):
-				# print r, outstanding
-				webnotes.conn.sql("update `tab%s` set outstanding_amount = %s where name = %s" %
-					(dt, '%s', '%s'), (abs(flt(outstanding[0][0])), r[0]))
\ No newline at end of file
+	records = webnotes.conn.sql("""
+		select against_voucher_type, against_voucher, 
+			sum(ifnull(debit, 0)) - sum(ifnull(credit, 0)) as outstanding from `tabGL Entry`
+		where ifnull(is_cancelled, 'No') = 'No' 
+		and against_voucher_type in ("Sales Invoice", "Purchase Invoice")
+		and ifnull(against_voucher, '') != ''
+		group by against_voucher_type, against_voucher""", as_dict=1)
+	for r in records:
+		outstanding = webnotes.conn.sql("""select name, outstanding_amount from `tab%s` 
+			where name = %s and docstatus = 1""" % 
+			(r["against_voucher_type"], '%s'), (r["against_voucher"]))
+			
+		if outstanding and abs(flt(r["outstanding"])) != flt(outstanding[0][1]):
+			if ((r["against_voucher_type"]=='Sales Invoice' and flt(r["outstanding"]) >= 0) \
+				or (r["against_voucher_type"]=="Purchase Invoice" and flt(["outstanding"]) <= 0)):
+				webnotes.conn.set_value(r["against_voucher_type"], r["against_voucher"], 
+					"outstanding_amount", abs(flt(r["outstanding"])))
+			else:
+				print r["against_voucher_type"], r["against_voucher"], \
+					outstanding[0][1], abs(flt(r["outstanding"]))
+		
\ No newline at end of file
diff --git a/patches/february_2013/gle_floating_point_issue_revisited.py b/patches/february_2013/gle_floating_point_issue_revisited.py
index 3fc57bd..e407d50 100644
--- a/patches/february_2013/gle_floating_point_issue_revisited.py
+++ b/patches/february_2013/gle_floating_point_issue_revisited.py
@@ -13,7 +13,7 @@
 			diff = round((flt(r.grand_total) - flt(gle[0]['debit'])), 2)
 		
 			if abs(diff) == 0.01:
-				# print r.name, r.grand_total, gle[0]['debit']
+				# print r.name, r.grand_total, gle[0]['debit'], diff
 				webnotes.conn.sql("""update `tabGL Entry` set debit = debit + %s 
 					where name = %s""", (diff, gle[0]['name']))
 				
diff --git a/patches/patch_list.py b/patches/patch_list.py
index 6f21d5d..d42360e 100644
--- a/patches/patch_list.py
+++ b/patches/patch_list.py
@@ -169,9 +169,10 @@
 	"patches.february_2013.update_company_in_leave_application",
 	"execute:webnotes.conn.sql_ddl('alter table tabSeries change `name` `name` varchar(100)')",
 	"execute:webnotes.conn.sql('update tabUserRole set parentfield=\"user_roles\" where parentfield=\"userroles\"')",
-	"patches.february_2013.fix_outstanding",
 	"patches.february_2013.p01_event",
 	"execute:webnotes.delete_doc('Page', 'Calendar')",
 	"patches.february_2013.p02_email_digest",
 	"patches.february_2013.p05_leave_application",
+	"patches.february_2013.gle_floating_point_issue_revisited",
+	"patches.february_2013.fix_outstanding",
 ]
\ No newline at end of file
