10 '******************************************************************* 20 '* TENANT MASTER FILE * 30 '* TENUP.BAS 8/23/82 * 40 '******************************************************************* 50 GOSUB 2320 60 'CLEAR 5000 70 ESC$=CHR$(27):HALF$=ESC$+CHR$(41):FULL$=ESC$+CHR$(40) 80 SC$=CHR$(26) 90 REVERSE$=ESC$+CHR$(71)+CHR$(52) 100 BLINK$=ESC$+CHR$(71)+CHR$(50) 110 SEQ$=ESC$+CHR$(71) 120 NORMAL$=SEQ$+CHR$(48):BLANK$=SEQ$+CHR$(49) 130 REVUNDER$=SEQ$+CHR$(60) 140 HALF$=ESC$+CHR$(41) 150 FULL$=ESC$+CHR$(40) 160 REVUNDER$=SEQ$+CHR$(60) 170 BLANK$=SEQ$+CHR$(49) 180 DIM NI$(201),NI#(201),OK#(24),OP(24),DP(24),IN(4),II$(30) 190 OPEN"I",1,"DATE.DAT" 200 INPUT#1,Y9$,W$,X$,Y$ 210 CLOSE 1 220 PRINT CHR$(26);FULL$ 230 TB=LEN("TENANT MASTERFILE UPDATE"):TB=(80-TB)/2 240 ESC$=CHR$(27):HALF$=ESC$+CHR$(41):FULL$=ESC$+CHR$(40) 250 PRINT TAB(TB);REVERSE$;" TENANT MASTERFILE UPDATE";NORMAL$ 260 PRINT NORMAL$;FULL$; 270 PRINT:PRINT:PRINT TAB(25)"

