image of READY prompt

Wang2200.org

Listing of file='INVC030B' on disk='vmedia/701-2607C.wvd.zip'

# Sector 221, program filename = 'INVC030B'
0010 REM INVC030B, RELEASE 2.0, (06/01/79) THIS PROGRAM IS A COPYRIGHT PRODUCT
      OF WANG LABORATORIES INC. UNAUTHORIZED REPRODUCTION OR USE IS PROHIBITED
0170 DIM B6$21,K$13,K1$(4)1
   : GOTO 4000
4000 SELECT @PARTS0$
   : GOSUB '36
   : B6=21
   : C6=6
   : B7=21
   : C7=2
   : IF A8$="1"THEN 4190
   : H6$,I2$,K1$(),P4$,L0$,M0$,N0$,O0$,P0$,H0$,G0$,H1$,Q$=" "
   : H$="N"
   : Q6$=STR(I6$,,2)&STR(I6$,4,2)&STR(I6$,7)
   : CONVERT Q6$TO D3
   : Q6$=STR(I7$,,2)&STR(I7$,4,2)&STR(I7$,7)
   : CONVERT Q6$TO D5
   : CONVERT I8$TO D2
   : O3$=I9$
   : M6=1
   : GOSUB '37
   : IF C1$=" "THEN 4000
4190 GOSUB '38
   : PRINT HEX(03);"INVOICE CREATION - HEADER";TAB(38);"** ";H7$;" **"
   : GOSUB '100("A,N,M","AaA NnMm",1,1,"ARE THE LINE ITEMS TAXABLE  (A=ALL, N=
     NONE, M=MIXED)",2)
   : IF Q6$=HEX(1F)THEN GOSUB '31
   : J0$=Q6$
   : PRINT AT(4,0,)
   : PRINT "CUST ID ";C1$;TAB(33);"SHIP-TO";TAB(45);"INVOICE NO. ";HEXOF(STR(B
     $,,4))
   : B9=0
4280 I9=19
   : IF I2$>"0"THEN I9=15
   : K$="REFERENCE NO."
   : IF I2$="0"THEN K$="CUSTOMER PO."
   : ELSE O3$,H0$="N/A"
   : FOR I=1TO I9
   : GOSUB '35
   : NEXT I
   : I,J9=6
   : A8$,H1$=" "
   : IF I2$="0"THEN J9=14
   : B9=1
   : FOR I=ITO J9
   : GOSUB '35
   : NEXT I
4440 CONVERT I9TO Q7$,(##)
   : PRINT AT(1,0,80);"ENTER LINE NO. ( 1 -";I9;") TO CORRECT  (0=NONE, -1=EXI
     T)"
   : GOSUB '100("-1",Q7$,2,0," ",1)
   : IF Q6$=HEX(1F)THEN GOSUB '31
   : I,J9=Q9
   : ON Q9+2GOTO 4570,4600
   : IF I2$>"0"THEN IF I=7OR I=8THEN 4550
   : B9=1
   : GOSUB '35
   : GOTO 4440
4550 PRINT AT(3,0,80);HEX(07);"Re-enter."
   : GOTO 4440
4570 GOSUB '38
   : GOTO 4000
4600 $TRAN(H1$,"CYPN")R
   : GOSUB '233(3,1,B$,0)
   : IF Q$>" "THEN 4730
   : F6=0
   : GOSUB '44(1,1)
   : F7=F8-MOD(VAL(STR(T$(2),4),2)+VAL(STR(T$(2),12)),65536)
   : GOSUB '238(3)
   : STR(M5$,8)="C"
   : LOAD TM5$4000,
4700 PRINT AT(1,0,80);Q6$
   : GOSUB '254
4720 DEFFN'31
4730 STR(M5$,8)="F"
   : LOAD TM5$4000,
6020 DEFFN'36
   : PRINT HEX(03);"ENTER INVOICES - HEADER"
   : LIMITS T#10,S$(10),Q6,Q7,Q8
   : Q6$="Maintenance audit file is more than 95% full."
   : Q9=(Q8-2)/(Q7-Q6-1)
   : IF Q9>.95THEN 4700
   : IF Q9<.8THEN RETURN
   : PRINT AT(1,0,80);HEX(07);"MAINTENANCE AUDIT FILE IS";INT(Q9*100);"% FULL"
   : GOSUB '254
   : RETURN
