06-04-2016 03:21 AM
06-04-2016 12:49 PM
Since the infile can dynamically change during data step execution (ie by using the filevar= option), the position of the infile statement within the code is important.
06-04-2016 12:50 PM
The order of the INFILE and INPUT statements matter because they are executale statements. You can have multiples of each in the same data step. You could have an INPUT statement before any INFILE statement, but then it would expect there to be a CARDS (datalines) statement for it to find the data to read.
What variables are defined in your data step are determined when the step is compiled. The order of the variable is determined by the order that the complier sees them. When the INPUT statement runs it will place the values it reads into the locations for those variables.