So i wanted to create a macro with a loop. Basically what the macro would do is loop through for a certain number of days. The program is made up of a few parts, first a temporary table is created with the data using create table, then i have a code for it to be stored into the DB. I need the macro to loop through it for a X number of days.
%Macro....;
%do i=to to &..
proc sql;
creat table...
proc sql;
create table..
data_Null;
set work...
proc sql no print;
run;
%end
%mend datastorage
This would be the structure of it. However i keep getting the error of
ERROR: The following columns were not found in the contributing tables: i.
Can someone explain to me if this is possible and what i am doing wrong?
What's possible?
Sorry, your question is extremely vague and its hard to comment on it.
But overall, yes its possible, but it might not be the best solution for your problem anyways.
EDIT:
If you're looping through a macro make sure you're using
%do %to %if %else etc to control execution
Your error makes me believe that you are trying to reference the intended macro variable i, which you should reference as &i, in a position in the sql code where a variable from a table is expected.
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
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.