Compucolor.org – Virtual Media

Listing of file='RENTAL.BAS;01' on disk='vmedia/taylor-sideA-sector.ccvf'

100 PRINT "RENTAL PROPERTY COST ACCOUNTING PROGRAM,'RENTAL':R.S.SHEVELL
110 REM -THIS PROGRAM REQUIRES LOADING PRIOR COST AND BUDGET
120 REM -ARRAYS FROM THE DISC.WHEN STARTING A NEW PROJECT WITH
130 REM -NO PRIOR DATA,TYPE 'RUN 4000'.THIS SUBROUTINE WILL
140 REM -INPUT EMPTY ARRAYS REQUIRED TO INITIALIZE THE PROGRAM.
150 CLEAR 150
160 PRINT
170 DIM C(150,11),D$(60)
180 DIM S(12),M$(11)
190 DIM B(12)
200 PLOT 6,67
210 PRINT TAB( 5)"COMPUTER  NOW LOADING AND ORGANIZING DATA ARRAYS"
220 LOAD "C.ARY"
230 LOAD "B.ARY"
240 REM -FIND THE FIRST ROW WITH NO ENTRIES AND SET THE PREVIOUS ROW AS THE LAST ROW TO BE SHOWN.
250 FOR I= 1TO 150
260 P= 0
270 FOR J= 1TO 10
280 P= P+ C(I,J)
290 NEXT J
300 IF P= 0THEN 320
310 NEXT I
320 F= I- 1
330 REM -F=NO. OF PRIOR EXPENSE ENTRIES(I.E.ROWS IN COST ARRAY)
340 REM -D$ DEFINES THE SUPPLIER OR TYPE OF EXPENSE.SINCE
350 REM - THE STORED MATRIX MUST BE NUMERIC THE FOLLOWING
360 REM -ROUTINE DEFINES D$ IN TERMS OF NUMBERS STORED IN
370 REM  THE SECOND COLUMN(J=2) OF THE COST MATRIX,C(I,J).
372 REM - NOTE: SUPPLIER NAME MUST BE LONGER THAN 2 CHARACTERS
374 PRINT
376 REM -TRUST DEEDS
380 D$(1)= "AM SAVGS"
390 D$(2)= "GRT WEST"
400 D$(3)= "HOME SAV"
410 D$(4)= "BARCLAY"
418 REM -UTILITIES
420 D$(11)= "DW & P"
430 D$(12)= "SOCALGS"
440 D$(13)= "PG&E"
450 D$(14)= "P.A.UTIL"
460 D$(15)= "M.V.CITY"
470 D$(16)= "PAC.TEL"
475 REM -  SCHEDULED MAINTENANCE
480 D$(17)= "RUBBISH"
490 D$(18)= "PESTCON"
495 D$(19)= "GARDNER"
498 REM -REPAIRS
500 D$(21)= "PLUMBER"
510 D$(22)= "ROOTER"
520 D$(23)= "WM.LIPP"
530 D$(24)= "AIR COND"
540 D$(25)= "ELECT"
550 D$(26)= "HARDWRE"
560 D$(27)= "PAINTER"
570 D$(28)= "ROOFER"
580 D$(29)= "MISCELL"
581 D$(30)= "CONTRRS"
582 REM -TAXES
590 D$(35)= "L.A.TAX"
600 D$(36)= "S.C.TAX"
602 D$(37)= "BSNS.TAX"
608 REM -INSURANCE
610 D$(40)= "MDM INS"
620 D$(41)= "MONTETH"
630 D$(42)= "FLOOD "
632 D$(43)= "STATEFND"
634 REM -MANAGER
640 D$(46)= "CONTRRS"
650 REM -CAPITAL EXPENSES
652 D$(50)= "CARPETS"
654 D$(51)= "APPLIAN"
657 D$(52)= "ROOF"
660 D$(53)= "MISCELL"
661 REM -CATEGORIES OF EXPENSE
662 M$(3)= "TRUST DEED"
664 M$(4)= "UTILITIES"
666 M$(5)= "SCHED.MAINT."
668 M$(6)= "REPAIRS"
670 M$(7)= "TAXES"
672 M$(8)= "INSURANCE"
674 M$(9)= "MANAGER"
676 M$(10)= "MISCELLANEOUS"
678 M$(11)= "CAPITAL EXPENSES"
685 REM -START WORKING PART OF THE PROGRAM.
687 PLOT 6,2
690 PLOT  12
695 PLOT  6,49
700 PRINT "IF YOU GET LOST IN THIS PROGRAM AND WISH TO RETURN"
710 PRINT "TO THE 'MENU' GIVEN BELOW,TYPE 'GO TO 750'"
720 PRINT
730 PRINT
740 PLOT 6,2
750 PRINT " WHEN THIS PROGRAM IS FIRST LOADED, SERVICE NO.2 MUST BE RUN BEFORE SERVICE NO.3 WILL RUN."
755 PRINT
760 PRINT "WHICH OF THE FOLLOWING SERVICES DO YOU WISH?"
770 PRINT
780 PRINT "1:ADD EXPENSES TO THE FILE"
790 PRINT
800 PRINT "2:REVIEW EXPENSE FILE"
810 PRINT
820 PRINT "3:REVIEW TOTAL EXPENSE AND COMPARE WITH BUDGET"
830 PRINT
840 PRINT "4:ENTER OR REVISE BUDGET"
850 PRINT
860 PRINT "5: TERMINATE SESSION AND SAVE DATA"
870 PRINT
880 PRINT "TYPE NUMBER OF DESIRED SERVICE"
890 PRINT
900 INPUT A
910 IF A= 1THEN 960
920 IF A= 2THEN 1440
930 IF A= 3THEN 1810
940 IF A= 4THEN 2330
950 IF A= 5THEN 3000
960 PRINT
965 REM -
970 PRINT "WHAT CATEGORY OF EXPENSE DO YOU WISH TO ENTER?"
980 PRINT
1070 PRINT
1080 FOR  K=  3 TO  11
1090 PRINT  K")" M$(K): PRINT
1100 NEXT  K
1110 PRINT
1120 INPUT D
1125 IF  D< 3 OR  D> 11 THEN  1080
1130 I= F+ 1
1140 PRINT
1150 REM -PRINT F TO SHOW NUMBER OF PRIOR EXPENSES ENTERED.
1160 PRINT F"  EXPENSES HAVE BEEN ENTERED IN THIS ACCOUNT"
1170 PRINT :PRINT
1180 PRINT I
1190 REM - ENTER NEW EXPENSES
1200 PRINT "ENTER DATE OF EXPENSE. EXAMPLE:APRIL 6,1979=4.0679"
1210 PRINT
1220 INPUT C(I,1)
1230 PRINT
1240 PRINT " ENTER DESCRIPTION FROM ONE OF THE FOLLOWING BY"
1250 PRINT "TYPING THE APPROPRIATE NUMBER"
1255 PRINT
1260 R= D- 2
1270 ON  R GOSUB  6000,6100,6200,6300,6400,6500,6600,6700,6800
1300 PRINT
1320 PRINT :PRINT :PRINT "ENTER EXPENSE"
1330 REM -LET J=COLUMN NUMBER OF DESIRED EXPENSE ENTRY
1340 J= D
1350 PRINT
1360 INPUT C(I,J)
1370 F= F+ 1
1380 PRINT
1390 PRINT "DO YOU WISH TO ENTER ANOTHER EXPENSE?(Y OR N)"
1400 PRINT
1410 INPUT A$
1420 IF A$= "Y"THEN 960
1430 IF A$= "N"THEN 760
1435 IF  A$< > "Y" THEN  IF  A$< > "N" THEN  1390
1440 PRINT
1450 REM -PRINT ENTIRE DATA ARRAY
1460 PLOT 29:PLOT 23
1470 PRINT TAB( 0)" DATE   DESCRIP    T.DEED  UTILITY  SCHEDUL  REPAIRS   TAXES"
1480 PRINT
1490 REM -F IS THE NUMBER OF THE LAST ROW WITH AN ENTRY
1500 FOR I= 1TO F
1502 P= 0: FOR  J= 3 TO  7
1504 P= P+ C(I,J)
1506 NEXT  J
1508 IF  P= 0 THEN  1570
1510 J= 1
1520 PRINT TAB( 0)C(I,J);
1530 PRINT TAB( 8)D$(C(I,2));
1540 FOR J= 3TO  7
1550 PRINT TAB( 9* (J- 1))C(I,J);
1560 NEXT J
1565 PRINT
1570 NEXT I
1580 PRINT
1590 PRINT
1600 PRINT " DATE";"   DESCRIP ";" INSURNC ";" MANAGER ";" MISCELL ";" CAPITAL EXP."
1610 PRINT
1620 FOR I= 1TO F
1630 IF  C(I,8)= 0 THEN  IF C(I,9)= 0 THEN IF  C(I,10)= 0 THEN  IF  C(I,11)= 0 THEN  1690
1640 J= 1
1650 PRINT TAB( 0)C(I,1);
1660 PRINT TAB( 8)D$(C(I,2));
1670 FOR  J= 8 TO  11
1680 PRINT  TAB( 16+ (J- 8)* 9)C(I,J);
1685 NEXT  J
1687 PRINT
1690 NEXT I
1700 PRINT :PRINT
1710 PLOT 29:PLOT 18
1720 PRINT "IF YOU WISH TO REPEAT THE FILE,TYPE'REPEAT'"
1730 PRINT
1740 PRINT "IF YOU ARE FINISHED EXAMINING THE FILE ,TYPE'GO'"
1750 PRINT
1760 INPUT E$
1770 IF LEFT$ (E$,3)= "REP"THEN 1440
1780 IF E$= "GO"THEN 730
1785 GOTO  1720
1790 PRINT
1800 END
1810 PRINT
1815 REM -
1820 PLOT 29:PLOT 21
1830 PRINT F" EXPENSES HAVE BEEN ENTERED FOR THIS ACCOUNT"
1840 PRINT
1850 REM -TOTAL EXPENSES IN EACH CATEGORY AND THE TOTAL OF ALL
1860 REM -EXPENSES ARE NOW CALCULATED AND DISPLAYED.COMPARISON
1870 REM -WITH THE BUDGET IS SHOWN. CAPITAL EXPENSES ARE SHOWN SEPARATELY.
1880 PLOT 29:PLOT 22
1890 PRINT "TOTAL EXPENSES AND COMPARISON WITH BUDGET"
1900 PRINT
1910 FOR J= 3TO 11
1920 S(J)= 0
1930 NEXT J
1940 PRINT
1950 FOR J= 3TO  11
1960 FOR I= 1TO F
1970 S(J)= S(J)+ C(I,J)
1980 NEXT I
1990 NEXT J
2000 T= 0
2010 FOR J= 3TO 10
2020 T= T+ S(J)
2030 NEXT J
2040 PLOT 29:PLOT 23
2050 PRINT TAB( 20)"EXPENSES";TAB( 30)"BUDGET"
2060 PRINT TAB( 20)"--------";TAB( 30)"-------"
2070 PRINT
2080 FOR J= 3TO  10
2090 PRINT TAB( 5)M$(J);
2100 GOSUB 3500
2110 PRINT TAB( 20)S(J);
2120 PLOT 29:PLOT 23
2130 PRINT TAB( 30)B(J)
2140 NEXT J
2150 PRINT TAB( 20)"--------";TAB( 30)"-------";TAB( 40)"LAST ENTRY ON "C(F,1)
2160 PRINT TAB( 10)"TOTAL $";
2170 J= 12
2175 REM - S(12) IS CREATED  SO LINES 3500 AND 3550 WILL WORK .
2180 S(12)= T
2190 GOSUB 3500
2200 PRINT TAB( 20)S(J);
2210 PLOT 29:PLOT 23
2220 PRINT TAB( 30)B(J);
2230 PRINT TAB( 40)"CAPITAL EXP.="S(11)
2240 PLOT 29:PLOT 18
2250 PRINT
2260 PRINT
2270 PRINT "WHEN FINISHED WITH THE TOTALS,TYPE 'GO'"
2280 PRINT
2290 INPUT G$
2300 IF G$= "GO"THEN 760
2305 IF  G$< >  "GO" THEN  2270
2310 END
2320 PRINT
2325 REM -
2330 PRINT "FOR WHICH OF THE FOLLOWING CATEGORIES DO YOU"
2340 PRINT "WISH TO ENTER OR REVISE THE BUDGET? TYPE THE "
2350 PRINT "APPROPRIATE NUMBER."
2360 PRINT
2370 PLOT 29:PLOT 23
2380 FOR  K = 3 TO  11
2390 PRINT  K ")" M$(K):PRINT
2395 NEXT  K
2400 PLOT 29:PLOT 18
2410 PRINT
2420 INPUT G
2430 PRINT
2440 PRINT "ENTER BUDGET AMOUNT FOR THIS CATEGORY"
2450 PRINT
2460 INPUT B(G)
2470 W= 0
2475 REM -OBTAIN TOTAL OF BUDGETED EXPENSES. CALL TOTAL ' B(12)'.
2480 FOR G= 3TO  10
2490 W= W+ B(G)
2500 B(12)= W
2510 NEXT G
2520 PRINT :PRINT
2530 PRINT "DO YOU WISH TO ENTER OR REVISE ANOTHER BUDGET"
2540 PRINT "CATEGORY? TYPE Y OR N."
2550 PRINT
2560 INPUT N$
2570 IF N$= "Y"THEN 2330
2580 IF N$= "N"THEN 720
2590 IF  N$< > "Y" THEN  IF  N$< > "N" THEN  2530
2990 REM -
3000 PLOT 27:PLOT 4:REM -SELECT FCS MODE
3010 PRINT "DELETE C.ARY;1"
3020 PRINT "RENAME C.ARY;2 TO C.ARY;1"
3030 PRINT "DELETE B.ARY;1"
3040 PRINT "RENAME B.ARY;2 TO B.ARY;1"
3050 PLOT 27:PLOT 27:REM  -RETURN TO BASIC(ESCAPE E)
3060 SAVE "C.ARY"
3070 SAVE "B.ARY"
3080 END
3490 REM -THIS ROUTINE PRINTS THE EXPENSES IN YELLOW IF WITHIN
3495 REM -10% OF THE BUDGET AND IN RED IF OVER THE BUDGET.
3500 IF S(J)> (0.9* B(J))THEN IF S(J)< B(J)THEN 3530
3510 IF S(J)= > B(J)THEN 3550
3520 RETURN
3530 PLOT 29:PLOT 19
3540 RETURN
3550 PLOT 29:PLOT 17
3560 RETURN
3990 REM -
3998 PRINT
4000 PLOT  6,115
4002 PRINT  "COMPUTER NOW SETTING UP INITIALIZING DATA ARRAYS"
4008 DIM  C(150,11)
4010 FOR I= 1TO 150
4020 FOR J= 1TO 11
4030 C(I,J)= 0
4040 NEXT J
4050 NEXT I
4060 DIM B(12)
4070 FOR J= 1TO 12
4080 B(J)= 0
4090 NEXT J
4100 DIM D$(60)
4110 DIM S(12)
4120 DIM M$(11)
4130 FOR K= 1TO 2
4140 SAVE "B.ARY"
4150 SAVE "C.ARY"
4160 NEXT K
4170 GOTO 250
4180 END
6000 FOR  K =  1 TO  10
6010 IF  LEN ( D$(K))< 3 THEN  6030
6020 PRINT  K ")" D$(K):PRINT
6030 NEXT  K
6033 INPUT  C(I,2)
6036 IF  C(I,2)< 1 OR  C(I,2)> 10 THEN  6000
6040 RETURN
6100 FOR  K =  11 TO  16
6110 IF  LEN ( D$(K))< 3 THEN  6130
6120 PRINT  K ")" D$(K):PRINT
6130 NEXT  K
6133 INPUT  C(I,2)
6136 IF  C(I,2)< 11 OR  C(I,2)> 16 THEN  6100
6140 RETURN
6200 FOR  K =  17 TO  19
6210 IF  LEN ( D$(K))< 3 THEN  6230
6220 PRINT  K ")" D$(K):PRINT
6230 NEXT  K
6233 INPUT  C(I,2)
6236 IF  C(I,2)< 17 OR  C(I,2)> 19 THEN  6200
6240 RETURN
6300 FOR  K =  20 TO  34
6310 IF  LEN ( D$(K))< 3 THEN  6330
6320 PRINT  K ")" D$(K):PRINT
6330 NEXT  K
6333 INPUT  C(I,2)
6336 IF  C(I,2)< 20 OR  C(I,2)> 34 THEN  6300
6340 RETURN
6400 FOR  K =  35 TO  39
6410 IF  LEN ( D$(K))< 3 THEN  6430
6420 PRINT  K ")" D$(K):PRINT
6430 NEXT  K
6433 INPUT  C(I,2)
6436 IF  C(I,2)< 35  OR  C(I,2)> 39 THEN  6400
6440 RETURN
6500 FOR  K =  40 TO  45
6510 IF  LEN ( D$(K))< 3 THEN  6530
6520 PRINT  K ")" D$(K):PRINT
6530 NEXT  K
6533 INPUT  C(I,2)
6536 IF  C(I,2)< 40  OR  C(I,2)> 45 THEN  6500
6540 RETURN
6600 FOR  K =  46 TO  49
6610 IF  LEN ( D$(K))< 3 THEN  6630
6620 PRINT  K ")" D$(K):PRINT
6630 NEXT  K
6633 INPUT  C(I,2)
6636 IF  C(I,2)< 46  OR  C(I,2)> 49 THEN  6600
6640 RETURN
6700  K =  29
6720 PRINT  K ")" D$(K)
6733 INPUT  C(I,2)
6736 IF  C(I,2)< > 29 THEN  6700
6740 RETURN
6800 FOR  K =  50 TO  55
6810 IF  LEN ( D$(K))< 3 THEN  6830
6820 PRINT  K ")" D$(K):PRINT
6830 NEXT  K
6840 RETURN