6130 DEFFN'37
   : PRINT AT(5,0,0)
   : IF A6$="Y"THEN PRINT TAB(12);K1$(1);TAB(15);" P - Print Invoice"
   : PRINT TAB(12);K1$(2);TAB(15);"CI - Credit Invoice"
   : PRINT TAB(12);K1$(3);TAB(15);"DM - Debit Memo"
   : PRINT TAB(12);K1$(4);TAB(15);"CM - Credit Memo"
   : PRINT TAB(14);"END - End Program"
6200 PRINT TAB(11);"RETURN - Restart entry of above information."
   : Q6$="Invoice transaction file is more than 95 % full."
   : IF F7/F8<.05THEN 4700
   : IF F7/F8<.2THEN PRINT AT(3,0,80);HEX(07);"Invoice transaction file is";IN
     T((F8-F7)*100/F8);"% full."
6250 GOSUB '100(" ",HEX(7F),VAL(Q0$(1))-1,0,"ENTER THE APPROPRIATE INFORMATION
      & CUSTOMER ID",2)
   : IF Q6$=HEX(1F)THEN GOSUB '31
   : C1$=Q6$
   : IF C1$="END"OR C1$="end"THEN 4720
   : IF C1$=" "THEN RETURN
   : IF C1$<>"P"AND C1$<>"p"THEN 6360
   : IF A6$="N"THEN 6130
   : P4$="P"
   : K1$(1)="X"
   : GOTO 6130
6360 $TRAN(C1$,"CcDdIiMm")R
   : MAT SEARCH"CIDMCM",=STR(C1$,,2)TO Q7$STEP 2
   : Q9=INT((VAL(Q7$,2)-1)/2)+1
   : IF Q9=0THEN 6480
   : IF I2$>" "THEN 6130
   : CONVERT Q9TO I2$,(#)
   : IF I2$="1"OR I2$="3"THEN M6=-1
   : Q6$="CREDIT INVOICEDEBIT MEMO    CREDIT MEMO"
   : H6$,H7$=STR(Q6$,Q9*14-13,14)
   : K1$(Q9+1)="X"
   : GOTO 6130
6480 IF I2$>" "THEN 6530
   : I2$="0"
   : H7$="INVOICE"
   : L0$,H6$=" "
6530 GOSUB '96(1)
   : C1$=Q6$
   : GOSUB '232(1,0,C1$)
   : GOSUB '91
   : ON J0GOTO ,,6700,,,,6130
   : IF J0>0THEN 4730
   : GOSUB '50(5," ")
   : B0$=A1$
   : C0$=A2$
   : D0$=A3$
   : E0$=A4$
   : F0$=A5$
   : N4$=N1$
   : H2$=P2$
   : RETURN
6700 GOSUB '100("Y,N","YyY Nn",1,1,"DO YOU WANT TO CREATE A NEW CUSTOMER  (Y O
     R N)",2)
   : Q$=" "
   : IF Q6$=HEX(1F)THEN GOSUB '31
   : IF Q6$="N"THEN 6130
   : STR(M5$,8)="E"
   : LOAD TM5$4000,
