fixed trial balance related to showing zero balance
diff --git a/erpnext/accounts/report/trial_balance/trial_balance.py b/erpnext/accounts/report/trial_balance/trial_balance.py
index f062cdb..761d038 100644
--- a/erpnext/accounts/report/trial_balance/trial_balance.py
+++ b/erpnext/accounts/report/trial_balance/trial_balance.py
@@ -123,7 +123,8 @@
 def prepare_data(accounts, filters, total_row):
 	show_zero_values = cint(filters.show_zero_values)
 	data = []
-	for i, d in enumerate(accounts):
+	accounts_with_zero_value = []
+	for d in accounts:
 		has_value = False
 		row = {
 			"account_name": d.account_name,
@@ -141,8 +142,13 @@
 			if row[key]:
 				has_value = True
 
-		if has_value or show_zero_values:
+		if show_zero_values:
 			data.append(row)
+		else:
+			if not has_value:
+				accounts_with_zero_value.append(d.name)
+			elif d.parent_account not in accounts_with_zero_value:
+				data.append(row)
 
 	data.extend([{},total_row])