What is JotForm?
JotForm is a free online form builder which helps you create online forms without writing a single line of code. No sign-up required.
At JotForm, we want to make sure that you’re getting the online form builder help that you need. Our friendly customer support team is available 24/7.
We believe that if one user has a question, there could be more users who may have the same question. This is why many of our support forum threads are public and available to be searched and viewed. If you’d like help immediately, feel free to search for a similar question, or submit your question or concern.
Conditions using Submittal Date with "after" is off by one dayAsked by Timothy Steck on October 15, 2015 at 03:26 PM
This logic is used on these two forms:
We use this logic to apply a late fee for entries submitted on 10/16/2015 or later, hence "after" 10/15/2015. The fee is being applied today, 10/15/2015 and shouldn't be done until tomorrow (10/16/2015).
I tried make the date in the condition "2015-10-15 23:59", "2015-10-15,23:59", "2015-10-15:23:59" and it would not work correctly with either of these values.
After I changed the date to "2015-10-16" it worked as expected. it appears that the test is wrong in your logic or time is involved but I couldn't get it to work either using time in the date value.
Since this is an active form today please either just tell me what to change or make a duplicate form for testing. Don't change the actual existing forms, please.
I created a new form and added a condition that if after October 17th add 5 to calculation and it's working normally:
I cloned your form and deleted and added again the date field and it is now working normally. You can clone the demo form (after October 15th):
Let us know if we can assist you further.
I put in a date of 10/16/2015 and I still got a late fee. How does this show it works???
The submittal date is a date generated by the system (today's date) and it does not allow input. Let try an example of the same type of fields.
How this is suppose to work is: If today's date, which is the date put into the Submitted Date field by the program, is "after" 10/15/2015 then the field(s) labeled "Late Fee" should populate with $5.00. But today is 10/15/2015 and the Late Fee fields are being populated when they shouldn't.
In my current modified forms I had to change the compared to date to 10/16/2015 to make the form work like I want it to (which in my thinking it should actually say "10/15/2015" but that doesn't work correctly).
I see my print screen of my logic is gone, did you actually see it? Did you understand what I was showing you? It is in my original form EXCEPT now I have to computer the Submittal Date (today's date) after 10/16/2015 even though we really want any date "after" 10/15/2015.
I tried your both examples and I don't understand what you are trying to do.
I was able to reproduce the problem. It is happening due to the time difference. It seems when time is enabled on the DateTime field, it will be treated as an excess number of the date field thus triggering the after condition. I suggest to disable the time or separate it using the time only tool.
This should help fixed it.
Well the time is nice so we know when (time) people submitted their entry because in some forms/events (not this event - the order people sign up / "time of day" makes a difference).
Wouldn't the correct fix be on your side to only test the date part (and ignore the time - even if set to display) because the test can only test for the date because the "after" test will only allow a date and not a date & time.
BTW, I appreciate that you took the time to reproduce the problem and giving me a TEMPORARY fix but it would have also been nice if you added "JotForm, has added this bug into the Development Department to be fixed". Because it is clearly a bug and not a "feature".
Until you actually fix this problem, I will use my work around by testing in one day in future.
Thanks and let's make JotForm better together!
Although, there are workarounds available to solve the issue. Just like your workaround or Elton's workaround. I have still forwarded this to our developers to have it checked. We appreciate you bringing this to our attention. You will be notified via this thread for any updates. Thank you.
This has now been fixed. Whatever the time is, "after" will always represent the next day, not just after midnight of that day if time is enabled.