* BALS.CMD - Balance Sheet * STORE TRIM(TITLE) TO MTITLE ERASE @ 1,10 SAY TMARK + " " + CNAME SET INTE OFF @ 3,10 SAY MTITLE SET INTE ON STORE 5 TO ROW STORE " " TO EDATE @ 5,10 SAY "You may print this report as of a certain date. Transactions" @ 6,10 SAY "dated after this date will not be included. Enter date as (MM/DD/YY)" @ 7,10 SAY "or just a RETURN if you do not wish to limit the report. " ; GET EDATE PICTURE "99/99/99" READ IF EDATE = " / / " STORE "99/99/99" TO TDATE ELSE STORE $(EDATE,7,2) + $(EDATE,1,5) TO TDATE ENDIF STORE " " TO HEADING @ 9,10 SAY "You may now enter a report heading for later identification." @ 10,10 SAY "RETURN only for no heading. " GET HEADING READ @ 12,10 SAY "Please ensure that your printer is ready to print." STORE " " TO READY @ 13,10 SAY "Enter (P)rint or (Q)uit followed by RETURN " GET READY READ IF !(READY) = "Q" RETURN ENDIF @ 16,10 SAY "Your report is now printing!" SELECT SECONDARY USE DATRAN INDEX DATRAN1 SELECT PRIMARY USE DAACCT INDEX DAACCT1 STORE 0.00 TO TOT:MAJ STORE 0.00 TO TOT:MIN SET FORMAT TO PRINT STORE 66 TO ROW STORE "ASSETS" TO ATITLE STORE " " TO OLD:TYPE DO WHILE .NOT. EOF IF ROW > 56 EJECT @ 1,25 SAY CNAME @ 2,25 SAY MTITLE @ 4,25 SAY HEADING @ 6,25 SAY ATITLE STORE 7 TO ROW ENDIF IF ACCT:TYPE <> OLD:TYPE IF OLD:TYPE <> " " STORE ROW + 1 TO ROW @ ROW,16 SAY "Total " + OLD:TYPE IF ATITLE = "ASSETS" @ ROW,63 SAY TOT:MIN USING ' 999,999,999.99' ELSE @ ROW,63 SAY (TOT:MIN * -1) USING ' 999,999,999.99' ENDIF STORE TOT:MAJ + TOT:MIN TO TOT:MAJ STORE 0.00 TO TOT:MIN IF ACCT:NUMB > LASTASSET .AND. ATITLE = "ASSETS" STORE ROW + 2 TO ROW @ ROW,68 SAY "-----------" STORE ROW +1 TO ROW @ ROW,16 SAY "TOTAL ASSETS" @ ROW,63 SAY TOT:MAJ USING ' 999,999,999.99' STORE ROW + 1 TO ROW @ ROW,68 SAY "===========" STORE "LIABILITIES AND CAPITAL " TO ATITLE STORE 0.00 TO TOT:MAJ IF ROW > 44 EJECT @ 1,25 SAY CNAME @ 2,25 SAY MTITLE @ 4,25 SAY HEADING @ 6,25 SAY ATITLE STORE 7 TO ROW ELSE STORE ROW + 3 TO ROW @ ROW,25 SAY ATITLE ENDIF ENDIF IF ACCT:NUMB >= FIRSTINC .AND. ATITLE = "LIAB" STORE ROW + 2 TO ROW @ ROW,68 SAY "-----------" STORE ROW +1 TO ROW @ ROW,16 SAY "TOTAL LIABILITIES AND CAPITAL " @ ROW,63 SAY (TOT:MAJ * -1) USING ' 999,999,999.99' STORE ROW + 1 TO ROW @ ROW,68 SAY "===========" GO BOTTOM SKIP LOOP ENDIF ENDIF STORE ACCT:TYPE TO OLD:TYPE STORE ROW + 2 TO ROW IF ROW > 50 EJECT @ 1,25 SAY CNAME @ 2,25 SAY MTITLE @ 4,25 SAY HEADING @ 6,25 SAY ATITLE STORE 7 TO ROW ENDIF @ ROW,8 SAY OLD:TYPE ENDIF STORE ACCT:NUMB TO ACCT STORE ROW + 1 TO ROW @ ROW,12 SAY ACCT:NAME STORE AMOUNT TO EBAL SELECT SECONDARY FIND &ACCT IF # = 0 ELSE DO WHILE ACCT:NUMB = ACCT .AND. .NOT. EOF IF $(PDATE,7,2) + $(PDATE,1,5) > TDATE SKIP LOOP ENDIF STORE EBAL + AMOUNT TO EBAL SKIP ENDDO ENDIF IF ATITLE = "ASSETS" @ ROW,45 SAY EBAL USING ' 999,999,999.99' ELSE @ ROW,45 SAY (EBAL * -1) USING ' 999,999,999.99' ENDIF STORE TOT:MIN + EBAL TO TOT:MIN SELECT PRIMARY SKIP ENDDO EOF EJECT SET FORMAT TO SCREEN RETURN QR RVCSARUM $SAR2%SAR3&SAR4'SAR5(SAR6o SAY (EBAL * -1) USING ' 999,999,999.99' ENDIF STORE TOT:MIN + EBAL TO TOT:MIN SELECT PRIMARY SKIP ENDDO EOF EJECT SET FORMAT TO SCREEN RETURN QR RVCSARUM $SAR2%SAR3&SAR4'SAR5(SAR6oELSE STORE $(EDATE,7,2) + $(EDATE,1,5) TO TDATE ENDIF STORE " " TO HEADING @ 9,10 SAY "You may now enter a report heading for later identification." @ 10,10 SAY "RETURN only for no heading. " GET HEADING READ @ 12,10 SAY "Please ensure that your printer is ready to print." STORE " " TO READY @ 13,10 SAY "Enter (P)rint or (Q)uit followed by RETURN " GET READY READ IF !(READY) = "Q" RETURN ENDIF @ 16,10 SAY "Your report is now printing!" SELECT SEC