I m 试图制定从过去的记录看的SAS代码,重开失败的报告,并通报重新运行的状况。 I m 运用和安装;syscc. 宏观,以检查在我重新开张的尝试中是否有错误,并在每次尝试之间重新确定错误。 然而,Im在一种宏观百分数的 lo体内陷入一个问题,因为cc没有显示正确的错误代码。 I.e. 它没有显示第一胎的错误,尽管它应当消失,然后又没有回落到零。 (与以下编码部分共享) 是否有其他办法使用玩具或另一种文字方式?
%macro rerunner();
%do i=1 %to &numrecs;
%put &i;
/*selecting a log and code*/
proc sql;
select cname into : selected_code separated by ,
from code_logs
where rown=&i;
quit;
proc sql;
select lname into : selected_log separated by ,
from code_logs
where rown=&i;
quit;
/*counting errors*/
data _null_;
infile "&loglocation./&selected_log." end=last;
input;
if _infile_ =: ERROR then error_count+1;
if last and error_count >=1 then CALL EXECUTE( %rerun(&selected_log. , &selected_code.) ) ;
if last and error_count < 1 then CALL EXECUTE( %no_rerun(&selected_log.) ) ;
run;
%end;
%mend;
%macro rerun(log,code);
%let syscc = 0;
%include "&codelocation./&code." ;
%if &syscc. <= 6 %then %do;
%success(&log.);
%end;
%else %do;
%failure(&log.)
%end;
%mend;
...
%rerunner();