Date: Tue, 11 Mar 2008 06:28:16 -0700
Reply-To: Captain <apsteinberg@HOTMAIL.COM>
Sender: "SAS(r) Discussion" <SAS-L@LISTSERV.UGA.EDU>
From: Captain <apsteinberg@HOTMAIL.COM>
Organization: http://groups.google.com
Subject: %NTSTR and %NRQUOTE
Content-Type: text/plain; charset=ISO-8859-1
Hi all,
I need to pass in macro parameter as part of a macro call:
%header_qc(recd_file_name=claim
,hdr_column1=%nrstr(L1;L2)
,hdr_column2=%nrstr(L3;L4)
,hdr_column3=%nrstr(L5;day&time;:L6;)
,hdr_column4=%nrstr(L9;L9));
Then create a call symput as part of the macro program:
data _null_;
infile "&dwnl_fold.&&&recd_file_name." MISSOVER DSD lrecl=2000
termstr=crlf;
if _n_=1 then input;
call
symput('headers_match',put(upcase(compress(_infile_))=upcase(compress("&hdr_column1."||"&hdr_column2."||"&hdr_column3."||"&hdr_column4.")),
1.));
call symput('new_header',put(upcase(compress(_infile_)),
$2000.));
call symput('expected_header',put(upcase(compress
("&hdr_column1."||"&hdr_column2."||"&hdr_column3."||"&hdr_column4.")),
$2000.));
run;
Later on I need to call the macro created in the call symput
%put | File:
&&recd_file_name.
%put | Expected header matches incoming
header ;
%put | incoming file header:
&new_header. ;
%put | expected file header: &expected_header.
I getting the following warning in my log:
WARNING: Apparent symbolic reference TIME not resolved.
I know it is because of the &time part of the call symput, but can not
get it to mask the & when calling it. I have tried many of the macro
surpression functions, but can not get it to mask the &time to just
pass it through as txt and not give me the warning.
Any thoughts would be great
Thanks sorry for the long message.
|