Uni-Basic Program :
OPEN '', 'SL.(Financial Aid Award Year)' TO SL.ACYR ELSE STOP 'ERROR'
OPEN '', 'SA.(Financial Aid Award Year)' TO SA.ACYR ELSE STOP 'ERROR'
OPEN '', 'TA.(Financial Aid Award Year)' TO TA.ACYR ELSE STOP 'ERROR'
SUB.AWARD.LIST = '(Subsidized Loan Award Code #1)':@FM:'(Subsidized Loan Award Code #2)'...:@FM:'(Subsidized Loan Award Code #n)'
UNSUB.AWARD.LIST = '(Unsubsidized Loan Award Code #1)':@FM:'(Unsubsidized Loan Award Code #2)'...:@FM:'(Unsubsidized Loan Award Code #n)'
EXECUTE "SELECT SA.(Financial Aid Award Year) WITH SA.AWARD = '(Loan Award Code #1)''(Loan Award Code #2)'... '(Loan Award Code #n)' AND SA.ACTION = 'A' "
TERM_INFO = "(Fall Term ID)":@FM:"(Spring Term ID)"
EOF = 0
LOOP
READNEXT SA.ID ELSE EOF = 1
UNTIL EOF
READ SA.REC FROM SA.ACYR,SA.ID THEN
MAX.AWARD = DCOUNT(SA.REC<7>,@FM)
FOR I = 1 TO MAX.AWARD
POS = 0
LOCATE SA.REC<7,I> IN SUB.LOANS<1,1> SETTING POS THEN
IF ((SA.REC<7,I> = '(Subsidized Loan Award Code #1)') OR (SA.REC<7,I> = '(Subsidized Loan Award Code #2)') ... OR (SA.REC<7,I> = '(Subsidized Loan Award Code #n)')) AND (SA.REC<14,I> NE 'D') AND POS THEN
SL.ID = SA.ID : '*' : SA.REC<7,I>
UPDATE.SL = 0
READ SL.REC FROM SL.ACYR,SL.ID THEN
IF SL.REC<5> = '' OR SL.REC<13> = '' OR SL.REC<14> = '' OR SA.REC<8,I> <> SL.REC<6> THEN UPDATE.SL = 1
END
READ SL.REC FROM SL.ACYR,SL.ID ELSE UPDATE.SL = 1
IF UPDATE.SL THEN
FOR X = 1 TO 39
SL.REC<I> = ''
NEXT X
SL.REC<1> = '(Colleague User ID)' ;*ADD USER
SL.REC<2> = @DATE ;*ADD DATE
SL.REC<5> = '(Lender ID)' ;*LENDER ID
SL.REC<6> = SA.REC<8,I> ;*LOAN AMOUNT
TERM_IND = ""
FOR J = 1 TO 2
TA.ACYR.ID = SA.ID:'*':SA.REC<7,I>:'*':TERM_INFO<J,1>
READ TA.REC FROM TA.ACYR,TA.ACYR.ID THEN
IF TA.REC<5> > 0 AND TA.REC<6> NE 'D' THEN
TERM_IND := TERM_INFO<J,1>
END
END
NEXT J
IF TERM_IND = "(Fall Term ID)" THEN
BGN_DATE = ICONV("(Beginning Date For Fall Term in MM/DD/CCYY Format)","D")
END_DATE = ICONV("(Ending Date For Fall Term in MM/DD/CCYY Format)","D")
END ELSE
IF TERM_IND = "(Spring Term ID)" THEN
BGN_DATE = ICONV("(Beginning Date For Spring Term in MM/DD/CCYY Format)","D")
END_DATE = ICONV("(Ending Date For Spring Term in MM/DD/CCYY Format)","D")
END ELSE
IF TERM_IND = "(Fall Term ID)(Spring Term ID)" THEN
BGN_DATE = ICONV("(Beginning Date For Academic Year in MM/DD/CCYY Format)","D")
END_DATE = ICONV("(Ending Date For Academic Year in MM/DD/CCYY Format)","D")
END
END
END
SL.REC<13> = BGN_DATE
SL.REC<14> = END_DATE
SL.REC<9> = 8250 ;*INTEREST RATE
SL.REC<10> = 6 ;*GRACE PERIOD
SL.REC<11> = 120 ;*REPAYMENT PERIOD
PRINT SA.ID, SL.REC<5>
WRITE SL.REC TO SL.ACYR,SL.ID
END
END
END ELSE
LOCATE SA.REC<7,I> IN UNSUB.LOANS<1,1> SETTING POS ELSE POS = 0
IF ((SA.REC<7,I> = '(Unsubsidized Loan Award Code #1)') OR (SA.REC<7,I> = '(Unsubsidized Loan Award Code #2)') ... OR (SA.REC<7,I> = '(Unsubsidized Loan Award Code #n)')) AND (SA.REC<14,I> NE 'D') AND POS THEN
SL.ID = SA.ID : '*' : SA.REC<7,I>
UPDATE.SL = 0
READ SL.REC FROM SL.ACYR,SL.ID THEN
IF SL.REC<5> = '' OR SL.REC<13> = '' OR SL.REC<14> = '' OR SA.REC<8,I> <> SL.REC<6> THEN UPDATE.SL = 1
END
READ SL.REC FROM SL.ACYR,SL.ID ELSE UPDATE.SL = 1
IF UPDATE.SL THEN
FOR X = 1 TO 39
SL.REC<I> = ''
NEXT X
SL.REC<1> = '(Colleague User ID)' ;*ADD USER
SL.REC<2> = @DATE ;*ADD DATE
SL.REC<5> = '(Lender ID)' ;*LENDER ID
SL.REC<6> = SA.REC<8,I> ;*LOAN AMOUNT
TERM_IND = ""
FOR J = 1 TO 2
TA.ACYR.ID = SA.ID:'*':SA.REC<7,I>:'*':TERM_INFO<J,1>
READ TA.REC FROM TA.ACYR,TA.ACYR.ID THEN
IF TA.REC<5> > 0 AND TA.REC<6> NE 'D' THEN
TERM_IND := TERM_INFO<J,1>
END
END
NEXT J
IF TERM_IND = "(Fall Term ID)" THEN
BGN_DATE = ICONV("(Beginning Date For Fall Term in MM/DD/CCYY Format)","D")
END_DATE = ICONV("(Ending Date For Fall Term in MM/DD/CCYY Format)","D")
END ELSE
IF TERM_IND = "(Spring Term ID)" THEN
BGN_DATE = ICONV("(Beginning Date For Spring Term in MM/DD/CCYY Format)","D")
END_DATE = ICONV("(Ending Date For Spring Term in MM/DD/CCYY Format)","D")
END ELSE
IF TERM_IND = "(Fall Term ID)(Spring Term ID)" THEN
BGN_DATE = ICONV("(Beginning Date For Academic Year in MM/DD/CCYY Format)","D")
END_DATE = ICONV("(Ending Date For Academic Year in MM/DD/CCYY Format)","D")
END
END
END
SL.REC<13> = BGN_DATE
SL.REC<14> = END_DATE
SL.REC<9> = 8250 ;*INTEREST RATE
SL.REC<10> = 6 ;*GRACE PERIOD
SL.REC<11> = 120 ;*REPAYMENT PERIOD
PRINT SA.ID, SL.REC<5>
WRITE SL.REC TO SL.ACYR,SL.ID
END
END
END
NEXT I
END
REPEAT
END
This page hosted by
Get your own Free Homepage