When you use proc import, the data step it creates (read the log - Maxim 2) has code in it that reacts to problems in reading the data (it checks for the automatic _ERROR_ variable), and sets a macro variable that is later used to trigger the "Import unsuccessful" message.
The ERRORS= system option defines how many NOTEs for invalid data are written to the log; once this number is exceeded, a WARNING is issued and the SYSCC automatic macro variable is set to non-zero (if it wasn't already).
So you now need to carefully read the log of that automatically created data step, and inspect your input data at the positions mentioned. Once you know what caused the problem, you can adapt the data step code yourself (copy it from the log, holding down the Alt key to remove the line numbers). Or you might find that the input data is faulty and needs to be fixed by the source.
Note that proc import is only provided as a helper for a "quick shot" import, not for consistent, production-type use.
... View more