Typical DCL Command Procedure to run the program :
$! THIS COMMAND PROCEDURE RUNS THE FOCEXECS FOR PLACING $! FINANCIAL AID STUDENTS ON EITHER WARNING OR SUSPENSION. $! $! THE TRANSACTIONS WILL BE LOADED INTO THE BATCH MAINTENANCE $! CYCLE IN THE FOLLOWING ORDER : $! $! 1. ON ACADEMIC WARNING $! 2. ON ACADEMIC PROBATION OR SUSPENSION $! 3. TERMINATED BECAUSE OF HOURS $! $ DELETE SI$FOCUS:*.FTM;*/LOG $ DELETE SI$FOCUS:*.MAS;*/LOG $ DEFINE FOC$DIR1 SI$DATA $ SET DEFAULT SI$FOCUS $ FOCUS EXEC (FOCEXEC name #1) AWDPD=(Financial Aid Award Period), AWDYR=(Financial Aid Award Year), ETERM=(Enrollment Term) FIN $ SET DEFAULT Z$PRT $ RENAME TEMPFILE.DOC (FOCEXEC name #1).PRT /LOG $ SET DEFAULT SI$FOCUS $ FOCUS EXEC (FOCEXEC name #2) AWDPD=(Financial Aid Award Period), AWDYR=(Financial Aid Award Year), ETERM=(Enrollment Term) FIN $ SET DEFAULT Z$PRT $ RENAME TEMPFILE.DOC (FOCEXEC name #2).PRT /LOG $ SET DEFAULT SI$FOCUS $ FOCUS EXEC (FOCEXEC name #3) AWDPD=(Financial Aid Award Period), AWDYR=(Financial Aid Award Year), ETERM=(Enrollment Term) FIN $ SET DEFAULT Z$PRT $ RENAME TEMPFILE.DOC (FOCEXEC name #3).PRT /LOG $ CONVERT/APPEND/PAD=%D32 SI$FOCUS:PLAY.FTM SI$DATA:AIBBFL.DAT $ EXIT
FOCUS program #1 :
-* THIS FOCEXEC DETERMINES WHO NEEDS TO BE ON WARNING FOR FINANCIAL AID
-* BASED ON IF THEY WERE ON ACADEMIC WARNING IN THE CURRENT TERM.
-* VARIABLES USED:
-* AWDYR : THE AWARD YEAR TO SELECT FROM
-* AWDPD : THE AWARD PERIOD TO SELECT FROM
-* ETERM : THE ENROLLMENT TERM TO SELECT FROM
-*
-SET &HDRKEY = '$$$FIN303 SP RAP CODE 3 YFA';
OFFLINE CLOSE
FILEDEF OFFLINE DISK Z$PRT:TEMPFILE.DOC
JOIN CLEAR *
DEFINE FILE SAFILE
CHK_FLD1/A3=('&AWDYR'|'A');
CHK_FLD2/A3=('&AWDYR'|'S');
JN_KEY2/A14=('&ETERM'|INSTIT_SA|SID_SA);
END
TABLE FILE SAFILE
PRINT JN_KEY2 BY SID_SA
ON TABLE HOLD AS SATEMP1
IF AWD_YR_SA EQ '&AWDYR'
IF TOT_AID_PKG GT 00.00
IF PKG_SEG_CTR GT 0
WHERE (PKG_AWPD EQ CHK_FLD1) OR (PKG_AWPD EQ CHK_FLD2);
END
JOIN JN_KEY2 IN SATEMP1 TO ROOT_KEY_RT IN RTFILE AS J1
TABLE FILE SATEMP1
PRINT ACAD_ACT_RT BY SID_RT
ON TABLE HOLD AS SATEMP3
IF TERM_RT EQ '&ETERM'
IF ACAD_ACT_RT EQ 'PW' OR 'PM'
IF CAREER_RT EQ 'CR'
IF CURR_AHRS_RT GT 0.0
END
JOIN TEMP_KEY WITH SID_RT IN SATEMP3 TO KEY IN AAFILE AS J1
DEFINE FILE SATEMP3
TEMP_KEY/A11=('XX'|SID_RT);
END
TABLE FILE SATEMP3
HEADING
"<45 FINANCIAL AID SATISFACTORY PROGRESS REPORT </1"
PRINT SID_RT AS 'Student ID' IN 82 BY STU_NAME_AA AS 'Student Name' IN 40
END
JOIN CLEAR *
-INCLUDE (SIS Batch Header).SEG
DEFINE FILE SATEMP3
BTH_TRANS1/A29 = ('73B'|SID_RT|' '|'&AWDPD'|' ');
BTH_TRANS2/A45 = ' 2 ';
END
TABLE FILE SATEMP3
PRINT BTH_TRANS1 IN 1 AS '' BTH_TRANS2 AS ''
ON TABLE SAVE AS PLAY
END
JOIN CLEAR *
FOCUS program #2 :
-* THIS FOCEXEC DETERMINES WHO NEEDS TO BE TERMINATED FROM FINANCIAL AID
-* BASED ON IF THEY WERE ON ACADEMIC PROBATION OR SUSPENSION IN THE CURRENT
-* TERM.
-* VARIABLES USED:
-* AWDYR : THE AWARD YEAR TO SELECT FROM
-* AWDPD : THE AWARD PERIOD TO SELECT FROM
-* ETERM : THE ENROLLMENT TERM TO SELECT FROM
-*
-SET &HDRKEY = '$$$FIN304 SP RAP CODE 4 YFA';
OFFLINE CLOSE
FILEDEF OFFLINE DISK Z$PRT:TEMPFILE.DOC
JOIN CLEAR *
DEFINE FILE SAFILE
CHK_FLD1/A3=('&AWDYR'|'A');
CHK_FLD2/A3=('&AWDYR'|'S');
JN_KEY2/A14=('&ETERM'|INSTIT_SA|SID_SA);
END
TABLE FILE SAFILE
PRINT JN_KEY2 BY SID_SA
ON TABLE HOLD AS SATEMP1
IF AWD_YR_SA EQ '&AWDYR'
IF TOT_AID_PKG GT 00.00
IF PKG_SEG_CTR GT 0
WHERE (PKG_AWPD EQ CHK_FLD1) OR (PKG_AWPD EQ CHK_FLD2);
END
JOIN JN_KEY2 IN SATEMP1 TO ROOT_KEY_RT IN RTFILE AS J1
TABLE FILE SATEMP1
PRINT ACAD_ACT_RT BY SID_RT
ON TABLE HOLD AS SATEMP3
IF TERM_RT EQ '&ETERM'
IF ACAD_ACT_RT EQ 'CW' OR 'CM' OR 'RW' OR 'RM'
IF CAREER_RT EQ 'CR'
IF CURR_AHRS_RT GT 0.0
END
JOIN TEMP_KEY WITH SID_RT IN SATEMP3 TO KEY IN AAFILE AS J1
DEFINE FILE SATEMP3
TEMP_KEY/A11=('XX'|SID_RT);
END
TABLE FILE SATEMP3
HEADING
"<45 FINANCIAL AID SATISFACTORY PROGRESS REPORT </1"
PRINT SID_RT AS 'Student ID' IN 82 BY STU_NAME_AA AS 'Student Name' IN 40
END
JOIN CLEAR *
-INCLUDE (SIS Batch Header).SEG
DEFINE FILE SATEMP3
BTH_TRANS1/A29 = ('73B'|SID_RT|' '|'&AWDPD'|' ');
BTH_TRANS2/A45 = ' 4 ';
END
TABLE FILE SATEMP3
PRINT BTH_TRANS1 IN 1 AS '' BTH_TRANS2 AS ''
ON TABLE SAVE AS PLAY
END
-SET &HDRKEY = '$$$FIN305 SP RAP CODE 5 YFA';
-INCLUDE (SIS Batch Header).SEG
DEFINE FILE SATEMP3
BTH_TRANS1/A29 = ('73C'|SID_RT|' '|'&AWDPD'|' ');
BTH_TRANS2/A45 = ' 1 ';
END
TABLE FILE SATEMP3
PRINT BTH_TRANS1 IN 1 AS '' BTH_TRANS2 AS ''
ON TABLE SAVE AS PLAY
END
JOIN CLEAR *
FOCUS program #3 :
-* THIS FOCEXEC DETERMINES WHO NEEDS TO BE TERMINATED FROM FINANCIAL AID
-* BASED ON THE NUMBER OF HOURS EARNED IN THE PREVIOUS TERMS.
-* VARIABLES USED:
-* AWDYR : THE AWARD YEAR TO SELECT FROM
-* AWDPD : THE AWARD PERIOD TO SELECT FROM
-* ETERM : THE ENROLLMENT TERM TO SELECT FROM
-*
OFFLINE CLOSE
FILEDEF OFFLINE DISK Z$PRT:TEMPFILE.DOC
JOIN CLEAR *
TABLE FILE SAFILE
PRINT PKG_AWPD BY SID_SA
ON TABLE HOLD AS SATEMP1
IF AWD_YR_SA EQ '&AWDYR'
IF PKG_AWPD EQ '&AWDPD'
IF TOT_AID_PKG GT 00.00
IF PKG_SEG_CTR GT 0
END
JOIN TEMP_KEY WITH SID_SA IN SATEMP1 TO KEY IN RPFILE AS J1
DEFINE FILE SATEMP1
SUPER_JN_KEY/A14=(ACTV_TERM_RP|'XX'|SID_SA);
TEMP_KEY/A11=('XX'|SID_SA);
END
TABLE FILE SATEMP1
PRINT SID_SA BY SUPER_JN_KEY
ON TABLE HOLD AS SATEMP2
WHERE (ACTV_TERM_RP GE '921') AND (ACTV_TERM_RP LE '&ETERM');
END
JOIN SUPER_JN_KEY IN SATEMP2 TO KEY IN RTFILE AS J2
DEFINE FILE SATEMP2
STATUS_HRS/P05.2C=IF CURR_AHRS_RT GE 12.00 THEN 10.0
ELSE IF CURR_AHRS_RT GE 09.00 THEN 7.5
ELSE IF CURR_AHRS_RT GE 06.00 THEN 5.0
ELSE 0.0;
END
TABLE FILE SATEMP2
PRINT TERM_RT CURR_AHRS_RT STATUS_HRS CURR_EHRS_RT BY SID_SA
ON TABLE HOLD AS SATEMP3
IF CURR_AHRS_RT GE 06.00
END
DEFINE FILE SATEMP3
SPC_KEY/I1=IF SID_SA NE LAST SID_SA THEN 1 ELSE SPC_KEY+1;
TOTAL_STATUS/P05.2C=IF SID_SA EQ LAST SID_SA THEN TOTAL_STATUS + STATUS_HRS
ELSE STATUS_HRS;
TOTAL_EARNED/P05.2C=IF SID_SA EQ LAST SID_SA THEN TOTAL_EARNED +
CURR_EHRS_RT
ELSE CURR_EHRS_RT;
END
TABLE FILE SATEMP3
PRINT TERM_RT CURR_AHRS_RT SPC_KEY STATUS_HRS CURR_EHRS_RT
TOTAL_STATUS TOTAL_EARNED
BY SID_SA
ON TABLE HOLD AS SATEMP4
END
TABLE FILE SATEMP4
PRINT TOTAL_STATUS TOTAL_EARNED
BY SID_SA
ON TABLE HOLD AS SATEMP5
IF TERM_RT EQ '&ETERM'
IF SPC_KEY EQ 4 OR 2 OR 6 OR 8 OR 10
END
-SET &HDRKEY = '$$$FIN301 SP RAP CODE 1 YFA';
-INCLUDE (SIS Batch Header).SEG
DEFINE FILE SATEMP5
BTH_TRANS1/A29 = ('73B'|SID_SA|' '|'&AWDPD'|' ');
BTH_TRANS2/A45 = ' 4 ';
END
TABLE FILE SATEMP5
PRINT BTH_TRANS1 IN 1 AS '' BTH_TRANS2 AS ''
ON TABLE SAVE AS PLAY
WHERE TOTAL_EARNED LT TOTAL_STATUS;
END
-SET &HDRKEY = '$$$FIN302 SP RAP CODE 2 YFA';
-INCLUDE (SIS Batch Header).SEG
DEFINE FILE SATEMP5
BTH_TRANS1/A29 = ('73C'|SID_SA|' '|'&AWDPD'|' ');
BTH_TRANS2/A45 = ' 2 ';
END
TABLE FILE SATEMP5
PRINT BTH_TRANS1 IN 1 AS '' BTH_TRANS2 AS ''
ON TABLE SAVE AS PLAY
WHERE TOTAL_EARNED LT TOTAL_STATUS;
END
JOIN CLEAR *
JOIN TEMP_KEY WITH SID_SA IN SATEMP5 TO KEY IN RPFILE AS J1
DEFINE FILE SATEMP5
SUPER_JN_KEY/A14=(ACTV_TERM_RP|'XX'|SID_SA);
TEMP_KEY/A11=('XX'|SID_SA);
END
TABLE FILE SATEMP5
PRINT SID_SA BY SUPER_JN_KEY
ON TABLE HOLD AS SATEMP6
WHERE (ACTV_TERM_RP GE '921') AND (ACTV_TERM_RP LE '&ETERM');
WHERE TOTAL_EARNED LT TOTAL_STATUS;
END
JOIN SUPER_JN_KEY IN SATEMP6 TO KEY IN RTFILE AS J2
DEFINE FILE SATEMP6
STATUS_HRS/P05.2C=IF CURR_AHRS_RT GE 12.00 THEN 10.0
ELSE IF CURR_AHRS_RT GE 09.00 THEN 7.5
ELSE IF CURR_AHRS_RT GE 06.00 THEN 5.0
ELSE 0.0;
END
TABLE FILE SATEMP6
PRINT TERM_RT CURR_AHRS_RT STATUS_HRS CURR_EHRS_RT BY SID_SA
ON TABLE HOLD AS SATEMP7
IF CURR_AHRS_RT GE 06.00
END
SET LINES=75
SET PAGE=ON
JOIN TEMP_KEY WITH SID_SA IN SATEMP7 TO KEY IN AAFILE AS J3
DEFINE FILE SATEMP7
TEMP_KEY/A11=('XX'|SID_SA);
SPC_KEY/I1=IF SID_SA NE LAST SID_SA THEN 1 ELSE SPC_KEY+1;
TOTAL_STATUS/P05.2C=IF SID_SA EQ LAST SID_SA THEN TOTAL_STATUS + STATUS_HRS
ELSE STATUS_HRS;
TOTAL_EARNED/P05.2C=IF SID_SA EQ LAST SID_SA THEN TOTAL_EARNED +
CURR_EHRS_RT
ELSE CURR_EHRS_RT;
SID_OUT/A11=EDIT(SID_SA ,'999-99-9999');
END
TABLE FILE SATEMP7
HEADING
"<42 FINANCIAL AID SATISFACTORY PROGRESS REPORT / HOURS </1"
PRINT SID_OUT AS 'Student ID' TERM_RT AS 'Term'
CURR_AHRS_RT AS 'Term Att, Hours'
STATUS_HRS AS 'Term Req, Hours'
CURR_EHRS_RT AS 'Term Earned, Hours'
TOTAL_STATUS AS 'Total Req, Hours'
TOTAL_EARNED AS 'Total Earned, Hours'
BY STU_NAME_AA
ON STU_NAME_AA SKIP-LINE
END
JOIN CLEAR *
This page hosted by
Get your own Free Homepage