This code works perfectly to change the tagset. data _null_;
file "D:\blah1.xml" infile "D:|blah.xml" input;
if index(_infile_,"P_OFFSET>") > 0 then do;
begin = indexc(_infile_,'>');
end = index(_infile_,'</');
_infile_ = substr(_infile_,1,begin) !! '1000' !! substr(_infile_,end);
end;
put _infile_; run; When I add a macro statement like this, it creates different xml files, but the value in P_offset remains '&i' %macro file();
%do i=1 %to 5;
_data _null_;
file "D:\blah&i..xml";
infile "D:\blah.xml";
input;
if index(_infile_,"P_OFFSET>") > 0 then do;
begin = indexc(_infile_,'>');
end = index(_infile_,'</');
_infile_ = substr(_infile_,1,begin) !! '&i' !! substr(_infile_,end);
end;
put _infile_;
run;
%end;
%mend file();
%file;
Thanks for the time and effort you have already put! 🙂
... View more