BUG: SET("DATE","TO") Returns "0" Rather Than Valid Setting

ID: Q193506


The information in this article applies to:
  • Microsoft Visual FoxPro for Windows, versions 5.0, 5.0a, 6.0


SYMPTOMS

Running the following command returns a zero (0) rather than a valid DATE variable setting (such as AMERICAN):


   SET("DATE","TO") 
The zero might be a one or a two, depending on the date setting.


CAUSE

The SET("DATE") function supports a second argument that reports the date ordering. This second argument is documented as the number 1 in the Help file. If the SET("DATE") function detects a second argument, it reports the date ordering whether this argument is a number, logical, date, character or null value. Although using something other than the number 1 as the second argument does not cause an error, it should be avoided. Future changes to Visual FoxPro could cause the SET("DATE",<not 1>) syntax to create an error.


RESOLUTION

Rather than using the command SET("DATE","TO"), use the command SET("DATE"). If date ordering is desired, use the SET("DATE",1) syntax.


STATUS

Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article.


MORE INFORMATION

Use the following code in the Visual FoxPro Command window to explore the values returned by the SET("DATE") function when it is given a second argument:


   SET DATE TO "British"
   ? SET("DATE")
   ? SET("DATE",1)   && British dates are ordered DMY, this returns 1.
   ? SET("DATE","Hello")
   ? SET("DATE",.NULL.)
   ? SET("DATE",.F.)
   ? SET("DATE",{05/05/05})
   ? SET DATE TO "YMD"
   ? SET("DATE","TO") 

Steps to Reproduce Behavior

Run the following code from the Visual FoxPro Command window:

   SET DATE TO "American"
   ? SET("DATE","TO")
   ? SET("DATE") 
Notice the difference in what each returns.

Additional query words: kbXBase kbVFp500abug kbVFp600bug

Keywords :
Version : WINDOWS:5.0,5.0a,6.0
Platform : WINDOWS
Issue type : kbbug


Last Reviewed: December 10, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.