Listing of file='ASLIAB.BAS;01' on disk='vmedia/home_budget_3-sector.ccvf'
120 CLEAR 6000 130 DD= PEEK (65535):DSK$= MID$ (STR$ (DD- 1),2)+ ":" 140 IF DD= 1THEN PLOT 12,14,3,10,15:INPUT "LOAD DATA DISK AND HIT <RET> ";A:PLOT 15 150 NS= 25:DIM ARDATE(NS,2),DATE$(NS),AMT(NS),CD$(NS),NDATE$(12,NS),NAMT(12,NS),NCD$(12,NS),NK(NS):SCREEN= 0 160 DIM OB(12),EX(12),NB$(12),NN$(12),BAL(12),RATE(12),PER(12),JBD(12):STRMTH$= " JANFEBMARAPRMAYJUNJULAUGSEPOCTNOVDEC" 170 UL$= " --------------------------------------------------------------" 180 U1$= " ==============================================================" 190 GOTO 460 220 POKE 33278,0 230 Y= PEEK (33278) 240 IF Y= 0GOTO 230 250 Y$= CHR$ (Y):RETURN 280 POKE 33278,0 290 IF PEEK (33278)= 0GOTO 290 300 IF PEEK (33278)= 80THEN PRINT "RINTER":Q$= "P":RETURN 310 IF PEEK (33278)= 83THEN PRINT "CREEN":Q$= "S":RETURN 320 PLOT 7,26,32,26:GOTO 280 360 RH$= STR$ ((1000* (MO* SGN (MO)- INT (MO* SGN (MO)))+ 1005)/ 10) 370 IF VAL (RH$)> = 200THEN MO= (MO* SGN (MO)+ 1)* SGN (MO) 380 LH$= STR$ (INT (MO* SGN (MO))* SGN (MO)):IF VAL (LH$)= 0AND SGN (MO)= - 1THEN LH$= "-0" 390 LH$= "$"+ LH$ 400 IF LEN (LH$)> = MSTHEN 420 410 LH$= " "+ LH$:GOTO 400 420 RH$= MID$ (RH$,3,2):MO$= LH$+ "."+ RH$:RETURN 460 MS= 7:PRINT :PLOT 12,14,3,24,1:PRINT "ASSETS AND LIABILITIES":PLOT 15 470 PLOT 3,10,5:PRINT "OPTIONS ARE:" 480 PLOT 3,10,7:PRINT "1. CALCULATE AND DISPLAY A CURRENT LIABILITY" 490 PLOT 3,10,8:PRINT "2. SUMMARIZE ALL LIABILITIES" 510 PLOT 3,10,9:PRINT "3. SUMMARIZE ALL ASSETS" 520 PLOT 3,10,10:PRINT "4. PRINT BALANCE SHEET OF NET WORTH" 530 PLOT 3,10,15:PRINT "9. END" 540 PLOT 3,5,22:PRINT "PLEASE MAKE A SELECTION....";:GOSUB 220:ANS= VAL (Y$) 550 IF NOT ((ANS> = 1AND ANS< = 4)OR ANS= 9)THEN PLOT 7:GOTO 460 560 ON ANSGOSUB 1000,6000,8000,8520,9000,9000,9000,9000,9000 570 KOUNT= 0:SCREEN= 0:LBAL= 0:CBAL= 0:ABAL= 0:TBAL= 0 580 GOTO 460 1000 CHOICE= 1:FILE "R",1,DSK$+ "LIABS",1 1010 GET 1,1;NREC 1020 IF NREC= 2THEN PLOT 7,3,5,16:PRINT "NO LIABILITIES ON FILE":FOR I= 1TO 1500:NEXT I:FILE "C",1:GOTO 1830 1030 PLOT 12,3,1,1:PRINT "CURRENT ACCOUNTS ARE:" 1040 FOR REC= 2TO NREC- 1 1050 GET 1,REC;NAME$[20]:PLOT 3,5,REC+ 3:PRINT REC- 1,"";NAME$;"" 1060 NEXT REC 1070 PLOT 3,0,30,11:PRINT "SELECT ACCOUNT NUMBER ";:GOSUB 220 1080 PRINT :IF VAL (Y$)< 1OR VAL (Y$)> (NREC- 2)THEN PLOT 7:GOTO 1070 1090 AR= VAL (Y$):FR= AR+ 1:LR= AR+ 2:A1= 1:GOSUB 6030:GOTO 1830 1610 PRINT PRNTER$;PLNGTH$;EMPH$ 1620 PRINT SPACE$;SH$;TAB( 22+ LEN (SP$))NNAME$(1);RH$:PRINT :PRINT SP$;MA$;UL$;GR$ 1630 PRINT SPACE$;TAB( 2+ LEN (SP$))"DATE ITEM ";CYAN$;"CREDIT"; 1640 PRINT GREEN$;" DEBIT ";WHITE$;" BALANCE";GREEN$ 1650 PRINT SPACE$;MAGENTA$;UL$;GREEN$:PRINT 1660 PRINT SPACE$;NBDATE$(1);TAB( 10+ LEN (SP$))"BALANCE";:MO= BAL(1):GOSUB 360:PRINT TAB( 52+ LEN (SP$))MO$:RETURN 1830 PRINT SP$;MA$;U1$;GR$:GOSUB 5500 1850 PRINT :PLOT 3,0,31,11:INPUT "HIT <RETURN> TO CONTINUE: ";A:RETURN 1860 END 2274 MO= NAMT(XY,TT):GOSUB 360:AMT$= MO$:MO= BAL(XY):GOSUB 360:BAL$= MO$ 2278 ITEM$= "PAYMENT":TB= 28:IF NCD$(XY,TT)= "D"THEN ITEM$= "LOAN":TB= 40 2280 PRINT SPACE$;NDATE$(XY,TT);TAB( 10+ LEN (SP$))ITEM$;TAB( TB+ LEN (SP$))AMT$;TAB( 52+ LEN (SP$))BAL$ 2298 SCREEN= SCREEN+ 1:IF SCREEN= 23AND PLAG= 0THEN PLOT 3,0,31,11:INPUT "HIT <RETURN> TO CONTINUE: ";A:FOR I= 1TO 24:PLOT 3,0,I+ 4,11:NEXT :SCREEN= 0:PLOT 3,0,5 2306 RETURN 2326 MO= IS:GOSUB 360:AMT$= MO$:MO= BAL(XY):GOSUB 360:BAL$= MO$ 2330 ITEM$= "INTEREST":TB= 40 2332 PRINT SPACE$;NIDATE$;TAB( 10+ LEN (SP$))ITEM$;TAB( TB+ LEN (SP$))AMT$;TAB( 52+ LEN (SP$))BAL$ 2334 SCREEN= SCREEN+ 1:IF SCREEN= 23AND PFLAG= 0THEN PLOT 3,0,31,11:INPUT "HIT <RETURN> TO CONTINUE: ";A:FOR I= 1TO 24:PLOT 3,0,I+ 4,11:NEXT :SCREEN= 0:PLOT 3,0,5 2338 RETURN 2412 Y1= VAL (RIGHT$ (D7$,2)):D= VAL (LEFT$ (D7$,2)) 2413 FOR K= 1TO 12:IF MID$ (STRMTH$,K* 3,3)= MID$ (D7$,4,3)THEN M= K:GOTO 2415 2414 NEXT K 2415 Y1= Y1+ 1900 2417 C9= .001 2419 M9= (- 1)* INT (((14- M)/ 12)+ C9) 2421 J1= D- 2447095+ INT ((1461* (Y1+ 4800+ M9)/ 4)+ C9) 2423 J2= J1+ INT ((367* (M+ 2- 12* M9)/ 12)+ C9) 2425 J1= J2- INT ((3* (Y1+ 4900+ M9)/ 400)+ C9) 2427 J2= J1 2460 D7= J2:RETURN 2490 J2= D7 2502 J3= INT (J2+ C9) 2504 D8= J2- J3 2506 J2= J3 2508 L= J2+ 2483589 2510 N= INT ((4* L/ 146097)+ C9) 2512 L= L- INT (((146097* N+ 3)/ 4)+ C9) 2514 Y2= INT ((4000* (L+ 1)/ 1461001)+ C9) 2516 L= L- INT (1461* (Y2/ 4)+ C9)+ 31 2518 M1= INT (80* (L/ 2447)+ C9) 2520 C9= .001 2522 D1= L- INT ((2447* M1/ 80)+ C9) 2524 IF M1> 0GOTO 2528 2526 D1= D1- 1 2528 L= INT ((M1/ 11)+ C9) 2530 D8= INT (10* D8+ .5) 2532 D1= D1+ (D8/ 10) 2534 M1= M1+ 2- 12* L 2536 Y2= 100* (N- 49)+ Y2+ L 2560 D1$= STR$ (D1):D1$= RIGHT$ (D1$,(LEN (D1$)- 1)):IF LEN (D1$)= 1THEN D1$= " "+ D1$ 2561 Y1$= STR$ (Y2):Y1$= RIGHT$ (Y1$,2) 2562 M1$= MID$ (STRMTH$,M1* 3,3) 2563 D7$= D1$+ " "+ M1$+ " "+ Y1$:RETURN 2590 N= KOUNT 2600 INC= (2^ INT (LOG (N)/ LOG (2))) 2610 INC= INT (INC/ 2):IF INC< 1THEN RETURN 2620 FOR I= 1TO INC:FOR J= I+ INCTO NSTEP INC:K= J:T1= ARDATE(K,1):T2= ARDATE(K,2) 2630 IF ARDATE(K- INC,1)< = T1THEN 2650 2640 ARDATE(K,1)= ARDATE(K- INC,1):ARDATE(K,2)= ARDATE(K- INC,2):K= K- INC:IF K> INCTHEN 2630 2650 ARDATE(K,1)= T1:ARDATE(K,2)= T2:NEXT J,I:GOTO 2610 3000 PE= PE(XY) 3010 JU= 12/ PE:IF JUMP< 1THEN 3120 3030 D7$= NIDATE$:GOSUB 2412:Y1= Y1- 1900 3040 M= M+ INT (JUMP) 3050 IF M< = 12THEN 3090 3070 M= M- 12:Y1= Y1+ 1 3090 NIDATE$= MID$ (STR$ (D),2)+ "."+ MID$ (STR$ (M),2)+ "."+ MID$ (STR$ (Y1),2):TD$= NIDATE$:GOSUB 21045:NIDATE$= TD$ 3100 GOTO 3140 3120 JUMP= INT (365/ PERIOD):D7$= NIDATE$:GOSUB 2412:D7= D7+ JUMP:GOSUB 2490:NIDATE$= D7$ 3140 RETURN 5000 PLOT 3,0,30,11:PRINT "TO PRINTER OR SCREEN: ";:GOSUB 280 5002 IF Q$= "P"THEN 5072 5005 IF Q$< > "S"THEN PLOT 7:GOTO 5000 5020 PFLAG= 0 5035 PLNGTH$= "":SH$= "":RH$= "" 5040 EMPH$= "":SPACE$= "":MAGENTA$= "":PRNPR$= "":CYAN$= "":GREEN$= "":WHITE$= "":RED$= "":YELLOW$= "":GOTO 5120 5070 PLOT 3,0,31,11:INPUT "TURN ON PRINTER & SET PAPER: HIT <RETURN> WHEN READY ";A 5072 POKE 33289,132:PFLAG= 1:TMP= PEEK (33265) 5090 FILE "R",6,DSK$+ "PRNTER",1:GET 6,1;PRNTER$[7],EMPH$[4],DUMMY$[20],PLNGTH$[4],DUMMY$[20],SH$[4],RH$[4]:FILE "C",6 5095 SPACE$= " ":MAGENTA$= "":CYAN$= "":GREEN$= "":WHITE$= "":RED$= "":YELLOW$= "" 5120 RETURN 5500 IF PFLAG= 1THEN POKE 33265,TMP:POKE 33289,64 5505 RETURN 6000 CHOICE= 2 6005 FR= 2:MS= 8:LBAL= 0:FILE "R",1,DSK$+ "LIABS",1 6010 GET 1,1;LREC:A1= LREC- 2 6020 IF LREC= 2THEN PLOT 7,3,5,16:PRINT "NO LIABILITIES ON FILE":FOR I= 1TO 1500:NEXT I:FILE "C",1:GOTO 6930 6030 PLOT 12,3,10,14:INPUT "ENTER TODAY'S DATE (D.M.YY): ";TD$:GOSUB 21045:IF ERR= 1THEN 6030 6035 DATE$= TD$:D7$= DATE$:GOSUB 2412:JTDAY= D7 6037 PLOT 3,0,30,11:PRINT "TO PRINTER OR SCREEN: ";:GOSUB 280 6040 PLOT 12,3,10,14:PRINT "WORKING: THIS MAY TAKE SOME TIME":PLOT 3,10,15:PRINT "SEARCHING LIABILITIES FILE" 6090 FOR RLEC= FRTO LREC- 1 6100 SEL= RLEC- 1:IF CH= 1THEN SEL= 1 6110 GET 1,RLEC;NN$(SEL)[12],DU$[8],BAL(SEL),NBDATE$(SEL)[9],RATE(SEL),PERIOD(SEL):D7$= NB$(SE):GOSUB 2412:JB(SEL)= D7 6120 OB(SEL)= BAL(SEL):NEXT RLEC:FILE "C",1 6125 FOR I= 1TO NS:NK(I)= 0:NEXT I:PLOT 3,10,16:PRINT "SEARCHING INCOMES FILE FOR LOANS":IF CH= 1THEN SEL= AR 6130 FILE "R",1,DSK$+ "INCOME",1:GET 1,1;NREC 6140 FOR REC= 2TO NREC- 1 6145 GET 1,REC;INUM$[2],IDATE$[9],DETAIL$[12],IAMT 6150 IF NOT (VAL (INUM$)= 2)THEN 6210 6160 D7$= IDATE$:GOSUB 2412:JI= D7 6175 IF NOT (JI< = JTDAY)THEN 6210 6181 FOR IK= 1TO A1:IF DE$< > NN$(IK)THEN 6200 6184 IF JI< JB(IK)THEN 6200 6185 AP= IK 6187 NK(AP)= NK(AP)+ 1 6190 NDATE$(AP,NK(AP))= IDATE$:NAMT(AP,NK(AP))= IAMT:NCD$(AP,NK(AP))= "D" 6200 NEXT IK 6210 NEXT REC:FILE "C",1:FILE "R",1,DSK$+ "EXPTIT",1:GET 1,1,5;NTREC 6215 PLOT 3,10,17:PRINT "SEARCHING EXPENDITURE TITLES FILE" 6220 FOR REC= 2TO NTREC- 1 6225 GET 1,REC,21;LACNUM$[2] 6227 IF CH= 1AND VAL (LA$)< > SELTHEN 6242 6230 IF (CH= 2OR CH= 5)AND (VAL (LACNUM$)< 1OR VAL (LA$)> A1)THEN 6242 6235 IF CH= 1THEN AP= 1:EX(AP)= REC- 1:GOTO 6242 6240 AP= VAL (LA$):EX(AP)= REC- 1 6242 NEXT REC:FILE "C",1:PLOT 3,10,18:PRINT "SEARCHING EXPENDITURE FILE FOR REPAYMENTS" 6243 FILE "R",1,DSK$+ "EXPEND",1:GET 1,1;NREC 6255 FOR REC= 2TO NREC- 1 6260 GET 1,REC;EACNUM$[2] 6262 FOR AP= 1TO A1 6265 IF VAL (EACNUM$)< > EX(AP)THEN 6350 6275 GET 1,REC,28;IP$[1] 6290 GET 1,REC,3;EDATE$[9],DUMMY$[17],EAMT:IF IP$= "I"AND EAMT< 0THEN IP$= "P" 6292 IF IP$< > "P"THEN 6350 6295 D7$= EDATE$:GOSUB 2412:JEDATE= D7 6300 IF JEDATE< JB(AP)THEN 6350 6310 IF NOT (JEDATE< = JTDAY)THEN 6350 6320 NK(AP)= NK(AP)+ 1 6325 NDATE$(AP,NK(AP))= EDATE$:NAMT(AP,NK(AP))= EAMT:NCD$(AP,NK(AP))= "C":IF EAMT< 0THEN NC$(AP,NK(AP))= "D" 6350 NEXT AP:NEXT REC:FILE "C",1:PLOT 3,10,19:PRINT "SEARCHING PAYS FILE FOR REPAYMENTS" 6370 FILE "R",1,DSK$+ "PAYS",1:GET 1,1;NPAY 6375 FOR REC= 2TO NPAY- 1:FOR AP= 1TO A1:IF EX(AP)> 15THEN 6425 6380 GET 1,RE,5;EDATE$[9]:GET 1,RE,EX(AP)* 4+ 38;EAMT:D7$= EDATE$:GOSUB 2412:JEDATE= D7 6385 IF NOT (JEDATE> = JB(AP)AND EAMT< > 0)THEN 6425 6395 IF NOT (JEDATE< = JTDAY)THEN 6425 6405 NK(AP)= NK(AP)+ 1 6410 NDATE$(AP,NK(AP))= EDATE$:NAMT(AP,NK(AP))= EAMT:NCD$(AP,NK(AP))= "C" 6425 NEXT AP:NEXT REC:FILE "C",1 6426 GOSUB 5002:IF CH= 1THEN GOSUB 1610:GOTO 6442 6427 IF CH= 5THEN RETURN 6428 PRINT PRNTER$;PLNGTH$;EMPH$;SH$ 6430 PRINT SPACE$;TAB( 17+ LEN (SP$))"UPDATED LIABILITIES FOR ";TD$;RH$:PRINT SP$;TAB( 17+ LEN (SP$))"=--=--=--=--=--=-=--=--=--=--=--=":PRINT 6434 PRINT SPACE$;MAGENTA$;UL$;GREEN$ 6436 PRINT SPACE$;TAB( 2+ LEN (SP$))WHITE$;" NAME START DATE START AMT BALANCE";GREEN$ 6438 PRINT SPACE$;MAGENTA$;UL$;GREEN$:PRINT 6442 FOR XY= 1TO A1:KO= NK(XY) 6450 IF KOUNT= 0THEN 6485 6454 FOR I= 1TO KOUNT 6456 D7$= NDATE$(XY,I):GOSUB 2412:ARDATE(I,1)= D7:ARDATE(I,2)= I 6458 NEXT I 6460 GOSUB 2590 6485 NIDATE$= NBDATE$(XY):START= 1 6495 GOSUB 3000 6500 D7$= NIDATE$:GOSUB 2412:JNIDATE= D7 6505 IF JNIDATE> JTDAYTHEN 6815 6520 IF START> KOUNTOR KOUNT= 0THEN 6580 6525 FOR I= STARTTO KOUNT 6530 TT= ARDATE(I,2) 6535 D7$= NDATE$(XY,TT):GOSUB 2412 6540 IF D7> JNIDATETHEN 6580 6550 IF NCD$(XY,TT)= "C"THEN BAL(XY)= BAL(XY)- NAMT(XY,TT):IF CH= 1THEN GOSUB 2274 6555 IF NCD$(XY,TT)= "D"THEN BAL(XY)= BAL(XY)+ NAMT(XY,TT):IF CH= 1THEN GOSUB 2274 6560 START= START+ 1 6570 NEXT I 6580 IS= (RATE(XY)/ PERIOD(XY))* BAL(XY)/ 100:BAL(XY)= BAL(XY)+ IS 6800 IF CH= 1THEN GOSUB 2326 6805 GOTO 6495 6815 IF START> KOUNTOR KOUNT= 0THEN 6900 6820 FOR I= STARTTO KOUNT 6825 TT= ARDATE(I,2):IF NCD$(XY,TT)= "C"THEN BAL(XY)= BAL(XY)- NAMT(XY,TT):IF CH= 1THEN GOSUB 2274 6830 IF NCD$(XY,TT)= "D"THEN BAL(XY)= BAL(XY)+ NAMT(XY,TT):IF CH= 1THEN GOSUB 2274 6835 START= START+ 1 6840 NEXT I 6900 IF CH= 1THEN RETURN 6901 IF CH= 5THEN GOSUB 8825:GOTO 6905 6902 PRINT TAB( 2+ LEN (SP$))NNAME$(XY);TAB( 25+ LEN (SP$))NB$(XY);:MO= OB(XY):GOSUB 360:PRINT TAB( 36+ LEN (SP$))MO$;:MO= BAL(XY):GOSUB 360:PRINT TAB( 51+ LEN (SP$))MO$ 6905 LBAL= LBAL+ BAL(XY) 6910 NEXT XY:IF CH= 5THEN RETURN 6915 PRINT :PRINT SPACE$;MAGENTA$;UL$;GREEN$ 6920 PRINT SPACE$;YELLOW$;" TOTAL LIABILITIES";:MO= LBAL:GOSUB 360:PRINT GREEN$;TAB( 51+ LEN (SP$))MO$ 6925 PRINT SPACE$;MAGENTA$;U1$;GREEN$:PRINT :GOSUB 5500 6930 IF CH= 5THEN RETURN 6940 PRINT :PLOT 3,0,31,11:INPUT "HIT <RETURN> TO CONTINUE: ";A:RETURN 8000 MS= 8:CHOICE= 4:LBAL= 0 8005 FILE "R",1,DSK$+ "ASSETS",1 8010 GET 1,1;LREC 8024 PLOT 12,3,10,14:INPUT "ENTER TODAY'S DATE (D.M.YY): ";TD$:GOSUB 21045:IF ERR= 1THEN 8024 8026 DATE$= TD$:D7$= DATE$:GOSUB 2412:JTDAY= D7 8030 GOSUB 5000:PLOT 12,3,10,15:PRINT "WORKING: THIS MAY TAKE SOME TIME":IF CHOICE= 5THEN RETURN 8040 PRINT PRNTER$;PLNGTH$;EMPH$;SH$ 8042 PRINT SPACE$;TAB( 24+ LEN (SP$))"ASSETS AS AT ";DATE$;RH$:PRINT SP$;TAB( 24+ LEN (SP$))"=--=--=--=--=--=--=--=":PRINT 8045 IF PFLAG= 0THEN PLOT 3,0,30,11:PRINT "WORKING: THIS MAY TAKE SOME TIME":PLOT 3,0,4 8047 PRINT SPACE$;MAGENTA$;UL$;GREEN$ 8050 PRINT SPACE$;TAB( 10+ LEN (SP$))WHITE$;"ITEM VALUE DATE VALUE CURRNT VAL";GREEN$ 8060 PRINT SPACE$;MAGENTA$;UL$;GREEN$:PRINT 8065 IF LREC= 2THEN 8111 8070 FOR RLEC= 2TO LREC- 1:KOUNT= 0 8080 GET 1,RLEC;NAME$[20],BAL,BDATE$[9],APPRATE:D7$= BDATE$:GOSUB 2412:JBDATE= D7:CURV= BAL+ (JTDAY- JBDATE+ 1)/ 365* APPRATE/ 100* BAL 8090 PRINT TAB( 2+ LEN (SP$))NAME$;TAB( 26+ LEN (SP$))BDATE$;:MO= BAL:GOSUB 360:PRINT TAB( 38+ LEN (SP$))MO$; 8095 MO= CURV:GOSUB 360:PRINT TAB( 51+ LEN (SP$))MO$ 8100 LBAL= LBAL+ BAL:CBAL= CBAL+ CURV 8110 NEXT RLEC 8111 FILE "C",1:FILE "R",1,DSK$+ "BNKTIT",1:GET 1,1;NREC:IF NREC= 2THEN 8120 8112 FOR REC= 2TO NREC- 1:GET 1,REC;NAME$[12],DUMMY$[13],BAL,BDATE$[9] 8113 PRINT TAB( 2+ LEN (SP$))NAME$;TAB( 26+ LEN (SP$))BDATE$;:MO= BAL:GOSUB 360:PRINT TAB( 38+ LEN (SP$))MO$;TAB( 51+ LEN (SP$))MO$ 8114 LBAL= LBAL+ BAL:CBAL= CBAL+ BAL 8115 NEXT REC 8120 FILE "C",1:PRINT :PRINT SPACE$;MAGENTA$;UL$;GREEN$ 8130 PRINT SPACE$;YELLOW$;" TOTAL ASSETS";:MO= LBAL:GOSUB 360:PRINT GREEN$;TAB( 38+ LEN (SP$))MO$;:MO= CBAL:GOSUB 360:PRINT TAB( 51+ LEN (SP$))MO$ 8140 PRINT SPACE$;MAGENTA$;U1$;GREEN$:PRINT :GOSUB 5500 8150 PRINT :PLOT 3,0,31,11:INPUT "HIT <RETURN> TO CONTINUE: ";A:RETURN 8520 CHOICE= 5:GOSUB 6005 8521 ABAL= 0 8522 FILE "R",1,DSK$+ "ASSETS",1 8523 GET 1,1;LREC 8530 PRINT PRNTER$;PLNGTH$;EMPH$;SH$ 8533 PRINT SPACE$;GR$;TAB( 20+ LEN (SP$))"NETT VALUE AS AT ";DATE$;RH$:PRINT TAB( 20+ LEN (SP$));"=--=--=--=---=--=--=--=--=":PRINT 8537 PRINT SPACE$;MAGENTA$;UL$;GREEN$ 8540 PRINT SPACE$;TAB( 10+ LEN (SP$))WHITE$;"ITEM ASSETS LIABILITIES BALANCE";GREEN$ 8550 PRINT SPACE$;MAGENTA$;UL$;GREEN$:PRINT 8555 IF LREC= 2THEN 8620 8560 FOR RLEC= 2TO LREC- 1:KOUNT= 0 8570 GET 1,RLEC;NAME$[20],BAL,BDATE$[9],APPRATE:D7$= BDATE$:GOSUB 2412:JBDATE= D7:CURV= BAL+ (JTDAY- JBDATE+ 1)/ 365* APPRATE/ 100* BAL 8575 ABAL= ABAL+ CURV:TBAL= TBAL+ CURV 8580 PRINT TAB( 2+ LEN (SP$))NAME$;:MO= CURV:GOSUB 360:PRINT CYAN$;TAB( 26+ LEN (SP$))MO$;:MO= TBAL:GOSUB 360:PRINT WHITE$;TAB( 51+ LEN (SP$))MO$;GREEN$ 8610 NEXT RLEC 8620 FILE "C",1:FILE "R",1,DSK$+ "BNKTIT",1:GET 1,1;NREC:IF NREC= 2THEN 8120 8630 FOR REC= 2TO NREC- 1:GET 1,REC;NAME$[12],DUMMY$[13],BAL,BDATE$[9] 8635 ABAL= ABAL+ BAL:TBAL= TBAL+ BAL 8640 PRINT TAB( 2+ LEN (SP$))NAME$;:MO= BAL:GOSUB 360:PRINT CYAN$;TAB( 26+ LEN (SP$))MO$;:MO= TBAL:GOSUB 360:PRINT WHITE$;TAB( 51+ LEN (SP$))MO$;GREEN$ 8660 NEXT REC 8670 PRINT :FILE "C",1:GOSUB 6442:GOTO 8860 8825 TBAL= TBAL- BAL(XY) 8830 PRINT YELLOW$;TAB( 2+ LEN (SP$))NNAME$(XY);:MO= BAL(XY):GOSUB 360:PRINT RED$;TAB( 38+ LEN (SP$))MO$;:MO= TBAL:GOSUB 360:PRINT WHITE$;TAB( 51+ LEN (SP$))MO$;GREEN$ 8850 RETURN 8860 PRINT :PRINT SPACE$;MAGENTA$;UL$;GREEN$ 8870 PRINT SPACE$;YELLOW$;" TOTALS";:MO= ABAL:GOSUB 360:PRINT CYAN$;TAB( 26+ LEN (SP$))MO$;:MO= LBAL:GOSUB 360:PRINT RED$;TAB( 38+ LEN (SP$))MO$; 8875 MO= ABAL- LBAL:GOSUB 360:PRINT WHITE$;TAB( 51+ LEN (SP$))MO$;GREEN$ 8880 PRINT SPACE$;MAGENTA$;U1$;GREEN$:PRINT :GOSUB 5500 8890 PRINT :PLOT 3,0,31,11:INPUT "HIT <RETURN> TO CONTINUE: ";A:RETURN 9000 PRINT :PLOT 12,3,5,12:INPUT "LOAD APPROPRIATE PROGRAM DISK AND HIT <RETURN> ";A:LOAD "MENU":RUN 21045 ERR= 0:IF LEN (TD$)= 0THEN ERR= 1:GOTO 21130 21050 FOR JI= 1TO LEN (TD$):T6= ASC (MID$ (TD$,JI,1)):IF NOT (T6= 46OR (T6> 47AND T6< 58))THEN ERR= 1:GOTO 21130 21055 NEXT JI 21070 IF MID$ (TD$,2,1)= "."THEN TD$= "0"+ TD$ 21080 IF MID$ (TD$,5,1)= "."THEN TD$= LEFT$ (TD$,3)+ "0"+ RIGHT$ (TD$,4) 21090 MM= VAL (MID$ (TD$,4,2)) 21100 MM$= " "+ MID$ (STRMTH$,MM* 3,3)+ " " 21110 TD$= LEFT$ (TD$,2)+ MM$+ RIGHT$ (TD$,2) 21120 IF LEFT$ (TD$,1)= "0"THEN TD$= " "+ RIGHT$ (TD$,8) 21125 GOTO 21140 21130 PLOT 7 21140 RETURN