I am able to start the parallel processing procedure but it is failing to bring over my macro variables. I am using the %syslput _all command to bring them over. This is usuing a Linux based system. Does anyone know how I could bring over my Marco variables in parallel processing?
Please post a complete example of your code. Did you SIGNON first before using %SYSLPUT?
It appears that it is not bringing in any of my macro variables.
Code I am using:
signon task&threadnum inheritlib=(risk);
rsubmit wait=no log="&basedir./task&threadnum..log" output="&basedir./task&threadnum..lst";
%syslput _all_;
%put _all_;
data risk.servings_thread&threadnum._&scenario (keep=scenario estnum lotnum servnum serving_conc serving_weight serving_cfu random);
set risk.lots_&scenario (where=(&beginest <= estnum <= &endest));...................
Error I am getting:
WARNING: Apparent symbolic reference THREADNUM not resolved.
1 data risk.servings_thread&threadnum._&scenario (keep=scenario estnum lotnum servnum
-
22
200
1 ! serving_conc serving_weight serving_cfu random);
WARNING: Apparent symbolic reference SCENARIO not resolved.
This should work. You are copying local macro variables up to your RSUBMIT server session.
signon task&threadnum inheritlib=(risk);
%syslput _all_;
rsubmit wait=no log="&basedir./task&threadnum..log" output="&basedir./task&threadnum..lst";
%put _all_;
endrsubmit;
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.