what is the difference between %put and symbolgen?
Answer Posted / basha
both are used bebugging of macros
%put stmt write the text or macro variable information
like all macro global variables
where as
symbolgen display what macro variable resolves the value
ex;
%let v=sas;
symbolgen displays
macro variable v resolves to sas
this is especially useful when macro variables resolves
other than that u expected
%put stmt is also used with in the macro
symbolgen must be used options stmt
debugging macro with %put stmt
%put &d;
log:macrovariable d resolves to 'some-value '
regarda
basha
if any suggestion of this answer please mail
me:bashag3@yahoo.com
| Is This Answer Correct ? | 3 Yes | 0 No |
Post New Answer View All Answers
Do you know the features of sas?
Where do you use proc means over proc freq?
What are the implications?
what is the difference between floor and ceil functions in sas? : Sas-administrator
how could you generate test data with no input data? : Sas programming
For a user to have access to a standard workspace server, is internal authentication alone is sufficient? : sas-grid-administration
What is maximum storage capability of SAS?
what is sas olap server? : Sas-di
What is the sas data set? : sas-grid-administration
How necessary is it to be creative in your work?
what is factor analysis? : Sas-administrator
Hello, I have PROC SQLs results group by 3 fields and I use SUM and COUNT functions in SQL. The problem is when I try to display my result with PROC TABULATE. I am getting very big numbers. I believe I make a mistake some where in Tabulate. Here is my Proc Tabulate. PROC TABULATE DATA=OUT04_05 FORMAT=12.; CLASS YR CENTRE VISA / PRELOADFMT EXCLUSIVE; VAR NEWUSER FRAUD TRANSFER AUTUSER REISSUE; TABLE CENTRE ALL, (YR ALL)*VISA, (NEWUSER*F=COMMA12. AUTUSER*F=COMMA12. FRAUD*F=COMMA12. TRANSFER*F=COMMA12. REISSUE*F=COMMA12.) / MISSTEXT={LABEL='0'} PRINTMISS RTS=20; FORMAT VISA VISAFMT.; KEYLABEL SUM = ' ' ALL = 'TOTAL'; LABEL YR = 'DATE YEAR' NEWUSER = 'TOTAL NEW ACCT' TRANSFER = 'TOTAL TRANSFER' FRAUD = 'TOTAL FRAUD TRANSFER' AUTUSER = 'TOTAL AUTH USERS' REISSUE = 'TOTAL REISSUE'; When I code it like : NEWUSER*N*F=COMMA12. AUTUSER*N*F=COMMA12. I get same amount numbers but to find a NEWUSER I use COUNT(*) and to find AUTUSER I use SUM(xxxx) function so both result shouldn’t be the same my problem is in this point. Could you tell me where the problem in code is. How can I display my result? TX.
what is program data vector? : Sas-administrator
What is the purpose of trailing @ and @@? How do you use them?
what do the sas log messages "numeric values have been converted to character" mean? What are the implications? : Sas programming