50 ON ERROR GOTO 1730 100 REM 110 REM 120 REM WRITTEN BY ...TERENCE MURPHY...PLYMOUTH STATE COLLEGE 130 REM PLYMOUTH,N.H. 140 REM 150 REM 160 &:&"<<< ITEM PRODUCTIVITY PROGRAM >>>" 170 &:&" *** WARNING: *** 180 &" 1. SET TERMINAL WIDTH TO <132>" 190 &" 2. PAPER SIZE MUST BE <132>" 200 &:&"RULES:" 210 &" 1. BRAND NAME LENGTH = 24 MAX. 220 &" 2. ITEM NAME LENGTH = 24 MAX." 230 &" 3. ITEM SIZE MUST BE IN OUNCES EX. 28.5 OZ. = 28.5" 240 &" 4. RETAIL PRICE MUST BE IN DECIMAL EX. 95 CENTS = .95" 250 &" 5. TOTAL UNITS SOLD MUST BE IN UNITS EX. 12 UNITS = 12" 260 &" 6. SPACE OCCUPIED MUST BE IN DECIMAL EX 1.95 SQ/FT = 1.95" 270 &:&" *** SPECIAL NOTE: 280 &:&" TOTAL NUMBER OF ITEM OF ALL BRANDS = 100 MAX." 285 WAIT 5 290 &:&:&:INPUT "TYPE YOUR INITIALS FOR FILE SPECIFICATION 3=MAX.";F0$ 300 IF LEN(F0$)<4 THEN 320 ELSE &:&:& 310 &" <<>>" : &"I TOLD YOU THE (MAX. = 33333333333)" : GOTO 290 320 I1$=F0$+".FIL" : I2$=F0$+".DTA" 330 &CHR$(13) FOR Z = 1 TO 3 340 ON ERROR GOTO 1730 350 F,F1,F2,F3,F4,F5,F6,F7,X9=0 360 OPEN I1$ AS FILE 1% 370 S=1 371 WAIT 0 380 INPUT "HOW MANY BRANDS";B 390 FOR K = 1 TO B 400 &" BRAND #"K; : INPUT B$ 410 S=2 420 IF LEN(B$) > 24 THEN &"MAX. = 24" : GOTO 400 430 &"HOW MANY ITEMS FOR ("B$")"; : INPUT I 440 FOR J = 1 TO I 450 &" ITEM #"J; : INPUT B1$ 460 IF LEN(B1$) > 24 THEN &"MAX. = 24" : GOTO 450 470 &" OUNCES FOR ("B1$")"; : INPUT B2$ 480 &" RETAIL PRICE FOR ("B1$")"; : INPUT B3$ 490 &" TOTAL UNITS SOLD FOR ("B1$")"; : INPUT B4$ 500 &" SPACE OCCUPIED (SQ/FT) FOR ("B1$")"; : INPUT B5$ 510 P=24-LEN(B$) : B$=B$+SPACE$(P) 520 P=24-LEN(B1$) : B1$=B1$+SPACE$(P) 530 P=5-LEN(B2$) : B2$=B2$+SPACE$(P) 540 P=5-LEN(B3$) : B3$=B3$+SPACE$(P) 550 P=3-LEN(B4$) : B4$=B4$+SPACE$(P) 560 P=5-LEN(B5$) : B5$=B5$+SPACE$(P) 570 T$=B$+B1$+B2$+B3$+B4$+B5$ 580 %,T$ : X9=X9+1 590 NEXT J 600 NEXT K 610 CLOSE 1% 620 OPEN I1$ FOR INPUT AS FILE 1% 630 OPEN I2$ AS FILE 2% 640 DIM #2%, A$(100,6)=24% 650 INPUT LINE #1%,R$ 660 Y1=Y1+1 670 A$(Y1,1)=MID(R$,1,24):A$(Y1,2)=MID(R$,25,24):A$(Y1,3)=MID(R$,49,5) 680 A$(Y1,4)=MID(R$,54,5):A$(Y1,5)=MID(R$,59,3):A$(Y1,6)=MID(R$,62,5) 690 GOTO 650 700 FOR Y1 = 1 TO X9 710 F$=A$(Y1,5) : F=F+VAL(F$) 720 NEXT Y1 730 FOR Y1 = 1 TO X9 740 F$=A$(Y1,3) : F1$=A$(Y1,5) : F1=F1+(VAL(F$)*VAL(F1$)) 750 NEXT Y1 760 FOR Y1 = 1 TO X9 770 F$=A$(Y1,4) : F1$=A$(Y1,5) : F2=F2+(VAL(F$)*VAL(F1$)) 780 F3=F2*.25 790 NEXT Y1 800 &:&:&"YOU NOW HAVE 10 SECONDS TO SET PAPER !!!!!" 810 SLEEP 10 : &CHR$(13) FOR Z = 1 TO 2 820 A1$=SPACE$(81)+"S H A R E OF M A R K E T"+SPACE$(19) 830 A2$=SPACE$(90)+"% OF"+SPACE$(22)+"GROSS"+SPACE$(4)+"GROSS"+SPACE$(2) 840 A3$=SPACE$(35)+"TOTAL"+SPACE$(31)+"GROSS"+SPACE$(5)+"% OF"+SPACE$(4) 850 A3$=A3$+"GROSS"+SPACE$(14)+"% OF"+SPACE$(4)+"SALES"+SPACE$(4) 860 A3$=A3$+"MARGIN"+SPACE$(1) 870 A4$=SPACE$(26)+"RETAIL"+SPACE$(3)+"UNITS"+SPACE$(3)+"SPACE"+SPACE$(5) 880 A4$=A4$+"TOTAL"+SPACE$(3)+"TOTAL"+SPACE$(5)+"MARGIN"+SPACE$(4)+"TOTAL" 890 A4$=A4$+SPACE$(3)+"RETAIL"+SPACE$(4)+"% OF"+SPACE$(4)+"GROSS"+SPACE$(5) 900 A4$=A4$+"PER"+SPACE$(6)+"PER"+SPACE$(3) 910 A5$=SPACE$(26)+"PRICE"+SPACE$(4)+"SOLD"+SPACE$(4)+"(SQ/FT)"+SPACE$(3) 920 A5$=A5$+"OUNCES"+SPACE$(2)+"DOLLARS"+SPACE$(4)+"(25%)"+SPACE$(4) 930 A5$=A5$+"OUNCES"+SPACE$(2)+"SALES"+SPACE$(4)+"VOLUME"+SPACE$(3)+"MARGIN" 940 A5$=A5$+SPACE$(2)+"(SQ/FT)"+SPACE$(2)+"(SQ/FT)"+SPACE$(1) 950 &A1$ 960 &SPACE$(81); : &"!------------------------------!" 970 &A2$:&A3$:&A4$:&A5$ 980 &CHR$(61); FOR Z = 1 TO 132 : &CHR$(13) 990 FOR Y1=1 TO X9 1000 &CHR$(13) 1010 GOSUB 1030 1020 GOTO 1130 1030 G1=VAL(A$(Y1,3))*VAL(A$(Y1,5)) 1040 G2=VAL(A$(Y1,4))*VAL(A$(Y1,5)) 1050 G3=G2*.25 1060 G4=G1/F1*100 : F4=F4+G4 1070 G5=G2/F2*100 : F5=F5+G5 1080 G6=VAL(A$(Y1,5))/F*100 : F6=F6+G6 1090 G7=G3/F3*100 : F7=F7+G7 1100 G8=G2/VAL(A$(Y1,6)) 1110 G9=G3/VAL(A$(Y1,6)) 1120 RETURN 1130 H$="$$####.##" : H1$="######.##" 1140 H2$="#####.##%" 1150 &A$(Y1,3)+"OZ." 1160 &A$(Y1,1); 1170 &USING H$,VAL(A$(Y1,4)); 1180 &USING H1$,VAL(A$(Y1,5)); 1190 &USING H1$,VAL(A$(Y1,6)); 1200 &USING H1$,G1; 1210 &USING H$,G2; 1220 &USING H$,G3; 1230 &USING H2$,G4; 1240 &USING H2$,G5; 1250 &USING H2$,G6; 1260 &USING H2$,G7; 1270 &USING H$,G8; 1280 &USING H$,G9 1290 &A$(Y1,2) 1300 NEXT Y1 1310 &SPACE$(33); : &CHR$(45); FOR Z = 1 TO 9 : &SPACE$(9); 1320 &CHR$(45); FOR Z = 1 TO 63 : &CHR$(13) 1330 &"<<< TOTAL >>> "; 1340 &SPACE$(9); 1350 &USING H1$,F; 1360 &SPACE$(9); 1370 &USING H1$,F1; 1380 &USING H$,F2; 1390 &USING H$,F3; 1400 &USING H2$,F4; 1410 &USING H2$,F5; 1420 &USING H2$,F6; 1430 &USING H2$,F7 1440 &CHR$(13) 1450 &CHR$(61); FOR Z = 1 TO 132 : &CHR$(13) 1460 &CHR$(13) : &"[ ** (BRAND SHARES) ** ]" : &"------------------------" 1470 &CHR$(13) 1480 H0$=A$(1,1) : X8=1 1490 FOR Y1 = X8 TO X9+1 1500 IF A$(Y1,1) = H0$ THEN 1660 1510 &A$(Y1-1,1); 1520 &SPACE$(9); 1530 &USING H1$,N1; 1540 &USING H1$,N2; 1550 &USING H1$,N3; 1560 &USING H$,N4; 1570 &USING H$,N5; 1580 &USING H2$,N6; 1590 &USING H2$,N7; 1600 &USING H2$,N8; 1610 &USING H2$,N9; 1620 &USING H$,N4/N2; 1630 &USING H$,N5/N2 1640 N1,N2,N3,N4,N5,N6,N7,N8,N9,O1,O2=0 1650 H0$=A$(Y1,1) : X8=Y1 : GOTO 1500 1660 IF Y1>X9 THEN 1710 ELSE GOSUB 1030 1670 N1=N1+VAL(A$(Y1,5)) : N2=N2+VAL(A$(Y1,6)) : N3=N3+G1 : N4=N4+G2 1680 N5=N5+G3 : N6=N6+G4 : N7=N7+G5 : N8=N8+G6 : N9=N9+G7 1690 H0$=A$(Y1,1) 1700 NEXT Y1 1710 &CHR$(13) : &CHR$(61); FOR J1 = 1 TO 132 1720 GOTO 1770 1730 IF ERR=11 THEN RESUME 700 1740 IF ERR=50 AND S=1 THEN RESUME 380 1750 IF ERR=50 AND S=2 THEN RESUME 430 1751 IF ERR=15 THEN &"WAKE UP!!!" : RESUME 285 1760 &"ERR="ERR"ERL="ERL 1770 CLOSE 1%,2% : &CHR$(13) FOR I = 1 TO 50 1771 INPUT "DO YOU WANT ANOTHER PRINT-OUT";P0$ 1772 IF P0$<>"YES" THEN 1775 1773 F1,F2,F3,F4,F5,F6,F7,F8,F9,G1,G2,G3,G4,G5,G6,G7,G8,G9=0 1774 F,N1,N2,N3,N4,N5,N6,N7,N8,N9,O1,O2=0 : GOTO 620 1775 KILL I1$ 1780 KILL I2$ 1800 END READY ?