35 ' Remarks program for CASHACC                     6/19/82
36 ' MERGE this program with CASHACC for a complete listing.
37 ' This program is designed for IBM monitor and EPSON/IBM printer.
38 ' Change line 110 of CASHACC to B=7 for Color/Graphics.
40 '********** VARIABLES *******************
42 ' The first character indicates the type;
43 ' S - string: I,C,F,B - integer: A - single precision: D - double precision
50 ' ******* VARIABLE LIST ****************
51 ' DATE:
52 '    SCDATE - Current date
53 '    SDDATE - Data date
54 ' ACCOUNTS:
55 '    AAC1( ) - Account #
56 '    SAC2( ) - Account name
57 '    DAC3( ) - Account, period balance
58 '    DAC4( ) - Account, period balance
59 '    IACN - Current number of accounts
60 '    IALI - Array location of first liability account
61 '    IAIN - Array location of first income account
62 '    IAEX - Array location of first expense account
63 '    CA - Maximum number of accounts allowed
64 '    DTOTMO - Sum of accounting period balance for accounts reported
65 '    DTOTYTD - Sum of current balances for accounts reported
66 '    DBAL - Temporary checking account balance
70 ' TRANSACTIONS:
71 '    SEN1( ) - Transaction code; Checks-#, Deposits-D + opt. #, Cash-C+/C-, Information-I, Adjustments-A+/A-
72 '    SEN2( ) - Transaction date
73 '    SEN3( ) - Transaction description
74 '    DEN4( ) - Transaction amount
75 '    AEN5( ) - Transaction account number
76 '    IENN - Current number of transactions
77 '    CE - Maximum number of transaction allowed
80 ' FLAGS:
81 '    FL,FL1,FL2,FL3,FL4,FT - General flags
82 '    FD - Data flag; 0-not in memory, 1-data in memory
85 ' COUNTERS, POINTERS, INDEXING
86 '    C,CT,CA,CF,CE,CP,CI,CS - General usage
87 '    CLT - Maximum lines of data per page or screen
88 '    CL - Cuirrent # of data lines
89 '    C1,C2 - First, last account to report
90 '    SC1,SC2 - Low, high account to report
91 '    IR - Cursor row;       IH - Header row
92 ' OTHER:
93 '    ST,S, A, D - General string, single precision, or double precision input
94 '    B - Bottom of cursor;    I,IT - General integer storage
95 '    A,AT - Account referencing;   SF,SA - Accounting period name
96 '    SH - Header string;   SC - Column head string
97 '    SP - String to print;   ST - Name of account range selected
300 REM DISPLAY MAIN MENU AND SELECT OPTION
301 ' This is the executive program. The main menu is displayed and then the
302 ' available memory is checked and displayed. One of the options may then
303 ' be selected by typing the number of the option desired.
500 REM INITIALIZE PROGRAM
501 ' This subroutine is used the first time the program is run. Information is
502 ' displayed about the CHECKBOOK and PETTY CASH accounts and then initial
503 ' balances may be entered for these accounts.
1000 REM ADD, EDIT OR PRINT ACCOUNTS SUBROUTINE
1001 ' This option is used to add initial accounts or addition accounts, edit
1002 ' accounts that are in memory, or print a condensed list of accounts that
1003 ' are currently in memory. The subroutines are menu driven and this option
1004 ' may be used at anytime.
1200 REM ADD ACCOUNTS SUBROUTINE
1201 ' This subroutine is used to add accounts. The range of accounts numbers to
1202 ' use is displayed at the bottom of the screen. To create a subaccount, add
1203 ' one decimal place to the main account number. After a number is entered,
1204 ' it is checked against existing numbers. If the number does not exist, the
1205 ' account name is then entered and then an initial balance is entered.
1206 ' Input continues until a "E" or "e" is entered for the account number.
1400 REM EDIT ACCOUNTS SUBROUTINE
1401 ' This subroutine is used to edit current accounts. After the account
1402 ' number is entered, current information is displayed. If it is the account
1403 ' desired, then it is edited by retyping all of the account information. If
1405 ' a new number is entered, the old account is deleted. An account may also be
1406 ' deleted by re-entering the same number and then only hit ENTER when the name
1407 ' is requested.
1600 REM PRINT CHART OF ACCOUNTS SUBROUTINE
1601 ' This subroutine is designed to work with the Epson or IBM printers. First
1602 ' a code is sent to condense the print and then a list is printed that gives
1603 ' the accounts numbers and names. This list can then be used when the program
1604 ' is running as a reference of the accounts in memory.
2000 REM ENTER OR EDIT TRANSACTIONS SUBROUTINE
2001 ' This option is used to enter new transactions or edit transactim$s that are
2002 ' in memory. These transactioNs are distinquished by a code and include;
2003 ' che1!?	???????	?3???!???????????????	?8???????8?????????????????	?    >I>">3)1????Q??????????????????????????4(???????????????????????????????????????????????N|dB| @N||ake corrections.
2200 REM ENTER TRANSACTIONS SUBROUTINE
2201 ' This subroutine is us%d to enter transaction information wj$?????????????	??X@??????X@???@???????@F\@???@?????????@??@??@?????dd`f@N@???@??@???@????????????@???@????@???@???????@???@??????@???@???@??@??????dd`h@N@??????@???????@????????@???@????????\@????t@???@?????@????@???????@????@??dd`j@N@????????@????@??????@???@???????@???@???????@??@????@???????\dj``@???@????@????????@???????????@??????????dj`b@N@??dit transactim$s that are
2002 ' in memory. These transactioNs are distinquished by a code and include;
2003 ' che1!?	???????	?3???!???????????????	?8???????8?????????????????	?    >I>">3)1????Q??????????????????????????4(???????????????????????????????????????????????N|dB| @N||ge. If a range is selected a name may be entered for the range
3203 ' of accounts. The balances of any accounts with subaccounts are summed at
3204 ' this time and totals are printed for the complete range that is listed.
3500 REM REPORT TRANSACTIONS SUBROUTINE
3501 ' This subroutine is used to report transactioNs by type or all transactions.
4000 REM START NEW ACCOUNTING PERIOD SUBROUTINE
4001 ' This option will erase any transactions entries that are in memory and
4002 ' will set account period baldit transactim$s that are
2002 ' in memory. These transactioNs are distinquished by a code and include;
2003 ' che1!?	???????	?3???!???????????????	?8???????8?????????????????	?    >I>">3)1????Q??????????????????????????4(???????????????????????????????????????????????N|dB| @N||ay be s%lected by itself
8002 ' or may be selected by other optioNs if data is needed in memory. Data is
8003 ' saved as account(ACC) files and transaction(ENT) files but only the accounting
8004 ' period name is used to select data to load. Data files are listed on tHe
8005 ' screen for selection. While data is loading the date of the data is displayed.
8006 ' This date is the last time new accounts or transactions were added or when
8007 ' editing was done.
8200 REM DATA OUTPUT SUBROUTINE
8201 ' Tdit transactim$s that are
2002 ' in memory. These transactioNs are distinquished by a code and include;
2003 ' che1!?	???????	?3???!???????????????	?8???????8?????????????????	?    >I>">3)1????Q??????????????????????????4(???????????????????????????????????????????????N|dB| @N||