mirror of
https://github.com/frappe/erpnext.git
synced 2026-06-01 19:29:10 +00:00
get the currencies from database rather than hardcoded
This commit is contained in:
@@ -1,116 +1,135 @@
|
|||||||
// Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
|
// Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
|
||||||
// License: GNU General Public License v3. See license.txt
|
// License: GNU General Public License v3. See license.txt
|
||||||
|
|
||||||
frappe.query_reports["General Ledger"] = {
|
const get_currencies = () => {
|
||||||
"filters": [
|
// frappe.db.get_list returns a Promise
|
||||||
|
return frappe.db.get_list('GL Entry',
|
||||||
{
|
{
|
||||||
"fieldname":"company",
|
distinct: true,
|
||||||
"label": __("Company"),
|
fields:['account_currency'],
|
||||||
"fieldtype": "Link",
|
as_list: true
|
||||||
"options": "Company",
|
}
|
||||||
"default": frappe.defaults.get_user_default("Company"),
|
);
|
||||||
"reqd": 1
|
}
|
||||||
},
|
|
||||||
{
|
const flatten = (array) => {
|
||||||
"fieldname":"from_date",
|
return [].concat.apply([], array);
|
||||||
"label": __("From Date"),
|
}
|
||||||
"fieldtype": "Date",
|
|
||||||
"default": frappe.datetime.add_months(frappe.datetime.get_today(), -1),
|
get_currencies()
|
||||||
"reqd": 1,
|
.then((r) => flatten(r))
|
||||||
"width": "60px"
|
.then((currency_list) => {
|
||||||
},
|
frappe.query_reports["General Ledger"] = {
|
||||||
{
|
"filters": [
|
||||||
"fieldname":"to_date",
|
{
|
||||||
"label": __("To Date"),
|
"fieldname":"company",
|
||||||
"fieldtype": "Date",
|
"label": __("Company"),
|
||||||
"default": frappe.datetime.get_today(),
|
"fieldtype": "Link",
|
||||||
"reqd": 1,
|
"options": "Company",
|
||||||
"width": "60px"
|
"default": frappe.defaults.get_user_default("Company"),
|
||||||
},
|
"reqd": 1
|
||||||
{
|
},
|
||||||
"fieldname":"account",
|
{
|
||||||
"label": __("Account"),
|
"fieldname":"from_date",
|
||||||
"fieldtype": "Link",
|
"label": __("From Date"),
|
||||||
"options": "Account",
|
"fieldtype": "Date",
|
||||||
"get_query": function() {
|
"default": frappe.datetime.add_months(frappe.datetime.get_today(), -1),
|
||||||
var company = frappe.query_report_filters_by_name.company.get_value();
|
"reqd": 1,
|
||||||
return {
|
"width": "60px"
|
||||||
"doctype": "Account",
|
},
|
||||||
"filters": {
|
{
|
||||||
"company": company,
|
"fieldname":"to_date",
|
||||||
|
"label": __("To Date"),
|
||||||
|
"fieldtype": "Date",
|
||||||
|
"default": frappe.datetime.get_today(),
|
||||||
|
"reqd": 1,
|
||||||
|
"width": "60px"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname":"account",
|
||||||
|
"label": __("Account"),
|
||||||
|
"fieldtype": "Link",
|
||||||
|
"options": "Account",
|
||||||
|
"get_query": function() {
|
||||||
|
var company = frappe.query_report_filters_by_name.company.get_value();
|
||||||
|
return {
|
||||||
|
"doctype": "Account",
|
||||||
|
"filters": {
|
||||||
|
"company": company,
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"fieldname":"voucher_no",
|
|
||||||
"label": __("Voucher No"),
|
|
||||||
"fieldtype": "Data",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"fieldname":"project",
|
|
||||||
"label": __("Project"),
|
|
||||||
"fieldtype": "Link",
|
|
||||||
"options": "Project"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"fieldtype": "Break",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"fieldname":"party_type",
|
|
||||||
"label": __("Party Type"),
|
|
||||||
"fieldtype": "Link",
|
|
||||||
"options": "Party Type",
|
|
||||||
"default": ""
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"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;
|
|
||||||
},
|
},
|
||||||
on_change: function() {
|
{
|
||||||
var party_type = frappe.query_report_filters_by_name.party_type.get_value();
|
"fieldname":"voucher_no",
|
||||||
var party = frappe.query_report_filters_by_name.party.get_value();
|
"label": __("Voucher No"),
|
||||||
if(!party_type || !party) {
|
"fieldtype": "Data",
|
||||||
frappe.query_report_filters_by_name.party_name.set_value("");
|
},
|
||||||
return;
|
{
|
||||||
}
|
"fieldname":"project",
|
||||||
|
"label": __("Project"),
|
||||||
|
"fieldtype": "Link",
|
||||||
|
"options": "Project"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldtype": "Break",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname":"party_type",
|
||||||
|
"label": __("Party Type"),
|
||||||
|
"fieldtype": "Link",
|
||||||
|
"options": "Party Type",
|
||||||
|
"default": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"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;
|
||||||
|
},
|
||||||
|
on_change: 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_type || !party) {
|
||||||
|
frappe.query_report_filters_by_name.party_name.set_value("");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
var fieldname = frappe.scrub(party_type) + "_name";
|
var fieldname = frappe.scrub(party_type) + "_name";
|
||||||
frappe.db.get_value(party_type, party, fieldname, function(value) {
|
frappe.db.get_value(party_type, party, fieldname, function(value) {
|
||||||
frappe.query_report_filters_by_name.party_name.set_value(value[fieldname]);
|
frappe.query_report_filters_by_name.party_name.set_value(value[fieldname]);
|
||||||
});
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname":"party_name",
|
||||||
|
"label": __("Party Name"),
|
||||||
|
"fieldtype": "Data",
|
||||||
|
"hidden": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname":"group_by_voucher",
|
||||||
|
"label": __("Group by Voucher"),
|
||||||
|
"fieldtype": "Check",
|
||||||
|
"default": 1
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname":"group_by_account",
|
||||||
|
"label": __("Group by Account"),
|
||||||
|
"fieldtype": "Check",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "presentation_currency",
|
||||||
|
"label": __("Currency"),
|
||||||
|
"fieldtype": "Select",
|
||||||
|
"options": currency_list
|
||||||
}
|
}
|
||||||
},
|
]
|
||||||
{
|
}
|
||||||
"fieldname":"party_name",
|
});
|
||||||
"label": __("Party Name"),
|
|
||||||
"fieldtype": "Data",
|
|
||||||
"hidden": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"fieldname":"group_by_voucher",
|
|
||||||
"label": __("Group by Voucher"),
|
|
||||||
"fieldtype": "Check",
|
|
||||||
"default": 1
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"fieldname":"group_by_account",
|
|
||||||
"label": __("Group by Account"),
|
|
||||||
"fieldtype": "Check",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"fieldname": "presentation_currency",
|
|
||||||
"label": __("Currency"),
|
|
||||||
"fieldtype": "Select",
|
|
||||||
"options": "NGN\nINR\nUSD"
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
|
|||||||
Reference in New Issue
Block a user