mirror of
https://github.com/frappe/books.git
synced 2024-11-14 09:24:04 +00:00
61 lines
1.4 KiB
JavaScript
61 lines
1.4 KiB
JavaScript
import frappe from 'frappejs';
|
|
|
|
const title = 'Profit and Loss';
|
|
|
|
export default {
|
|
title: title,
|
|
method: 'profit-and-loss',
|
|
treeView: true,
|
|
filterFields: [
|
|
{
|
|
fieldtype: 'Date',
|
|
fieldname: 'fromDate',
|
|
size: 'small',
|
|
placeholder: 'From Date',
|
|
label: 'From Date',
|
|
required: 1,
|
|
default: async () => {
|
|
return (await frappe.getSingle('AccountingSettings')).fiscalYearStart;
|
|
},
|
|
},
|
|
{
|
|
fieldtype: 'Date',
|
|
fieldname: 'toDate',
|
|
size: 'small',
|
|
placeholder: 'To Date',
|
|
label: 'To Date',
|
|
required: 1,
|
|
default: async () => {
|
|
return (await frappe.getSingle('AccountingSettings')).fiscalYearEnd;
|
|
},
|
|
},
|
|
{
|
|
fieldtype: 'Select',
|
|
size: 'small',
|
|
options: ['Monthly', 'Quarterly', 'Half Yearly', 'Yearly'],
|
|
default: 'Monthly',
|
|
label: 'Periodicity',
|
|
placeholder: 'Select Period...',
|
|
fieldname: 'periodicity',
|
|
},
|
|
],
|
|
getColumns(data) {
|
|
const columns = [
|
|
{ label: 'Account', fieldtype: 'Data', fieldname: 'account', width: 2 },
|
|
];
|
|
|
|
if (data && data.columns) {
|
|
const currencyColumns = data.columns;
|
|
const columnDefs = currencyColumns.map((name) => ({
|
|
label: name,
|
|
fieldname: name,
|
|
fieldtype: 'Currency',
|
|
}));
|
|
|
|
columns.push(...columnDefs);
|
|
}
|
|
|
|
return columns;
|
|
},
|
|
};
|