Expand my Community achievements bar.

SOLVED

DateTime field calculation

Avatar

Level 2

   Wow, second thread and it's only my first day!

I have a DateTime field that I'm trying to have validated so that the user cannot pick a date before today.  I know how to do it in Crystal Reports, Visual Basic, and a pile of other languages - but this one I'm stumped.

Here's all I've got.  Logic is very simple, but I'll be darned if I can get this to work!

if

(date2num(datetimefield1) - date2num(date()))<0 then messageBox("Test", "Wrong Date", 1, 0) elseif datetimefield1 endif

Thanks - any and all ideas are appreciated!

Chris

1 Accepted Solution

Avatar

Correct answer by
Former Community Member

Here's what I have used...

// form1.page1.subform1.otherDate::exit - (FormCalc, client)

var currentDateNum = Date2Num(form1.page1.subform1.currentDate,"MM/DD/YYYY")

var dateNum = Date2Num($.rawValue,"YYYY-MM-DD")

if (dateNum <= currentDateNum) then

  xfa.host.messageBox("The date must be after the current date.")

endif

where

// form1.page1.subform1.currentDate::ready:layout - (FormCalc, client)

$.rawValue = Concat(Num2Date(Date(), "MM/DD/YYYY"))

Steve

View solution in original post

2 Replies

Avatar

Correct answer by
Former Community Member

Here's what I have used...

// form1.page1.subform1.otherDate::exit - (FormCalc, client)

var currentDateNum = Date2Num(form1.page1.subform1.currentDate,"MM/DD/YYYY")

var dateNum = Date2Num($.rawValue,"YYYY-MM-DD")

if (dateNum <= currentDateNum) then

  xfa.host.messageBox("The date must be after the current date.")

endif

where

// form1.page1.subform1.currentDate::ready:layout - (FormCalc, client)

$.rawValue = Concat(Num2Date(Date(), "MM/DD/YYYY"))

Steve

Avatar

Level 2

Hi Steve, thanks a million - that worked perfectly.  Appreciate your time!

Have a great one

Chris

The following has evaluated to null or missing: ==> liqladmin("SELECT id, value FROM metrics WHERE id = 'net_accepted_solutions' and user.id = '${acceptedAnswer.author.id}'").data.items [in template "analytics-container" at line 83, column 41] ---- Tip: It's the step after the last dot that caused this error, not those before it. ---- Tip: If the failing expression is known to be legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: #assign answerAuthorNetSolutions = li... [in template "analytics-container" at line 83, column 5] ----