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.
Available on demand!
Missed SAS Innovate Las Vegas? Watch all the action for free! View the keynotes, general sessions and 22 breakouts on demand.
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.