Importing files with comma delimiters, tab delimiters, or other delimiters results in "invalid data" messages in the SAS® log


Importing a comma-delimited file, tab-delimited file, or a file with another type of delimiter can result in the following message in the SAS log:

NOTE: Invalid data for variable-name in line line-number.

This message appears when the SAS program encounters a date that is missing the day portion. For example, if your date values are set to use a YYYYMMDD informat and the program encounters a YYYYMM date, the “invalid data” message appears because the day portion (DD) is missing. The variable is entered as a numeric variable with the YYMMDD10. informat and format. Prior to SAS® 9.4M6 (TS1M6), the variable was entered as a character variable with a width of 10.

There are two ways to circumvent the problem. The first workaround is to recall the generated DATA step code. Then modify the INFORMAT and FORMAT statements to use the $10. informat and the $10. format instead of the YYMMDD10. informat and format. Then resubmit the code.

The second workaround is to write a DATA step with INFILE and INPUT statements to read the external file.