MACRO TAB CONV
Version vom 6. März 2014, 12:42 Uhr von Wolf-Dieter Batz (Diskussion | Beiträge)
Type
User module from Phase-III Macro System based on Fractal System Architecture.
Workflow / Source
%MACRO TAB_CONV(dsn=,row=,col=,stats=,num=,stat=Y,pvalue=,nulltxt=N) / store des="Create Table from N continuous SuperRows" ; %LOCAL n_lst v_lst n row_n name; %LET name=TAB_CONV; proc datasets nolist lib=work; delete %SUBSTR(&TAB_NAME,1,3)&NUM%SUBSTR(&TAB_NAME,5,4); run; quit; %CHK_LIST(list=&ROW); %DO n=1 %TO &N_LST; %LET row_n=%SCAN(&ROW,&N); %IF &TAB_NAME eq %THEN %DO; %BLK_CONV(dsn=&DSN,row=&ROW_N,col=&COL,stats=&STATS,num=%EVAL(&NUM+&N-1),stat=&STAT,nulltxt=&NULLTXT); %END; %IF &TAB_NAME ne %THEN %DO; %BLK_CONV(dsn=&DSN,row=&ROW_N,col=&COL,stats=&STATS,num=0,stat=&STAT,pvalue=&PVALUE,nulltxt=&NULLTXT); proc append base=%SUBSTR(&TAB_NAME,1,3)&NUM%SUBSTR(&TAB_NAME,5,4) data=%SUBSTR(&TAB_NAME,1,3)0%SUBSTR(&TAB_NAME,5,4); run; proc datasets nolist lib=work; delete %SUBSTR(&TAB_NAME,1,3)0%SUBSTR(&TAB_NAME,5,4); run; quit; %END; %END; %GEN_MAIL(name=&NAME); %MEND TAB_CONV; |