Recommendation: Do not use relative paths as you may not be executing where you think you are. I always start all paths with a drive identifier (running windows), or a UNC path including the server and mount point.
What code did you actually submit? That would likely be either a Filename or possibly and Infile statement.
If you try to use !sasroot you are almost always going to encounter a problem with either missing folders or permissions not allowed to write there, especially in a server environment. If you used an environment variable then that variable really needs to include a mount point or such.
BTW, datasets almost never should be "read into a macro". Possibly "read by a macro".