Planck, It is very hard to tell what is wrong with your code when we do not know what the %MACRO1 macro is supposed to do. When you say it is running for a very long time without answers. does that mean that you never see the "source2" code in the log? In that case it seems to mean that the first call of %MACRO1 is somehow stuck and just hangs. What happens if you open the generated program in an editor and submit line by line? That is the great advantage of generating a file instead of using CALL EXECUTE or such: when developing/testing, you can take a good, long look at the generated code before submitting it, and you can submit it one step at a time and check the output before you proceed. BTW, you put the put '%union(partnumber = ' nb')' ; after the "stop;" statement in your datastep, meaning that it does not get written to the code file. Regards, Søren
... View more