20 lines
		
	
	
		
			894 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			20 lines
		
	
	
		
			894 B
		
	
	
	
		
			Python
		
	
	
	
	
	
| from __future__ import unicode_literals
 | |
| import frappe
 | |
| from erpnext.accounts.doctype.journal_entry.journal_entry import get_default_bank_cash_account
 | |
| 
 | |
| def execute():
 | |
| 	frappe.reload_doc('accounts', 'doctype', 'sales_invoice')
 | |
| 
 | |
| 	for company in frappe.db.sql("""select company from `tabSales Invoice` 
 | |
| 		where change_amount <> 0 and account_for_change_amount is null group by company""", as_list = 1):
 | |
| 		cash_account = get_default_bank_cash_account(company[0], 'Cash').get('account')
 | |
| 		if not cash_account:
 | |
| 			bank_account = get_default_bank_cash_account(company[0], 'Bank').get('account')
 | |
| 			cash_account = bank_account
 | |
| 
 | |
| 		if cash_account:
 | |
| 			frappe.db.sql("""update `tabSales Invoice` 
 | |
| 				set account_for_change_amount = %(cash_account)s where change_amount <> 0 
 | |
| 				and company = %(company)s and account_for_change_amount is null""",
 | |
| 				{'cash_account': cash_account, 'company': company[0]})
 |