Hi,
I have multiple XML file, file1.xml, file2.xml, file3.xml. I want to convert each XML file into SAS dataset using macro do loop.
I have the following syntax to convert XML file into SAS dataset but I don't know how to use the %do loop to this script.
filename File 'C:\Users\Desktop\XML Files\File1.xml';
filename SXLEMAP 'C:\Users\DesktopC:\Users\Desktop\XML Files\File1.map';
libname File xmlv2 xmlmap=SXLEMAP access=READONLY;
/*
* Catalog
*/
proc datasets lib= File; run;
/*
* Contents
*/
proc contents data= File.queryResponse varnum; run;
/*
* Printing
*/
title 'Table queryResponse';
proc print data= File.queryResponse; run;
title;
/*
* Local Extraction
*/
DATA file; SET File.queryResponse; run;
Appreciating your help.
Thanks!
%macro do_what_you_want(startnum,endnum);
%do i = &startnum %to &endnum;
filename file "C:\Users\Desktop\XML Files\File&i..xml";
filename SXLEMAP "C:\Users\DesktopC:\Users\Desktop\XML Files\File&i..map";
libname file xmlv2 xmlmap=SXLEMAP access=READONLY;
proc datasets lib=file;
run;
proc contents data=file.queryresponse varnum;
run;
title "Table queryResponse from File File&i..xml";
proc print data=file.queryresponse;
run;
title;
data file&i;
set file.queryresponse;
run;
%end;
%mend;
%do_what_you_want(1,3);
%macro do_what_you_want(startnum,endnum);
%do i = &startnum %to &endnum;
filename file "C:\Users\Desktop\XML Files\File&i..xml";
filename SXLEMAP "C:\Users\DesktopC:\Users\Desktop\XML Files\File&i..map";
libname file xmlv2 xmlmap=SXLEMAP access=READONLY;
proc datasets lib=file;
run;
proc contents data=file.queryresponse varnum;
run;
title "Table queryResponse from File File&i..xml";
proc print data=file.queryresponse;
run;
title;
data file&i;
set file.queryresponse;
run;
%end;
%mend;
%do_what_you_want(1,3);
Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.
Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.
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.