@@ -9,6 +9,20 @@ frappe.query_reports["Vehicle Expenses"] = {
9
9
options : [ "Fiscal Year" , "Date Range" ] ,
10
10
default : [ "Fiscal Year" ] ,
11
11
reqd : 1 ,
12
+ on_change : ( ) => {
13
+ let filter_based_on = frappe . query_report . get_filter_value ( "filter_based_on" ) ;
14
+
15
+ if ( filter_based_on == "Fiscal Year" ) {
16
+ set_reqd_filter ( "fiscal_year" , true ) ;
17
+ set_reqd_filter ( "from_date" , false ) ;
18
+ set_reqd_filter ( "to_date" , false ) ;
19
+ }
20
+ if ( filter_based_on == "Date Range" ) {
21
+ set_reqd_filter ( "fiscal_year" , false ) ;
22
+ set_reqd_filter ( "from_date" , true ) ;
23
+ set_reqd_filter ( "to_date" , true ) ;
24
+ }
25
+ } ,
12
26
} ,
13
27
{
14
28
fieldname : "fiscal_year" ,
@@ -17,21 +31,18 @@ frappe.query_reports["Vehicle Expenses"] = {
17
31
options : "Fiscal Year" ,
18
32
default : frappe . defaults . get_user_default ( "fiscal_year" ) ,
19
33
depends_on : "eval: doc.filter_based_on == 'Fiscal Year'" ,
20
- reqd : 1 ,
21
34
} ,
22
35
{
23
36
fieldname : "from_date" ,
24
37
label : __ ( "From Date" ) ,
25
38
fieldtype : "Date" ,
26
- reqd : 1 ,
27
39
depends_on : "eval: doc.filter_based_on == 'Date Range'" ,
28
40
default : frappe . datetime . add_months ( frappe . datetime . nowdate ( ) , - 12 ) ,
29
41
} ,
30
42
{
31
43
fieldname : "to_date" ,
32
44
label : __ ( "To Date" ) ,
33
45
fieldtype : "Date" ,
34
- reqd : 1 ,
35
46
depends_on : "eval: doc.filter_based_on == 'Date Range'" ,
36
47
default : frappe . datetime . nowdate ( ) ,
37
48
} ,
@@ -49,3 +60,9 @@ frappe.query_reports["Vehicle Expenses"] = {
49
60
} ,
50
61
] ,
51
62
} ;
63
+
64
+ function set_reqd_filter ( fieldname , is_reqd ) {
65
+ let filter = frappe . query_report . get_filter ( fieldname ) ;
66
+ filter . df . reqd = is_reqd ;
67
+ filter . refresh ( ) ;
68
+ }
0 commit comments