Merge pull request #7015 from nabinhait/fix_10011

Multiple fixes
This commit is contained in:
Nabin Hait 2016-11-21 19:05:34 +05:30 committed by GitHub
commit bdab3103e3
4 changed files with 55 additions and 16 deletions

View File

@ -9,11 +9,14 @@
"description": "**Monthly Distribution** helps you distribute the Budget/Target across months if you have seasonality in your business.", "description": "**Monthly Distribution** helps you distribute the Budget/Target across months if you have seasonality in your business.",
"docstatus": 0, "docstatus": 0,
"doctype": "DocType", "doctype": "DocType",
"editable_grid": 0,
"engine": "InnoDB",
"fields": [ "fields": [
{ {
"allow_on_submit": 0, "allow_on_submit": 0,
"bold": 0, "bold": 0,
"collapsible": 0, "collapsible": 0,
"columns": 0,
"description": "Name of the Monthly Distribution", "description": "Name of the Monthly Distribution",
"fieldname": "distribution_id", "fieldname": "distribution_id",
"fieldtype": "Data", "fieldtype": "Data",
@ -31,6 +34,7 @@
"print_hide": 0, "print_hide": 0,
"print_hide_if_no_value": 0, "print_hide_if_no_value": 0,
"read_only": 0, "read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0, "report_hide": 0,
"reqd": 1, "reqd": 1,
"search_index": 0, "search_index": 0,
@ -41,6 +45,7 @@
"allow_on_submit": 0, "allow_on_submit": 0,
"bold": 0, "bold": 0,
"collapsible": 0, "collapsible": 0,
"columns": 0,
"fieldname": "fiscal_year", "fieldname": "fiscal_year",
"fieldtype": "Link", "fieldtype": "Link",
"hidden": 0, "hidden": 0,
@ -58,6 +63,7 @@
"print_hide": 0, "print_hide": 0,
"print_hide_if_no_value": 0, "print_hide_if_no_value": 0,
"read_only": 0, "read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0, "report_hide": 0,
"reqd": 0, "reqd": 0,
"search_index": 1, "search_index": 1,
@ -68,6 +74,7 @@
"allow_on_submit": 0, "allow_on_submit": 0,
"bold": 0, "bold": 0,
"collapsible": 0, "collapsible": 0,
"columns": 0,
"fieldname": "percentages", "fieldname": "percentages",
"fieldtype": "Table", "fieldtype": "Table",
"hidden": 0, "hidden": 0,
@ -85,6 +92,7 @@
"print_hide": 0, "print_hide": 0,
"print_hide_if_no_value": 0, "print_hide_if_no_value": 0,
"read_only": 0, "read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0, "report_hide": 0,
"reqd": 0, "reqd": 0,
"search_index": 0, "search_index": 0,
@ -96,13 +104,14 @@
"hide_toolbar": 0, "hide_toolbar": 0,
"icon": "icon-bar-chart", "icon": "icon-bar-chart",
"idx": 1, "idx": 1,
"image_view": 0,
"in_create": 0, "in_create": 0,
"in_dialog": 0, "in_dialog": 0,
"is_submittable": 0, "is_submittable": 0,
"issingle": 0, "issingle": 0,
"istable": 0, "istable": 0,
"max_attachments": 0, "max_attachments": 0,
"modified": "2016-05-16 16:35:20.349194", "modified": "2016-11-21 14:54:35.998761",
"modified_by": "Administrator", "modified_by": "Administrator",
"module": "Accounts", "module": "Accounts",
"name": "Monthly Distribution", "name": "Monthly Distribution",
@ -119,6 +128,7 @@
"export": 0, "export": 0,
"if_owner": 0, "if_owner": 0,
"import": 0, "import": 0,
"is_custom": 0,
"permlevel": 0, "permlevel": 0,
"print": 1, "print": 1,
"read": 1, "read": 1,
@ -139,6 +149,7 @@
"export": 0, "export": 0,
"if_owner": 0, "if_owner": 0,
"import": 0, "import": 0,
"is_custom": 0,
"permlevel": 2, "permlevel": 2,
"print": 0, "print": 0,
"read": 1, "read": 1,
@ -150,7 +161,7 @@
"write": 0 "write": 0
} }
], ],
"quick_entry": 1, "quick_entry": 0,
"read_only": 0, "read_only": 0,
"read_only_onload": 0, "read_only_onload": 0,
"sort_field": "modified", "sort_field": "modified",

