代码:
%macro mpacc;
%do i=2008 %to 2013;
data y&i;
set t;
fyear=&i;
rename eps&i=eps roe&i=roe;
label eps&i='eps' roe&i='roe';
stkcd1=substr(stkcd,1,6);
keep stkcd1 eps&i roe&i fyear;
run;
data b
set b a;
run;
%end;
%mend;
%mpacc;
log:
1 OPTIONS NONOTES NOSTIMER NOSOURCE NOSYNTAXCHECK;
2 OPTIONS LOCALE=zh_CN DFLANG=LOCALE;
WARNING: The quoted string currently being processed has become more than 262 bytes long. You might have unbalanced quotation
marks.
44 %let dsname=%scan(&syspbuff,&num,',()');
___
49
NOTE 49-169: 加引号字符串后的标识符的含义可能在将来的 SAS 版本中更改。
建议在加引号的字符串和其后的标识符之间插入空格。
3 FILENAME _WEBOUT TEMP;
4 FILENAME _RTFOUT TEMP ENCODING='UTF-8';
5 FILENAME _PDFOUT TEMP ;
6 OPTIONS PRINTERPATH=PDF;
7 FILENAME _GSFNAME TEMP;
8 FILENAME _DATAOUT TEMP;
9 %LET SYSCC=0;
10 %LET _CLIENTAPP=SAS Studio;
11 %LET _CLIENTAPPVERSION=3.1;
12 %LET _SASPROGRAMFILE = %BQUOTE();
13 DATA _NULL_;
14 CALL SYMPUT("GRAPHINIT","");
15 CALL SYMPUT("GRAPHTERM","");
WARNING: The quoted string currently being processed has become more than 262 bytes long. You might have unbalanced quotation
marks.
4 FILENAME _RTFOUT TEMP ENCODING='UTF-8';
__
49
NOTE 49-169: 加引号字符串后的标识符的含义可能在将来的 SAS 版本中更改。
建议在加引号的字符串和其后的标识符之间插入空格。
16 RC=TSLVL('GEOCODE');
17 _ERROR_=0;
18 IF (RC^=' ' ) THEN DO;
19 CALL SYMPUT("GRAPHINIT","GOPTIONS RESET=ALL GSFNAME=_GSFNAME;");
20 CALL SYMPUT("GRAPHTERM","GOPTIONS NOACCESSIBLE;");
21 END;
22 RUN;
23 %LET _DATAOUT_MIME_TYPE=;
24 %LET _DATAOUT_NAME=;
25 %LET _DATAOUT_TABLE=;
26 %LET _DATAOUT_URL=;
27 %SYMDEL _DATAOUT_MIME_TYPE _DATAOUT_NAME _DATAOUT_URL _DATAOUT_TABLE;
WARNING: The quoted string currently being processed has become more than 262 bytes long. You might have unbalanced quotation
marks.
28 %LET _SASWS_ = %BQUOTE(/folders/myfolders);
29 %LET _SASWSTEMP_=%BQUOTE(/folders/myfolders/.images/ae0aa3d8-a2ad-40bd-bed1-aaaa221c4ce5);
18 IF (RC^=' ' ) THEN DO;
____________
49
NOTE 49-169: 加引号字符串后的标识符的含义可能在将来的 SAS 版本中更改。
建议在加引号的字符串和其后的标识符之间插入空格。
30 ODS LISTING CLOSE;
31 ODS LISTING GPATH="&_SASWSTEMP_";
32 ODS AUTONAVIGATE OFF;
33 ODS GRAPHICS ON;
34 ODS HTML5 (ID=WEB) DEVICE=PNG GPATH="&_SASWSTEMP_" ENCODING=utf8 FILE=_WEBOUT (TITLE='Results: 程序
34 ! 2') STYLE=Htmlblue OPTIONS(BITMAP_MODE='INLINE' SVG_MODE='INLINE' CSS_PREFIX='#ods_ae0aa3d8-a2ad-40bd-bed1-aaaa221c4ce5'
_______________________________________ ____________
49 49
34 ! BODY_ID='div_ae0aa3d8-a2ad-40bd-bed1-aaaa221c4ce5' );
NOTE 49-169: 加引号字符串后的标识符的含义可能在将来的 SAS 版本中更改。
建议在加引号的字符串和其后的标识符之间插入空格。
35 ODS RTF (ID=WEB) STYLE=Rtf FILE=_RTFOUT
36 ;ODS PDF (ID=WEB) STYLE=Pearl FILE=_PDFOUT
37 ;&GRAPHINIT;
38 OPTIONS FIRSTOBS=1;
39 OPTIONS OBS=MAX;
40 OPTIONS DTRESET DATE NUMBER NOTES;
41 OPTIONS NOTES STIMER SOURCE NOSYNTAXCHECK;
42 ;
43 %macro mpacc;
44 %do i=2008 %to 2013;
45 data y&i;
46 set t;
47 fyear=&i;
WARNING: The quoted string currently being processed has become more than 262 bytes long. You might have unbalanced quotation
marks.
48 rename eps&i=eps roe&i=roe;
49 label eps&i='eps' roe&i='roe';
49: 无法确定 LINE 和 COLUMN。
NOTE: NOSPOOL 已打开。用 OPTION SPOOL 重新运行可恢复出错的 LINE 和 COLUMN。
NOTE 49-169: 加引号字符串后的标识符的含义可能在将来的 SAS 版本中更改。
建议在加引号的字符串和其后的标识符之间插入空格。
49 label eps&i='eps' roe&i='roe';
_________
49
NOTE 49-169: 加引号字符串后的标识符的含义可能在将来的 SAS 版本中更改。
建议在加引号的字符串和其后的标识符之间插入空格。
50 stkcd1=substr(stkcd,1,6);
51 keep stkcd1 eps&i roe&i fyear;
52 run;
53 ;
54 OPTIONS NONOTES NOSTIMER NOSOURCE NOSYNTAXCHECK;
55 ODS HTML CLOSE;
56 &GRAPHTERM;
57 ;*';*";*/;QUIT;RUN;
58 QUIT;RUN;
59 ODS HTML5 (ID=WEB) CLOSE;
60 ODS RTF (ID=WEB) CLOSE;
61 ODS PDF (ID=WEB) CLOSE;
62 FILENAME _GSFNAME;
63 OPTIONS NOTES STIMER SOURCE SYNTAXCHECK;
64 ;