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

Hosted by www.Geocities.ws

1