BBjInputD::isValid

 

Description

In BBj 4.0 and higher, this method returns whether the text in the BBjInputD control is a valid date.

Syntax

Return Value

Method

boolean

isValid()

Parameters

None.

Return Value

Returns whether the text in the BBjInputD control is a valid date (0 = No, 1 = Yes).

Remarks

None.

Example

REM Determine if an InputD control contains a valid date

REM Obtain the instance of the BBjAPI object
LET myAPI!=BBjAPI()

REM Open the SysGui device
SYSGUI=UNT
OPEN (SYSGUI)"X0"

REM Obtain the instance of the BBjSysGui object
LET mySysGui!=myAPI!.getSysGui()

REM Set addWindow param values
X=10
Y=10
WIDTH=200
HEIGHT=200
TITLE$="BBj Window"

REM Set the current context
mySysGui!.setContext(0)

REM Create a window
myWindow! = mySysGui!.addWindow(X,Y,WIDTH,HEIGHT,TITLE$,$00010002$)

REM Add another control to show the effect of not being able to
REM move away from the INPUTD
myButton! = myWindow!.addButton(100,50,60,90,30,"Valid?",$$)

REM Add an InputD control that uses the current default mask, inserting
REM today's date when the user hits the restore key (normally ESCAPE)
myInputD! = myWindow!.addInputD(101,50,100,90,30,$080c$,"",$$,0,0)

REM When defining custom input rules, it may be useful to increase
REM to maximum input length of the control.
myInputD!.setLength(32)

REM Register the CALLBACK routines
CALLBACK(ON_BUTTON_PUSH,isValid,mySysGui!.getContext(),myButton!.getID())
CALLBACK(ON_LOST_FOCUS,validate,mySysGui!.getContext(),myInputD!.getID())
CALLBACK(ON_CLOSE,APP_CLOSE,mySysGui!.getContext())

REM Process Events
PROCESS_EVENTS

REM Callback routine called when the user closes the application window
APP_CLOSE:
RELEASE
RETURN

validate:
if myInputD!.isValid() then return
text$ = cvs(myInputD!.getText(),7)
if text$="ME" then gosub setMonthEnd
return

setMonthEnd:
today = jul(0,0,0)
y = num(date(today:"%Y"))
m = num(date(today:"%M"))
for d=28 to 30
    me = jul(y,m,d+1,err=*break)
next d
myInputD!.setValue(jul(y,m,d))
return

isValid:
msg$ = myInputD!.getText()
msg$ = msg$ + iff(myInputD!.isValid()," is "," is not")
msg$ = msg$+" a valid date"
i = msgbox(msg$)
RETURN

See Also

BBjAPI

BBjSysGui

BBjControl

BBjWindow

See the BBj Object Diagram for an illustration of the relationship between BBj Objects.



______________________________________________________________________________________

Copyright BASIS International Ltd. BBj®, Visual PRO/5®, PRO/5®, and BBx® are registered trademarks.