//*************************************************************/ //**** PROGRAM TO CONVERT LEGACY LAP FILE LAYOUT ***/ //**** TO NEW DATABASE LAYOUTS. ***/ //*************************************************************/ //**** *** MAINTENANCE *** ***/ //**** CHANGE THE JOB CARD TO REFLECT YOUR ENVIRONMENT ***/ //**** ***/ //**** CHANGE THE INPUT FILE NAME TO YOUR INPUT FILE NAME ***/ //**** ***/ //**** CHANGE THE FOUR OUTPUT FILE NAMES AND THE FILE NAMES ***/ //**** IN THE HOUSEKEEPING STEP TO YOUR FILE NAMES ***/ //*************************************************************/ //************ HOUSEKEEPING ********************************/ //DELETE EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=A //SYSIN DD * DELETE (BOR.UNIV.LOAD.LAP.PERDEMO) DELETE (BOR.UNIV.LOAD.LAP.APPLADM) DELETE (BOR.UNIV.LOAD.LAP.TSTREQS) SET MAXCC = 0 /* //SELECT EXEC SAS WORK='20000,10000' //LAPIN DD DSN=BOR.MASTER.LAP.UNIV.Y0607,DISP=SHR //* //*--------------- OUTPUT FILES ------------------- */ //* //DEMOOUT DD DSN=BOR.UNIV.LOAD.LAP.PERDEMO, // DISP=(NEW,CATLG,DELETE),UNIT=SYSDA, // DCB=(LRECL=300,RECFM=FB,BLKSIZE=), // SPACE=(CYL,(20,10),RLSE) //LAPOUT DD DSN=BOR.UNIV.LOAD.LAP.APPLADM, // DISP=(NEW,CATLG,DELETE),UNIT=SYSDA, // DCB=(LRECL=300,RECFM=FB,BLKSIZE=), // SPACE=(CYL,(20,10),RLSE) //LTSTOUT DD DSN=BOR.UNIV.LOAD.LAP.TSTREQS, // DISP=(NEW,CATLG,DELETE),UNIT=SYSDA, // DCB=(LRECL=300,RECFM=FB,BLKSIZE=), // SPACE=(CYL,(20,10),RLSE) //SYSIN DD * OPTIONS ERRORS=1 NODATE NOSOURCE SYMBOLGEN MSTORED MISSING=' ' SASMSTORE=AUTOLIB; DATA LAPADMT(KEEP= TERMID APP_ADM_SOURCE UNIV SSN LAPDEG LAPDEG LAPCAT DEMO_TIME_FRAME DEMO_DATA_SOURCE LAPACT RGDCDE PERSON_ID URESV1 SYSID_SEQ PK_SEQ_NUM_APP REPT_TIME_FRAME REPT_INST UNIV_ROW_ID ROWSEQ_NBR COUNTY_OF_RES FEE_CLASS_RES ADM_DEPOSIT_IND STU_CLASS_LEVEL DISPLACED_STU_IND LAST_INST_CD INST_GRNT_HIDEG_CD DEG_HIGHEST_HELD LAST_POSTSEC_DT GPA_COLLEGE HS_ETS_CD LAST_SECONDARY_DT GPA_HIGH_SCHOOL GPA_GED_COMPONENT GPA_BACHELORS ESOL_UNITS DEPOSIT_AMT U_RESV_2 U_RESV_3) DEMOIN(KEEP= TERMID UNIV SSN RACE GENDER PERSON_ID DEMO_TIME_FRAME REPT_INST DEMO_DATA_SOURCE RACE_ETHNICITY HISPANIC_FLG AM_IND_ALASKAN_FLG ASIAN_FLG BLACK_AFRICAN_AM_FLG NAT_HAWAII_PAC_IS_FLG WHITE_FLG NON_RES_ALIEN_FLG URESV1 NO_RACE_REPORT_FLG PK_SEQ_NUM SYSID_SEQ UNIV_ROW_ID ROWSEQ_NBR PID_VALID_SSN BIRTH_YYYYMM_DT NAME_LAST NAME_FIRST NAME_MI SUFFIX) LAPTEST(KEEP= TERMID APP_ADM_SOURCE UNIV SSN LAPDEG LAPCAT PERSON_ID MINSTIN TEST_SCORE_TYP DEMO_TIME_FRAME DEMO_DATA_SOURCE REQ_MET URESV1 SYSID_SEQ PK_SEQ_NUM_TEST REPT_TIME_FRAME REPT_INST TCHR_PREP_DOE_CD TEST_REQ_CD UNIV_ROW_ID ROWSEQ_NBR NAME_FIRST NAME_MI NAME_LAST); RETAIN SYSID_SEQ UNIV_ROW_ID PK_SEQ_NUM PREV_TERM PK_SEQ_NUM_APP PK_SEQ_NUM_TEST CURRENT_TERMID ROWSEQ_NBR; INFILE LAPIN LRECL=80 TRUNCOVER; INPUT @1 LAPKEY $CHAR25. @1 UNIV $CHAR04. @5 TERMID $CHAR06. @5 TERMYR $CHAR04. @9 TERMMO $CHAR02. @11 SSN $CHAR09. @20 LAPDEG $CHAR06. @26 BOGRESV1 $CHAR19. @40 GENDER $CHAR01. @41 RACE $CHAR01. @42 MINSTIN $CHAR01. @43 LAPCAT $CHAR01. @44 LAPACT $CHAR01. @45 RGDCDE $CHAR01. @46 LCATSTU $CHAR01. @47 LSTUCAT $CHAR06. @53 BOGRESV2 $CHAR03. @56 URESV1 $CHAR25.; FORMAT DEMO_TIME_FRAME $CHAR08. REPT_TIME_FRAME $CHAR08. CURRENT_TERMID $CHAR08. REPT_INST $CHAR04. PERSON_ID $CHAR09. CIP_APP_ADM $CHAR06. U_RESV_1 $CHAR50.; UNIV_ROW_ID = _N_; REPT_INST = UNIV; DEMO_TIME_FRAME = TERMID; REPT_TIME_FRAME = TERMID; CURRENT_TERMID = TERMID; DEMO_DATA_SOURCE = 'LAP'; APP_ADM_SOURCE = 'LAP'; PERSON_ID= SSN; PID_VALID_SSN = 'Y'; REGISTERED_CD = RGDCDE; REQ_MET = MINSTIN; RACE_ETHNICITY = RACE; CIP_APP_ADM = LAPDEG; STU_TYP = LAPCAT; HISPANIC_FLG = '.'; AM_IND_ALASKAN_FLG = '.'; ASIAN_FLG = '.'; BLACK_AFRICAN_AM_FLG = '.'; NAT_HAWAII_PAC_IS_FLG = '.'; WHITE_FLG = '.'; NON_RES_ALIEN_FLG = '.'; NO_RACE_REPORT_FLG = '.'; U_RESV_1 = URESV1; TEST_REQ_CD = 'MS'; TEST_SCORE_TYP= 'R'; TCHR_PREP_DOE_CD = '.'; FORMAT PREV_TERM $CHAR08.; IF PREV_TERM NE CURRENT_TERMID THEN DO; PREV_TERM = CURRENT_TERMID; FORMAT PK_SEQ_NUM 8. PK_SEQ_NUM_APP 8. PK_SEQ_NUM_TEST 8.; PK_SEQ_NUM = 0; PK_SEQ_NUM_APP = 0; PK_SEQ_NUM_TEST = 0; PK_TERMID = CURRENT_TERMID; END; FORMAT SYSID_SEQ 1.; SYSID_SEQ = 1; FORMAT ROWSEQ_NBR 8.; ***********************************************************; * PERSON DEMOGRAPHICS - OUTPUT * ; ***********************************************************; UNIV_ROW_ID = _N_; RACE_ETHNICITY = RACE; HISPANIC_FLG = '.'; AM_IND_ALASKAN_FLG = '.'; ASIAN_FLG = '.'; BLACK_AFRICAN_AM_FLG = '.'; NAT_HAWAII_PAC_IS_FLG = '.'; WHITE_FLG = '.'; NON_RES_ALIEN_FLG = '.'; NO_RACE_REPORT_FLG = '.'; U_RESV_1= URESV1; IF URESV1 = ' ' THEN URESV1 = '.'; BIRTH_YYYYMM_DT = '.'; NAME_LAST = '.'; NAME_FIRST = '.'; NAME_MI = '.'; SUFFIX = '.'; PK_SEQ_NUM = PK_SEQ_NUM + 1; OUTPUT DEMOIN;*END; **********************************************************; * APPLICANTS ADMITS-OUTPUT ; **********************************************************; FORMAT U_RESV_1 $CHAR50.; U_RESV_1 = URESV1; IF URESV1 = ' ' THEN URESV1 = '.'; UNIV_ROW_ID = _N_; COUNTY_OF_RES = '.'; FEE_CLASS_RES = '.'; ADM_DEPOSIT_IND ='.'; STU_CLASS_LEVEL = '.'; DISPLACED_STU_IND = '.'; LAST_INST_CD = '.'; INST_GRNT_HIDEG_CD = '.'; DEG_HIGHEST_HELD ='.'; LAST_POSTSEC_DT = '.'; GPA_COLLEGE = '.'; HS_ETS_CD = '.'; LAST_SECONDARY_DT ='.'; GPA_HIGH_SCHOOL = '.'; GPA_GED_COMPONENT = '.'; GPA_BACHELORS = '.'; ESOL_UNITS = '.'; DEPOSIT_AMT = '.'; U_RESV_2 = '.'; U_RESV_3 = '.'; IF LAPACT = 'X' THEN LAPACT = 'Y'; IF LAPACT = ' ' THEN LAPACT = '.'; IF RGDCDE = ' ' THEN RGDCDE = '.'; PK_SEQ_NUM_APP = PK_SEQ_NUM_APP + 1; OUTPUT LAPADMT; **********************************************************; * Admission_Tests_Reqs - OUTPUT *; **********************************************************; FORMAT TEST_REQ_CD $CHAR02. TEST_SCORE_TYP $CHAR02. U_RESV_1 $CHAR50.; U_RESV_1 = URESV1; IF URESV1 = ' ' THEN URESV1 = '.'; TEST_SCORE_N = '.'; TEST_SCORE_A = '.'; UNIV_ROW_ID = _N_; PK_SEQ_NUM_TEST = PK_SEQ_NUM_TEST + 1; OUTPUT LAPTEST;RUN; ********** BEGINNING OF PRINT SECTION; ********** PRINTING DEMOGRAPHIC SECTION; PROC SORT DATA = DEMOIN NODUPKEYS; BY UNIV TERMID SSN;RUN; DATA _NULL_; SET DEMOIN; FILE DEMOOUT DLM='|'; UNIV_ROW_ID = _N_; PUT UNIV_ROW_ID DEMO_TIME_FRAME REPT_INST DEMO_DATA_SOURCE PERSON_ID PID_VALID_SSN BIRTH_YYYYMM_DT NAME_LAST NAME_FIRST NAME_MI SUFFIX GENDER RACE HISPANIC_FLG AM_IND_ALASKAN_FLG ASIAN_FLG BLACK_AFRICAN_AM_FLG NAT_HAWAII_PAC_IS_FLG WHITE_FLG NON_RES_ALIEN_FLG NO_RACE_REPORT_FLG URESV1; RUN; ********** PRINTING APPLICANTS ADMITS SECTION; PROC SORT DATA = LAPADMT NODUPKEYS; BY REPT_TIME_FRAME APP_ADM_SOURCE REPT_INST SSN SYSID_SEQ LAPDEG LAPCAT DEMO_TIME_FRAME DEMO_DATA_SOURCE;RUN; DATA _NULL_; SET LAPADMT; FILE LAPOUT DLM='|'; REGISTERED_CD = RGDCDE; UNIV_ROW_ID = _N_; PUT UNIV_ROW_ID REPT_TIME_FRAME APP_ADM_SOURCE REPT_INST PERSON_ID LAPDEG LAPCAT DEMO_TIME_FRAME DEMO_DATA_SOURCE LAPACT RGDCDE COUNTY_OF_RES FEE_CLASS_RES ADM_DEPOSIT_IND STU_CLASS_LEVEL DISPLACED_STU_IND LAST_INST_CD INST_GRNT_HIDEG_CD DEG_HIGHEST_HELD LAST_POSTSEC_DT GPA_COLLEGE HS_ETS_CD LAST_SECONDARY_DT GPA_HIGH_SCHOOL GPA_GED_COMPONENT GPA_BACHELORS ESOL_UNITS DEPOSIT_AMT URESV1 U_RESV_2 U_RESV_3; RUN; ********** PRINTING TESTS_REQS SECTION; PROC SORT DATA = LAPTEST NODUPKEYS; BY REPT_TIME_FRAME APP_ADM_SOURCE REPT_INST SSN SYSID_SEQ LAPDEG LAPCAT TCHR_PREP_DOE_CD TEST_REQ_CD TEST_SCORE_TYP DEMO_TIME_FRAME DEMO_DATA_SOURCE;RUN; DATA _NULL_; SET LAPTEST; FILE LTSTOUT DLM='|'; DEMO_DATA_SOURCE = 'LAP'; TEST_REQ_CD = 'MS'; TEST_SCORE_TYP= 'R'; TCHR_PREP_DOE_CD = '.'; UNIV_ROW_ID = _N_; PUT UNIV_ROW_ID REPT_TIME_FRAME APP_ADM_SOURCE REPT_INST PERSON_ID LAPDEG LAPCAT TCHR_PREP_DOE_CD TEST_REQ_CD TEST_SCORE_TYP DEMO_TIME_FRAME DEMO_DATA_SOURCE TEST_SCORE_N TEST_SCORE_A MINSTIN URESV1; RUN;