10  COM D$[45],R
20  COM A$[15]
30  H=0
40  REM *** REV 1.3 19-FEB-80 ***
50  REM- *** WRITTEN BY BOB ANDERSON FOR CRISIS COMPUTER CORP. 7/79 ***
60  REM ***REVISED 8/79,BA
70  REM***REVISED3/80,BA***
80  REM *** MOD ***
90  REM *** ALAN DE MARTINO ***
100  REM***REVISED 08/11/80 SYSDAT SUBROUTINE ADDED TO LIST+BACKLINE***
110  REM FILE REQUEST ADDED
115  REM***REVISED 5/21/81 =>DATE CHANGED TO PO # & PO# SEARCH ADDED, BA
116  REM***REVISED 1/7/82 =>STATUS SEARCH ADDED.
120  FILES *,*
130  DIM S$[20],T$[20]
140  DIM M$[20]
150  DIM M1$[20]
160  DIM Y$[20],Z$[15],P$[20],U$[15],W$[15],E$[10]
170  DIM I$[7]
180  DIM X$[10]
190  DIM L$[5]
200  DIM Q[12],N$[7],H$[7]
210  DIM B$[8],C$[2],A1$[12]
220  REM- *** MASTER CONTROL FOR PROGRAM FUNCTIONS. ***
230  PRINT "THIS PROGRAM WILL LIST AND MAINTAIN THE INVENTORY."
240  PRINT 
250  PRINT "PLEASE SELECT THE FUNCTION #"
260  PRINT "1-ADD NEW ITEM                 2-DELETE ITEM"
270  PRINT "3-LIST FILE                    4-SEARCH/INV#"
280  PRINT "5-SEARCH/MODEL                 6-SEARCH/MFG"
290  PRINT "7-SEARCH/PO#                   8-SEARCH/STATUS"
300  PRINT "9-TOTALS                      10-FILE MAINT."
310  PRINT "11-NEW INV. FILE              12-END OPERATION"
320  IF H=1 THEN 420
330  PRINT LIN(2)"NAME OF INVENTORY FILE :";
340  ENTER 255,X,A$
350  IF X=-256 THEN 340
360  ASSIGN A$,1,R
370  IF R=3 THEN 330
380  PRINT LIN(2)
390  PRINT "TYPE 000 TO BACK LINE 1 INSTRUCTION."
400  PRINT LIN(2)
410  H=1
420  PRINT 
430  PRINT "COMMAND ";
440  INPUT X
450  GOTO X OF 470,1090,1560,2450,2680,3140,4630,6200,7000,3890,330,8530
460  GOTO 240
470  REM- *** ROUTINE TO ADD ITEMS TO INVENTORY AND ALPHA SORT.***
480  IF  END #1 THEN 1070
490  READ #1,1;N
500  IF  END #1 THEN 1050
510  READ #1,N+2
520  PRINT "MANUFACTURER (7) MENU=/";
530  INPUT M$
540  IF M$="/" THEN 250
550  IF M$="000" THEN 430
560  PRINT "MODEL (7)";
570  INPUT D$
580  IF D$="000" THEN 520
590  PRINT "C.C.C. INVENTORY NUMBER (7)";
600  INPUT I$
610  IF I$="000" THEN 560
620  PRINT "COST (7,NO DEC.)";
630  INPUT C1
640  IF C1=0 THEN 590
650  PRINT "SELL PRICE (7,NO DEC.)";
660  INPUT S1
670  IF S1=0 THEN 620
680  PRINT "P.O. NUMBER ";
690  INPUT T$
700  IF T$="000" THEN 650
710  PRINT "STATUS (2)"
720  PRINT "N=NEW"
730  PRINT "D=DEMO"
740  PRINT "B=BROKEN"
750  PRINT "U=USED"
760  PRINT "C=CUSTOMER OWNED"
770  INPUT S$
780  IF S$="000" THEN 680
790  IF N#0 THEN 820
800  R=2
810  GOTO 930
820  F=2
830  L=N+1
840  R=INT((F+L)/2)
850  READ #1,R;P$,U$,W$,E,A,B$,C$
860  IF I$<W$ THEN 960
870  IF I$>W$ THEN 990
880  IF I$=W$ THEN 4790
890  FOR I=N+1 TO R STEP -1
900  READ #1,I;P$,U$,W$,E,A,B$,C$
910  PRINT #1,I+1;P$,U$,W$,E,A,B$,C$
920  NEXT I
930  PRINT #1,R;M$,D$,I$,C1,S1,T$,S$
940  PRINT #1,1;N+1
950  GOTO 470
960  L=R
970  IF F#L THEN 840
980  GOTO 890
990  F=R
1000  IF L-F>1 THEN 840
1010  R=R+1
1020  IF L-F#1 THEN 890
1030  F=F+1
1040  GOTO 840
1050  PRINT "FILE FULL"
1060  GOTO 240
1070  N=0
1080  GOTO 510
1090  REM- *** ROUTINE TO DELETE AN INVENTORY ITEM ***
1100  PRINT "THIS ROUTINE WILL DELETE A RECORD"
1110  PRINT 
1120  PRINT "INPUT MANUFACTURER,(/=MENU)";
1130  INPUT Y$
1140  IF Y$="/" THEN 240
1150  PRINT "INPUT INVENTORY # ";
1160  INPUT Z$
1170  IF Z$="000" THEN 1120
1180  IF  END #1 THEN 1520
1190  J=2
1200  IF  END #1 THEN 1260
1210  READ #1,J;M$,D$,I$,C1,S1,T$,S$
1220  IF M$#Y$ THEN 1240
1230  IF I$=Z$ THEN 1280
1240  J=J+1
1250  GOTO 1200
1260  PRINT "FIND NO RECORDS OF THIS DESCRIPTION; PLEASE CHECK INPUT."
1270  GOTO 1100
1280  PRINT  USING 2570
1290  PRINT  USING 2580
1300  PRINT 
1310  G1=S1-C1
1320  P1=G1/S1*100
1330  PRINT  USING 1960;M$,D$,I$,C1,S1,G1,P1,T$,S$
1340  PRINT 
1350  PRINT " IS THIS THE RECORD YOU WANTED TO DELETE (Y OR N)";
1360  INPUT Q$
1370  IF Q$="N" THEN 1100
1380  PRINT #1,J
1390  PRINT "FILE DELETED"
1400  REM***DECREMENT***
1410  READ #1,1;V
1420  V=V-1
1430  PRINT #1,1;V
1440  J=J+1
1450  IF  END #1 THEN 1540
1460  REM-***REPACK***
1470  READ #1,J;M$,D$,I$,C1,S1,T$,S$
1480  IF  END #1 THEN 1540
1490  PRINT #1,J-1;M$,D$,I$,C1,S1,T$,S$
1500  J=J+1
1510  GOTO 1450
1520  PRINT "NO RECORDS IN THIS FILE"
1530  GOTO 1100
1540  PRINT #1,J-1; END 
1550  GOTO 1100
1560  PRINT " DO YOU WANT THE OUTPUT ON THE LINEPRINTER";
1570  LINPUT L$
1580  IF L$[1,1]="Y" THEN 1610
1590  Z=0
1600  GOTO 1710
1610  PURGE R,"ASCBOB"
1620  SYSTEM X,"FILE-ASCBOB,LP0"
1630  GOTO 1650
1640  PRINT "THE LP IS BUSY... BREAK IF YOU DON'T WANT TO WAIT!"
1650  ASSIGN "ASCBOB",2,R
1660  IF R=8 THEN 1690
1670  IF R=6 THEN 1640
1680  PRINT "ASSIGNMENT OF LP FAILED!!";R
1690  Z=2
1700  PRINT "WAIT....FILE IS BEING PRINTED!!"
1710  REM- *** ROUTINE TO LIST INVENTORY ***
1720  PRINT #Z;"                  *****************************"
1730  PRINT #Z;"                  *    CRISIS COMPUTER CORP   *"
1740  PRINT #Z;"                  *         INVENTORY         *"
1750  PRINT #Z;"                  *          ON-HAND          *"
1760  PRINT #Z;"                  *****************************"
1770  PRINT #Z
1780  PRINT #Z;"FILE BEING LISTED IS  ";A$
1790  PRINT #Z;LIN(3)
1800  D$="WDMYTPN"
1810  GOSUB 7280
1820  PRINT #Z;D$
1830  PRINT #Z;LIN(3)
1840  K=2
1850  PRINT #Z; USING 2570
1860  PRINT #Z; USING 2580
1870  PRINT #Z
1880  M1$=""
1890  C2=S2=C3=S3=0
1900  IF  END #1 THEN 2180
1910  READ #1,K;M$,D$,I$,C1,S1,T$,S$
1920  IF M1$="" THEN 1940
1930  IF M1$#M$ THEN 2050
1940  G1=S1-C1
1950  P1=G1/S1*100
1960  IMAGE 7A,2X,7A,2X,7A,2X,7D,2X,7D,2X,7D,2X,S3D.2D,2X,8A,2X,2A
1970  PRINT #Z; USING 1960;M$,D$,I$,C1,S1,G1,P1,T$,S$
1980  M1$=M$
1990  C2=C2+C1
2000  S2=S2+S1
2010  C3=C3+C1
2020  S3=S3+S1
2030  K=K+1
2040  GOTO 1900
2050  G3=S3-C3
2060  PRINT #Z; USING 2220
2070  PRINT #Z; USING 2230;C3,G3
2080  P3=G3/S3*100
2090  PRINT #Z; USING 2240
2100  PRINT #Z; USING 2310;S3,P3
2110  PRINT #Z;'12
2120  S3=C3=0
2130  IF M1$="*" THEN 2200
2140  PRINT #Z; USING 2570
2150  PRINT #Z; USING 2580
2160  PRINT #Z
2170  GOTO 1940
2180  M1$="*"
2190  GOTO 2050
2200  PRINT #Z;LIN(2)
2210  G2=S2-C2
2220  IMAGE"                           ---------          -------"
2230  IMAGE"SUBTOTALS=",15X,9D,9X,9D
2240  IMAGE"                                    -------            ------"
2250  IMAGE"TOTALS=",18X,9D,9X,9D
2260  PRINT #Z; USING 2220
2270  PRINT #Z; USING 2250;C2,G2
2280  IF G2=0 THEN 2350
2290  P2=G2/S2*100
2300  PRINT #Z; USING 2240
2310  IMAGE34X,9D,11X,SDD.DD
2320  PRINT #Z; USING 2310;S2,P2
2330  PRINT #Z;LIN(2)
2340  PRINT #Z;"STATUS = N-NEW,D-DEMO,B-BROKEN,U-USED,C-CUST.OWNED"
2350  PRINT #Z;"                   END OF REPORT"
2360  PRINT #Z
2370  H=1
2380  IF L$[1,1]#"Y" THEN 2440
2390  PRINT #Z;'12'12
2400  ASSIGN *,2,R
2410  PURGE R,"ASCBOB"
2420  IF R=0 THEN 2440
2430  PRINT "ASCII FILE 'ASCBOB' NOT PURGED.  ";R
2440  GOTO 240
2450  REM ***ROUTINE TO SEARCH FOR A INVENTORY #***
2460  PRINT "THIS ROUTINE WILL SEARCH FOR AND DISPLAY A INVENTORY NUMBER"
2470  PRINT 
2480  PRINT "INVENTORY #,(/=MENU)";
2490  INPUT X$
2500  IF X$="/" THEN 250
2510  J=2
2520  IF  END #1 THEN 2660
2530  READ #1,J;M$,D$,I$,C1,S1,T$,S$
2540  IF I$=X$ THEN 2570
2550  J=J+1
2560  GOTO 2520
2570  IMAGE"MANUF    MODEL       INV#     COST     SELL      G/P    %      P.O.#    ST"
2580  IMAGE"=======  =======  =======  =======  =======  =======  =====  ========  =="
2590  G1=S1-C1
2600  P1=G1/S1*100
2610  PRINT  USING 2570
2620  PRINT  USING 2580
2630  PRINT  USING 1960;M$,D$,I$,C1,S1,G1,P1,T$,S$
2640  PRINT LIN(3)
2650  GOTO 2460
2660  PRINT "NO FIND...PLEASE CHECK INPUT"
2670  GOTO 2460
2680  REM ***SEARCH/MODEL***
2690  PRINT "THIS ROUTINE WILL SEARCH BY MODEL AND LIST."
2700  PRINT 
2710  PRINT "MODEL,(/=MENU)";
2720  INPUT X$
2730  IF X$="/" THEN 250
2740  J=2
2750  C3=S3=G3=P3=0
2760  PRINT  USING 2570
2770  PRINT  USING 2580
2780  IF  END #1 THEN 3120
2790  READ #1,J;M$,D$,I$,C1,S1,T$,S$
2800  LET F=LEN(X$)
2810  IF D$[1,F]=X$[1,F] THEN 2890
2820  J=J+1
2830  GOTO 2780
2840  IF  END #1 THEN 3020
2850  READ #1,J;M$,D$,I$,C1,S1,T$,S$
2860  IF D$[1,F]=X$[1,F] THEN 2890
2870  J=J+1
2880  GOTO 2840
2890  G1=S1-C1
2900  P1=G1/S1*100
2910  PRINT  USING 1960;M$,D$,I$,C1,S1,G1,P1,T$,S$
2920  J=J+1
2930  IF C3#0 THEN 2990
2940  C3=C1
2950  S3=S1
2960  G3=G1
2970  P3=P1
2980  IF C3=C1 THEN 3010
2990  C3=C3+C1
3000  S3=S3+S1
3010  GOTO 2840
3020  G3=S3-C3
3030  P3=G3/S3*100
3040  PRINT  USING 2220
3050  PRINT  USING 2250;C3,G3
3060  PRINT  USING 2240
3070  PRINT  USING 2310;S3,P3
3080  PRINT 
3090  C3=S3=0
3100  PRINT "                 END OF REPORT"
3110  GOTO 2690
3120  PRINT "NO SUCH MODEL,TRY AGAIN"
3130  GOTO 2690
3140  REM****SEARCH/MFG****
3150  PRINT "THIS ROUTINE WILL SEARCH BY MFG AND PRINT"
3160  H=1
3170  PRINT 
3180  PRINT "MFG. (/=MENU)";
3190  INPUT X$
3200  IF X$="/" THEN 250
3210  L$=""
3220  PRINT "LINEPRINTER? (CR=NO)";
3230  LINPUT L$
3240  IF L$[1,1]="Y" THEN 3270
3250  Z=0
3260  GOTO 3370
3270  PURGE R,"ASCBOB"
3280  SYSTEM X,"FILE-ASCBOB,LP0"
3290  GOTO 3310
3300  PRINT "THE LP IS BUSY...BREAK IF YOU DON'T WANT TO WAIT!"
3310  ASSIGN "ASCBOB",2,R
3320  IF R=8 THEN 3350
3330  IF R=6 THEN 3300
3340  PRINT "ASSIGNMENT OF LP FAILED!!!";R
3350  Z=2
3360  PRINT "WAIT.....FILE IS BEING PRINTED!!!"
3370  REM
3380  PRINT #Z;"           ///***LISTING BY MANUFACTURER***///"
3390  PRINT #Z;LIN(3)"   Printing of ";X$
3400  D$="WDMYTPN"
3410  GOSUB 7280
3420  PRINT #Z;LIN(2);D$
3430  C3=S3=G3=P3=0
3440  J=2
3450  PRINT #Z; USING 2570;LIN(2)
3460  PRINT #Z; USING 2580
3470  IF  END #1 THEN 3860
3480  READ #1,J;M$,D$,I$,C1,S1,T$,S$
3490  LET F=LEN(X$)
3500  IF X$[1,F]=M$[1,F] THEN 3580
3510  J=J+1
3520  GOTO 3470
3530  IF  END #1 THEN 3720
3540  READ #1,J;M$,D$,I$,C1,S1,T$,S$
3550  IF M$[1,F]=X$[1,F] THEN 3580
3560  J=J+1
3570  GOTO 3530
3580  G1=S1-C1
3590  M1$=M$
3600  P1=G1/S1*100
3610  PRINT #Z; USING 1960;M$,D$,I$,C1,S1,G1,P1,T$,S$
3620  J=J+1
3630  IF C3#0 THEN 3690
3640  C3=C1
3650  S3=S1
3660  G3=G1
3670  P3=P1
3680  IF C3=C1 THEN 3710
3690  C3=C3+C1
3700  S3=S3+S1
3710  GOTO 3530
3720  G3=S3-C3
3730  P3=G3/S3*100
3740  PRINT #Z; USING 2220
3750  PRINT #Z; USING 2250;C3,G3
3760  PRINT #Z; USING 2240
3770  PRINT #Z; USING 2310;S3,P3
3780  PRINT #Z
3790  C4=C3
3800  S4=S3
3810  C3=S3=0
3820  PRINT #Z;"                 END OF REPORT"
3830  PRINT #Z;'12
3840  ASSIGN *,2
3850  GOTO 3150
3860  PRINT "NO SUCH MANUF, TRY AGAIN"
3870  ASSIGN *,2
3880  GOTO 3150
3890  REM***FILE MAINTAINCE***
3900  PRINT "THIS ROUTINE WILL ALLOW CHANGES TO DATA IN AN INVENTORY ITEM"
3910  PRINT 
3920  PRINT "INVENTORY #,(/=MENU)";
3930  INPUT X$
3940  IF X$="/" THEN 250
3950  J=2
3960  IF  END #1 THEN 4610
3970  READ #1,J;M$,D$,I$,C1,S1,T$,S$
3980  IF I$=X$ THEN 4010
3990  J=J+1
4000  GOTO 3960
4010  PRINT  USING 2570
4020  PRINT  USING 2580
4030  G3=P3=0
4040  G3=S1-C1
4050  P3=G3/S1*100
4060  PRINT  USING 1960;M$,D$,I$,C1,S1,G3,P3,T$,S$
4070  PRINT 
4080  PRINT "YOU CANNOT CHANGE G/P OR %"
4090  PRINT 
4100  PRINT "WHICH COLUMN ARE YOU GOING TO CHANGE (N=NEW#,/=MENU)";
4110  INPUT X$
4120  IF X$="MANUF" THEN 4230
4130  IF X$="MODEL" THEN 4270
4140  IF X$="INV#" THEN 4310
4150  IF X$="COST" THEN 4350
4160  IF X$="SELL" THEN 4390
4170  IF X$="P.O.#" THEN 4430
4180  IF X$="ST" THEN 4470
4190  IF X$="N" THEN 3920
4200  IF X$="/" THEN 250
4210  PRINT "WRONG INPUT,CHECK SPELLING IN THE HEADING."
4220  GOTO 4100
4230  PRINT "WHAT IS THE NEW MANUF";
4240  INPUT W$
4250  M$=W$
4260  GOTO 4500
4270  PRINT "WHAT IS THE NEW MODEL";
4280  INPUT W$
4290  D$=W$
4300  GOTO 4500
4310  PRINT "WHAT IS THE NEW INV#";
4320  INPUT W$
4330  I$=W$
4340  GOTO 4500
4350  PRINT "WHAT IS THE NEW COST";
4360  INPUT W
4370  C1=W
4380  GOTO 4500
4390  PRINT "WHAT IS THE NEW SELL";
4400  INPUT W
4410  S1=W
4420  GOTO 4500
4430  PRINT "WHAT IS THE NEW P.O. #? ";
4440  INPUT W$
4450  T$=W$
4460  GOTO 4500
4470  PRINT "WHAT IS THE NEW ST";
4480  INPUT W$
4490  S$=W$
4500  PRINT #1,J;M$,D$,I$,C1,S1,T$,S$
4510  PRINT "YOUR NEW INVENTORY ITEM LOOKS LIKE THIS:"
4520  PRINT 
4530  PRINT  USING 2570
4540  PRINT  USING 2580
4550  G1=S1-C1
4560  P1=G1/S1*100
4570  PRINT  USING 1960;M$,D$,I$,C1,S1,G1,P1,T$,S$
4580  PRINT LIN(3)
4590  PRINT "        SO THERE!!!"
4600  GOTO 4100
4610  PRINT "THERE AIN'T NO SECH INV#,TRY AGAIN"
4620  GOTO 3900
4630  REM****SEARCH/PO#****
4640  PRINT "THIS ROUTINE WILL SEARCH BY PO# AND PRINT"
4650  H=1
4660  PRINT 
4670  PRINT "PO#   (/=MENU)";
4680  LINPUT X$
4690  IF X$="/" THEN 250
4700  L$=""
4710  PRINT "LINEPRINTER? (CR=NO)";
4720  LINPUT L$
4730  IF L$[1,1]="Y" THEN 4760
4740  Z=0
4750  GOTO 4860
4760  PURGE R,"ASCBOB"
4770  SYSTEM X,"FILE-ASCBOB,LP0"
4780  GOTO 4800
4790  PRINT "THE LP IS BUSY...BREAK IF YOU DON'T WANT TO WAIT!"
4800  ASSIGN "ASCBOB",2,R
4810  IF R=8 THEN 4840
4820  IF R=6 THEN 4790
4830  PRINT "ASSIGNMENT OF LP FAILED!!!";R
4840  Z=2
4850  PRINT "WAIT.....FILE IS BEING PRINTED!!!"
4860  REM
4870  PRINT #Z;"           ///***LISTING BY PURCH. ORDER #***///"
4880  PRINT #Z;LIN(3)"   Printing of ";X$
4890  D$="WDMYTPN"
4900  GOSUB 7280
4910  PRINT #Z;LIN(2);D$
4920  C3=S3=G3=P3=0
4930  J=2
4940  PRINT #Z; USING 2570;LIN(2)
4950  PRINT #Z; USING 2580
4960  IF  END #1 THEN 5350
4970  READ #1,J;M$,D$,I$,C1,S1,T$,S$
4980  LET F=LEN(X$)
4990  IF X$[1,F]=T$[1,F] THEN 5070
5000  J=J+1
5010  GOTO 4960
5020  IF  END #1 THEN 5210
5030  READ #1,J;M$,D$,I$,C1,S1,T$,S$
5040  IF T$[1,F]=X$[1,F] THEN 5070
5050  J=J+1
5060  GOTO 5020
5070  G1=S1-C1
5080  M1$=M$
5090  P1=G1/S1*100
5100  PRINT #Z; USING 1960;M$,D$,I$,C1,S1,G1,P1,T$,S$
5110  J=J+1
5120  IF C3#0 THEN 5180
5130  C3=C1
5140  S3=S1
5150  G3=G1
5160  P3=P1
5170  IF C3=C1 THEN 5200
5180  C3=C3+C1
5190  S3=S3+S1
5200  GOTO 5020
5210  G3=S3-C3
5220  P3=G3/S3*100
5230  PRINT #Z; USING 2220
5240  PRINT #Z; USING 2250;C3,G3
5250  PRINT #Z; USING 2240
5260  PRINT #Z; USING 2310;S3,P3
5270  PRINT #Z
5280  C4=C3
5290  S4=S3
5300  C3=S3=0
5310  PRINT #Z;"                 END OF REPORT"
5320  PRINT #Z;'12
5330  ASSIGN *,2
5340  GOTO 4640
5350  PRINT "NO SUCH PO #, TRY AGAIN"
5360  ASSIGN *,2
5370  GOTO 4640
5380  REM***FILE MAINTAINCE***
5390  PRINT "THIS ROUTINE WILL ALLOW CHANGES TO DATA IN AN INVENTORY ITEM"
5400  PRINT 
5410  PRINT "INVENTORY #,(/=MENU)";
5420  INPUT X$
5430  IF X$="/" THEN 250
5440  J=2
5450  IF  END #1 THEN 6100
5460  READ #1,J;M$,D$,I$,C1,S1,T$,S$
5470  IF I$=X$ THEN 5500
5480  J=J+1
5490  GOTO 5450
5500  PRINT  USING 2570
5510  PRINT  USING 2580
5520  G3=P3=0
5530  G3=S1-C1
5540  P3=G3/S1*100
5550  PRINT  USING 1960;M$,D$,I$,C1,S1,G3,P3,T$,S$
5560  PRINT 
5570  PRINT "YOU CANNOT CHANGE G/P OR %"
5580  PRINT 
5590  PRINT "WHICH COLUMN ARE YOU GOING TO CHANGE (N=NEW#,/=MENU)";
5600  INPUT X$
5610  IF X$="MANUF" THEN 5720
5620  IF X$="MODEL" THEN 5760
5630  IF X$="INV#" THEN 5800
5640  IF X$="COST" THEN 5840
5650  IF X$="SELL" THEN 5880
5660  IF X$="P.O.#" THEN 5920
5670  IF X$="ST" THEN 5960
5680  IF X$="N" THEN 5410
5690  IF X$="/" THEN 250
5700  PRINT "WRONG INPUT,CHECK SPELLING IN THE HEADING."
5710  GOTO 5590
5720  PRINT "WHAT IS THE NEW MANUF";
5730  INPUT W$
5740  M$=W$
5750  GOTO 5990
5760  PRINT "WHAT IS THE NEW MODEL";
5770  INPUT W$
5780  D$=W$
5790  GOTO 5990
5800  PRINT "WHAT IS THE NEW INV#";
5810  INPUT W$
5820  I$=W$
5830  GOTO 5990
5840  PRINT "WHAT IS THE NEW COST";
5850  INPUT W
5860  C1=W
5870  GOTO 5990
5880  PRINT "WHAT IS THE NEW SELL";
5890  INPUT W
5900  S1=W
5910  GOTO 5990
5920  PRINT "WHAT IS THE NEW P.O. #? ";
5930  INPUT W$
5940  T$=W$
5950  GOTO 5990
5960  PRINT "WHAT IS THE NEW ST";
5970  INPUT W$
5980  S$=W$
5990  PRINT #1,J;M$,D$,I$,C1,S1,T$,S$
6000  PRINT "YOUR NEW INVENTORY ITEM LOOKS LIKE THIS:"
6010  PRINT 
6020  PRINT  USING 2570
6030  PRINT  USING 2580
6040  G1=S1-C1
6050  P1=G1/S1*100
6060  PRINT  USING 1960;M$,D$,I$,C1,S1,G1,P1,T$,S$
6070  PRINT LIN(3)
6080  PRINT "        SO THERE!!!"
6090  GOTO 5590
6100  PRINT "THERE AIN'T NO SECH INV#,TRY AGAIN"
6110  GOTO 5390
6200  REM****SEARCH/STATUS
6210  PRINT "THIS ROUTINE WILL SEARCH BY STATUS AND PRINT"
6220  H=1
6230  PRINT LIN(2);"STATUS?  (/=MENU)";
6240  X$=""
6250  LINPUT X$
6260  IF X$="/" THEN 250
6270  L$=""
6280  PRINT "LINEPRINTER?  (<CR>=NO) ";
6290  LINPUT L$
6300  IF L$[1,1]="Y" THEN 6330
6310  Z=0
6320  GOTO 6430
6330  PURGE R,"ASCBOB"
6340  SYSTEM X,"FILE-ASCBOB,LP0"
6350  GOTO 6370
6360  PRINT "THE LP IS BUSY...BREAK IF YOU DON'T WANT TO WAIT!"
6370  ASSIGN "ASCBOB",2,R
6380  IF R=8 THEN 6410
6390  IF R=6 THEN 6360
6400  PRINT "ASSIGNMENT OF THE LP FAILED!!!";R
6410  Z=2
6420  PRINT "...PLEASE WAIT..THE FILE IS BEING PRINTED!"
6430  REM
6440  PRINT #Z;"                ///*** LISTING BY STATUS ***"'92'92'92
6450  PRINT #Z;LIN(3)"                       STATUS= ";X$
6460  D$="WDMYTPN"
6470  GOSUB 7280
6480  PRINT #Z;LIN(2);D$
6490  C3=S3=G3=P3=0
6500  J=2
6510  PRINT #Z; USING 2570;LIN(2)
6520  PRINT #Z; USING 2580
6530  IF  END #1 THEN 6870
6540  READ #1,J;M$,D$,I$,C1,S1,T$,S$
6550  LET F=LEN(X$)
6560  IF X$[1,F]=S$[1,F] THEN 6590
6570  J=J+1
6580  GOTO 6530
6582  IF  END #1 THEN 6730
6583  READ #1,J;M$,D$,I$,C1,S1,T$,S$
6584  IF S$[1,F]=X$[1,F] THEN 6590
6585  J=J+1
6586  GOTO 6582
6590  G1=S1-C1
6600  M1$=M$
6610  P1=G1/S1*100
6620  PRINT #Z; USING 1960;M$,D$,I$,C1,S1,G1,P1,T$,S$
6630  J=J+1
6640  IF C3#0 THEN 6700
6650  C3=C1
6660  S3=S1
6670  G3=G1
6680  P3=P1
6690  IF C3=C1 THEN 6720
6700  C3=C3+C1
6710  S3=S3+S1
6720  GOTO 6582
6730  G3=S3-C3
6740  P3=G3/S3*100
6750  PRINT #Z; USING 2220
6760  PRINT #Z; USING 2250;C3,G3
6770  PRINT #Z; USING 2240
6780  PRINT #Z; USING 2310;S3,P3
6790  PRINT #Z
6800  C4=C3
6810  S4=S3
6820  C3=S3=0
6830  PRINT #Z;"                             END OF REPORT"
6840  PRINT #Z;'12
6850  ASSIGN *,2
6860  GOTO 6210
6870  PRINT "  NO SUCH STATUS!   TRY AGAIN !"
6880  ASSIGN *,2
6890  GOTO 6210
6900  STOP 
7000  REM***TOTALS***
7010  PRINT "THESE ARE THE TOTALS FOR THE INVENTORY ON HAND"
7020  PRINT LIN(2)
7030  V=C2=S2=C1=S1=0
7040  X=2
7050  IF  END #1 THEN 7120
7060  READ #1,X;M$,D$,I$,C1,S1,T$,C$
7070  C2=C2+C1
7080  S2=S2+S1
7090  V=V+1
7100  X=X+1
7110  GOTO 7050
7120  PRINT "TOTAL ITEMS IN INVENTORY ="V
7130  PRINT 
7140  PRINT "TOTAL COST VALUE OF INVENTORY=$"C2
7150  PRINT 
7160  PRINT "TOTAL SELL VALUE OF INVENTORY=$"S2
7170  G1=S2-C2
7180  P1=G1/S2*100
7190  PRINT 
7200  PRINT "TOTAL G/P OF INVENTORY AS VALUED=$"G1
7210  PRINT 
7220  PRINT "TOTAL G/P% OF INVENTORY AS VALUED="P1"%"
7230  PRINT LIN(3)
7240  GOTO 250
7250  PRINT "SER # IS IN USE.  PLEASE RECHECK."
7260  GOTO 520
7270  STOP 
7280  D$="WDMYTPN"
7290  D9=K=0
7300  IF LEN(D$)=0 THEN 8520
7310  T$="MDYWTPN"
7320  A1$="0123456789"
7330  H$=D$[1,7]
7340  R1=R
7350  D$=""
7360  FOR I=1 TO LEN(H$)
7370  IF K<45 THEN 7410
7380  PRINT "FORMAT EXCEEDS CAPACITY.  FORMAT TERMINATED AND"
7390  PRINT "RETURNED TO CALLING PROGRAM."
7400  GOTO 8520
7410  FOR J=1 TO 7
7420  IF H$[I,I]=T$[J,J] THEN 7470
7430  NEXT J
7440  PRINT "INVALID FORMAT CODE = ";H$[I,I];".  FORMAT TERMINATED"
7450  PRINT "AND RETURNED TO CALLING PROGRAM."
7460  GOTO 8520
7470  GOTO J OF 7490,7620,7800,7860,7960,8110,8180
7480  GOTO 7440
7490  IF D9#0 THEN 7510
7500  GOSUB 8220
7510  K=K+1
7520  RESTORE 7590
7530  FOR L=1 TO M
7540  READ M$
7550  NEXT L
7560  D$[K,K+LEN(M$)-1]=M$
7570  K=K+LEN(M$)-1
7580  GOTO 8490
7590  DATA "JANUARY","FEBRUARY","MARCH","APRIL"
7600  DATA "MAY","JUNE","JULY","AUGUST"
7610  DATA "SEPTEMBER","OCTOBER","NOVEMBER","DECEMBER"
7620  IF D9#0 THEN 7640
7630  GOSUB 8220
7640  B=D
7650  GOSUB 7700
7660  IF H$[I+1,I+1]#"Y" THEN 7690
7670  K=K+1
7680  D$[K,K]=","
7690  GOTO 8490
7700  REM TWO DIGIT NUMBER TO STRING ROUTINE
7710  K=K+1
7720  D1=INT(B/10)
7730  IF J=5 AND D1=0 THEN 7760
7740  IF D1=0 THEN 7770
7750  D$[K,K]=A1$[D1+1,D1+1]
7760  K=K+1
7770  D2=B-INT(B/10)*10
7780  D$[K,K]=A1$[D2+1,D2+1]
7790  RETURN 
7800  B=TIM(3)
7810  K=K+1
7820  D$[K,K+1]="19"
7830  K=K+1
7840  GOSUB 7700
7850  GOTO 8490
7860  K=K+1
7870  T=(TIM(2)+365*TIM(3)+INT((TIM(3)-1)/4+.01))/7
7880  T=INT(7*(T-INT(T))+1.5)
7890  RESTORE 7930
7900  FOR L=1 TO T
7910  READ M$
7920  NEXT L
7930  DATA "SUNDAY","MONDAY","TUESDAY","WEDNESDAY"
7940  DATA "THURSDAY","FRIDAY","SATURDAY"
7950  GOTO 7560
7960  K=K+1
7970  H=TIM(1)
7980  IF H <= 12 THEN 8020
7990  D$[K,K+7]="  :0  PM"
8000  H=H-12
8010  GOTO 8030
8020  D$[K,K+7]="  :0  AM"
8030  B=H
8040  K=K-1
8050  GOSUB 7700
8060  K=K+1
8070  B=TIM(0)
8080  GOSUB 7700
8090  K=K+3
8100  GOTO 8490
8110  K=K+1
8120  ENTER #P
8130  D$[K,K+5]="PORT #"
8140  K=K+5
8150  B=P
8160  GOSUB 7700
8170  GOTO 8490
8180  IF D9#0 THEN 8200
8190  GOSUB 8220
8200  R=Y*10^4+M*100+D
8210  GOTO 8510
8220  REM  COMPUTE MONTH AND DAY NUMBERS
8230  L=0
8240  D9=1
8250  Y=TIM(3)
8260  FOR S=1 TO 8
8270  IF Y=68+S*4 THEN 8300
8280  IF Y<68+S*4 THEN 8310
8290  NEXT S
8300  L=1
8310  Q[1]=31
8320  RESTORE 8370
8330  FOR S=2 TO 12
8340  READ S1
8350  Q[S]=S1+L
8360  NEXT S
8370  DATA 59,90,120,151,181,212,243,273,304,334,365
8380  D=TIM(2)
8390  FOR M=1 TO 12
8400  IF D <= Q[M] THEN 8460
8410  NEXT M
8420  Y=Y+1
8430  M=1
8440  D=D-365
8450  GOTO 8480
8460  IF M=1 THEN 8480
8470  D=D-Q[M-1]
8480  RETURN 
8490  K=K+1
8500  D$[K,K]=" "
8510  NEXT I
8520  RETURN 
8530  END 
