*Marvin Blase : Determine which FOXPRO DATE Format is used because of VFP8 Bug #define LOCALE_SSHORTDATE 0x001F &&short date-time separator #define LOCALE_IDATE 0x0021 &&short date format ordering DECLARE SHORT GetUserDefaultLCID IN kernel32 DECLARE INTEGER GetLocaleInfo IN kernel32 INTEGER Locale,INTEGER LCType,STRING @ lpLCData,INTEGER cchData LOCAL lcBuffer, lcShortdateFormat,lcFoxDateFormat,lnLocale_dateformat,lnLocale lcFoxDateFormat = "" lcBuffer = SPACE(255) lnLocale = GetUserDefaultLCID() GetLocaleInfo(lnLocale,LOCALE_SSHORTDATE, @lcBuffer,LEN(lcBuffer)) lcShortdateFormat = UPPER(LEFT(lcBuffer,AT(CHR(0),lcBuffer)-1)) lcShortdateFormat = STRTRAN(lcShortdateFormat,"YYYY","YY") DO CASE CASE lcShortdateFormat="MM/DD/YY" &&AMERICAN mm/tt/jj lcFoxDateFormat = "AMERICAN" CASE lcShortdateFormat="YY.MM.DD" &&ANSI jj.mm.tt lcFoxDateFormat = "ANSI" CASE lcShortdateFormat="DD/MM/YY" &&BRITISH/FRENCH tt/mm/jj lcFoxDateFormat = "BRITISH" CASE lcShortdateFormat="DD.MM.YY" &&GERMAN tt.mm.jj lcFoxDateFormat = "GERMAN" CASE lcShortdateFormat="DD-MM-YY" &&ITALIAN tt-mm-jj lcFoxDateFormat = "ITALIAN" CASE lcShortdateFormat="YY/MM/DD" &&JAPAN jj/mm/tt lcFoxDateFormat = "JAPAN" CASE lcShortdateFormat="MM-DD-YY" &&USA mm-tt-jj lcFoxDateFormat = "USA" OTHERWISE *!* MDY mm/tt/jj *!* DMY tt/mm/jj *!* YMD jj/mm/tt lcBuffer = SPACE(255) GetLocaleInfo(lnLocale,LOCALE_IDATE, @lcBuffer,LEN(lcBuffer)) lnLocale_dateformat = VAL(LEFT(lcBuffer,AT(CHR(0),lcBuffer)-1)) DO case CASE lnLocale_dateformat = 0 lcFoxDateFormat = "MDY" CASE lnLocale_dateformat = 1 lcFoxDateFormat = "DMY" CASE lnLocale_dateformat = 2 lcFoxDateFormat = "YMD" ENDCASE ENDCASE RETURN lcFoxDateFormat