1 REM C. BY ELCOMP PUBLISHING INC. 1983 5 REM APPROVAL GIVEN TO WOZNIAK BY ELCOMP TO USE THIS PROGRAM 10 REM BUSINESS INVOICE PROGRAM--DON'T USE PUNCTUATIONS ON CUSTOMER INPUT INFO 100 REM MODIFIED FOR INDIVIDUAL USAGE-BY E.S.WOZNIAK-LOAD "BUS INV",8 110 OPEN 1,4 180 PRINT"[147]" 190 INPUT"ENTER TAX RATE (%)";TR:TR=TR/100 200 INPUT"ENTER DATE";RD$ 220 INPUT"ENTER FIRST INVOICE NO.";I1 250 INPUT"ENTER ACCOUNT NO. (0=END)";C1 260 IF C1=0 THEN 1600 270 SC=1:DC=1:D=0:V=0 280 INPUT"DISCOUNT YES(1) NO(0)";DC 290 INPUT"SHIPPING AUTOM. ADDED YES(1) NO(0)";SC 300 IF SC=0 THEN INPUT"HOW MUCH?";V 310 INPUT"CUSTOMERS ORDER NO.";CO$ 320 INPUT"NAME OF CUSTOMER";S1$ 340 INPUT"NUMBER AND STREET";S2$ 360 INPUT"CITY*STATE*ZIP-CODE";S3$ 370 PRINT 380 INPUT"1=30 DAYS NET,2=COD,3=PREPAID";TE 390 IF TE=1 THEN TE$="30 DAYS NET" 400 IF TE=2 THEN TE$="C O D" 410 IF TE=3 THEN TE$="PREPAID" 420 PRINT:PRINT"1=FORWARDER,2=UNITED PARCEL":INPUT"3=PARCEL POST";SV 430 IF SV=1 THEN SV$="FORWARDER" 440 IF SV=2 THEN SV$="UNITED PARCEL" 450 IF SV=3 THEN SV$="PARCEL POST" 460 PRINT"[147]":PRINTS1$:PRINTS2$:PRINTS3$ 470 PRINT:INPUT"SHIP TO SAME ADDRESS";Q$ 480 IF Q$="Y" THEN 510 490 PRINT:INPUT"NAME";H1$:INPUT"NO.AND STR.";H2$:INPUT"C.,ST.,ZIP";H3$ 500 GOTO520 510 H1$=S1$:H2$=S2$:H3$=S3$ 520 FOR Q=1 TO 3:PRINT#1:NEXT Q 530 PRINT#1,TAB(29);"ELCOMP PUBLISHING INC." 540 PRINT#1,TAB(28);"2174 W. FOOTHILL BLVD. #E" 550 PRINT#1,TAB(32);"UPLAND, CA. 91786" 555 PRINT#1,TAB(34);"714-623-8314" 560 PRINT#1:PRINT#1:PRINT#1 565 PRINT#1,SPC(55);RD$ 570 PRINT#1 575 PRINT#1,SPC(3);"ACCOUNT #:";C1;SPC(25);"INVOICE #:";I1 580 PRINT#1:PRINT#1 585 PRINT#1,TAB(3);"SOLD TO:-";TAB(32);"SHIP TO:-" 590 PRINT#1,SPC(6);S1$;SPC(41-LEN(S1$));H1$ 600 PRINT#1,SPC(6);S2$;SPC(41-LEN(S2$));H2$ 610 PRINT#1,SPC(6);S3$;SPC(41-LEN(S3$));H3$ 620 PRINT#1:PRINT#1 625 FOR A=1 TO 80:PRINT#1,CHR$(163);:NEXT 630 PRINT#1,SPC(3);"YOUR ORDER";SPC(12);"TERMS";SPC(15);"SHIPPED VIA"; 631 PRINT#1,SPC(8);"DATE SHIPPED" 640 PRINT#1,SPC(3);CO$;SPC(22-LEN(CO$));TE$;SPC(20-LEN(TE$));SV$; 642 PRINT#1,SPC(19-LEN(SV$));RD$ 645 FOR A=1 TO 80:PRINT#1,CHR$(184);:NEXT 650 PRINT#1,SPC(3);"ORDER";SPC(2);"SHIP";SPC(12);"DESCRIPTION"; 651 PRINT#1,SPC(17);"PRICE";SPC(11);"TOTAL" 655 FOR A=1 TO 80:PRINT#1,CHR$(163);:NEXT 660 PRINT"[147]":GOSUB 1130 670 GOSUB 830 680 GOTO 660 690 S1=I 700 IF DC=0 THEN 740 710 IF (S1>0) AND (S1<30) THEN D=.25 720 IF (S1>31)AND (S1<60) THEN D=.33 730 IF S1>60 THEN D=.4 740 IF V<>0 THEN 800 750 IF S1<15 THEN V=2 760 IF (S1>14) AND (S1<30) THEN V=1.25 770 IF (S1>29) AND (S1<50) THEN V=1.5 780 IF (S1>49) AND (S1<100) THEN V=2 790 IF S1>99 THEN V=2.5 800 I1=I1+1 810 R=INT(D*100+.5):R$=STR$(R) 820 GOTO 940 830 A=O:GOSUB 1410 840 G$=D$:L1=L 850 C=S1*O 860 A=C:GOSUB 1410 870 J$=STR$(N1):K$=STR$(S1):KK$=STR$(Z1) 880 J=LEN(J$):K=LEN(K$):KK=LEN(KK$) 890 PRINT#1,SPC(5-KK);Z1; 900 PRINT#1,SPC(6-K);S1;SPC(8);N1;SPC(6-J);E$; 910 PRINT#1,SPC(30-LEN(E$)-L1);G$;SPC(17-L);D$ 920 C=S1*O:T=T+C 930 RETURN 940 D1=D*T 950 D1=INT(D1*100+.5)/100 960 PRINT#1 970 A=D1:GOSUB 1410 980 PRINT#1,SPC(46-LEN(R$));R;SPC(2);"%DISCOUNT= -";SPC(14-L);D$ 990 FOR P=1 TO (10-ZS):PRINT#1:NEXT P 1000 PRINT#1,SPC(23);"THANK YOU FOR YOUR ORDER" 1003 FOR A=1 TO 80:PRINT#1,CHR$(184);:NEXT 1005 PRINT#1,SPC(3);"NET";SPC(5);"SALES";SPC(52);"INVOICE" 1006 PRINT#1,SPC(3);"AM'T";SPC(4);"TAX";SPC(5);"FREIGHT";SPC(42);"TOTAL" 1007 FOR A=1 TO 80:PRINT#1,CHR$(163);:NEXT 1020 A=T-D1:GOSUB 1410 1030 G$=D$:L1=L 1040 A=V:GOSUB 1410 1050 H$=D$ 1060 M1=(T-D1+V)*TR:REM TO EXCLUDE SALES TAX ON FREIGHT USE M1=(T-D1)*TR 1070 A=T-D1+M1+V:GOSUB 1410 1080 J$=D$:L2=L 1090 A=M1:GOSUB 1410 1100 PRINT#1,SPC(8-L1);G$;SPC(7-L);D$;SPC(3);H$;SPC(51-L2);J$ 1105 FOR A=1 TO 80:PRINT#1,CHR$(184);:NEXT 1110 PRINT#1:PRINT#1 1120 GOSUB 1290:I=0:T=0:GOTO 250 1130 INPUT"WHICH ITEM NO.";N1 1150 IF N1=0 THEN 690 1160 RESTORE 1170 READ N,E$,O 1180 IF N=0 THEN 1210 1190 IF N=N1 THEN 1230 1200 GOTO 1170 1210 PRINT"ITEM NO. NOT FOUND !" 1220 PRINT:PRINT:PRINT:GOTO 1130 1230 INPUT"ENTER QUANTITY ORDERED ";Z1 1250 INPUT"ENTER QUANTITY SHIPPED ";S1 1270 I=I+S1:ZS=ZS+1 1280 RETURN 1290 PRINT#1,SPC(3);"FROM:->";TAB(45);"REMARKS:-" 1298 PRINT#1 1300 PRINT#1,SPC(5);"ELCOMP PUBLISHING INC." 1310 PRINT#1,SPC(5);"2174 W. FOOTHILL BLVD. #E" 1320 PRINT#1,SPC(5);"UPLAND, CA. 91786" 1330 FOR ZV=1 TO 3:PRINT#1 1340 NEXT ZV 1345 PRINT#1,SPC(3);"TO:->" 1348 PRINT#1 1350 PRINT#1,SPC(5);H1$ 1360 PRINT#1,SPC(5);H2$ 1370 PRINT#1,SPC(5);H3$ 1380 PRINT"[147]" 1390 ZS=0:S1=0:T=0:I=0 1400 RETURN 1405 REM DECIMAL ALIGN SUBROUTINE 1410 K1$="0" 1420 K2$=".00" 1430 B=INT(A*100+.5)/100 1440 D1$=STR$(B) 1450 D0=B*10 1460 D2=INT(D0) 1470 D3=D0-D2 1480 IF D3<.09 THEN 1510 1490 D$=D1$ 1500 GOTO 1570 1510 D4=INT(B) 1520 D5=B-D4 1530 IF D5<.09 THEN 1560 1540 D$=D1$+K1$ 1550 GOTO 1570 1560 D$=D1$+K2$ 1570 L=LEN(D$) 1580 RETURN 1600 CLOSE1:END 2000 REM DATA STATEMENTS START HERE FOR PRODUCT STOCK # AND UNIT PRICE 2010 DATA 100,PRODUCT NO.1,2.25 2020 DATA 200,PRODUCT NO.2,1.50 2030 DATA 300,PRODUCT NO.3,3.75 2040 DATA 400,PRODUCT NO.4,2.50 2050 DATA 0,0,0 2060 REM LAST STATEMENT HAS TO CONTAIN 0,0,0