1  REM  ****  HP TIME-SHARED BASIC PROGRAM LIBRARY  *********************
2  REM
3  REM           IN: 36177  (A708)  REV A -- 1/72
4  REM           DATA CENTER INVENTORY MASTER DATA INPUT
5  REM
6  REM  ****  CONTRIBUTED PROGRAM  **************************************
10  FILES C1,C2
20  DIM M$[10],S$[9],U$[10],L$[4],P$[5],R$[8],H$[8],D$[8],C$[30]
30  DIM A$[30]
40  DIM Z$[72],B$[3]
50  LET Q=0
60  PRINT "-------------DATA CENTER INVENTORY-------------"
70  PRINT "            MASTER DATA INPUT PROGRAM"
80  PRINT 
85  PRINT "PLEASE IDENTIFY YOURSELF";
86  INPUT A$
87  IF A$="MASTER" THEN 90
88  STOP 
90  PRINT 
100  PRINT "  DO YOU WANT DETAILED INSTRUCTIONS(YES OR NO)";
110  INPUT A$
120  IF A$="NO" THEN 190
130  PRINT 
140  PRINT "ANSWER EACH QUESTION AS INDICATED. IF THE DATA IS"
150  PRINT "NOT AVAILABLE  OR DOES NOT APPLY ENTER 'NA'. EACH"
160  PRINT "ANSWER IS COMPLETE WHEN YOU TYPE 'RETURN'. YOU MAY"
170  PRINT "ERASE CHARACTERS BY TYPING  A BACK ARROW CHARACTER"
180  PRINT "A COMPLETE ANSWER MAY BE ERASED BY TYPING 'ESC' AND 'RETURN'"
190  PRINT 
200  PRINT 
210  GOSUB 320
220  PRINT "CURRENT FILE CONTAINS ";Q;"ITEMS"
230  PRINT 
240  PRINT "TO ADD ITEMS TYPE (1)-----"
250  PRINT "TO DELETE ITEM TYPE (2)-----"
260  PRINT "TO EXAMINE OR MODIFY AN ITEM TYPE (3)----"
270  PRINT "TO PRINT FILE TYPE (4)------"
275  PRINT "TO STOP TYPE (5)----------"
280  PRINT "-------";
290  INPUT A
300  GOTO A OF 410,830,1080,1520,9999
310  GOTO 210
320  REM SUBROUTINE TO FIND CURRENT LENGTH OF FILE
330  FOR N=1 TO 2
340  FOR J=1 TO 90
350  IF  END #N THEN 400
360  READ #N,J;Q,M$,S$,U$,L$,P$,R$,H$,B$,D$,C$
370  NEXT J
380  NEXT N
390  PRINT "NO END OF FILE FOUND,IS FILE FULL ?"
395  STOP 
400  RETURN 
410  REM ROUTINE TO ADD FILE ITEMS
420  PRINT 
430  PRINT "MODEL # (1 TO 10 CHARACTERS)---------------";
440  INPUT M$
450  PRINT "SERIAL # (1 TO 9 CHARACTERS)---------------";
460  INPUT S$
470  PRINT "STATUS (PLEASE USE ONE OF THIS LIST;)"
480  PRINT "FACT. LOAN"
490  PRINT "IN REPAIR"
500  PRINT "RENTED"
510  PRINT "SOLD"
515  PRINT "OBS"
520  PRINT "1 WK DEMO"
530  PRINT "2 WK DEMO"
540  PRINT "3 WK DEMO"
545  PRINT "FOR SALE"
550  PRINT "--------------------";
560  INPUT U$
570  PRINT "DATE RECEIVED (DAY/MONTH/YEAR--27/04/70)-------";
580  INPUT R$
590  PRINT "DATE SHIPPED (DAY/MONTH/YEAR--15/05/70)--------";
600  INPUT H$
610  PRINT "LOCATION (PLEASE USE STANDARD OFFICE CODES)";
620  INPUT L$
630  PRINT "LIST PRICE (NEAREST DOLLAR,NO COMMAS OR DOLLAR SIGN)";
640  INPUT P$
650  PRINT "MANUFATURING DIV CODE (1 OR 2 DIGITS)";
660  INPUT B$
670  PRINT "SALES DISCIPLINE (1 TO 8 CHARACTERS)";
680  INPUT D$
690  PRINT "COMMENTS(1 TO 30 CHARACTERS)";
700  INPUT C$
705  LET Q=Q+1
710  PRINT #N,J;Q,M$,S$,U$,L$,P$,R$,H$,B$,D$,C$
730  LET J=J+1
740  IF J=91 THEN 760
750  GOTO 790
760  LET N=N+1
770  LET J=1
780  PRINT 
790  PRINT "DO YOU WISH TO ADD ANOTHER(YES OR NO)";
800  INPUT A$
810  IF A$="YES" THEN 410
820  GOTO 200
830  REM ROUTINE TO DELETE ITEM
840  PRINT 
850  PRINT "ITEM # TO BE DELETED";
860  INPUT Q2
870  LET N2=1
880  IF Q2<0 THEN 850
890  IF Q2>180 THEN 850
900  IF Q2>Q THEN 850
910  IF Q2<90 THEN 940
920  LET N2=2
930  LET Q2=Q2-90
940  FOR N3=N2 TO 2
950  FOR J2=Q2 TO 90
960  IF  END #N3 THEN 1010
970  READ #N3,J2+1;Q3,M$,S$,U$,L$,P$,R$,H$,B$,D$,C$
980  PRINT #N3,J2;Q3-1,M$,S$,U$,L$,P$,R$,H$,B$,D$,C$
990  NEXT J2
1000  NEXT N3
1010  PRINT #N3,J2; END 
1020  GOSUB 320
1030  PRINT 
1040  PRINT "DO YOU WISH TO DELETE ANOTHER (YES OR NO)";
1050  INPUT A$
1060  IF A$="YES" THEN 830
1070  GOTO 200
1080  REM ROUTINE TO EXAMINE ITEM
1090  PRINT 
1100  PRINT "ITEM # TO BE EXAMINED OR MODIFIED";
1110  INPUT Q1
1120  IF Q1<0 THEN 1160
1130  IF Q1>180 THEN 1160
1140  IF Q1>Q THEN 1160
1150  GOTO 1180
1160  PRINT "BAD INPUT,TRY AGAIN"
1170  GOTO 1110
1180  PRINT 
1190  PRINT "ITEM #  MODEL #   SERIAL #   STATUS    LOC PRICE";
1200  PRINT "   RCDT     SHDT    MFDV"
1210  GOSUB 1230
1220  GOTO 1400
1230  REM ROUTINE TO GET ONE ITEM FROM DISC AND PRINT
1240  LET N1=1
1250  IF Q1<90 THEN 1280
1260  LET N1=2
1270  LET Q1=Q1-90
1280  IF  END #N1 THEN 1500
1290  READ #N1,Q1;Q1,M$,S$,U$,L$,P$,R$,H$,B$,D$,C$
1300  LET Z$="                                                                  "
1310  LET Z$[11-LEN(M$),11]=M$
1320  LET Z$[21-LEN(S$),21]=S$
1330  LET Z$[32-LEN(U$),32]=U$
1340  LET Z$[37-LEN(L$),37]=L$
1350  LET Z$[43-LEN(P$),43]=P$
1360  LET Z$[52-LEN(R$),52]=R$
1370  LET Z$[61-LEN(H$),61]=H$
1375  LET Z$[66-LEN(B$),66]=B$
1380  PRINT Q1;Z$
1390  RETURN 
1400  PRINT "*** SALES DISCIPLINE  ";D$;"  ";C$
1410  PRINT 
1420  PRINT "DO YOU WISH TO MODIFY THIS ITEM (YES OR NO)";
1430  INPUT A$
1440  IF A$="YES" THEN 1610
1450  PRINT 
1460  PRINT "DO YOU WISH TO EXAMINE ANOTHER(YES OR NO)";
1470  INPUT A$
1480  IF A$="YES" THEN 1080
1490  GOTO 200
1500  PRINT "END OF FILE"
1510  GOTO 200
1520  REM ROUTINE TO PRINT COMPLETE FILE
1530  PRINT 
1540  GOSUB 320
1550  PRINT "ITEM#  MODEL #   SERIAL #   STATUS    LOC PRICE";
1560  PRINT "   RCDT     SHDT    MFDV"
1570  FOR Q1=1 TO Q
1580  GOSUB 1230
1590  NEXT Q1
1600  GOTO 200
1610  REM ROUTINE TO  MODIFY AN ITEM
1620  PRINT 
1630  PRINT "TO LEAVE A SECTION AS IS ANSWER WITH 'OK'"
1640  READ #N1,Q1;Q1,M$,S$,U$,L$,P$,R$,H$,B$,D$,C$
1650  PRINT 
1660  PRINT "MODEL # (1 TO 10 CHARACTERS)--------------";
1670  INPUT A$
1680  IF A$="OK" THEN 1690
1685  LET M$=A$
1690  PRINT "SERIAL # (1 TO 9 CHARACTERS)--------------";
1700  INPUT A$
1710  IF A$="OK" THEN 1720
1715  LET S$=A$
1720  PRINT "STATUS (PLEASE USE ONE OF THIS LIST)"
1730  PRINT " FACT. LOAN"
1740  PRINT " IN REPAIR"
1750  PRINT " RENTED"
1760  PRINT " SOLD"
1765  PRINT " OBS"
1770  PRINT " 1 WK DEMO"
1780  PRINT " 2 WK DEMO"
1790  PRINT " 3 WK DEMO"
1800  PRINT "------------------";
1810  INPUT A$
1820  IF A$="OK" THEN 1830
1825  LET U$=A$
1830  PRINT "LOCATION (PLEASE USE STANDARD OFFICE CODES)--";
1840  INPUT A$
1850  IF A$="OK" THEN 1860
1855  LET L$=A$
1860  PRINT "LIST PRICE (NEAREST DOLLAR,NUMBERS ONLY)--";
1870  INPUT A$
1880  IF A$="OK" THEN 1890
1885  LET P$=A$
1890  PRINT "DATE RECEIVED (DAY/MONTH/YEAR--27/06/70)---";
1900  INPUT A$
1910  IF A$="OK" THEN 1920
1915  LET R$=A$
1920  PRINT "DATE SHIPPED (DAY/MONTH/YEAR--15/01/70)----";
1930  INPUT A$
1940  IF A$="OK" THEN 1950
1945  LET H$=A$
1950  PRINT "MANUFACTURING DIV CODE (1 TO 2 DIGITS)----";
1960  INPUT A$
1962  IF A$="OK" THEN 1970
1964  LET B$=A$
1970  PRINT "SALES DISCIPLINE (1 TO 8 CHARACTERS)----------";
1980  INPUT A$
1990  IF A$="OK" THEN 2000
1995  LET D$=A$
2000  PRINT "COMMENTS (1 TO 30 CHARACTERS)--";
2010  INPUT A$
2020  IF A$="OK" THEN 2030
2025  LET C$=A$
2030  PRINT #N1,Q1;Q1,M$,S$,U$,L$,P$,R$,H$,B$,D$,C$
2040  GOTO 1450
9999  END 
