image of READY prompt

Wang2200.org

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

# Sector 565, program filename = 'INVC040A'
0010 REM INVC040A, RELEASE 2.0, (06/01/79) THIS PROGRAM IS A COPYRIGHT PRODUCT
      OF WANG LABORATORIES INC. UNAUTHORIZED REPRODUCTION OR USE IS PROHIBITED
0170 DIM B7$4,B8$4,B9$4,C6$3,K(14,5),K1$19
   : GOTO 4000
4000 SELECT @PARTS0$
   : GOSUB '93(" ")
   : IF I0$=" "THEN 5200
4030 GOSUB '100("C,O","CcC Oo",1,1,"ENTER INVOICE TRANSACTION FILE ID (C = Cur
     rent, O = Old)",2)
   : IF Q6$=HEX(1F)THEN GOSUB '31
   : A6=Q9
   : IF J0=7THEN GOSUB '92
   : GOSUB '235(A6,0)
   : J$(3)=" "
   : GOSUB '91
   : ON J0GOTO ,,5140,,,,4030
   : IF J0>0THEN 5200
   : K1$=" "
   : GOSUB '90
4140 GOSUB '54(A6,1)
   : IF B7$=" "AND I2$="0"THEN 4290
   : IF B8$=" "AND I2$<>"0"THEN 4290
   : IF I2$="0"THEN B9$=B7$
   : ELSE B9$=B8$
   : UNPACK(########)STR(B9$,,4)TO B9
4190 B9=B9+1
   : PACK(########)B9$FROMB9
   : IF B9$=STR(B$,,4)THEN 4290
   : GOSUB '90
   : Q6$="NON-REGULAR INVOICE NUMBER"
   : IF I2$="0"THEN Q6$="INVOICE NUMBER"
   : PRINTUSING "#######",B9;
   : PRINT TAB(27);"VOIDED ";Q6$
   : L=L+1
   : GOTO 4190
4290 IF I2$="0"THEN B7$=B$
   : ELSE B8$=B$
   : SELECT PRINT 005(80)
   : PRINT AT(6,0,0);"Processing invoice no. ";HEXOF(STR(B$,,4))
   : J=(VAL(I2$)-47)
   : K1=1
   : IF I2$="1"OR I2$="3"THEN K1=-1
4370 IF J0=7THEN GOSUB '92
   : GOSUB '237(A6,0)
   : GOSUB '91
   : IF J0=7THEN 4370
   : IF J0>0THEN 5200
   : GOSUB '54(A6,2)
   : I=0
4450 I=I+1
   : IF P$(I)="END"THEN 4530
   : Q9=ROUND((B(I)*B1(I)*B2(I)/100,2)
   : K(11,J)=K(11,J)+Q9*K1
   : K(11,5)=K(11,5)+Q9*K1
   : IF I=N0THEN 4370
   : GOTO 4450
4530 IF J0=7THEN GOSUB '92
   : GOSUB '237(A6,0)
   : GOSUB '91
   : IF J0=7THEN 4530
   : IF J0>0THEN 5200
   : GOSUB '54(A6,3)
   : K(13,J)=K(13,J)+1
   : K(13,5)=K(13,5)+1
   : K(10,5)=K(10,5)+(A*K1)
   : K(10,J)=K(10,J)+(A*K1)
   : K(1,5)=K(10,5)+K(11,5)
   : K(1,J)=K(10,J)+K(11,J)
   : K(2,J)=K(2,J)+(G(1)*K1)
   : K(2,5)=K(2,5)+(G(1)*K1)
4700 K(3,J)=K(3,J)+(G(2)*K1)
   : K(3,5)=K(3,5)+(G(2)*K1)
   : K(4,J)=K(4,J)+(G(3)*K1)
   : K(4,5)=K(4,5)+(G(3)*K1)
   : K(5,J)=K(5,J)+(A2*K1)
   : K(5,5)=K(5,5)+(A2*K1)
   : K(6,J)=K(6,J)+(A1*K1)
   : K(6,5)=K(6,5)+(A1*K1)
   : K(9,J)=K(9,J)+(D1*K1)
   : K(9,5)=K(9,5)+(D1*K1)
4840 K(12,J)=K(10,J)-K(6,J)
   : K(12,5)=K(10,5)-K(6,5)
   : Q9=8
   : IF D>0THEN Q9=7
   : K(Q9,J)=K(Q9,J)+(D*K1)
   : K(Q9,5)=K(Q9,5)+(D*K1)
   : K1$=" "
   : GOSUB '90
   : Q9=0
   : IF I2$>="0"AND I2$<="3"THEN CONVERT I2$TO Q9
   : Q6$="INVC/I DM CM"
   : C6$=STR(Q6$,Q9*3+1,3)
   : GOSUB 6030
5000 IF J0=7THEN GOSUB '92
   : GOSUB '237(A6,0)
   : IF Q$="E"THEN 5080
   : IF Q$=" "THEN 4140
   : GOSUB '91
   : IF J0=7THEN 5000
   : GOTO 5200
5080 L=L0
   : K1$="REGISTER TOTALS"
   : GOSUB '90
   : GOSUB 6330
   : J0=0
5140 $OPEN #3
   : GOSUB '46(3,0,1)
   : IF M(11)+1=A6THEN M(7)=1
   : ELSE M(14)=1
   : GOSUB '46(3,0,0)
   : $CLOSE#3
5200 DEFFN'31
   : IF J0>0THEN GOSUB '254
   : LOAD TM$
6010 %##,###,###.##-
6030 SELECT PRINT <I0$>(132)
   : UNPACK(########)STR(B$,,4)TO Q9
   : PRINTUSING "#######",Q9;
   : PRINT TAB(9);C6$;TAB(15);C1$;TAB(20+Q0);STR(B0$,,MIN(26-Q0,LEN(B0$)));TAB
     (53);
   : PRINTUSING 6010,D1;
   : PRINT TAB(70);G$(1);TAB(73);
   : PRINTUSING 6010,G(1);
   : PRINT TAB(90);G$(2);TAB(93);
   : PRINTUSING 6010,G(2);
   : PRINT TAB(110);G$(3);TAB(113);
   : PRINTUSING 6010,G(3)
   : L=L+1
   : SELECT PRINT 005(80)
   : RETURN
6180 DEFFN'35(K,K1$)
   : SELECT PRINT <I0$>(132)
   : PRINT K1$;TAB(23);
   : PRINTUSING 6010,K(K,1);
   : PRINT TAB(48);
   : PRINTUSING 6010,K(K,2);
   : PRINT TAB(69);
   : PRINTUSING 6010,K(K,3);
   : PRINT TAB(91);
   : PRINTUSING 6010,K(K,4);
   : PRINT TAB(113);
   : PRINTUSING 6010,K(K,5)
   : SELECT PRINT 005(80)
   : RETURN
6330 GOSUB '35(1,"TOTAL SALES")
   : GOSUB '35(11,"LINE DISCOUNT")
   : GOSUB '35(10,"GROSS SALES")
   : GOSUB '35(6,"INVOICE DISCOUNT")
   : GOSUB '35(12,"NET SALES")
   : GOSUB '35(2,"SALES TAX 1")
   : GOSUB '35(3,"SALES TAX 2")
   : GOSUB '35(4,"SALES TAX 3")
   : GOSUB '35(5,"FREIGHT")
   : GOSUB '35(7,"SPECIAL CHARGES")
6430 GOSUB '35(8,"SPECIAL CREDITS")
   : GOSUB '35(9,"INVOICE TOTAL")
   : FOR I=1TO 5
   : K(14,I)=0
   : IF K(13,I)>0THEN K(14,I)=ROUND((K(9,I)/K(13,I),2)
   : NEXT I
   : GOSUB '35(13,"NO. OF INVOICES")
   : K1$="NO. OF INVOICES"
   : RETURN
6550 DEFFN'90
   : SELECT PRINT 005(80)
   : Q6$=" "
   : KEYIN Q6$,6590,6590
6590 IF Q6$="P"THEN GOSUB '254
   : IF Q6$=HEX(1F)THEN GOSUB '31
   : SELECT PRINT <I0$>(132)
   : IF L<L0THEN RETURN
   : P1=P1+1
   : PRINT HEX(0C0A0E);TAB(3);N2$
   : PRINT TAB(58);"INVOICE REGISTER";TAB(110);Q1$;TAB(122);"PAGE";P1
   : PRINT HEX(0A)
   : IF K1$=" "THEN 6720
   : PRINT K1$;TAB(28);"INVOICES";TAB(46);"CREDIT INVOICES";TAB(71);"DEBIT MEM
     OS";TAB(92);"CREDIT MEMOS";TAB(118);"COMBINED"
6700 GOTO 6740
6720 PRINT "INV NO./TYPE";TAB(15);"CUST ID";TAB(20+Q0);"CUSTOMER NAME";TAB(53)
     ;"INVOICE TOTAL";TAB(69);"CODE";TAB(75);"SALES TAX 1";TAB(89);"CODE";TAB(
     95);"SALES TAX 2";TAB(109);"CODE";TAB(115);"SALES TAX 3"
6740 PRINT HEX(0A)
   : L=6
   : RETURN
9998 DEFFN'29"Q$=";HEX(22);"INVC040A";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 - Print an invoice register.";HEX(22);":SELECT#15<I0$>:$OPEN#15:
     SELECTLIST<I0$>(132): LIST Z$:LIST Z$#:LIST Z$V:LIST Z$':$CLOSE#15:SELECT
     LIST005(80)";HEX(0D)