6780 DEFFN'38
   : B$=HEX(FF)
   : IF I2$<>"0"AND B9$<HEX(FF)THEN B$=STR(B9$,,4)&I2$&HEX(00)
   : IF I2$="0"AND B8$<HEX(FF)THEN B$=STR(B8$,,4)&HEX(3000)
   : IF B$<HEX(FF)THEN RETURN
   : $OPEN #9
   : GOSUB '46(9,0,1)
   : M7=5
   : IF I2$="0"THEN M7=2
   : M(M7)=M(M7)+1
   : Q9=13
   : IF M(11)=0THEN Q9=6
   : M(Q9),M(Q9+1)=0
   : GOSUB '46(9,0,0)
   : $CLOSE#9
   : PACK(########)STR(B$,,4)FROMM(M7)
6920 IF I2$="0"THEN B8$=B$
   : ELSE B9$=B$
   : B$=STR(B$,,4)&I2$&HEX(00)
   : RETURN
6960 DEFFN'39
   : IF L0$<>"1"THEN 7020
   : L0$="SAME"
   : M0$,N0$,O0$,P0$=" "
   : GOTO 7260
7020 GOSUB '100("-1","380",3,0,"ENTER SHIP-TO NO. (0 = END, -1 = NONE)",1)
   : IF Q6$=HEX(1F)THEN GOSUB '31
   : ON Q9+2GOTO 7240,7260
   : BIN(STR(C$,VAL(Q0$(1))))=INT((Q9+1)/2)+64
   : A6=2-MOD(Q9,2)
   : A$="1"
   : GOSUB '232(1,0,C$)
   : GOSUB '91
   : ON J0GOTO ,,7020,,,,7020
   : IF J0>0THEN 4730
   : GOSUB '50(5,"1")
   : L0$=A1$(A6)
   : M0$=A2$(A6)
   : N0$=A3$(A6)
   : O0$=A4$(A6)
7190 P0$=A5$(A6)
   : GOSUB 7260
   : I=A7
   : GOTO 7020
7240 L0$,M0$,N0$,O0$,P0$=" "
7260 PRINT AT(5,0)
   : B9=0
   : A7=I
   : FOR I=ITO I+4
   : GOSUB '35
   : NEXT I
   : I=A7+4
   : RETURN
7350 DEFFN'34(Q6$,Q9,G5$(G0),Q7$,Q$(1),Q$(2),Q3,Q4,Q5)
   : IF B9>0THEN PRINT AT(1,0,80);"ENTER ";G5$(G0);Q7$
   : Q7$=ALL("#")
   : B6$=STR(Q7$,,Q3)
   : IF Q4>0THEN B6$=B6$&"."&STR(Q7$,,Q4)
   : IF Q6$>" "AND Q5=2THEN Q5=3
   : IF Q9<>0AND Q5=1THEN Q5=0
   : IF B9>0THEN GOSUB '100(Q$(1),Q$(2),Q3,Q4," ",Q5)
   : IF Q6$=HEX(1F)THEN GOSUB '31
   : Q8=40
   : Q2=INT(I9/2)
7460 IF I>Q2THEN 7520
   : PRINT AT(I+5,0,Q8);
   : PRINTUSING "##) ";I;
   : B8=Q8-B6-2
   : IF Q5<2THEN B8=B8+C6-Q3
   : GOTO 7560
7520 PRINT AT(I+5-Q2,Q8,80-Q8);
   : PRINTUSING "##) ";I;
   : B8=80-B7-2
   : IF Q5<2THEN B8=B8+C7-Q3
7560 PRINT G5$(G0);TAB(B8);
   : IF Q5<2THEN PRINTUSING B6$,Q9
   : ELSE PRINTUSING B6$,Q6$
   : RETURN
7600 DEFFN'35
   : Q$=" "
   : ON IGOSUB 7660,7690,7720,7750,7780,7810,7860,7890,7920,7950,7990,8020,805
     0,8080,8110,8240,8270,8300,8400
   : IF Q$>" "THEN 7600
   : RETURN
7660 GOSUB '34(B0$,0,"BILL-TO NAME"," "," ",HEX(7F),21,0,2)
   : B0$=Q6$
   : RETURN
7690 GOSUB '34(C0$,0,"ADDRESS 1"," "," ",HEX(7F),20,0,2)
   : C0$=Q6$
   : RETURN
7720 GOSUB '34(D0$,0,"ADDRESS 2"," "," ",HEX(7F),20,0,2)
   : D0$=Q6$
   : RETURN
7750 GOSUB '34(E0$,0,"CITY, STATE"," "," ",HEX(7F),16,0,2)
   : E0$=Q6$
   : RETURN
7780 GOSUB '34(F0$,0,"ZIP CODE"," "," ",HEX(7F),5,0,2)
   : F0$=Q6$
   : RETURN
7810 GOSUB '34(G0$,0,K$," "," ",HEX(7F),8,0,2)
   : G0$=Q6$
   : IF I2$="0"OR G0$=" "THEN RETURN
   : CONVERT G0$TO Q9
   : ERRORQ$="E"
   : PRINT AT(3,0,80);"Re-enter, reference no. must be numeric.";HEX(07)
7850 RETURN
7860 GOSUB '34(H1$,0,"COLLECT"," (Y OR N)","Y,N","YyY Nn",1,1,2)
   : H1$=Q6$
   : RETURN
7890 GOSUB '34(H0$,0,"SHIP VIA"," "," ",HEX(7F),12,0,2)
   : H0$=Q6$
   : RETURN
7920 GOSUB '34(H$,0,"PARTIAL SHIP"," (Y OR N)","Y,N","YyY Nn",1,1,2)
   : H$=Q6$
   : RETURN
7950 GOSUB '34(L0$,0,"SHIP-TO NAME"," (1 = SAME AS BILL-TO, 2 = STORED DATA)",
     " ",HEX(7F),21,0,2)
   : L0$=Q6$
   : IF L0$="1"OR L0$="2"THEN IF B9=1THEN GOSUB '39
   : RETURN
