Listing of file='GENL120A' on disk='vmedia/701-2653B.wvd.zip'
# Sector 178, program filename = 'GENL120A' 0010 REM GENL120A, RELEASE 2.2, (09/11/80) THIS PROGRAM IS A COPYRIGHT PRODU CT OF WANG LABORATORIES INC. UNAUTHORIZED REPRODUCTION OR USE IS PROH IBITED 0170 DIM G6$Q5,K6$(50)4 0172 DIM N8(5),F9(4) : GOTO 4000 4000 SELECT @PARTS0$ : H0$=HEX(00) : PRINT AT(4,0,80);"This program posts all journal entries to the chart of accounts master file";AT(5,0,80);"and then clears all entries from the cu rrent month's journal entries file" 4100 GOSUB '100("Y,N","YyNn",1,1,"ARE YOU SURE YOU WANT TO RUN THIS PROGRAM (Y OR N)",2) : IF Q9=2THEN GOSUB '31 : PRINT AT(4,0,);"Processing account no.";HEX(06) : GOSUB '235(1,0) : IF Q$<>" "THEN 7170 : GOTO 4430 4370 DBACKSPACE #2,1S : GOSUB '65(2) 4390 GOSUB '237(1,0) : IF Q$="E"THEN 4790 : IF Q$<>" "THEN 7170 4430 GOSUB '75(2) : PRINT AT(4,23,8);O$ : Q$,Q6$=" " : IF O1$<>"2"OR O3$="M"THEN 4390 : IF NUM(STR(O$,,1))=1THEN CONVERT STR(O$,,1)TO F9 : ELSE F9=4 : F9=MAX(MIN(F9,4),1) : IF H0$<>HEX(00)THEN 4640 4530 J=MOD(J,50)+1 : H0$=HEX(FF) : IF J=1THEN DATA LOAD DC #3,K6$() : IF END THEN 4370 : IF STR(K6$(J),,1)=HEX(FF)THEN 4370 : DATA LOAD DA T#1,(STR(K6$(J),,2))M$() : Q9=VAL(STR(K6$(J),4)) : IF STR(M$(Q9),,1)=HEX(FF)THEN 4370 : $UNPACK(F=L3$)M$(Q9)TO H2,H0$,H1$,H,H3$,H4$,H5$,H1 4640 IF O$<H0$THEN 4370 : IF O$=H0$THEN 4710 : PRINT AT(1,0,80);"Trans no";H2;"for account no. ";H0$;" will be dropped"; HEX(07) : PRINT AT(3,0,80);H0$;" is not a postable account" : GOSUB '254 : GOTO 4530 4710 IF H1>=0THEN P2=P2+H1 : ELSE P3=P3-H1 : IF F9>2THEN N6=N6+H1 : F9(F9)=F9(F9)+H1 : P0=MAX(P0,H) : GOTO 4530 4790 $OPEN #5 : GOSUB '66(5,Q1,1) : FOR I=1TO 4 : M(9+I)=M(9+I)+F9(I) : NEXT I : GOSUB '66(5,Q1,0) : GOSUB '66(5,0,1) : FOR I=1TO 4 : M(9+I)=M(9+I)+F9(I) : NEXT I : F5$(1)="1" : GOSUB '66(5,0,0) : $CLOSE#5 : DBACKSPACE #3,BEG : GOSUB '218(S$(3),3," ",0) : DBACKSPACE #4,BEG : GOSUB '218(S$(4),4," ",0) : IF M(4)+M(5)+M(6)+M(7)+M(8)=0OR G$()=" "OR N6=0THEN 5960 5010 PRINT AT(4,0,640);AT(5,0);"RET. EARN. ACCOUNT NO.";TAB(34);"% DIST" : FOR I=1TO 5 : O1$=" " : GOSUB '232(1,0,G$(I)) : G$(I)=" " : IF Q$=" "THEN GOSUB '75(2) : IF O1$<>"2"OR O3$="M"THEN 5120 : G$(I)=O$ : PRINT TAB(5);"(";I;") ";G$(I);TAB(33); : IF M(I+3)<>0THEN PRINTUSING "###.###",M(I+3) : ELSE PRINT 5120 NEXT I 5140 GOSUB '100("0","5",1,0,"ENTER LINE NO. TO CORRECT (0=END)",1) : IF Q6$=HEX(1F)THEN GOSUB '31 : J6=Q9 : IF J6=0THEN 5470 : Q6$=G$(J6) : M(J6+3)=0 : IF Q6$=" "THEN Q9=2 : ELSE Q9=3 : GOSUB '100(" ",HEX(7F),VAL(Q0$(5)),0,"ENTER RETAINED EARNINGS ACCOUNT NO. ",Q9) : IF Q6$=HEX(1F)THEN GOSUB '31 : G6$,G$(J6)=" " : G6=0 : IF Q6$=" "THEN 5430 5280 GOSUB '96(5) : G6$=Q6$ : GOSUB '232(1,0,G6$) : GOSUB '91 : IF J0<>0THEN 5140 : GOSUB '75(2) : IF O1$="2"AND O3$<>"M"THEN 5370 : PRINT AT(3,0,80);HEX(07);"Illegal account no., re-enter" : GOTO 5140 5370 G$(J6)=G6$ : PRINT AT(1,0,80);"ENTER PERCENTAGE (";J6;")" : GOSUB '100("0","100.00",3,3," ",1) : IF Q6$=HEX(1F)THEN GOSUB '31 : G6=Q9 5430 PRINT AT(J6+5,5,75);"(";J6;") ";G6$;TAB(33); : IF G6<>0THEN PRINTUSING "###.###",G6 : ELSE PRINT TAB(79) : M(J6+3)=G6 : GOTO 5140 5470 Q9=0 : FOR I=1TO 5 : Q9=Q9+M(I+3) : NEXT I : IF Q9=100THEN 5620 : IF Q9<100THEN 5550 : PRINT AT(3,0,80);HEX(07);"R/E percentages exceed 100 percent, re-enter" : GOTO 5140 5550 PRINT AT(3,0,80);HEX(07);"Distribution percentages less than 100 %" : GOSUB '100("Y,N","YyY Nn",1,1,"ACCEPT ENTRIES (Y OR N)",2) : IF Q6$=HEX(1F)THEN GOSUB '31 : IF Q9=2THEN 5140 5620 GOSUB '93(" ") : PRINT AT(4,0,) : IF I0$<>" "THEN GOSUB '90 : PRINT HEX(0A0A);TAB(9);"R/E ACCT";TAB(25);"R/E %";TAB(37);"NET POSTED" : PRINT " " : FOR I=1TO 5 : N8(I)=ROUND((N6*M(I+3)*.01,2) : IF G$(I)=" "THEN N8(I)=0 : ELSE N7=N7+N8(I) : NEXT I : Q9=N6-N7 : FOR I=1TO 5 : IF G$(I)=" "THEN 5930 : PRINT TAB(9);G$(I);TAB(23); : PRINTUSING "###.###",M(I+3); : PRINT TAB(34); : N8(I)=N8(I)+Q9 5800 PRINTUSING "##,###,###.##-",N8(I); : Q9=0 : GOSUB '232(1,0,G$(I)) : IF Q$=" "THEN 5870 : PRINT "***NOT POSTED***" : GOTO 5930 5870 PRINT : GOSUB '75(2) : IF N8(I)<0THEN P3=P3-N8(I) : ELSE P2=P2+N8(I) : P0=Q1 : DBACKSPACE #2,1S : GOSUB '65(2) 5930 NEXT I : IF I0$=" "THEN GOSUB '254 : ELSE PRINT HEX(0C) 5960 DEFFN'31 : LOAD TM$ 7040 DEFFN'90 : Q6$=" " : KEYIN Q6$,7080,7080 7080 IF Q6$="P"THEN GOSUB '254 : IF Q6$=HEX(1F)THEN GOSUB '31 : SELECT PRINT <I0$>(90) : P1=P1+1 : Q6$=STR(N2$,POS(N2$<>" ")) : Q8=LEN(Q6$) : Q7$=HEX(0C0A0D0E) : Q9=(42-Q8)*.5 : IF Q9>=0THEN 7140 : Q7$=HEX(0C0A) : Q9=42-.5*Q8 7140 PRINT Q7$;TAB(Q9);Q6$ : PRINT TAB(15);"UPDATE CHART OF ACCOUNTS - CONTROL REPORT" : PRINT : RETURN 7170 GOSUB '91 : PRINT AT(1,0,80);Q7$;HEX(07) : PRINT AT(3,16,64);Q6$ : GOSUB '254 : GOTO 5960 9999 DEFFN'29"Q$=";HEX(22);"GENL120A";HEX(22);":SCRATCHTQ$:SAVET()Q$";HEX(0D)