fix wrong vouchers due to Valuation charges
diff --git a/accounts/doctype/purchase_invoice/purchase_invoice.py b/accounts/doctype/purchase_invoice/purchase_invoice.py
index 9e92b85..1176685 100644
--- a/accounts/doctype/purchase_invoice/purchase_invoice.py
+++ b/accounts/doctype/purchase_invoice/purchase_invoice.py
@@ -481,7 +481,8 @@
 		pc_obj = get_obj(dt='Purchase Common')
 		
 		 # get total in words
-		self.doc.in_words = pc_obj.get_total_in_words('Rs', self.doc.grand_total)
+		dcc = TransactionBase().get_company_currency(self.doc.company)
+		self.doc.in_words = pc_obj.get_total_in_words(dcc, self.doc.grand_total)
 		self.doc.in_words_import = pc_obj.get_total_in_words(self.doc.currency, self.doc.grand_total_import)
 # ***************************** SUBMIT *****************************
 	# Check Ref Document docstatus
diff --git a/patches/october_2012/fix_wrong_vouchers.py b/patches/october_2012/fix_wrong_vouchers.py
index 6218861..56bbece 100644
--- a/patches/october_2012/fix_wrong_vouchers.py
+++ b/patches/october_2012/fix_wrong_vouchers.py
@@ -2,7 +2,8 @@
 	import webnotes
 	from webnotes.utils import flt
 	from webnotes.model.code import get_obj
-
+	from webnotes.utils import money_in_words
+	
 	vouchers = webnotes.conn.sql("""
 		select 
 			parent, parenttype, modified, docstatus, 
@@ -26,7 +27,7 @@
 			(d['parenttype'], '%s'), d['parent'])
 		correct_total_tax = flt(d['tax_added']) - flt(d['tax_ded'])
 		
-		if flt(current_total_tax[0][0]) != correct_total_tax:
+		if flt(current_total_tax[0][0]) != correct_total_tax:			
 			if d['parenttype'] == 'Purchase Invoice':
 				webnotes.conn.sql("""
 					update `tab%s` 
@@ -43,15 +44,7 @@
 					where 
 						name = %s
 				""" % (d['parenttype'], '%s', '%s', '%s', '%s'), 
-					(correct_total_tax, d['tax_added'], d['tax_ded'], d['parent']))
-					
-				# post gl entry
-				if d['docstatus'] == 1:
-					webnotes.conn.sql("""update `tabGL Entry` set is_cancelled = 'No' 
-						where voucher_type = %s and voucher_no = %s""", 
-						(d['parenttype'], d['parent']))
-					obj = get_obj(d['parenttype'], d['parent'], with_children=1)
-					obj.make_gl_entries()
+					(correct_total_tax, d['tax_added'], d['tax_ded'], d['parent']))				
 				
 			else:
 				webnotes.conn.sql("""
@@ -62,4 +55,23 @@
 						grand_total_import = grand_total / conversion_rate
 					where 
 						name = %s
-				""" % (d[1], '%s', '%s'), (correct_total_tax, d['parent']))
\ No newline at end of file
+				""" % (d[1], '%s', '%s'), (correct_total_tax, d['parent']))
+			
+			# set in words
+			obj = get_obj(d['parenttype'], d['parent'], with_children=1)
+			
+			base_currency = webnotes.conn.get_value('Company', obj.doc.company, 'default_currency')\
+				or get_defaults('default_currency')
+				
+			webnotes.conn.set_value(d['parenttype'], d['parent'], \
+				'in_words', money_in_words(obj.doc.grand_total, base_currency))
+			webnotes.conn.set_value(d['parenttype'], d['parent'], \
+				'in_words_import', money_in_words(obj.doc.grand_total_import, obj.doc.currency))
+			
+			# fix gl entries
+			if d['parenttype'] == 'Purchase Invoice' and d['docstatus'] == 1:
+				webnotes.conn.sql("""update `tabGL Entry` set is_cancelled = 'No' 
+					where voucher_type = %s and voucher_no = %s""", 
+					(d['parenttype'], d['parent']))
+				
+				obj.make_gl_entries()
\ No newline at end of file