Listing of file='GENL010A' on disk='vmedia/701-2653B.wvd.zip'
# Sector 34, program filename = 'GENL010A'
0010 REM GENL010A, RELEASE 2.0, (06/01/79) THIS PROGRAM IS A COPYRIGHT PRODUCT
OF WANG LABORATORIES INC. UNAUTHORIZED REPRODUCTION OR USE IS PROHIBITED
0170 DIM A6$1,B6$1,C6$1,D6$8
: DIM K$1,K1$Q5,K2$Q5,K3$17
: GOTO 4000
4000 %##,###,###.##-
4001 SELECT @PARTS0$
: GOSUB '66(3,0,1)
: IF M(9)<1OR M(9)>12THEN M(9)=1
: IF M(14)<1OR M(14)>12THEN M(14)=1
: K2$=ALL(FF)
: A6$="N"
: B6$="Y"
: K,P1=0
: L=L0
: GOSUB '100("Y,N","NnYyY ",1,1,"PRINT REPORT (Y OR N)",2)
: IF Q6$=HEX(1F)THEN GOSUB '31
: A6$=Q6$
: IF A6$="Y"THEN 4150
: $CLOSE#15
: GOTO 4230
4150 GOSUB '93(" ")
: IF I0$=" "THEN A6$="N"
: GOSUB '100("Y,N","NnYyY ",1,1,"SCREEN DISPLAY (Y OR N)",2)
: IF Q6$=HEX(1F)THEN GOSUB '31
: B6$=Q6$
: IF B6$="N"AND A6$="N"THEN 5230
4230 IF A6$="N"THEN 4300
: PRINT AT(5,0,);TAB(16);"A = Full report"
: PRINT TAB(16);"B = Condensed report"
: GOSUB '100("A,B","AaBb",1,1,"ENTER REPORT TYPE",2)
: IF Q6$=HEX(1F)THEN GOSUB '31
: C6$=Q6$
4300 PRINT AT(5,0,)
: GOSUB '100("A,R,I","AaIiRr",1,1,"ENTER INQUIRY TYPE (A=ALL, R=RANGE, I=I
NDIVIDUAL)",2)
: IF Q6$=HEX(1F)THEN GOSUB '31
: K$=Q6$
: Q6$="ALL RANGE INDIVIDUAL"
: K3$=STR(Q6$,Q9*10-9,10)
: K3$=K3$&" OPTION"
: ON Q9GOTO ,4530,4440
: GOSUB '235(1,0)
: IF Q$="B"THEN 4000
: IF Q$>" "THEN 5320
: GOTO 4670
4440 GOSUB '34(HEX(08))
: IF Q6$="END"THEN 5100
: K1$,K2$=Q6$
: GOSUB '232(1,0,K1$)
: GOSUB '91
: ON J0+1GOTO 4670,,,4440,,,,4440
: GOTO 5320
4520 PRINT AT(3,0,80);"Starting ID must be lower than Ending ID.";HEX(07)
4530 L=L0
: GOSUB '34("STARTING")
: IF Q6$="END"THEN 5100
: K1$=Q6$
: GOSUB '34("ENDING")
: K2$=ALL(FF)
: IF Q6$<>"END"THEN K2$=Q6$
: IF K1$>K2$THEN 4520
: GOSUB '232(1,0,K1$)
: J$(3)=" "
: GOSUB '91
: ON J0GOTO ,,4870,,,,4000
: IF J0>0THEN 5320
4670 GOSUB '75(2)
: IF O$>K2$THEN 4820
: K=K+1
: D6$="INACTIVE"
: GOSUB '123(P0)
: IF Q6$<>"E"THEN D6$=U9$
: PRINT AT(5,0,)
: IF B6$="Y"THEN GOSUB 7040
: ELSE PRINT "Processing record ID ";T7$
: IF A6$="Y"THEN GOSUB '90
: IF A6$="Y"THEN ON VAL(C6$)-64GOSUB 7345,7315
: SELECT PRINT 005(80)
4820 IF K$="I"THEN 4440
: IF O$>=K2$THEN 4950
: IF B6$="Y"THEN GOSUB '254
: IF Q6$=HEX(1F)THEN GOSUB '31
4870 IF J0=7THEN GOSUB '92
: GOSUB '237(1,0)
: IF Q$=" "THEN 4670
: IF Q$="E"THEN 4950
: GOSUB '91
: IF J0=7THEN 4870
: GOTO 5320
4950 IF A6$="N"AND K$="R"THEN 5090
: IF A6$="N"OR K$<>"R"THEN 5100
: L=L+2
: GOSUB '90
: PRINT HEX(0A)
: IF K>0THEN PRINT "NO. OF RECORDS PROCESSED = ";K
: SELECT PRINT 005(80)
5090 GOTO 4530
5100 IF A6$="N"THEN 5230
: SELECT PRINT <I0$>(85)
: PRINT HEX(0A)
: PRINT HEX(0C)
5230 SELECT PRINT 005(80)
: PRINT AT(1,0,)
: GOSUB '100("M,R","MmRr",1,1,"KEY R TO RESTART, M FOR MENU",2)
: IF Q6$=HEX(1F)THEN GOSUB '31
: IF Q6$="R"THEN 4000
5290 DEFFN'31
: LOAD TM$
5320 GOSUB '91
: GOSUB '254
: GOTO 5290
6020 DEFFN'90
: Q6$=" "
: KEYIN Q6$,6050,6050
6050 IF Q6$="P"THEN GOSUB '254
: IF Q6$=HEX(1F)THEN GOSUB '31
: SELECT PRINT <I0$>(85)
: IF C6$="A"THEN Q9=4
: ELSE Q9=0
: IF L<L0-Q9THEN RETURN
: P1=P1+1
: Q6$=STR(N2$,POS(N2$<>" "))
: ERRORQ6$=N2$
6092 Q8=LEN(Q6$)
: Q7$=HEX(0C0A0D0E)
: Q9=(42-Q8)*.5
: IF Q9>=0THEN 6100
: Q7$=HEX(0C0A)
: Q9=42-.5*Q8
6100 PRINT Q7$;TAB(Q9);Q6$
: PRINT K3$;TAB(32);"CHART OF ACCOUNTS FILE";TAB(65);Q1$;TAB(76);"PAGE ";P1
: IF C6$="A"THEN PRINT TAB(38);"(COMPLETE)"
: ELSE PRINT TAB(38);"(CONDENSED)"
: PRINT HEX(0A)
: IF C6$="B"THEN PRINT "ACCT #";TAB(11);"NAME";TAB(43);"LVL";TAB(48);"SUB C
D";TAB(131),TAB(131)
: PRINT HEX(0A)
: L=8
: RETURN
6160 DEFFN'34(Q7$)
: PRINT AT(1,0,80);"ENTER ";Q7$;" ACCOUNT NO. (OR END)"
: GOSUB '100(" ",HEX(7F),VAL(Q0$(5)),0," ",2)
: IF Q6$=HEX(1F)THEN GOSUB '31
: IF Q6$="end"THEN Q6$="END"
: IF Q6$="END"THEN RETURN
: GOSUB '96(5)
: RETURN
7040 PRINT AT(4,0,)
: Q2=2
: Q3=22
: Q4=40
: Q5=60
: PRINT "ACCOUNT NO.";TAB(12);O$;TAB(Q3);"NAME";TAB(31);O5$
: MAT REDIM M$(5)18
: M$(1)="LEVEL CODE"
: M$(2)="SUBSIDIARY CODE"
: M$(3)="BAL. SH. COL. CODE"
: M$(4)="REPORT SIGN FLAG"
: M$(5)="CASH FLOW FLAG"
: Q6$=O1$&O3$&O4$&P2$&P1$
: FOR I=1TO 5
7095 IF O2$(I)<>" "THEN Q7$=STR(O2$(I),,2)&"-"&STR(O2$(I),3)
: ELSE Q7$=" "
: PRINT TAB(Q2);M$(I);TAB(Q3);STR(Q6$,I,1);TAB(Q4);"SCHEDULE ID";I;Q7$
: NEXT I
: MAT REDIM M$(4)62
: B7,B8=0
: FOR I=1TO 12
: B8=B8+P0(I)
: NEXT I
: FOR I=1TO M(9)
: B7=B7+P0(I)
: NEXT I
: PRINT TAB(Q2);"CURRENT DEBIT AMT";TAB(Q3);
: IF P2<>0THEN PRINTUSING 4000,P2;
7160 PRINT TAB(Q4);"Y-T-D DEBIT AMOUNT";TAB(Q5);
: IF P4<>0THEN PRINTUSING 4000,P4
: ELSE PRINT
: PRINT TAB(Q2);"CURRENT CREDIT AMT";TAB(Q3);
: IF P3<>0THEN PRINTUSING 4000,P3;
: PRINT TAB(Q4);"Y-T-D CREDIT AMOUNT";TAB(Q5);
: IF P5<>0THEN PRINTUSING 4000,P5
: ELSE PRINT
: PRINT TAB(Q2);"BEGINNING BALANCE";TAB(Q3);
: IF P4-P5<>0THEN PRINTUSING 4000,P4-P5;
: PRINT TAB(Q4);"ENDING BALANCE";TAB(Q5);
7205 IF P2-P3+P4-P5<>0THEN PRINTUSING 4000,P2-P3+P4-P5
: ELSE PRINT
: PRINT TAB(Q2);"LAST POSTING DATE";TAB(Q3);D6$;TAB(Q4);"Y-T-D BUDGET";TAB(
Q5);
: PRINTUSING 4000,B7
: IF O$<"3"OR B8=0THEN RETURN
: PRINT HEX(0A)
: M$()="JANUARY FEBRUARY MARCH APRIL MAY JUNE JULY AUGU
ST SEPTEMBEROCTOBER NOVEMBER DECEMBER"
7240 MAT REDIM M$(12)9
: PRINT TAB(11);"* * * * * F I S C A L B U D G E T * * * * *"
: PRINT TAB(Q2);"MONTH BUDGET AMOUNT";TAB(42);"MONTH BUDGET A
MOUNT"
: FOR I=1TO 6
: Q9=MOD(M(14)+I-2,12)+1
: PRINT TAB(Q2);M$(Q9);TAB(15);
: PRINTUSING 4000,P0(I);
: Q9=MOD(M(14)+I+4,12)+1
: PRINT TAB(42);M$(Q9);TAB(55);
: PRINTUSING 4000,P0(I+6)
: NEXT I
7295 MAT REDIM M$(4)62
: RETURN
7315 L=L+1
: GOSUB '90
: PRINT O$;TAB(11);O5$;TAB(44);O1$;TAB(50);O3$
: RETURN
7345 GOSUB '90
: PRINT "ACCOUNT NO";TAB(13);O$;TAB(24);"NAME";TAB(30);O5$
: PRINT "LVL CD";TAB(10);O1$;TAB(16);"SUB CD";TAB(25);O3$;TAB(31);"BSCC";TA
B(40);O4$;TAB(46);"CSH/FLG";TAB(55);P1$;TAB(61);"RPT/FLG";TAB(70);P2$;TAB
(72);"DATE";TAB(77);D6$
: FOR I=1TO 5
: IF O2$(I)<>" "THEN Q7$=STR(O2$(I),,2)&"-"&STR(O2$(I),3)
: ELSE Q7$=" "
7380 PRINT "SCH ID";I;Q7$;TAB(15*I+1);
: NEXT I
: PRINT
: PRINT "BEG BAL";TAB(08);
: IF P4-P5<>0THEN PRINTUSING 4000,P4-P5;
: PRINT TAB(31);"CURR DR";TAB(39);
: IF P2<>0THEN PRINTUSING 4000,P2
: ELSE PRINT
: PRINT "END BAL";TAB(08);
: IF P2-P3+P4-P5<>0THEN PRINTUSING 4000,P2-P3+P4-P5;
: PRINT TAB(31);"CURR CR";TAB(39);
: IF P3<>0THEN PRINTUSING 4000,P3;
: B9=0
: FOR I=1TO M(9)
: B9=B9+P0(I)
: NEXT I
7455 IF B9<>0THEN PRINT TAB(61);"YTD BUDGET";TAB(70);
: IF B9<>0THEN PRINTUSING 4000,B9;
: ELSE PRINT
: L=L+5
: IF O$<"3"THEN 7555
: GOSUB '90
: Q6$=" MO. BUDGET AMT"
: PRINT Q6$;Q6$;Q6$;Q6$
: Q6$="JANFEBMARAPRMAYJUNJULAUGSEPOCTNOVDEC"
: FOR I=1TO 3
: FOR J=1TO 4
: Q8=I+J*3-3
: Q9=MOD(M(14)+Q8-2,12)+1
: PRINT TAB(J*19-16);STR(Q6$,Q9*3-2,3);
7530 IF P0(Q8)<>0THEN PRINTUSING 4000,P0(Q8);
: NEXT J
: PRINT
: NEXT I
: L=L+4
7555 GOSUB '90
: PRINT HEX(0A0A)
: L=L+2
: RETURN
9998 DEFFN'29"Q$=";HEX(22);"GENL010A";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 - DISPLAY/PRINT CHART OF ACCOUNTS.";HEX(22);":SELECT#15<I0$>:$OP
EN#15:SELECTLIST<I0$>(132): LIST Z$:LIST Z$#:LIST Z$V:LIST Z$':LISTZ$THEX
(7A):$CLOSE#15:SELECTLIST005(80)";HEX(0D)