Expand my Community achievements bar.

Don’t miss the AEM Skill Exchange in SF on Nov 14—hear from industry leaders, learn best practices, and enhance your AEM strategy with practical tips.

Datepicker and future dates

Avatar

Level 2

I work with court forms and ES3. Some future dates are +20, +30. Unfortunately, LiveCycle's built-in date field provides a date picker that understands a year where the last two digits are over 30 as "193x" and not "203x". How do I get around this?

5 Replies

Avatar

Level 3

Forgive me, but I can't seem to reproduce your problem. I have no issues setting up a date field that can show years above 2030 and so on. To be able to help it would be easier if you supplied a bit more information.

What settings do you currently have on your date field? What Validation patterns/Display patterns etc. Do you have a special requirement on how you need to format the date?

Avatar

Level 2

Let’s say we want a date that shows the date for termination of guardianship. Today’s date is July 12, 2016.

I have added to my Designer form a simple Date object, display pattern specified as date{MM/DD/YYYY}. The user enters – via the calendar pop-up – today’s date and changes that last two year digits to “36”. When you tab out of the field, it reverts automatically to “1936”.

Adobe’s definition for “YY” is : Two-digit year, where numbers less than 30 are considered to fall after the year 2000 and numbers 30 and higher are considered to occur before 2000. For example, 00=2000, 29=2029, 30=1930, and 99=1999

The definition for “YYYY” does not have a similar specification, but in this case seems to apply anyway. Maybe a function of the pop-up calendar, which comes with the Date object. So, how do I block the calendar OR force the year to be a future year?

Thanks!

Avatar

Level 3

I still have had a bit of problem even trying to reproduce this issue. Personally if I did exactly as you stated, made the display pattern date{MM/DD/YYYY} and then entered todays date and simply changed the last two letters it stayed as I entered it "2036" or "2047" after I tabbed out of the field.

However, if I changed the patterns to only utilize the YY pattern, I can get the behavior as you write (entering 15 will give 2015 while entering 50 will result in 1950). But then I can't understand how you would get that with the YYYY patterns because lets be frank, using that validation should not even "need" any kind of tampering with the "decade" numbers, as they will already have been entered (compared to the "YY" pattern that needs some additional context as only the last two values of the year is given).

But to get back a bit more on track to your problem. I would check your other patterns, try set them up as date{MM/DD/YYYY} aswell. My only guess would be that some kind of edit pattern is interfering or something idk. And the actual calendar I think (guess) is only a "product" of what you have in your field. As it is no problem for me when just changing the field manually and it stays at "2047" for example, the calendar works perfectly. I simply think it is some kind of verification shenanigans in your actual field.

If that is not the case I think I would either need to see your form to actually see what is going on as I can't seem to "make it" myself. Or someone else must come along which has more experience in the Date fields.

Best regards, Mattias.

Avatar

Level 2

I found the answer myself:

In the XML, I had to change the built-in “short” date pattern from:

This could not be manipulated through the Object palette.

Avatar

Level 1

I am having the same problem.  Your response above is missing the solution.  Can you please advise what you needed to do in the xml?


Thanks.