Is your SAS server OS Windows or Unix/Linux?
Right now you're using a Windows DIR command with a Unix path....
Your log shows that macro variable &fn1 doesn't exist and because you're using it as part of a path the path won't be valid even after you fix the rest of the path.
Not sure why you're creating all these macro variables &fn<n> given that you later on only try to use &fn1 ...which obviously doesn't get created.
If you really need all these macro variables then replace this incomplete list of IF statements with code like below.
....but first you need to get your logic right.
... View more