У меня есть работающая таблица представления SAS, но исходный код, который создает это представление, потерян.Можно ли извлечь его непосредственно из самого файла представления?
Вы также можете попробовать:
data view = myview; describe; run;
Скорее всего, это сработает, если вы запустите его в той же системе, где изначально был создан myview.
myview
Многие представления в SAS создаются с помощью PROC SQL.Просмотр данных очень редок.Таким образом, DESCRIBE VIEW может работать.
proc sql; describe view VIEWNAME; quit;
ПРИМЕЧАНИЕ: код представления будет записан в журнал
DESCRIBE; Without Arguments Use the DESCRIBE statement to retrieve program source code from a stored compiled DATA step program or a DATA step view. SAS writes the source statements to the SAS log. 25 data v / view=v; 26 set sashelp.class; 27 if sex eq 'F'; 28 run; NOTE: DATA STEP view saved on file WORK.V. NOTE: A stored DATA STEP view cannot run under a different operating system. NOTE: DATA statement used (Total process time): real time 0.00 seconds cpu time 0.00 seconds 29 30 data view=v; 31 describe; 32 run; NOTE: DATA step view WORK.V is defined as: data v / view=v; set sashelp.class; if sex eq 'F'; run;
Это не красиво, но вы можете прочитать определение из самого файла двоичного представления.
См. Следующий пример:
data myview /view=myview; set sashelp.class; x=age; height=age*x; run; data _null_; infile "%sysfunc(pathname(work))/myview.sas7bvew"; input; put _infile_; run;
Что дает ниже в журнале: