Two Nations Divided by Uncommon Date Formats
Does 12/06/2004 mean the 12th of June or December 6th? It depends which side of the pond you happen to be sitting.
With V9, SAS introduced new informats ANYDTDTE, ANYDTDTM and ANYDTTME to handle the input of respectively dates, date/time values, and times. These informats do not need to be told the format of the input data; they have been designed to deduce it for themselves, and can handle a variety of different formats. They can cope with any or all of DATE, DATETIME, DDMMYY, JULIAN, MMDDYY, MONYY, TIME, YYMMDD and YYQ.
So what do these "any date" formats do when presented with something ambiguous like "12/06/2004"? That depends on the setting of the DATESTYLE system option. This can take any of the values YMD, YDM, MDY, MYD, DMY, DYM, or (the default) LOCALE. LOCALE means that the default date format is the one implied by the LOCALE system option.
The LOCALE option determines the default values for ENCODING, DFLANG and PAPERSIZE as well as DATESTYLE. The default value for LOCALE is English_UnitedStates. Other values supported include English_UnitedKingdom, English_Australia, English_Canada, English_Jamaica etc.