[fix] General ledger print format
diff --git a/erpnext/accounts/report/general_ledger/general_ledger.html b/erpnext/accounts/report/general_ledger/general_ledger.html
index 5c6b0f1..0d3170a 100644
--- a/erpnext/accounts/report/general_ledger/general_ledger.html
+++ b/erpnext/accounts/report/general_ledger/general_ledger.html
@@ -2,7 +2,7 @@
 	{%= frappe.boot.letter_heads[frappe.defaults.get_default("letter_head")] %}
 </div>
 <h2 class="text-center">{%= __("Statement of Account") %}</h2>
-<h4 class="text-center">{%= filters.account && (filters.account + ", ")  || "" %} {%= filters.company %}</h4>
+<h4 class="text-center">{%= (filters.party || filters.account) && ((filters.party || filters.account) + ", ")  || "" %} {%= filters.company %}</h4>
 <h5 class="text-center">
 	{%= dateutil.str_to_user(filters.from_date) %}
 	{%= __("to") %}
@@ -26,15 +26,20 @@
 				<td>{%= dateutil.str_to_user(data[i][__("Posting Date")]) %}</td>
 				<td>{%= data[i][__("Voucher Type")] %}
 					<br>{%= data[i][__("Voucher No")] %}</td>
-				<td>{%= data[i][__("Account")] %}
-					<br>{%= __("Against") %}: {%= data[i][__("Against Account")] %}
+				<td>
+					{% if(!(filters.party || filters.account)) { %}
+						{%= data[i][__("Party")] || data[i][__("Account")] %}
+						<br>
+					{% } %}
+
+					{{ __("Against") }}: {%= data[i][__("Against Account")] %}
 					<br>{%= __("Remarks") %}: {%= data[i][__("Remarks")] %}</td>
 				<td style="text-align: right">{%= format_currency(data[i][__("Debit")]) %}</td>
 				<td style="text-align: right">{%= format_currency(data[i][__("Credit")]) %}</td>
 			{% } else { %}
 				<td></td>
 				<td></td>
-				<td><b>{%= data[i][__("Account")] || "&nbsp;" %}</b></td>
+				<td><b>{%= frappe.format(data[i][__("Account")], {fieldtype: "Link"}) || "&nbsp;" %}</b></td>
 				<td style="text-align: right">
 					{%= data[i][__("Account")] && format_currency(data[i][__("Debit")]) %}</td>
 				<td style="text-align: right">
diff --git a/erpnext/accounts/report/general_ledger/general_ledger.py b/erpnext/accounts/report/general_ledger/general_ledger.py
index 8e34cdb..fcce345 100644
--- a/erpnext/accounts/report/general_ledger/general_ledger.py
+++ b/erpnext/accounts/report/general_ledger/general_ledger.py
@@ -9,7 +9,7 @@
 def execute(filters=None):
 	account_details = {}
 	for acc in frappe.db.sql("""select name, is_group from tabAccount""", as_dict=1):
-			account_details.setdefault(acc.name, acc)
+		account_details.setdefault(acc.name, acc)
 
 	validate_filters(filters, account_details)
 	validate_party(filters)
@@ -82,8 +82,6 @@
 		lft, rgt = frappe.db.get_value("Account", filters["account"], ["lft", "rgt"])
 		conditions.append("""account in (select name from tabAccount
 			where lft>=%s and rgt<=%s and docstatus<2)""" % (lft, rgt))
-	else:
-		conditions.append("posting_date between %(from_date)s and %(to_date)s")
 
 	if filters.get("voucher_no"):
 		conditions.append("voucher_no=%(voucher_no)s")
@@ -107,7 +105,7 @@
 	opening, total_debit, total_credit, gle_map = get_accountwise_gle(filters, gl_entries, gle_map)
 
 	# Opening for filtered account
-	if filters.get("account"):
+	if filters.get("account") or filters.get("party"):
 		data += [get_balance_row(_("Opening"), opening), {}]
 
 	for acc, acc_dict in gle_map.items():
@@ -130,7 +128,7 @@
 		data.append({"account": "'" + _("Totals") + "'", "debit": total_debit, "credit": total_credit})
 
 	# Closing for filtered account
-	if filters.get("account"):
+	if filters.get("account") or filters.get("party"):
 		data.append(get_balance_row(_("Closing (Opening + Totals)"),
 			(opening + total_debit - total_credit)))
 
@@ -153,9 +151,10 @@
 
 	for gle in gl_entries:
 		amount = flt(gle.debit, 3) - flt(gle.credit, 3)
-		if filters.get("account") and gle.posting_date < getdate(filters.from_date):
+		if gle.posting_date < getdate(filters.from_date):
 			gle_map[gle.account].opening += amount
-			opening += amount
+			if filters.get("account") or filters.get("party"):
+				opening += amount
 		elif gle.posting_date <= getdate(filters.to_date):
 			gle_map[gle.account].entries.append(gle)
 			gle_map[gle.account].total_debit += flt(gle.debit, 3)