// Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors // License: GNU General Public License v3. See license.txt frappe.query_reports["Accounts Receivable"] = { "filters": [ { "fieldname":"company", "label": __("Company"), "fieldtype": "Link", "options": "Company", "reqd": 1, "default": frappe.defaults.get_user_default("Company") }, { "fieldname":"ageing_based_on", "label": __("Ageing Based On"), "fieldtype": "Select", "options": 'Posting Date\nDue Date', "default": "Posting Date" }, { "fieldname":"report_date", "label": __("As on Date"), "fieldtype": "Date", "default": frappe.datetime.get_today() }, { "fieldname":"range1", "label": __("Ageing Range 1"), "fieldtype": "Int", "default": "30", "reqd": 1 }, { "fieldname":"range2", "label": __("Ageing Range 2"), "fieldtype": "Int", "default": "60", "reqd": 1 }, { "fieldname":"range3", "label": __("Ageing Range 3"), "fieldtype": "Int", "default": "90", "reqd": 1 }, { "fieldname":"range4", "label": __("Ageing Range 4"), "fieldtype": "Int", "default": "120", "reqd": 1 }, { "fieldname":"finance_book", "label": __("Finance Book"), "fieldtype": "Link", "options": "Finance Book" }, { "fieldname":"cost_center", "label": __("Cost Center"), "fieldtype": "Link", "options": "Cost Center", get_query: () => { var company = frappe.query_report.get_filter_value('company'); return { filters: { 'company': company } } } }, { "fieldname":"customer", "label": __("Customer"), "fieldtype": "Link", "options": "Customer", on_change: () => { var customer = frappe.query_report.get_filter_value('customer'); if (customer) { frappe.db.get_value('Customer', customer, ["tax_id", "customer_name", "credit_limit", "payment_terms"], function(value) { frappe.query_report.set_filter_value('tax_id', value["tax_id"]); frappe.query_report.set_filter_value('customer_name', value["customer_name"]); frappe.query_report.set_filter_value('credit_limit', value["credit_limit"]); frappe.query_report.set_filter_value('payment_terms', value["payment_terms"]); }); } else { frappe.query_report.set_filter_value('tax_id', ""); frappe.query_report.set_filter_value('customer_name', ""); frappe.query_report.set_filter_value('credit_limit', ""); frappe.query_report.set_filter_value('payment_terms', ""); } } }, { "fieldname":"customer_group", "label": __("Customer Group"), "fieldtype": "Link", "options": "Customer Group" }, { "fieldname":"payment_terms_template", "label": __("Payment Terms Template"), "fieldtype": "Link", "options": "Payment Terms Template" }, { "fieldname":"territory", "label": __("Territory"), "fieldtype": "Link", "options": "Territory" }, { "fieldname":"sales_partner", "label": __("Sales Partner"), "fieldtype": "Link", "options": "Sales Partner" }, { "fieldname":"sales_person", "label": __("Sales Person"), "fieldtype": "Link", "options": "Sales Person" }, { "fieldname":"based_on_payment_terms", "label": __("Based On Payment Terms"), "fieldtype": "Check", }, { "fieldname":"show_pdc_in_print", "label": __("Show PDC in Print"), "fieldtype": "Check", }, { "fieldname":"show_sales_person_in_print", "label": __("Show Sales Person in Print"), "fieldtype": "Check", }, { "fieldname":"tax_id", "label": __("Tax Id"), "fieldtype": "Data", "hidden": 1 }, { "fieldname":"customer_name", "label": __("Customer Name"), "fieldtype": "Data", "hidden": 1 }, { "fieldname":"payment_terms", "label": __("Payment Tems"), "fieldtype": "Data", "hidden": 1 }, { "fieldname":"credit_limit", "label": __("Credit Limit"), "fieldtype": "Currency", "hidden": 1 } ], onload: function(report) { report.page.add_inner_button(__("Accounts Receivable Summary"), function() { var filters = report.get_values(); frappe.set_route('query-report', 'Accounts Receivable Summary', {company: filters.company}); }); } } frappe.boot.dimension_filters.forEach((dimension) => { frappe.query_reports["Accounts Receivable"].filters.splice(9, 0 ,{ "fieldname": dimension["fieldname"], "label": __(dimension["label"]), "fieldtype": "Link", "options": dimension["document_type"] }); });