Listing of file='ACCT060A' on disk='vmedia/701-2607C.wvd.zip'
# Sector 449, program filename = 'ACCT060A'
0010 REM ACCT060A, RELEASE 2.3, (12/11/80) THIS PROGRAM IS A COPYRIGHT PRODUCT
OF WANG LABORATORIES INC. UNAUTHORIZED REPRODUCTION OR USE IS PROHIBITED
0170 DIM K1(6),K2(6),D9(6)
: DIM K1$Q0,K5$Q0,K6$Q0,K7$1
: GOTO 4000
4000 SELECT @PARTS0$
: K0=4
: L=L0
: GOSUB '93(" ")
: IF I0$=" "THEN 5170
: K1$,K5$=HEX(00)
: K6$=HEX(7F)
: GOSUB '123(M(12))
: I6$=Q1$
: IF Q6$<>"E"THEN I6$=U9$
: GOSUB '100("A,R","AaRr",1,1,"ENTER REPORT OPTION (A=ALL,R=RANGE)",2)
: IF Q6$=HEX(1F)THEN GOSUB '31
: IF Q6$="A"THEN 4290
: K7$=Q6$
4150 PRINT AT(1,0,)
: GOSUB '100(" ",HEX(7F),VAL(Q0$(1)),0,"ENTER STARTING CUSTOMER ID",2)
: IF Q6$=HEX(1F)THEN GOSUB '31
: GOSUB '96(1)
: K5$=Q6$
: PRINT AT(4,0,0);"Starting customer ID = ";K5$
: GOSUB '100(" ",HEX(7F),VAL(Q0$(1)),0,"ENTER ENDING CUSTOMER ID",2)
: IF Q6$=HEX(1F)THEN GOSUB '31
: GOSUB '96(1)
: K6$=Q6$
4250 PRINT AT(5,0,0);"Ending customer ID = ";K6$
: GOSUB '100("Y,N","YyY Nn",1,1,"IS RANGE CORRECT (Y OR N)",2)
: IF Q6$=HEX(1F)THEN GOSUB '31
: IF Q6$="N"THEN 4150
4290 PRINT AT(1,0,)
: I=0
4320 I=MOD(I,M0)+1
: Q6$=" "
: KEYIN Q6$,4350,4350
4350 IF Q6$=HEX(1F)THEN GOSUB '31
: IF I=1THEN GOSUB '55(1)
: IF C1$(I)=HEX(FF)THEN 5080
: IF C1$(I)<K5$THEN 4320
: IF C1$(I)>K6$THEN 5080
: IF K1$>HEX(00)AND K1$<>C1$(I)THEN GOSUB 6370
: SELECT PRINT 005(80)
: K1$=C1$(I)
: CONVERT A$(I)TO K9
: K9=K9+2
: CONVERT F$(I)TO K8
: K8=K8+1
: IF C$(I)="D"THEN D9(K9)=D9(K9)+A(I)
4510 IF C(I)>0THEN ON K8GOTO 4830,4920,4830,4990,4990,,,,5040
: ELSE ON K8GOTO 4590,4660,4700,4740,4740,,,,,4780
: PRINT AT(1,0,80);"Transaction code error -";K8;". Terminate program (Y OR
N)"
: GOSUB '100("Y,N","YyNn",1,1," ",2)
: IF Q6$="Y"THEN 5170
: IF C(I)>0THEN 4830
4590 K1(2)=K1(2)+C1(I)
: K1(3)=K1(3)+A(I)
: K1(4)=K1(4)+A1(I)
: K1(5)=K1(5)+A2(I)
: K1=K1+C1(I)+A(I)+A1(I)+A2(I)
: GOTO 4320
4660 K2=K2+A1(I)+A2(I)
: K1=K1-A1(I)-A2(I)
: GOTO 4320
4700 K1(K9)=K1(K9)+A(I)-A1(I)-A2(I)
: K1=K1+A(I)-A1(I)-A2(I)
: GOTO 4320
4740 K2=K2+A(I)
: K1=K1-A(I)
: GOTO 4320
4780 K1(K0+2)=K1(K0+2)+C1(I)+A(I)+A1(I)+A2(I)
: K1=K1+C1(I)+A(I)+A1(I)+A2(I)
: GOTO 4320
4830 IF C(I)<>K3AND K3>0THEN GOSUB 6020
4840 K3=C(I)
: IF K7<3THEN K7=K9
: K4=K4+A(I)
: K5=K5+A1(I)
: K6=K6+A2(I)
: IF C$(I)="D"THEN 4320
: K1=K1+A(I)-A1(I)-A2(I)
: GOTO 4320
4920 IF K3=0THEN 4840
: IF C(I)<>K3THEN 4660
: K5=K5+A1(I)
: K6=K6+A2(I)
: K1=K1-A1(I)-A2(I)
: GOTO 4320
4990 IF C(I)<>K3THEN 4740
: K4=K4-A(I)
: K1=K1-A(I)
: GOTO 4320
5040 K1(1)=K1(1)+C1(I)+A(I)+A1(I)+A2(I)
: K1=K1+C1(I)+A(I)+A1(I)+A2(I)
: GOTO 4320
5080 GOSUB 6370
: MAT K1=K2
: PRINT TAB(42);"FINAL TOTAL";
: GOSUB 6070
: PRINT HEX(0A)
: PRINT "END OF REPORT"
: PRINT HEX(0C)
: SELECT PRINT 005(80)
5170 DEFFN'31
: LOAD TM$
5200 PRINT AT(3,16);"- Customer master file"
: PRINT AT(1,0,80);"Program will be terminated"
: GOSUB '254
: GOTO 5170
6020 K=K4-K5-K6
: IF K<=0THEN K2=K2-K
: ELSE K1(K7)=K1(K7)+K
: K3,K4,K5,K6,K7=0
: RETURN
6070 FOR J=1TO K0+2
: PRINT TAB(48+J*12);
: PRINTUSING 6160,K1(J);
: NEXT J
: MAT D9=ZER
: PRINT
: PRINT HEX(0A)
: L=L+2
: GOSUB '90
: RETURN
6160 %###,###.##-
6180 DEFFN'90
: SELECT PRINT 005(80)
: KEYIN Q6$,6210,6210
6210 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(57);"AGED TRIAL BALANCE";TAB(107);I6$;TAB(117);"PAGE";TAB(122);
P1
: IF K7$="R"THEN PRINT TAB(48);"FROM CUSTOMER ";K5$;" TO CUSTOMER ";K6$
: PRINT HEX(0A)
: PRINT "CUST";TAB(63);"SERVICE"
6310 PRINT TAB(1);"ID";TAB(2+Q0);"CUSTOMER NAME";TAB(29);"TELEPHONE NO";TAB(64
);"CHARGE";TAB(75);"CURRENT";TAB(89);"31-60";TAB(101);"61-90";
: PRINT TAB(111);"91-OVER";TAB(121);"TOTAL DUE"
: PRINT HEX(0A)
: L=10
: RETURN
6370 GOSUB 6020
: FOR J=K0+2TO 2STEP -1
: IF K2=0THEN 6490
: IF K1(J)-D9(J)=0THEN 6450
: IF K1(J)-D9(J)>=K2THEN 6470
: K2=K2-(K1(J)-D9(J))
: K1(J)=D9(J)
6450 NEXT J
: GOTO 6510
6470 K1(J)=K1(J)-K2
: K2=0
6490 J=2
: NEXT J
6510 K1(2)=K1(2)-K2
: K1(1)=K1(1)+K1(K0+2)
: K1(K0+2)=K1+D9(2)+D9(3)+D9(4)+D9(5)
6550 IF J0=7THEN GOSUB '92
: GOSUB '232(1,0,K1$)
: J$(3)=" "
: GOSUB '91
: A1$="Customer not on file"
: P$=" "
: IF J0=7THEN 6550
: IF J0=0THEN GOSUB '50(3," ")
: ELSE IF J0<>3THEN 5200
: GOSUB '90
: PRINT K1$;TAB(2+Q0);STR(A1$,,MIN(26-Q0,LEN(A1$)));TAB(29);P$;
: GOSUB 6070
: MAT K2=K2+K1
: MAT K1=ZER
: K1,K2=0
: RETURN
9998 DEFFN'29"Q$=";HEX(22);"ACCT060A";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 aged trial balance.";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)