";HALF$;"RINT TENANT LISTING";FULL$;NORMAL$ 280 PRINT:PRINT:PRINT TAB(25)"";HALF$;"PDATE MASTERFILE";FULL$ 290 PRINT:PRINT:PRINT TAB(25)"";HALF$;"AILING LABELS";FULL$ 300 PRINT:PRINT:PRINT TAB(25)"";HALF$;"XIT PROGRAM";FULL$ 310 PRINT:PRINT:PRINT BLINK$;TAB(25)"ENTER YOUR SELECTION";:AN$=INPUT$(1) 320 IF LEFT$(AN$,1)="P" THEN GOTO 1360 330 IF LEFT$(AN$,1)="M" THEN GOTO 1740 340 IF LEFT$(AN$,1)="E" THEN CLOSE:PRINT TAB(24);REVERSE$;"LOADING MAIN MENU ";NORMAL$:RUN"MENU" 350 IF LEFT$(AN$,1)="U" THEN GOTO 370 360 PRINT"SELECTION NOT VALID !!":GOTO 310 370 '****** START INPUT OF TENANT INFORMATION ********* 380 PRINT CHR$(26) 390 GOSUB 2080 400 GOSUB 2100 410 PRINT CHR$(26) 420 PRINT CHR$(7); "ENTER TENANT NO. OR - 0 - TO EXIT";:INPUT KN# 430 IF KN#>99998! THEN 440 ELSE 450 440 PRINT "** NUMBER TO LARGE **":GOTO 420 450 IF KN#=0 GOTO 1330 460 GOSUB 2230 470 PRINT CHR$(26):PRINT TAB(18);HALF$;"*** TENANT FILE MAINTENANCE ***";FULL$ 480 FOR X=1 TO 14:PRINT TAB(6)REVERSE$;SPACE$(17);NORMAL$:NEXT X 490 R=3:C=7:GOSUB 2300 500 PRINT AT$;"TENANT NUMBER :- ":R=3:C=27:GOSUB 2300:PRINT AT$;REVUNDER$;SPACE$(6);:R=3:C=28:GOSUB 2300:PRINT AT$;:PRINT USING"#####";KN#;:PRINT HALF$;NORMAL$ 510 R=4:C=7:GOSUB 2300 520 ' ******* NAME ****** 530 PRINT AT$;"NAME :---------- ";:R=4:C=27:GOSUB 2300:PRINT AT$;REVUNDER$;SPACE$(31);NORMAL$:R=4:C=28:GOSUB 2300:PRINT AT$;J$:J1$=J$:PRINT AT$;:LINE INPUT J$:IF LEN(J$)=0 THEN SWAP J1$,J$ 540 IF J$="DELETE" GOTO 1290 550 PRINT AT$;J$ 560 R=5:C=7:GOSUB 2300 570 ' ****** ADDRESS ****** 580 PRINT AT$;"ADDRESS :------- ":R=5:C=27:GOSUB 2300:PRINT AT$;REVUNDER$;SPACE$(21);NORMAL$:R=5:C=28:GOSUB 2300:PRINT AT$;K$;:K1$=K$:PRINT AT$;:LINE INPUT K$:IF LEN(K$)=0 THEN SWAP K1$,K$ 590 PRINT AT$;K$ 600 R=6:C=7:GOSUB 2300 610 ' ******CITY-STATE-ZIP****** 620 PRINT AT$;"CITY-STATE-ZIP:- ":R=6:C=27:GOSUB 2300:PRINT AT$;REVUNDER$;SPACE$(21);NORMAL$:R=6:C=28:GOSUB 2300:PRINT AT$;L$;:L1$=L$:PRINT AT$;:LINE INPUT L$:IF LEN(L$)=0 THEN SWAP L1$,L$ 630 PRINT AT$;L$ 640 R=7:C=7:GOSUB 2300 650 ' ****** RENT ****** 660 PRINT AT$;"RENT :---------- ":R=7:C=27:GOSUB 2300:PRINT AT$;REVUNDER$;SPACE$(7);NORMAL$:R=7:C=28:GOSUB 2300:PRINT AT$;USING"####.##";M/100;:M1=M:PRINT AT$;:LINE INPUT X$:X=VAL(X$):X=X*100 670 IF X$="DELETE" THEN M=0:GOTO 700 680 IF X>0 THEN M=X:GOTO 700 690 IF X=0 THEN M=M1 700 PRINT AT$;USING"####.##";M/100 710 R=8:C=7:GOSUB 2300 720 '****** STORAGE ****** 730 PRINT AT$;"STORAGE :------- ":R=8:C=27:GOSUB 2300:PRINT AT$;REVUNDER$;SPACE$(7);NORMAL$:R=8:C=28:GOSUB 2300:PRINT AT$;USING"####.##";M2/100;:M3=M2:PRINT AT$;:LINE INPUT X$:X=VAL(X$):X=X*100 740 IF X$="DELETE" THEN M2=0:GOTO 770 750 IF X>0 THEN M2=X:GOTO 770 760 IF X=0 THEN M2=M3 770 PRINT AT$;USING"####.##";M2/100 780 R=9:C=7:GOSUB 2300 790 ' ****** MISC. CHARGES ******* 800 PRINT AT$;"MISC :---------- ":R=9:C=27:GOSUB 2300:PRINT AT$;REVUNDER$;SPACE$(7);NORMAL$:R=9:C=28:GOSUB 2300:PRINT AT$;USING"####.##";N/100;:M3=N:PRINT AT$;:LINE INPUT X$:X=VAL(X$):X=X*100 810 IF X$="DELETE" THEN N=0:GOTO 840 820 IF X<>0 THEN N=X:GOTO 840 830 IF X=0 THEN N=M3 840 PRINT AT$;USING"####.##";N/100 850 R=10:C=7:GOSUB 2300 860 '****** TV******* 870 PRINT AT$;"TV :------------ ":R=10:C=27:GOSUB 2300:PRINT AT$;REVUNDER$;SPACE$(7);NORMAL$:R=10:C=28:GOSUB 2300:PRINT AT$;USING"####.##";A1/100;:M3=A1:PRINT AT$;:LINE INPUT X$:X=VAL(X$):X=X*100 880 IF X$="DELETE" THEN A1=0:GOTO 910 890 IF X>0 THEN A1=X:GOTO 910 900 IF X=0 THEN A1=M3 910 PRINT AT$;USING"####.##";A1/100 920 R=11:C=7:GOSUB 2300 930 ' ****** GAS METER READING ****** 940 PRINT AT$;"GAS METER :----- ":R=11:C=27:GOSUB 2300:PRINT AT$;REVUNDER$;SPACE$(5);NORMAL$:R=11:C=28:GOSUB 2300:PRINT AT$;USING"#####";A2;:M9=A2:PRINT AT$;:LINE INPUT X$:X=VAL(X$) 950 IF X$="DELETE" THEN A2=0:GOTO 980 960 IF X>0 THEN A2=X:GOTO 980 970 IF X=0 THEN A2=M9 980 PRINT AT$;USING"#####";A2 990 R=12:C=7:GOSUB 2300 1000 '****** ELECTRIC METER READING ****** 1010 PRINT AT$;"ELEC.METER :---- ":R=12:C=27:GOSUB 2300:PRINT AT$;REVUNDER$;SPACE$(5);NORMAL$:R=12:C=28:GOSUB 2300:PRINT AT$;USING"#####";A3;:M9=A3:PRINT AT$;:LINE INPUT X$:X=VAL(X$) 1020 IF X$="DELETE" THEN A3=0:GOTO 1050 1030 IF X>0 THEN A3=X:GOTO 1050 1031 IF X=0 THEN A3=M9 1040 IF X=0 THEN A3=M9 1050 PRINT AT$;USING"#####";A3 1060 R=13:C=7:GOSUB 2300:M9=0 1070 '****** GAS CHARGE CODE ******* 1080 PRINT AT$;"GAS CHARGE CODE :":R=13:C=27:GOSUB 2300:PRINT AT$;REVUNDER$;SPACE$(1);NORMAL$:R=13:C=28:GOSUB 2300:PRINT AT$;USING"#";A4:M9=A4:PRINT AT$;:LINE INPUT X$:X=VAL(X$) 1090 IF X>0 THEN A4=X:GOTO 1110 1100 IF X=0 THEN A4=M9 1110 R=14:C=7:GOSUB 2300:M9=0 1120 '****** ELECTRIC CHARGE CODE ******* 1130 PRINT AT$;"EL.CHARGE CODE : ":R=14:C=27:GOSUB 2300:PRINT AT$;REVUNDER$;SPACE$(1);NORMAL$:R=14:C=28:GOSUB 2300:PRINT AT$;USING"#";A5;:M9=A5:PRINT AT$;:LINE INPUT X$:X=VAL(X$) 1131 IF X>0 THEN A5=X:GOTO 1150 1132 IF X=0 THEN A5=M9 1140 ' ********** GAS METER CODE ******** 1150 R=15:C=7:GOSUB 2300:M9=0 1160 PRINT AT$;"GAS METER CODE : ":R=15:C=27:GOSUB 2300:PRINT AT$;REVUNDER$;SPACE$(1);NORMAL$:R=15:C=28:GOSUB 2300:PRINT AT$;USING"#";ML;:M9=ML:PRINT AT$;:LINE INPUT X$ 1170 X=VAL(X$):IF X =0 THEN ML=M9:GOTO 1200 1180 IF X<4 OR X>5 THEN 1150 1190 ML=X 1200 ' ********* ELECTRIC METER CODE******** 1210 R=16:C=7:GOSUB 2300:M9=0 1220 PRINT AT$;"EL.METER CODE: ":R=16:C=27:GOSUB 2300:PRINT AT$;REVUNDER$;SPACE$(1);NORMAL$:R=16:C=28:GOSUB 2300:PRINT AT$ USING"#";MM;:M9=MM:PRINT AT$;:LINE INPUT X$ 1230 X=VAL(X$):IF X=0 THEN MM=M9:GOTO 1260 1240 IF X<4 OR X>5 THEN 1210 1250 MM=X 1260 PRINT FULL$ 1290 ' 1300 GOSUB 2260 1310 J$=" ":K$=" ":M=0:N=0:A1=0:A2=0:A4=0:A3=0:A5=0:M2=0:M1=0:M3=0:X=0:M9=0 1320 GOTO 410 1330 ' 1340 CLOSE 1350 GOTO 220 1360 C9=0: X=0:PRINT CHR$(26)'************** TENANT NAME LISTING *********** 1370 ' C9=LINE COUNTER FOR PRINTER 1380 PRINT REVERSE$; TAB(25);"** TENANT NAME LIST **" 1390 PRINT :INPUT"> ENTER DATE TO APPEAR ON REPORT EX. 01/01/79 : ";F2$ 1400 CLOSE 1 1410 OPEN "I",5,"DATE.DAT":INPUT #5,Y9$,W$,X$,Y$:CLOSE 5 1420 Y9$=F2$ 1430 OPEN"O",5,"DATE.DAT":PRINT #5,Y9$;",";W$;",";X$;",";Y$:CLOSE 5:X=0 1440 GOSUB 1480 1450 GOSUB 2080 1460 GOSUB 2100 1470 GOTO 1530 1480 LPRINT USING "\ \ TENANT MASTER LIST AS OF \ \";W$;Y9$ 1490 LPRINT " " 1500 LPRINT"SPACE";TAB(15);"NAME";TAB(35);"ADDRESS";TAB(55);"CITY - STATE - ZIP" 1510 LPRINT STRING$(79,"-") 1520 C9=C9+4:RETURN 1530 FOR COUNT%=1 TO NUM% 1540 'NUM% DATA FROM LINE 4000 ON - 1550 GOSUB 2220 1560 IF WA#=0 THEN 1660 1570 LPRINT USING"##### \ \ \ \ \ \ ";WA#;J$;K$;L$ 1580 LPRINT USING" Rent:$###.## Storage:$###.## Misc:$###.## TV:$###.## Gas Code:# El.Code:#";M/100;M2/100;N/100;A1/100;A4;A5 1590 LPRINT USING" Gas Meter:##### Elect.Meter:#####";A2;A3 1600 LPRINT TAB(7);STRING$(72,"=") 1610 C9=C9+4 1620 IF C9<56 GOTO 1660 1630 FOR XX=C9 TO 65:LPRINT" ":NEXT XX 1640 C9=0 1650 GOSUB 1480 1660 NEXT COUNT% 1670 CLOSE 1680 LPRINT " " 1690 IF R9=1 GOTO 2040 1700 LPRINT USING "TOTAL NUMBER OF TENANTS #####";Z 1710 C9=C9+2 1720 FOR XX%=C9 TO 65:LPRINT"":NEXT XX% 1730 GOTO 10 1740 PRINT CHR$(26):REM -- AROLAB -- 1750 PRINT "CHANGE TO YOUR ADDRESS LABELS HIT ENTER WHEN READY":INPUT T 1760 ' 1770 PRINT TAB(10);"** TENANT ADDRESS LABELS **":PRINT STRING$(64,"-") 1780 PRINT:PRINT"** PUT ADDRESS LABELS IN LINE PRINTER **" 1790 INPUT"> WHEN READY PRESS 'ENTER' ";Q$ 1800 R9=1 1810 GOSUB 2080 1820 GOSUB 2100 1830 FOR X=1 TO 4:LPRINT"*":NEXT:LPRINT" ":LPRINT" " 1840 INPUT"> ARE THE *'S CENTERED VERTICALLY AND ON LEFT MARGIN (Y/N) ";Q$ 1850 IF Q$="N" GOTO 1790 1860 IF LEFT$(Q$,1)<>"Y"THEN 1840 1870 PRINT "DO YOU WANT THE SPACE NUMBER TO PRINT (Y/N) ";Q$ 1880 INPUT Q$ 1890 IF LEFT$(Q$,1)="Y"THEN Y8=1:GOTO 1910 1900 IF LEFT$(Q$,1)<>"N"THEN 1870 ELSE Y8=2 1910 FOR COUNT%=1 TO NUM% 1920 GOSUB 2220 1930 IF WA#=0 THEN 2030 1940 IF Y8=1 GOTO 1970 1950 LPRINT USING " \ \";J$ 1960 GOTO 1980 1970 LPRINT USING "###### \ \";WA#;J$ 1980 LPRINT USING " \ \";K$ 1990 LPRINT USING " \ \";L$ 2000 LPRINT USING " \ \";M$ 2010 LPRINT:LPRINT:LPRINT 2020 Z=Z+1 2030 NEXT COUNT% 2040 PRINT "CHANGE BACK TO REGULAR PAPER" 2050 ' 2060 R9=0 2070 RUN"MENU" 2080 OPEN "R",2,"NAME.DAT",146 2090 RETURN 2100 REM 2110 FIELD 2,8 AS MA$,30 AS MB$,20 AS MC$,20 AS MD$,8 AS ME$,8 AS M9$,8 AS MF$,8 AS MG$,8 AS MH$,8 AS MI$,8 AS MJ$,8 AS MK$,2 AS ML$,2 AS MM$ 2120 RETURN 2130 REM CONVERT FROM DATA TO DISK FORMAT PRIOR TO PUT 2140 RSET MA$=MKD$(KN#):LSET MB$=J$:LSET MC$=K$:LSET MD$=L$:RSET ME$=MKD$(M):RSET MF$=MKD$(N):RSET M9$=MKD$(M2):RSET ML$=MKI$(ML) 2150 RSET MG$=MKD$(A1):RSET MH$=MKD$(A2):RSET MI$=MKD$(A3):RSET MJ$=MKD$(A4):RSET MK$=MKD$(A5):RSET MM$=MKI$(MM) 2160 RETURN 2170 REM TO CONVERT FROM DISK INTO WORK FIELDS AFTER GET 2180 WA#=CVD(MA$):J$=MB$:K$=MC$:L$=MD$:M=CVD(ME$):N=CVD(MF$):A1=CVD(MG$):A2=CVD(MH$):A3=CVD(MI$):A4=CVD(MJ$):A5=CVD(MK$):M2=CVD(M9$):ML=CVI(ML$):MM=CVI(MM$) 2190 RETURN 2200 ' 2210 ' 2220 ' 2230 GET 2,KN# 2240 GOSUB 2170 2250 RETURN 2260 GOSUB 2100 2270 GOSUB 2130 2280 PUT 2,KN# 2290 RETURN 2300 R=R+31:C=C+31:AT$=CHR$(27)+"="+CHR$(R)+CHR$(C):RETURN 2310 END 2320 XX=1:ZZ=0:NUM%=0:COUNT%=0 2330 GOSUB 2080:GOSUB 2110 2340 ZZ=XX*128 2350 GET 2,ZZ 2360 COUNT%=LOF(2) 2370 IF COUNT%<128 THEN NUM%=(XX-1)*128+LOF(2):NUM%=INT((128*NUM%)/142):GOTO 2380 2380 CLOSE:RETURN