The CreatorCon Call for Content is officially open! Get started here.

Date comparison flow designer

levino
Giga Guru

Hi there

I have a catalog item with a DateTime variable.

 

i have also created  custom action 

(function execute(inputs, outputs) {
// ... code ...
  var currentdate = gs.nowDateTime();
   outputs.result = currentdate;
})(inputs, output

when i compare the 2 dates i get this error using the If condition in flow designer

if 'result' is at or after the ' catalog item datatime variable)''

Flow Designer: Operation(LucidChart.If$1.evalConditions) failed with error: com.snc.process_flow.exception.OpException: unable to evaluate condition for /if/_0_2394934e1b75a510e4a8cbb9274bcb96 = 27/03/2023 21:32:05 was not a datetime in format (ParseCaseSensitive(false)(Value(Year,4,10,EXCEEDS_PAD)'-'Value(MonthOfYear,2)'-'Value(DayOfMonth,2))'T'(Value(HourOfDay,2)':'Value(MinuteOfHour,2)[':'Value(SecondOfMinute,2)[Fraction(NanoOfSecond,0,9,DecimalPoint)]]))[Offset(+HH:MM:ss,'Z')['['ParseCaseSensitive(true)ZoneRegionId()']']]

1 ACCEPTED SOLUTION

Change script as below.

 

(function execute(inputs, outputs) {
var accStartDate=inputs.RequiredDate;
var currentDate=new GlideDate();
//gs.log('accStartDate'+accStartDate);
//gs.log('currentDate'+currentDate);
// var compareDate=accStartDate.compareTo(currentDate);
// gs.log('compareDate'+compareDate);
if(accStartDate<=currentDate){
outputs.result=true;
}else{
outputs.result=false;
}
})(inputs, outputs);

 

 

If my solutions helps you to resolve the issue, Please accept solution and Hit "Helpful".

Thanks,
Gopi

View solution in original post

22 REPLIES 22

Hi @levino ,

 

In above test you provided 2023-04-07 and that was future date Due to that reason it was returning false. The condition we kept in script is if provided date lesthen or equal to today's date return true.

 

 

If my solutions helps you to resolve the issue, Please accept solution and Hit "Helpful".

Thanks,
Gopi

past date

 

levino_0-1679995036913.png

 

Change script as below.

 

(function execute(inputs, outputs) {
var accStartDate=inputs.RequiredDate;
var currentDate=new GlideDate();
//gs.log('accStartDate'+accStartDate);
//gs.log('currentDate'+currentDate);
// var compareDate=accStartDate.compareTo(currentDate);
// gs.log('compareDate'+compareDate);
if(accStartDate<=currentDate){
outputs.result=true;
}else{
outputs.result=false;
}
})(inputs, outputs);

 

 

If my solutions helps you to resolve the issue, Please accept solution and Hit "Helpful".

Thanks,
Gopi