*************************************************************************************************; * * CLIENT: ModernaTX, Inc. * PROTOCOL: mRNA-1273-P301 * * PURPOSE: Create analysis dataset adex * * INPUT FILES: SDTM domains * OUTPUT FILES: ADEX.sas7bdat * * USAGE NOTES: * *************************************************************************************************; * Copyright 2020 Pharmaceutical Product Development, Inc. * All Rights Reserved. *************************************************************************************************; %include "madam.sas"; **Assign global macro variable DSETNAME to reflect the name of the final ADaM dataset**; %global DSETNAME; %let dsetname = adex; %let adslvar=tr01sdt tr01sdtm tr01edt tr01edtm dose2dt dos2dtm AP02SSDT; **Merge supplemental data onto parent domain**; %revsupp(libin=trans,libout=work,ds=ec,supp=suppec,outds=ec_all); proc sort tagsort data=ec_all; by usubjid subjid; where (ECOCCUR='N'); run; proc sort tagsort data=trans.ex out=ex; by usubjid; run; data ec_adsl; merge ec_all(in=a) adb.adsl(in=b keep=USUBJID subjid &adslvar.); by usubjid subjid; if a and b; run; data ex_adsl; merge ex(in=a) adb.adsl(in=b keep=USUBJID subjid &adslvar.); by usubjid; if a and b; run; data adex; length visit $200 DOSEYNFL $1 NDOSERS NDOSRSP NDOSRSP1 NDOSRSP2 $200 SRCDOM $20; set ex_adsl(rename=(visit=visit_)) ec_adsl(rename=(visit=visit_)); visit=visit_; %ISO2SAS(isodate=exstdtc, datec=_exstdtc, daten=ASTDT, timec=_astm); if ^missing(_astm) and ^missing(ASTDT) then ASTDTM = input(compress(put(ASTDT,date9.)||':'||_astm),datetime20.); if index(exendtc,'-----')=0 then AENDT=input(scan(exendtc,1,'T'),yymmdd10.); format ASTDT AENDT date9. astdtm DATETIME20.; if ~missing(EXSTDTC) then DOSEYNFL='Y'; else DOSEYNFL='N'; NDOSERS=ECREASOC; if domain='EX' then do; SRCDOM='EX'; SRCSEQ=EXSEQ; end; if domain='EC' then do; SRCDOM='EC'; SRCSEQ=ECSEQ; end; array _ndo(3) $200 exreassp exreasp1 exreasp2; NDOSRSP=strip(EXREASSP); NDOSRSP1=strip(EXREASP1); NDOSRSP2=strip(EXREASP2); * Period; if . dataset**; %* dod_vlm( type=ADAM, selmems=&DSETNAME, excmems=, specloc=&ADAM_SPEC_LOC, specname=&ADAM_SPEC, debug=N ); **Generate Enhanced Controlled Terminology for the ad dataset**; %* dod_enhcd_ct( type=ADAM, selmems=&DSETNAME, excmems=, specloc=&ADAM_SPEC_LOC, specname=&ADAM_SPEC, map_ct_nm=, map_ct_loc=, debug=N );