Typical DCL Command Procedure to run the program :  

$!
$!  THIS COMMAND PROCEDURE RUNS THE FOCEXEC FOR THE
$!  FINANCIAL AID COMMONLINE LOAN DISBURSEMENT UPDATE.
$!
$ SAY :== "WRITE SYS$OUTPUT"
$!
$!  Skip if no file to be processed.
$!
$ IF F$SEARCH("(Location & Name Of CommonLine Response File)") .EQS. ""
$ THEN
$     SAY " "
$     SAY "NO COMMONLINE RESPONSE FILE TO PROCESS..."
$     SAY " "
$     GOTO PGM_EXIT
$ ENDIF
$!
$!  Rename file so it won't be processed again; run SBA310.
$!
$ RENAME (Location & Name Of CommonLine Response File) -
         C00492500.DAT;
$ @SI$COM:SJA310
$!
$! E-mail resulting report to Financial Aid.
$!
$ MAIL/SUBJECT="SBA310 - CommonLine Response File" Z$PRT:SBA310RPT.PRT (VMS mail id)
$!
$ DELETE SI$FEX:*.FTM;*/LOG
$ DELETE SI$FEX:*.MAS;*/LOG
$ COPY SI$FEX:C004925.MFD SI$FEX:C004925.MAS;
$ DEFINE FOC$DIR2 SI$DATA, SI$MFD
$ SET DEFAULT SI$FEX
$ FOCUS
EXEC (FOCEXEC name) AWD_PER=(Award Period), AWD_YR=(Award Year)
FIN
$!
$ CONVERT/APPEND SI$FEX:PLAY.FTM SI$DATA:AIB2FL.DAT
$!
$PGM_EXIT:
$!
$ EXIT


FOCUS program :

SET PAGE = NOPAGE
SET LINES = 999999
JOIN CLEAR *
-*
-*  Create The Batch Header
-*
-SET &HDRKEY = '$$$FIN603        UPD LOAN AMT   YFA';
-INCLUDE (SIS Batch Header).SEG
-*
-*  Extract accepted acknowledgement records.
-*
FILEDEF C004925 DISK C00492500.DAT
DEFINE FILE C004925
AWD_ID/A5=DECODE DISB_FLD3(SF '80130' SU '80131' ELSE '*****');
END
TABLE FILE C004925
PRINT AWD_ID DISB_FLD4 DISB_FLD5 DISB_LOAN_PD BY DISB_FLD2
ON TABLE HOLD AS RESTMP1
WHERE DISB_FLD1 EQ '@1B';
END
-*
-*  Create batch transactions to update loan awards from
-*  offered to accepted.
-*
JOIN TEMP_KEY WITH DISB_FLD2 IN RESTMP1 TO KEY IN SWFILE AS J1
DEFINE FILE RESTMP1
TEMP_KEY/A18='&AWD_YR'|DISB_FLD2|AWD_ID;
-*
NUM_DISB_FLD4/P7.2C=EDIT(DISB_FLD4);
NUM_DISB_FLD5/P7.2C=EDIT(DISB_FLD5);
TOT_AWD/P7.2C=NUM_DISB_FLD4 + NUM_DISB_FLD5;
ALP_TOT_AWD/A10=EDIT(TOT_AWD);
-*
BTH_TRANS_1/A83=('81A'|DISB_FLD2|'      '|'&AWD_PER'|AWD_ID|'           '|
               ALP_TOT_AWD);
-*
BTH_TRANS_2/A83=IF (EDIT(DISB_LOAN_PD,'9999') EQ '2002') AND
                   (DISB_FLD5 EQ '0000000') THEN
                   ('82A'|DISB_FLD2|'      '|'&AWD_PER'|
                   AWD_ID|'0000000 '|DISB_FLD4) ELSE
                   ('82A'|DISB_FLD2|'      '|'&AWD_PER'|AWD_ID|
                   DISB_FLD4|' '|DISB_FLD5);
-*
BTH_TRANS_3/A83=('83A'|DISB_FLD2|'      '|'&AWD_PER'|AWD_ID);
END
TABLE FILE RESTMP1
PRINT BTH_TRANS_1 IN 1 AS ''
ON TABLE SAVE AS PLAY
WHERE AWD_STAT EQ 'O';
WHERE SW_FUND EQ AWD_ID;
WHERE AWD_YR EQ '&AWD_YR';
END
-*
TABLE FILE RESTMP1
PRINT BTH_TRANS_2 IN 1 AS ''
ON TABLE SAVE AS PLAY
WHERE AWD_STAT EQ 'O';
WHERE SW_FUND EQ AWD_ID;
WHERE AWD_YR EQ '&AWD_YR';
END
-*
TABLE FILE RESTMP1
PRINT BTH_TRANS_3 IN 1 AS ''
ON TABLE SAVE AS PLAY
WHERE AWD_STAT EQ 'O';
WHERE SW_FUND EQ AWD_ID;
WHERE AWD_YR EQ '&AWD_YR';
END
JOIN CLEAR *


Master File Description (MFD) for C004925 : 

FILE=C004925,SUFFIX=FIX
SEGNAME=ROOT
FIELDNAME=DISB_FLD1, ,A03,A03,$
FIELDNAME=COMPU_FILL01, ,A56,A56,$
FIELDNAME=DISB_FLD2, ,A09,A09,$
FIELDNAME=COMPU_FILL02, ,A99,A99,$
FIELDNAME=COMPU_FILL03, ,A20,A20,$
FIELDNAME=DISB_FLD3, ,A02,A02,$
FIELDNAME=COMPU_FILL04, ,A77,A77,$
FIELDNAME=COMPU_FILL05, ,A90,A90,$
FIELDNAME=DISB_LOAN_PD, ,A08,A08,$
FIELDNAME=COMPU_FILL06, ,A01,A01,$
FIELDNAME=COMPU_FILL07, ,A99,A99,$
FIELDNAME=COMPU_FILL08, ,A99,A99,$
FIELDNAME=COMPU_FILL09, ,A01,A01,$
FIELDNAME=DISB_FLD4, ,A07,A07,$
FIELDNAME=COMPU_FILL10, ,A29,A29,$
FIELDNAME=DISB_FLD5, ,A07,A07,$
FIELDNAME=COMPU_FILL11, ,A99,A99,$
FIELDNAME=COMPU_FILL12, ,A99,A99,$
FIELDNAME=COMPU_FILL13, ,A99,A99,$
FIELDNAME=COMPU_FILL14, ,A99,A99,$
FIELDNAME=COMPU_FILL15, ,A37,A37,$


Changes needed to SI$COM:SJA310.COM to specify location of CommonLine Response File :

$!!
$ ASSIGN SI$DATA:SBA310SPL.DAT AIPDFL
$!
$!***MOD
$!
$! Process response file
$!
$! ASSIGN SI$DATA:SBA310INP.DAT APPRES
$ ASSIGN C00492500.DAT; APPRES
$!
$!***END MOD
$!
$ ASSIGN SI$DATA:SBA310PRM.DAT AIPMFL
$!!

 

 

This page hosted by Get your own Free Homepage

Hosted by www.Geocities.ws

1