View File

@ -50,6 +50,19 @@ frappe.query_reports["Trial Balance for Party"] = {
"options": ["Customer", "Supplier"], "options": ["Customer", "Supplier"],
"default": "Customer" "default": "Customer"
}, },
{
"fieldname":"party",
"label": __("Party"),
"fieldtype": "Dynamic Link",
"get_options": function() {
var party_type = frappe.query_report_filters_by_name.party_type.get_value();
var party = frappe.query_report_filters_by_name.party.get_value();
if(party && !party_type) {
frappe.throw(__("Please select Party Type first"));
}
return party_type;
}
},
{ {
"fieldname": "show_zero_values", "fieldname": "show_zero_values",
"label": __("Show zero values"), "label": __("Show zero values"),

View File

@ -20,13 +20,23 @@ def execute(filters=None):
def get_data(filters, show_party_name): def get_data(filters, show_party_name):
party_name_field = "customer_name" if filters.get("party_type")=="Customer" else "supplier_name" party_name_field = "customer_name" if filters.get("party_type")=="Customer" else "supplier_name"
parties = frappe.get_all(filters.get("party_type"), fields = ["name", party_name_field], order_by="name") party_filters = {"name": filters.get("party")} if filters.get("party") else {}
parties = frappe.get_all(filters.get("party_type"), fields = ["name", party_name_field],
filters = party_filters, order_by="name")
company_currency = frappe.db.get_value("Company", filters.company, "default_currency") company_currency = frappe.db.get_value("Company", filters.company, "default_currency")
opening_balances = get_opening_balances(filters) opening_balances = get_opening_balances(filters)
balances_within_period = get_balances_within_period(filters) balances_within_period = get_balances_within_period(filters)
data = [] data = []
total_debit, total_credit = 0, 0 # total_debit, total_credit = 0, 0
total_row = frappe._dict({
"opening_debit": 0,
"opening_credit": 0,
"debit": 0,
"credit": 0,
"closing_debit": 0,
"closing_credit": 0
})
for party in parties: for party in parties:
row = { "party": party.name } row = { "party": party.name }
if show_party_name: if show_party_name:
@ -46,10 +56,6 @@ def get_data(filters, show_party_name):
"credit": credit "credit": credit
}) })
# totals
total_debit += debit
total_credit += credit
# closing # closing
closing_debit, closing_credit = toggle_debit_credit(opening_debit + debit, opening_credit + credit) closing_debit, closing_credit = toggle_debit_credit(opening_debit + debit, opening_credit + credit)
row.update({ row.update({
@ -57,6 +63,10 @@ def get_data(filters, show_party_name):
"closing_credit": closing_credit "closing_credit": closing_credit
}) })
# totals
for col in total_row:
total_row[col] += row.get(col)
row.update({ row.update({
"currency": company_currency "currency": company_currency
}) })
@ -69,13 +79,12 @@ def get_data(filters, show_party_name):
data.append(row) data.append(row)
# Add total row # Add total row
if total_debit or total_credit:
data.append({ total_row.update({
"party": "'" + _("Totals") + "'", "party": "'" + _("Totals") + "'",
"debit": total_debit,
"credit": total_credit,
"currency": company_currency "currency": company_currency
}) })
data.append(total_row)
return data return data

View File

@ -371,6 +371,12 @@ def get_data():
"doctype": "GL Entry", "doctype": "GL Entry",
"is_query_report": True, "is_query_report": True,
}, },
{
"type": "report",
"name": "Profitability Analysis",
"doctype": "GL Entry",
"is_query_report": True,
},
{ {
"type": "report", "type": "report",
"name": "Payment Period Based On Invoice Date", "name": "Payment Period Based On Invoice Date",