Download presentation
Presentation is loading. Please wait.
Published byขวัญใจ บราวน์ Modified over 5 years ago
1
data tmp; do i=1 to 10; output; end; run; proc print data=tmp;
2
data tmp (password=XXX);
do i=1 to 10; output; end; run; proc print data=tmp;
3
data tmp (alter=XXX write=XXX);
do i=1 to 10; output; end; run; proc print data=tmp;
4
/* create some data to "protect"*/
libname pt "&path\tmp\protect"; proc copy in=tmp out=pt; select body; select nh1; run;
5
Protect an existing dataset.
/*protecting */ data tmp; do i=1 to 10; output; end; run; proc contents data=tmp; proc datasets lib=work; modify tmp (alter=XXX write=XXX);
6
/* create some data to "protect"*/
libname pt "&path\tmp\protect"; proc copy in=tmp out=pt; select body; select nh1; run;
7
A simple macro %macro protect(lib,dsn,pass); proc datasets lib=&lib;
modify &dsn (alter=&pass write=&pass); run; %mend protect;
8
proc contents data=pt._all_;
run; %protect(pt,body,XXX) %protect(pt,nh1,XXX)
9
%macro passlib(lib,password);
%let uplib=%sysfunc(upcase(&lib)); proc sql; select count(*) into :numfiles from dictionary.tables where libname="&uplib" and not (protect contains "WA") ; select memname into :file1- quit; proc datasets lib=&lib; %do i=1 %to &numfiles; modify &&file&i (alter=&password write=&password); %end; %mend;
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.