7990 GOSUB '34(M0$,0,"ADDRESS 1"," "," ",HEX(7F),20,0,2)
   : M0$=Q6$
   : RETURN
8020 GOSUB '34(N0$,0,"ADDRESS 2"," "," ",HEX(7F),20,0,2)
   : N0$=Q6$
   : RETURN
8050 GOSUB '34(O0$,0,"CITY, STATE"," "," ",HEX(7F),16,0,2)
   : O0$=Q6$
   : RETURN
8080 GOSUB '34(P0$,0,"ZIP CODE"," "," ",HEX(7F),5,0,2)
   : P0$=Q6$
   : RETURN
8110 CONVERT D3TO Q6$,(######)
   : U9$=STR(Q6$,,2)&"/"&STR(Q6$,3,2)&"/"&STR(Q6$,5)
   : GOSUB '34(U9$,0,"INVOICE DATE"," (MM/DD/YY)"," ",HEX(7F),8,0,2)
   : IF B9=0THEN RETURN
   : GOSUB '121(Q6$)
   : IF Q6$="E"THEN 8210
   : GOSUB '123(U9)
   : Q6$=STR(U9$,,2)&STR(U9$,4,2)&STR(U9$,7)
   : CONVERT Q6$TO D3
   : RETURN
8210 Q$="E"
   : PRINT AT(3,0,80);"Invalid date, re-enter.";HEX(07)
   : RETURN
8240 GOSUB '34(O3$,0,"TERMS DESC"," "," ",HEX(7F),11,0,2)
   : O3$=Q6$
   : RETURN
8270 GOSUB '34(" ",D2,"TERMS DISC"," ","0","99.99",2,2,1)
   : D2=Q9
   : RETURN
8300 CONVERT D5TO Q6$,(######)
   : U9$=STR(Q6$,,2)&"/"&STR(Q6$,3,2)&"/"&STR(Q6$,5)
   : GOSUB '34(U9$,0,"TERMS DUE"," DATE (MM/DD/YY)"," ",HEX(7F),8,0,2)
   : IF B9=0THEN RETURN
   : GOSUB '121(Q6$)
   : IF Q6$="E"THEN 8210
   : GOSUB '123(U9)
   : Q6$=STR(U9$,,2)&STR(U9$,4,2)&STR(U9$,7)
   : CONVERT Q6$TO D5
   : RETURN
8400 GOSUB '34(N4$,0,"SALESMAN"," "," ",HEX(7F),VAL(Q0$(3)),0,2)
   : N4$=Q6$
   : RETURN
9998 DEFFN'29"Q$=";HEX(22);"INVC030B";HEX(22);":SCRATCH TQ$:SAVET$()Q$";HEX(0D
     )
9999 DEFFN'30"DIM Z$57:IF STR(I0$,,1)=HEX(20)THENI0$=HEX(323135):Z$=";HEX(22);
     "GBS/MVP - Enter invoice header record.";HEX(22);":SELECT#15<I0$>:$OPEN#1
     5:SELECTLIST<I0$>(132): LIST Z$:LIST Z$#:LIST Z$V:LIST Z$':$CLOSE#15:SELE
     CTLIST005(80)";HEX(0D)