* DATE 09/12/84 18:38 * statement printing program SAVE TO TEMP CLEA REST FROM TEMP STOR CHR(PEEK(063)) TO dr SELE PRIMARY USE &dr.:statemnt RELE dr STOR 0 TO totalit STOR 0 TO totalit1 STOR 0 TO netin GO top IF nowprint = 'Y' GO bottom ELSE STOR ' ' to daya @ 15,00 @ 15,00 @ 16,00 SAY " * *" @ 15,00 SAY ' * What is the date of the statement you want to print *' @ 15,65 GET daya picture '99/99/99' READ GO TOP LOCA for daya = date DO WHIL .NOT. EOF IF .NOT. EOF STOR # TO rec:no ENDI .NOT. EOF CONT ENDD WHILE .NOT. EOF IF rec:no = 0 DO WHIL rec:no = 0 GO TOP @ 15,65 GET daya picture '99/99/99' READ LOCA for daya = date DO WHIL .NOT. EOF IF .NOT. EOF STOR # TO rec:no ENDI .NOT. EOF CONT ENDD WHILE .NOT. EOF ENDD WHILE rec:no = 0 ENDI rec:no = 0 IF rec:no <> 0 GO rec:no ENDI rec:no ENDI nowprint = 'Y' RELE nowprint IF stubs STOR t TO stub ELSE STOR f TO stub ENDI stubs @ 16,00 SAY " * *" @ 15,00 SAY " * Send Statements to the Printer (Y/N) *" @ 15,60 GET printer PICTURE '!' READ @ 16,00 SAY " * Send Statements to a Disk File (Y/N) *" @ 16,60 GET disk PICTURE '!' READ STOR LEN(coname)/2 TO L STOR 40-L TO L STOR ' ' TO bl STOR $(bl,1,L) + coname TO coname1 RELE coname IF disk ='Y' @ 18,00 SAY " * Enter Disk File Name *" @ 18,44 GET filename PICTURE '!!!!!!!!' @ 18,54 SAY "(.TXT will be added )" READ STOR 'A' to dr @ 19,00 SAY ' * Select drive to put Files on *' @ 19,54 GET dr PICTURE '!' READ DO WHIL @(dr,'AB') = 0 @ 19,54 GET dr PICTURE '!' READ ENDD while @ ENDI disk = Y @ 15,00 SAY " * *" @ 16,00 SAY " * *" @ 17,00 SAY " * *" @ 18,00 SAY " * *" @ 19,00 SAY " * *" IF printer = 'Y' @ 16,00 SAY " * MAKE PRINTER READY AND HIT ANY KEY *" SET CONSOLE OFF WAIT SET CONSOLE ON ERAS @ 10,20 SAY 'Calculating........................................' @ 12,00 SAY ' ' SET print ON ELSE ERAS @ 10,20 SAY 'Calculating........................................' @ 12,00 SAY ' ' ENDI printer = Y IF disk = 'Y' .AND. filename <> ' ' * make a proper REPORT file name that is of type TXT STOR @('.',filename) TO length IF length = 0 .OR. length > 8 STOR 9 TO length ENDI length STOR $(filename,1,length-1) TO filename STOR '&dr.:'+filename+'.TXT' TO filename RELE dr SET ALTERNATE TO &filename SET ALTERNATE ON ELSE RELE filename ENDI disk = Y and filename <> '' IF $(daya,4,1) = '0' STOR $(daya,5,1) TO date2 ELSE STOR $(daya,4,2) TO date2 ENDI STOR fyr TO mfyr IF mfyr < $(daya,1,2) STOR VAL(fyr)+12 TO mfyr1 ELSE STOR VAL(mfyr) TO mfyr1 ENDI mfyr STOR mfyr1 - VAL($(daya,1,2)) TO mfyr1 STOR mfyr1 + 100 TO mfyr1 STOR STR(mfyr1,3) TO mfyr2 STOR $(mfyr2,2,2) TO mfyr DO CASE CASE mfyr = '01' STOR 'One month ending ' TO date3 CASE mfyr = '02' STOR 'Two months ending ' TO date3 CASE mfyr = '03' STOR 'Three months ending ' TO date3 CASE mfyr = '04' STOR 'Four months ending ' TO date3 CASE mfyr = '05' STOR 'Five months ending ' TO date3 CASE mfyr = '06' STOR 'Six months ending ' TO date3 CASE mfyr = '07' STOR 'Seven months ending ' TO date3 CASE mfyr = '08' STOR 'Eight months ending ' TO date3 CASE mfyr = '09' STOR 'Nine months ending ' TO date3 CASE mfyr = '10' STOR 'Ten months ending ' TO date3 CASE mfyr = '11' STOR 'Eleven months ending ' TO date3 CASE mfyr = '12' STOR 'Twelve months ending ' TO date3 ENDC DO CASE CASE $(daya,1,2) = '01' STOR 'January ' + date2 + ', 19' + $(daya,7,2) TO date1 CASE $(daya,1,2) = '02' STOR 'February ' + date2 + ', 19' + $(daya,7,2) TO date1 CASE $(daya,1,2) = '03' STOR 'March ' + date2 + ', 19' + $(daya,7,2) TO date1 CASE $(daya,1,2) = '04' STOR 'April ' + date2 + ', 19' + $(daya,7,2) TO date1 CASE $(daya,1,2) = '05' STOR 'May ' + date2 + ', 19' + $(daya,7,2) TO date1 CASE $(daya,1,2) = '06' STOR 'June ' + date2 + ', 19' + $(daya,7,2) TO date1 CASE $(daya,1,2) = '07' STOR 'July ' + date2 + ', 19' + $(daya,7,2) TO date1 CASE $(daya,1,2) = '08' STOR 'August ' + date2 + ', 19' + $(daya,7,2) TO date1 CASE $(daya,1,2) = '09' STOR 'September ' + date2 + ', 19' + $(daya,7,2) TO date1 CASE $(daya,1,2) = '10' STOR 'October ' + date2 + ', 19' + $(daya,7,2) TO date1 CASE $(daya,1,2) = '11' STOR 'November ' + date2 + ', 19' + $(daya,7,2) TO date1 CASE $(daya,1,2) = '12' STOR 'December ' + date2 + ', 19' + $(daya,7,2) TO date1 ENDC STOR TRIM(date1) TO date1 STOR TRIM(date3+date1) TO date3 STOR LEN(date3)/2 TO L STOR 40-L TO L STOR ' ' TO bl STOR $(bl,1,L) + date3 TO date3 STOR LEN(date1)/2 TO L STOR 40-L TO L STOR ' ' TO bl STOR $(bl,1,L) + date1 TO date1 RELE L, bl, daya, date2, printer, disk,mfyr, mcyr, mfyr1, mfyr2 STOR t TO wholelist STOR 1 to count IF com1 = 'C' STOR 'BCDEFGHIJKL' TO plan STOR t TO trial ELSE STOR '6789A012345' TO plan STOR f TO trial ENDI com1 STOR 0 TO plus STOR 0 TO minus DO WHIL WHOLELIST STOR $(plan,(count),1) TO chart DO CASE CASE chart = '1'.OR. chart = 'B' STOR code1 TO mcode STOR count + 1 TO count CASE chart = '2' .OR. chart = 'C' STOR code2 TO mcode STOR count + 1 TO count CASE chart = '3'.OR. chart = 'D' STOR code3 TO mcode STOR count + 1 TO count CASE chart = '4' .OR. chart = 'E' STOR code4 TO mcode STOR count + 1 TO count CASE chart = '5' STOR code5 TO mcode IF .NOT. stub STOR f TO wholelist ELSE STOR 'M789A0X' TO plan STOR 1 TO count ENDI CASE chart = 'X' STOR f TO wholelist CASE chart = 'F' STOR code5 TO mcode STOR count+1 TO count CASE CHART = '6' .OR. chart = 'G' .OR. chart = 'M' STOR code6 TO mcode STOR count + 1 TO count CASE CHART = '7' .OR. chart = 'H' STOR code7 TO mcode STOR count + 1 TO count CASE CHART = '8' .OR. chart = 'I' STOR code8 TO mcode STOR count + 1 TO count CASE CHART = '9' .OR. chart = 'J' STOR code9 TO mcode STOR count + 1 TO count CASE CHART = '0' .OR. chart = 'K' STOR code0 TO mcode STOR count + 1 TO count CASE CHART = 'A' STOR codea TO mcode STOR count + 1 TO count CASE CHART = 'L' STOR codea TO mcode STOR f TO wholelist ENDC STOR ',' TO C STOR 1 TO X STOR 1 TO Y STOR @(C,$(mcode,x)) TO y STOR t TO more STOR 0 TO countup STOR '0' TO nu DO WHIL more IF Y > 0 IF VAL(nu) <9 STOR STR(VAL($(nu,1,1))+1,1) TO nu ELSE STOR STR(VAL($(nu,1,2))+1,2) TO nu ENDI VAL(nu) STOR X + Y TO X STOR @(C,$(mcode,x)) TO y STOR $(mcode,x,y-1) TO N&nu STOR X + Y TO X STOR @(C,$(mcode,x)) TO y STOR (VAL($(mcode,x,y-1))*1.00) TO NM&nu STOR countup + 1 TO countup ELSE STOR f TO more ENDI Y > 0 ENDD WHILE more STOR nu TO last STOR 0 TO sumup STOR countup-1 to countup STOR countup to countup1 STOR CHR(PEEK(063)) TO dr SELE SECONDARY USE &dr.:chart RELE dr STOR '0' TO nu DO WHIL &nu < &last-1 IF countup > 0 IF VAL(nu) <9 STOR STR(VAL($(nu,1,1))+1,1) TO nu ELSE STOR STR(VAL($(nu,1,2))+1,2) TO nu ENDI VAL(nu) LOCA FOR N&nu= acctno IF comm = 'A' .OR. comm = 'C' STOR N&nu + ' ' + desc TO mdesc&nu ELSE STOR desc TO mdesc&nu ENDI comm RELE N&nu STOR sumup + NM&nu TO sumup STOR countup -1 TO countup ENDI countup ENDD WHILE &nu DO CASE ERAS CASE chart = 'B' ? ' ' ? coname1 ? ' TRIAL BALANCE' ? date1 ? ' ' ? '----------------------------------------------------------------------------' ? 'Acct # Description Debit Credit' ? '----------------------------------------------------------------------------' CASE chart = '1' EJEC ? ' ' ? coname1 ? ' BALANCE SHEET' ? date1 ? ' ' ? ' ' ? 'ASSETS ' ? ' ' CASE chart = '3' ? ' ' ? 'LIABILITIES AND CAPITAL' ? ' ' CASE chart = '5' ? ' ' ? 'CAPITAL' ? ' ' CASE chart = '6' .OR. chart = 'M' ? ' ' ? coname1 ? ' PROFIT AND LOSS STATEMENT' IF chart = '6' ? date3 RELE date3 ELSE ? ' ONE MONTH ENDING ' ? date1 ENDI chart = '6' ? ' ' ? 'INCOME' ? ' ' ENDC STOR '0' TO nu IF trial IF chart='B'.OR.chart='C'.OR.chart='D'.OR.chart='E'.OR.chart='F'; .OR.chart='G'.OR.chart='H'.OR.chart='I'.OR.chart='J'.OR.; chart='K'.OR.chart='L' DO WHIL &nu < &last-1 IF countup1 > 0 IF VAL(nu) <9 STOR STR(VAL($(nu,1,1))+1,1) TO nu ELSE STOR STR(VAL($(nu,1,2))+1,2) TO nu ENDI VAL(nu) IF NM&nu< 0 STOR ' ' TO sp STOR minus + NM&nu TO minus ELSE STOR ' ' TO sp STOR plus + NM&nu TO plus ENDI NM ? ' ' + mdesc&nu + sp+ STR(NM&nu,12,2) RELE N&nu, mdesc&nu, NM&nu, sp STOR countup1 -1 TO countup1 ENDI countup1 ENDD WHILE &nu ENDI chart ELSE STOR t TO full DO WHIL &nu < &last-1 IF countup1 > 0 IF VAL(nu) <9 STOR STR(VAL($(nu,1,1))+1,1) TO nu ELSE STOR STR(VAL($(nu,1,2))+1,2) TO nu ENDI VAL(nu) IF NM&nu < 0 .AND. chart <> '1' STOR (NM&nu*-1) TO NM&nu ENDI NM IF full .AND. NM&nu <> 0 DO CASE CASE chart = '1' ? 'CURRENT ASSETS ' ? ' ' CASE chart = '2' ? ' ' ? 'FIXED ASSETS' ? ' ' CASE chart = '3' ? ' ' ? 'CURRENT LIABILITIES' ? ' ' CASE chart = '4' ? ' ' ? 'LONG TERM LIABILITIES' ? ' ' CASE chart = '7' ? ' ' ? 'OPERATING EXPENSES' ? ' ' CASE chart = '8' ? ' ' ? 'GENERAL & ADMINISTRATIVE EXPENSES' ? ' ' CASE chart = '9' ? ' ' ? 'FINANCIAL EXPENSES' ? ' ' CASE chart = '0' ? ' ' ? 'TAX EXPENSES' ? ' ' ENDC ENDI NM&nu ? ' ' + mdesc&nu + STR(NM&nu,12,2) STOR f TO full RELE mdesc&nu, MN&nu, N&nu STOR countup1 -1 TO countup1 ENDI countup1 ENDD while &nu ENDI trial DO CASE CASE chart = '1' STOR 0 TO totalit STOR sumup + totalit TO totalit STOR 0 TO sumup CASE chart = '2' ? ' ---------- ' STOR sumup + totalit TO totalit IF totalit < 0 STOR totalit*-1 TO totalit ? ' TOTAL ASSETS (' + STR(totalit,12,2)+')' ELSE ? ' TOTAL ASSETS ' + STR(totalit,12,2) ENDI totalit ? ' ============' ? ' ' STOR 0 TO sumup CASE chart = '3' STOR 0 TO totalit STOR sumup + totalit TO totalit CASE chart = '4' STOR sumup + totalit TO totalit ? ' ---------- ' IF TOTALIT < 0 STOR totalit*-1 TO total1 ELSE STOR totalit TO total1 ENDI ? ' TOTAL LIABIlITIES ' + STR(total1,12,2) ? ' ' STOR 0 TO sumup RELE total1 CASE chart = '5' STOR sumup + totalit + netin TO totalit IF netin >= 0 STOR netin*-1 TO net ? ' Earnings this period ' + STR(NET,12,2) ELSE ? ' Earnings this period (' + STR(NETIN,12,2)+')' ENDI netin ? ' ---------- ' IF totalit > 0 ? ' TOTAL LIABILITIES & CAPITAL (' + STR(totalit,12,2)+')' ELSE ? ' TOTAL LIABILITIES & CAPITAL ' + STR(totalit,12,2) ENDI totalit ? ' ============' EJEC ? ' ' CASE chart = 'B'.OR.chart='C'.OR.chart='D'.OR.chart='E'.OR.chart='F' STOR 0 TO sumup CASE chart = 'G' STOR 0 TO netin STOR sumup + netin TO netin STOR 0 TO sumup CASE chart = 'H'.OR.chart='I'.OR.chart='J' STOR sumup + netin TO netin STOR 0 TO sumup CASE chart = 'K' STOR 0 TO sumup CASE chart = 'L' STOR sumup + netin TO netin IF netin < 0 STOR ' ' TO sp ELSE STOR ' ' TO sp ENDI netin STOR minus*-1 TO minus ? '----------------------------------------------------------------------------' ? ' VALIDATION Debits = '+ STR(plus,12,2)+ ' Credits = '+STR(minus,12,2) ? '----------------------------------------------------------------------------' IF netin <=0 ? ' NET INCOME FOR PERIOD ' +sp+ STR(netin,12,2) ELSE ? ' NET LOSS FOR PERIOD ' +sp+ STR(netin,12,2) ENDIF netin ? '----------------------------------------------------------------------------' ? ' ' EJEC ? ' ' CASE chart = '6' .OR. chart = 'M' STOR 0 TO netin STOR sumup + netin TO netin STOR (sumup*-1) TO sumup IF sumup <> 0 ? ' ---------- ' + STR(SUMUP,12,2) ENDI sumup ? ' ' STOR 0 TO sumup CASE chart = '7' STOR sumup + netin TO netin STOR 0 TO exp STOR sumup + exp to exp IF sumup <> 0 ? ' ---------- ' + STR(SUMUP,12,2) ENDI sumup ? ' ' STOR 0 TO sumup CASE chart = '8' STOR sumup + netin TO netin STOR sumup + exp TO exp IF sumup <> 0 ? ' ---------- ' + STR(SUMUP,12,2) ENDI sumup ? ' ' STOR 0 TO sumup CASE chart = '9' STOR sumup + netin TO netin STOR sumup + exp TO exp STOR sumup TO adjust IF sumup <> 0 ? ' ---------- ' + STR(SUMUP,12,2) ENDI sumup ? ' ' STOR 0 TO sumup CASE chart = '0' STOR sumup + netin TO netin STOR sumup + exp TO exp IF sumup <> 0 ? ' ---------- ' + STR(SUMUP,12,2) ENDI sumup ? ' --------------' ? ' TOTAL ALL EXPENSES ' + STR(exp,12,2) ? ' ------------' IF netin < 0 STOR netin*-1 TO net ? ' NET INCOME FOR PERIOD ' + STR(net,12,2) ? ' ============' ELSE ? " NET INCOME FOR PERIOD $(" + STR(netin,12,2) + ")" ? ' ============' ENDI netin STOR (sumup+netin-adjust) TO adjust IF adjust <> netin IF adjust < 0 STOR adjust*-1 TO adjust ? ' ' ? ' CASH GENERATED FROM OPERATIONS $' + STR(adjust,12,2) ? ' ' ? ' ' ELSE ? ' ' ? ' CASH GENERATED FROM OPERATIONS $(' + STR(adjust,12,2)+ ')' ? ' ' ? ' ' STOR 0 TO sumup ENDI ENDI adjust IF stub SKIP -1 ENDI stub CASE chart = 'X' EJEC ? ' ' STOR f TO wholelist ENDC RELE N1, N2, N3, N4, N5, N6, N7, N8, N9, N10, N11, N12,N13,N14,N15,N16,N17,N18 RELE NM1, NM2, NM3, NM4, NM5, NM6, NM7, NM8, NM9, NM10, NM11, NM12,NM13,NM14 RELE NM15,NM16,NM17,NM18,mdesc1, mdesc2, mdesc3, mdesc4, mdesc5, mdesc6, mdesc7, mdesc8 RELE mdesc9, mdesc10, mdesc11, mdesc12,mdesc13,mdesc14,mdesc15,mdesc16,mdesc17,mdesc18, countup, countup1, full STOR 0 TO countup ENDD while wholelist SET PRINT OFF SET ALTERNATE OFF ERAS CLEA STOR CHR(PEEK(063)) TO dr SELE PRIMARY USE &dr.:account SET INDEX TO &dr.:account REST from coname additive STOR t TO more2 RETU  .