67 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			67 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| frappe.provide("erpnext.financial_statements");
 | |
| 
 | |
| erpnext.financial_statements = {
 | |
| 	"filters": [
 | |
| 		{
 | |
| 			"fieldname":"company",
 | |
| 			"label": __("Company"),
 | |
| 			"fieldtype": "Link",
 | |
| 			"options": "Company",
 | |
| 			"default": frappe.defaults.get_user_default("company"),
 | |
| 			"reqd": 1
 | |
| 		},
 | |
| 		{
 | |
| 			"fieldname":"fiscal_year",
 | |
| 			"label": __("Fiscal Year"),
 | |
| 			"fieldtype": "Link",
 | |
| 			"options": "Fiscal Year",
 | |
| 			"default": frappe.defaults.get_user_default("fiscal_year"),
 | |
| 			"reqd": 1
 | |
| 		},
 | |
| 		{
 | |
| 			"fieldname": "periodicity",
 | |
| 			"label": __("Periodicity"),
 | |
| 			"fieldtype": "Select",
 | |
| 			"options": "Yearly\nHalf-yearly\nQuarterly\nMonthly",
 | |
| 			"default": "Yearly",
 | |
| 			"reqd": 1
 | |
| 		}
 | |
| 	],
 | |
| 	"formatter": function(row, cell, value, columnDef, dataContext, default_formatter) {
 | |
| 		if (columnDef.df.fieldname=="account") {
 | |
| 			value = dataContext.account_name;
 | |
| 
 | |
| 			columnDef.df.link_onclick = "erpnext.financial_statements.open_general_ledger(" + JSON.stringify(dataContext) + ")";
 | |
| 			columnDef.df.is_tree = true;
 | |
| 		}
 | |
| 
 | |
| 		value = default_formatter(row, cell, value, columnDef, dataContext);
 | |
| 
 | |
| 		if (!dataContext.parent_account) {
 | |
| 			var $value = $(value).css("font-weight", "bold");
 | |
| 			if (dataContext.warn_if_negative && dataContext[columnDef.df.fieldname] < 0) {
 | |
| 				$value.addClass("text-danger");
 | |
| 			}
 | |
| 
 | |
| 			value = $value.wrap("<p></p>").parent().html();
 | |
| 		}
 | |
| 
 | |
| 		return value;
 | |
| 	},
 | |
| 	"open_general_ledger": function(data) {
 | |
| 		if (!data.account) return;
 | |
| 
 | |
| 		frappe.route_options = {
 | |
| 			"account": data.account,
 | |
| 			"company": frappe.query_report.filters_by_name.company.get_value(),
 | |
| 			"from_date": data.from_date,
 | |
| 			"to_date": data.to_date
 | |
| 		};
 | |
| 		frappe.set_route("query-report", "General Ledger");
 | |
| 	},
 | |
| 	"tree": true,
 | |
| 	"name_field": "account",
 | |
| 	"parent_field": "parent_account",
 | |
| 	"initial_depth": 3
 | |
| };
 |