DM "Clear log";
/**********************************************************************
Protocol: 109403
Purpose: Listing 1 Inform Consent Date
************************************************************************/
%let filenm=L0001 ;
%include "&drv\header.sas" ;
proc format ;
value yesno 1='Yes' .='No';
run ;
data raw01;
set mdata.elig;
length flag $3;
patid=compress(put(subjid, best.));
*if icdt^='' and eligyn='1 - Yes';
eligyn=substr(left(trim(eligyn)), 5);
ietest=substr(left(trim(ietest)), 5);
icdtn=input(compress(icdt, '-'), date9.);
indexdtn=input(compress(indexdt, '-'), date9.);
if icdtn<indexdtn then flag='Yes';
label patid='Subject ID'
visit='Visit'
icdt='Date of Informed Consent Signed'
indexdt='Date of Screen/Baseline Visit'
flag='Is Inform Consent Date earlier than The Screen/baseline Visit Date?';
format icdtn indexdtn date9.;
keep patid indexdt visit icdt icdtn indexdtn flag eligyn ietest;
run;
proc sort data=raw01; by patid; run;
proc sql;
select distinct compress(put(count(distinct patid), 3.)) into :tot
from raw01;
quit;
*%let tot=%left(%trim(&tot));
%&filenm ;
proc printto new print="&incoming" ; run ;
options nodate nonumber ;
proc report data=raw01 split='\' headskip headline missing center nowd formchar(2)="_" ;
column patid visit indexdt icdt flag eligyn ietest;
define patid / order width=15 order=internal ;
define indexdt / display width=15 left flow order=internal ;
define visit / display width=20 left flow order=internal ;
define icdt / display width=15 left flow order=internal ;
define flag / display width=20 left flow order=internal ;
define eligyn / display width=15 left flow order=internal ;
define ietest / display width=15 left flow order=internal ;
break after patid/skip ;
run ;
proc printto ; run ;
%pgxofy ;
%ST2WORD_sngl(&drv\OUTPUT,&drv\output\WORD,&filenm) ;
%clearall ;



雷达卡



京公网安备 11010802022788号







