Back to SPR List Previous Next
VALIDATE & VARPUT inconsistant on date and cat var undefined values
Minor Closed - Fixed Found:XS.01.07 16 JAN 2008 Fixed:XS.01.08 21 JAN 2008

DETAILS
 If you have a variable and blank is not a valid value or missing value then VARPUT and
 VALIDATE on that variable with a value "" will generally return 3 (undefined [would be]
 stored). The exception is with CAT VARS and DATES where VALIDATE returns 2 (but VARPUT
 correctly returns 3). VALIDATE should return 3 as well.

 In PQLForms if you leave a cat var or date blank then you get an error message and it
 won't let you leave the field until you put a valid value in (not even to go to the drop
 down list to see what is valid).
EXAMPLE PROGRAM
 program
 STRING*3 TESTCAT
 DATE TESTDATE ("DDMMYYYY")
 CAT VARS TESTCAT ("ONE","TWO")

 SET TESTCAT("ONE") TESTDATE("15012008")

 write "VALIDATE CATVAR = " [validate(-1,"TESTCAT","")]
 write "VARPUT CATVAR   = " [varput("TESTCAT","")]
 write "CATVAR =          " TESTCAT " (MISNUM " [misnum(TESTCAT)] ")" /

 write "VALIDATE DATEVAR = " [validate(-1,"TESTDATE","")]
 write "VARPUT DATEVAR   = " [varput("TESTDATE","")]
 write "DATEVAR =          " TESTDATE " (MISNUM " [misnum(TESTDATE)] ")" /

 end program

 VALIDATE CATVAR = 2
 VARPUT CATVAR   = 3
 CATVAR =          *  (MISNUM 0 )

 VALIDATE DATEVAR = 2
 VARPUT DATEVAR   = 3
 DATEVAR =          ********  (MISNUM 0 )
WORKAROUND
define BLANK as a missing value.
Back to SPR List Previous Next