Ask the Expert

Using LS or JS to validate a date field on a Notes form

Is there a way using LotusScript or perhaps JavaScript to validate a date field on a Notes form? Users will occasionally manually enter a date like 11/18/0200 and the form stills saves successfully. There is a date control on the field to pick a date; however, many times they manually enter the data. Any suggestions would be greatly appreciated. Thank you!
I generally prefer to use macro language for validation, but you can use any of these languages. JavaScript is the hardest because its default way of handling dates is not identical to the way Notes does it. Here's an example macro language validation formula:
@If(@ThisValue = ""; 
"You must enter a date"; 
@Year(@ThisValue) < 1950; 
"Please enter a date no earlier 
than 1950 A.D."; 
@Success) 
Or, in a Querysave form event, you might do something like this:
Sub Querysave(Source As 
NotesUIDocument, 
Continue As Variant) 
Dim doc As NotesDocument 
Set doc = Source.Document 
If doc.DateField(0) = "" Then 
msgbox "You must enter a date." 
Source.GotoField "DateField" 
Continue = False 
Elseif Year(doc.DateField(0)) < 1950 
msgbox "You must enter a date 
no earlier than 1950." 
Source.GotoField "DateField" 
Continue = False 
End If 
End Sub 

Perhaps you can see why I prefer macro language.

Do you have comments on this Ask the Expert Q&A? Let us know.

This was first published in March 2004

There are Comments. Add yours.

 
TIP: Want to include a code block in your comment? Use <pre> or <code> tags around the desired text. Ex: <code>insert code</code>

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy
Sort by: OldestNewest

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to: