Listing of file='GENL110A' on disk='vmedia/701-2653B.wvd.zip'
# Sector 368, program filename = 'GENL110A' 0010 REM GENL110A 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$2,E8$8 : DIM K$1,K3$17,K4$9 : GOTO 4000 4000 SELECT @PARTS0$ : GOSUB '66(6,0,1) : Q6$=" " : Q7$="Error in control file - invalid current fiscal period" : IF M(9)<1OR M(9)>12THEN 5360 : Q7$="Error in control file - invalid first fiscal month no." : IF M(14)<1OR M(14)>12THEN 5360 : E7=MOD(M(9)+M(14)-2,12)+1 : K2=9E99 : A6$="N" : B6$="Y" 4050 C6,D6,K,P1=0 : L=L0+5 : 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 4214 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 4214 GOSUB 5410 : 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" : K1=1 : ON Q9GOTO 4645,4540,4440 4440 GOSUB '34(HEX(06)) : K1,K2=Q9 : IF K1=0THEN 4960 : GOTO 4645 4540 L=L0 : GOSUB '34("STARTING") : K1=Q9 : IF K1=0THEN 4960 : GOSUB '34("ENDING") : IF Q9=0THEN Q9=9E99 : K2=Q9 : IF K2>=K1THEN 4645 : PRINT AT(3,0,80);HEX(07);"Enter starting no. <= ending no." : GOTO 4540 4645 E9=K1 : DBACKSPACE #E8,BEG : DSKIP #E8,INT((E9-1)/4)S 4670 Q7$="Error in Journal Entries File - correct and restart" : Q6$=" " : DATA LOAD DC #E8,M$() : ERRORGOTO 5360 4676 $UNPACK(F=L3$)M$(MOD(E9-1,4)+1)TO H2,H0$,H1$,H,H3$,H4$,H5$,H1 : ERRORGOTO 5360 4678 IF E9<>H2THEN 5360 : IF C6$<>" "THEN IF H1$<>C6$THEN 4862 : IF E9>K2THEN 4910 : GOSUB '232(1,0,H0$) : O5$="Not in Chart of Accounts file" : IF Q$=" "THEN GOSUB '75(2) : IF Q$="B"THEN O5$="Chart of accounts record busy" : IF POS(Q$=" B")=0THEN 5320 : K=K+1 : GOSUB '123(H) : IF Q6$<>"E"THEN E8$=U9$ : ELSE E8$="NO DATE" : IF H1<0THEN C6=C6+H1 : ELSE D6=D6+H1 4770 PRINT AT(5,0,) : IF B6$="Y"THEN GOSUB 7150 : ELSE PRINT "Processing Transaction";E9 : IF A6$="Y"THEN GOSUB '90 : IF A6$="Y"THEN GOSUB 7270 : SELECT PRINT 005(80) : IF K$="I"THEN 4440 : IF E9=K2THEN 4910 : IF B6$="Y"THEN GOSUB '254 : IF Q6$=HEX(1F)THEN GOSUB '31 4862 IF K$="I"THEN 4440 : IF E9>=K2THEN 4910 : E9=E9+1 : IF MOD(E9,4)<>1THEN DBACKSPACE #E8,1S : IF E9<=E6THEN 4670 4910 PRINT AT(3,0,80) : C7=C7+C6 : D7=D7+D6 : IF A6$="N"AND K$="R"THEN 4540 4960 IF A6$="N"THEN 5100 : L=L+4 : GOSUB '90 : PRINT HEX(0A) : IF K$="R"AND K1<>0THEN Q6$="RANGE TOTAL" : ELSE Q6$="FINAL TOTAL" : PRINT TAB(80);Q6$;" DEBITS";TAB(109); : IF K1=0THEN D6=D7 : PRINTUSING "$##,###,###.##++",D6 : IF K1=0THEN C6=C7 : PRINT TAB(80);Q6$;" CREDITS";TAB(109); : PRINTUSING "$##,###,###.##++",C6 5070 IF K>0AND K1<>0THEN PRINT HEX(0A);"NO. OF RECORDS PROCESSED = ";K : SELECT PRINT 005(80) : IF K1<>0AND K$="R"THEN 4540 5100 C6,D6,C7,D7,K=0 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 5360 PRINT AT(1,0,80);Q7$ : PRINT AT(3,16,64);Q6$ : GOSUB '254 : GOSUB '31 5410 M$()="JANUARY FEBRUARY MARCH APRIL MAY JUNE JULY AUGU ST SEPTEMBEROCTOBER NOVEMBER DECEMBER" : PRINT AT(6,16,);"1 = ";STR(M$(),E7*9-8,9) : PRINT TAB(16);"2 = ";STR(M$(),(MOD(E7,12)+1)*9-8,9) : PRINT TAB(16);"3 = ";"STANDARD" 5460 GOSUB '100("1","3",1,0,"ENTER FISCAL PERIOD",1) : IF Q6$=HEX(1F)THEN GOSUB '31 : IF Q9<3THEN K4$=STR(M$(),(MOD(E7+Q9-2,12)+1)*9-8,9) : ELSE K4$="STANDARD" : PRINT AT(0,48,32);"- ";K4$ : E8=Q9+2 : PRINT AT(6,0,) : Q6$=" " : DSKIP #E8,END : LIMITS T#E8,Q6,Q7,Q8 : Q7$=K4$&" Journal Entries File is empty" : IF Q8=Q6THEN 5360 : DBACKSPACE #E8,1S 5610 DATA LOAD DC #E8,M$() : Q9=MAX(INT((POS(M$()=HEX(FF))+61)/62),1)-1 : E6=(Q8-Q6-1)*4 : IF Q9=0THEN E6=E6+4 : ELSE E6=E6+Q9 : CONVERT E6TO Q6$,(########) : E6$=STR(Q6$,POS(Q6$<>"0")) : ERRORGOTO 5360 5670 GOSUB '100(" ",HEX(7F),2,0,"ENTER SOURCE CODE TO SELECT (RETURN = ALL)",2 ) : IF Q6$=HEX(1F)THEN GOSUB '31 : C6$=Q6$ : RETURN 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$>(132) : IF L<L0THEN RETURN : P1=P1+1 : PRINT HEX(0C0A0D0E);TAB(3);N2$ : PRINT K3$;TAB(45);K4$;" JOURNAL ENTRY FILE";TAB(110);Q1$;TAB(122);"PAGE " ;P1 : PRINT HEX(0A);"TRANS";TAB(8);"ACCOUNT";TAB(45);"SOURCE";TAB(56);"TRANS" 6114 PRINT " NO.";TAB(10);"NO.";TAB(17);"NAME";TAB(47);"CODE";TAB(57);"DATE";T AB(63);"DESCRIPTION";TAB(89);"REF-1";TAB(99);"REF-2";TAB(117);"AMOUNT" : PRINT HEX(0A) : L=7 : RETURN 6160 DEFFN'34(Q7$) : PRINT AT(1,0,80);"ENTER ";Q7$;" TRANSACTION NO. (0 = END)" : GOSUB '100(" ",E6$,LEN(E6$),0," ",1) : IF Q6$=HEX(1F)THEN GOSUB '31 : IF Q9<=E6THEN RETURN : PRINT AT(3,0,80);"Record not found" : GOTO 6160 7150 Q1=22 : PRINT "TRANSACTION NO.";TAB(Q1); : PRINTUSING "#####",H2 : PRINT "ACCOUNT NO.";TAB(Q1);H0$;TAB(30) : PRINT "NAME";TAB(Q1);O5$;TAB(52) : PRINT "SOURCE CODE";TAB(Q1);H1$;TAB(24) : PRINT "DESCRIPTION";TAB(Q1);H3$;TAB(46) : PRINT "REFERENCE 1";TAB(Q1);H4$;TAB(30) : PRINT "REFERENCE 2";TAB(Q1);H5$;TAB(30) : PRINTUSING "GROSS AMOUNT $##,###,###.##++",H1 : RETURN 7270 PRINTUSING "#####",H2; : PRINT TAB(7);H0$;TAB(17);O5$;TAB(49);H1$;TAB(53);E8$;TAB(63);H3$;TAB(89); H4$;TAB(99);H5$;TAB(110); : PRINTUSING "##,###,###.##++",H1 : L=L+1 : RETURN 9998 DEFFN'29"Q$=";HEX(22);"GENL110A";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 JOURNAL ENTRY FILE.";HEX(22);":SELECT#15<I0$>:$O PEN#15:SELECTLIST<I0$>(132): LIST Z$:LIST Z$#:LIST Z$V:LIST Z$':LISTZ$THE X(7A):$CLOSE#15:SELECTLIST005(80)";HEX(0D)