trial balance, export ledgers only and groups only
diff --git a/accounts/page/trial_balance/trial_balance.js b/accounts/page/trial_balance/trial_balance.js
index 3504ae0..3f47758 100644
--- a/accounts/page/trial_balance/trial_balance.js
+++ b/accounts/page/trial_balance/trial_balance.js
@@ -22,5 +22,39 @@
 		title: 'Trial Balance',
 		single_column: true
 	});
-	erpnext.trial_balance = new erpnext.AccountTreeGrid(wrapper, 'Trial Balance');
+	var TrialBalance = erpnext.AccountTreeGrid.extend({
+		export: function() {
+			var msgbox = msgprint('<p>Select To Download:</p>\
+				<p><input type="checkbox" name="with_groups" checked> Account Groups</p>\
+				<p><input type="checkbox" name="with_ledgers" checked> Account Ledgers</p>\
+				<p><button class="btn btn-info btn-small">Download</button>');
+
+			var me = this;
+
+			$(msgbox.body).find("button").click(function() {
+				var with_groups = $(msgbox.body).find("[name='with_groups']").is(":checked");
+				var with_ledgers = $(msgbox.body).find("[name='with_ledgers']").is(":checked");
+
+				var data = wn.slickgrid_tools.get_view_data(me.columns, me.dataView, 
+					function(row, item) {
+						if(with_groups) {
+							// pad row
+							for(var i=0; i<item.indent; i++) row[0] = "   " + row[0];
+						}
+						if(with_groups && item.group_or_ledger == "Group") return true;
+						if(with_ledgers && item.group_or_ledger == "Ledger") return true;
+					
+						return false;
+				});
+				
+				console.log(data);
+				
+				wn.downloadify(data, ["Report Manager", "System Manager"], me);
+				return false;
+			})
+
+			return false;
+		},
+	})
+	erpnext.trial_balance = new TrialBalance(wrapper, 'Trial Balance');
 }
\ No newline at end of file
diff --git a/home/page/latest_updates/latest_updates.js b/home/page/latest_updates/latest_updates.js
index 2ff8fee..ac08c5e 100644
--- a/home/page/latest_updates/latest_updates.js
+++ b/home/page/latest_updates/latest_updates.js
@@ -1,5 +1,6 @@
 erpnext.updates = [
 	["13th November 2012", [
+		"Trial Balance (new): Feature to export Ledgers or Groups selectively. Indent Groups with spaces",
 		"General Ledger (new): Will show entries with 'Is Opening' as Opening.",
 		"General Ledger (new): Show against account entries if filtered by account.",
 	]],
diff --git a/startup/report_data_map.py b/startup/report_data_map.py
index 08670f9..1ea9d13 100644
--- a/startup/report_data_map.py
+++ b/startup/report_data_map.py
@@ -33,9 +33,13 @@
 	# Accounts
 	"Account": {
 		"columns": ["name", "parent_account", "lft", "rgt", "debit_or_credit", 
-			"is_pl_account", "company"],
+			"is_pl_account", "company", "group_or_ledger"],
 		"conditions": ["docstatus < 2"],
-		"order_by": "lft"
+		"order_by": "lft",
+		"links": {
+			"company": ["Company", "name"],
+		}
+		
 	},
 	"Cost Center": {
 		"columns": ["name", "lft", "rgt"],