Hi @ismahero2,
As you noted, EG sets the SYSLAST macro variable when you draw an explicit link to a program. You can see this by inspecting your log. You'll see a line similar to this near the top of your program log:
3 %LET SYSLAST=WORK.MYCLASS;
This provides a convenient alternative to hard-coding input data in your program. Rather than hard-coding your input table, you can use &SYSLAST macro variable references in your code and then whatever data node you link to the program in the process flow will be used as input to your program. This also makes it easy to change the input data to your program without having to change the code... just link a different data set node to the program.
I have not been able to reproduce any problems that resemble what you describe. Please provide steps to reproduce, what version of EG you are using (in EG's Help->About), and the SAS server version you are running against (the %put &sysvlong; output in your SAS log).
Here is what I tried (using EG 7.15 HF7 against a SAS 9.4M3 server):
First I submitted the following code to created two data sets in my project, one with a standard name and one with an extended name:
data myclass;
set sashelp.class;
run;
data 'my class'n;
set sashelp.class;
run;
Then, I created two additional program nodes with this code:
%put &sysvlong;
%put &syslast;
proc options option=_last_;
run;
Then, in the process flow I explicitly linked the MYCLASS data node to one of the programs and the "My CLASS" data node to the other program. (Note: You can explicitly link nodes in the process flow by hovering near the right of the source node icon until the cursor turns into crosshairs, then drag the line to the node you wish to link to, or you can right-click the source node, select the "Link to..." context menu, and choose the node you wish to link to.)
Finally, I ran the two programs that I linked the data nodes to and inspected their logs. The output for both (below) was as expected, with no errors:
32 %put &sysvlong;
9.04.01M3P062415
33 %put &syslast;
WORK.MYCLASS
34
35 proc options option=_last_;
36 run;
SAS (r) Proprietary Software Release 9.4 TS1M3
_LAST_=WORK.MYCLASS
Specifies the most recently created data set.
32 %put &sysvlong;
9.04.01M3P062415
33 %put &syslast;
WORK.'MY CLASS'n
34
35 proc options option=_last_;
36 run;
SAS (r) Proprietary Software Release 9.4 TS1M3
_LAST_=WORK.MY CLASS
Specifies the most recently created data set.
If you provide additional information (simple steps to reproduce and EG and SAS version information), I'll be happy to take a look.
Casey
... View more