home *** CD-ROM | disk | FTP | other *** search
/ Shareware Overload / ShartewareOverload.cdr / database / manage.zip / STATEMP.PRG < prev    next >
Text File  |  1987-08-16  |  17KB  |  618 lines

  1. **    Last revision: April 6, 1986 at 15:54
  2. * statement printing program
  3. SELE E
  4. USE &dr.:statemnt
  5. STOR 0 TO totalit
  6. STOR 0 TO totalit1
  7. STOR 0 TO netin
  8. GO top
  9. IF nowprint = 'Y'
  10.  GO bottom
  11.  STOR date to daya
  12. ELSE
  13.  STOR '        ' to daya
  14.  @ 15,01 SAY SPACE(75)
  15.  @ 16,01 SAY SPACE(75)
  16.  @ 15,01 SAY '        What is the date of the statement you want to print'
  17.  @ 15,65 GET daya picture '99/99/99'
  18.  READ
  19.  GO TOP
  20.  LOCA for daya = date
  21.  DO WHIL .NOT. EOF()
  22.   IF .NOT. EOF()
  23.    STOR RECNO() TO rec_no
  24.   ENDI .NOT. EOF
  25.   CONT
  26.  ENDD WHILE .NOT. EOF
  27.  IF rec_no = 0
  28.   DO WHIL rec_no = 0
  29.    GO TOP
  30.    @ 15,65 GET daya picture '99/99/99'
  31.    READ
  32.    LOCA for daya = date
  33.    DO WHIL .NOT. EOF()
  34.     IF .NOT. EOF()
  35.      STOR RECNO() TO rec_no
  36.     ENDI .NOT. EOF
  37.     CONT
  38.    ENDD WHILE .NOT. EOF
  39.   ENDD WHILE rec:no = 0
  40.  ENDI rec:no = 0
  41.  IF rec_no <> 0
  42.   GO rec_no
  43.  ENDI rec:no
  44. ENDI nowprint = 'Y'
  45. * RELE nowprint
  46. IF stubs
  47.  STOR .t. TO stub
  48. ELSE
  49.  STOR .f. TO stub
  50. ENDI stubs
  51. @ 15,01 SAY SPACE(75)
  52. @ 16,01 SAY SPACE(75)
  53. @ 15,01 SAY "                   Send Statements to the Printer (Y/N)"
  54. @ 15,60 GET printer PICTURE '!'
  55. READ
  56. @ 16,01 SAY "                   Send Statements to a Disk File (Y/N)"
  57. @ 16,60 GET disk PICTURE '!'
  58. READ
  59. STOR LEN(dconame)/2  TO L
  60. STOR 40-L TO L
  61. STOR '                                        ' TO bl
  62. STOR SUBSTR(bl,1,L) + dconame TO coname1
  63. IF disk ='Y'
  64.  @ 18,01 SAY "                   Enter Disk File Name "
  65.  @ 18,44 GET filename PICTURE '!!!!!!!!'
  66.  @ 18,54 SAY "(.TXT will be added )"
  67.  READ
  68.  STOR 'A' to dr1
  69.  @ 19,01 SAY '                   Select drive to put Files on'
  70.  @ 19,54 GET dr1 PICTURE '!'
  71.  READ
  72.  DO WHIL AT(dr1,'ABCD') = 0
  73.   @ 19,54 GET dr1 PICTURE '!'
  74.   READ
  75.  ENDD while @
  76. ENDI disk = Y
  77. @ 15,01 SAY SPACE(75)
  78. @ 16,01 SAY SPACE(75)
  79. @ 17,01 SAY SPACE(75)
  80. @ 18,01 SAY SPACE(75)
  81. @ 19,01 SAY SPACE(75)
  82. IF printer = 'Y'
  83.  @ 16,01 SAY "                        MAKE PRINTER READY AND HIT ANY KEY"
  84.  SET CONSOLE OFF
  85.  WAIT
  86.  SET CONSOLE ON
  87.  CLEA
  88.  @ 10,20 SAY 'Calculating........................................'
  89.  @ 12,00 SAY ' '
  90.  SET print ON
  91. ELSE
  92.  CLEA
  93.  @ 10,20 SAY 'Calculating........................................'
  94.  @ 12,00 SAY ' '
  95. ENDI printer = Y
  96. IF disk = 'Y' .AND. filename <> ' '
  97. * make a proper REPORT file name that is of type TXT
  98.  STOR AT('.',filename) TO length
  99.  IF length = 0 .OR. length > 8
  100.   STOR 9 TO length
  101.  ENDI length
  102.  STOR SUBSTR(filename,1,length-1) TO filename
  103.  STOR '&dr1.:'+filename+'.TXT' TO filename
  104. * RELE dr1
  105.  SET ALTERNATE TO &filename
  106.  SET ALTERNATE ON
  107. ELSE
  108. * RELE filename
  109. ENDI disk = Y and filename <> ''
  110. IF SUBSTR(daya,4,1) = '0'
  111.  STOR SUBSTR(daya,5,1) TO date2
  112. ELSE
  113.  STOR SUBSTR(daya,4,2) TO date2
  114. ENDI
  115. STOR fyr TO mfyr
  116. IF mfyr < SUBSTR(daya,1,2)
  117.  STOR VAL(fyr)+12 TO mfyr1
  118. ELSE
  119.  STOR VAL(mfyr) TO mfyr1
  120. ENDI mfyr
  121. STOR mfyr1 - VAL(SUBSTR(daya,1,2)) TO mfyr1
  122. STOR mfyr1 + 100 TO mfyr1
  123. STOR STR(mfyr1,3) TO mfyr2
  124. STOR SUBSTR(mfyr2,2,2) TO mfyr
  125. DO CASE
  126. CASE mfyr = '01'
  127.  STOR 'One month ending ' TO date3
  128. CASE mfyr = '02'
  129.  STOR 'Two months ending ' TO date3
  130. CASE mfyr = '03'
  131.  STOR 'Three months ending ' TO date3
  132. CASE mfyr = '04'
  133.  STOR 'Four months ending ' TO date3
  134. CASE mfyr = '05'
  135.  STOR 'Five months ending ' TO date3
  136. CASE mfyr = '06'
  137.  STOR 'Six months ending ' TO date3
  138. CASE mfyr = '07'
  139.  STOR 'Seven months ending ' TO date3
  140. CASE mfyr = '08'
  141.  STOR 'Eight months ending ' TO date3
  142. CASE mfyr = '09'
  143.  STOR 'Nine months ending ' TO date3
  144. CASE mfyr = '10'
  145.  STOR 'Ten months ending ' TO date3
  146. CASE mfyr = '11'
  147.  STOR 'Eleven months ending ' TO date3
  148. CASE mfyr = '12'
  149.  STOR 'Twelve months ending ' TO date3
  150. ENDC
  151. DO CASE
  152. CASE SUBSTR(daya,1,2) = '01'
  153.  STOR 'January ' + date2 + ', 19' + SUBSTR(daya,7,2) TO date1
  154. CASE SUBSTR(daya,1,2) = '02'
  155.  STOR 'February ' + date2 + ', 19' + SUBSTR(daya,7,2) TO date1
  156. CASE SUBSTR(daya,1,2) = '03'
  157.  STOR 'March ' + date2 + ', 19' + SUBSTR(daya,7,2) TO date1
  158. CASE SUBSTR(daya,1,2) = '04'
  159.  STOR 'April ' + date2 + ', 19' + SUBSTR(daya,7,2) TO date1
  160. CASE SUBSTR(daya,1,2) = '05'
  161.  STOR 'May ' + date2 + ', 19' + SUBSTR(daya,7,2) TO date1
  162. CASE SUBSTR(daya,1,2) = '06'
  163.  STOR 'June ' + date2 + ', 19' + SUBSTR(daya,7,2) TO date1
  164. CASE SUBSTR(daya,1,2) = '07'
  165.  STOR 'July ' + date2 + ', 19' + SUBSTR(daya,7,2) TO date1
  166. CASE SUBSTR(daya,1,2) = '08'
  167.  STOR 'August ' + date2 + ', 19' + SUBSTR(daya,7,2) TO date1
  168. CASE SUBSTR(daya,1,2) = '09'
  169.  STOR 'September ' + date2 + ', 19' + SUBSTR(daya,7,2) TO date1
  170. CASE SUBSTR(daya,1,2) = '10'
  171.  STOR 'October ' + date2 + ', 19' + SUBSTR(daya,7,2) TO date1
  172. CASE SUBSTR(daya,1,2) = '11'
  173.  STOR 'November ' + date2 + ', 19' + SUBSTR(daya,7,2) TO date1
  174. CASE SUBSTR(daya,1,2) = '12'
  175.  STOR 'December ' + date2 + ', 19' + SUBSTR(daya,7,2) TO date1
  176. ENDC
  177. STOR TRIM(date1) TO date1
  178. STOR TRIM(date3+date1) TO date3
  179. STOR LEN(date3)/2  TO L
  180. STOR 40-L TO L
  181. STOR '                                        ' TO bl
  182. STOR SUBSTR(bl,1,L) + date3 TO date3
  183. STOR LEN(date1)/2  TO L
  184. STOR 40-L TO L
  185. STOR '                                        ' TO bl
  186. STOR SUBSTR(bl,1,L) + date1 TO date1
  187. * RELE L, bl, daya, date2, printer, disk,mfyr, mcyr, mfyr1, mfyr2
  188. STOR .t. TO wholelist
  189. STOR 1 to count
  190. IF com1 = 'C'
  191.  STOR 'BCDEFGHIJKL' TO plan
  192.  STOR .t. TO trial
  193. ELSE
  194.  STOR '6789A012345' TO plan
  195.  STOR .f. TO trial
  196. ENDI com1
  197. STOR 0 TO plus
  198. STOR 0 TO minus
  199. DO WHIL WHOLELIST
  200.  SELE E
  201.  USE &dr.:statemnt
  202.  GO rec_no
  203.  STOR SUBSTR(plan,(count),1) TO char
  204.  DO CASE
  205.  CASE char = '1'.OR. char = 'B'
  206.   STOR code1 TO mcode
  207.   STOR count + 1 TO count
  208.  CASE char = '2' .OR. char = 'C'
  209.   STOR code2 TO mcode
  210.   STOR count + 1 TO count
  211.  CASE char = '3'.OR. char = 'D'
  212.   STOR code3 TO mcode
  213.   STOR count + 1 TO count
  214.  CASE char = '4' .OR. char = 'E'
  215.   STOR code4 TO mcode
  216.   STOR count + 1 TO count
  217.  CASE char = '5'
  218.   STOR code5 TO mcode
  219.   IF .NOT. stub
  220.    STOR .f. TO wholelist
  221.   ELSE
  222.    STOR 'M789A0X' TO plan
  223.    STOR 1 TO count
  224.   ENDI
  225.  CASE char = 'X'
  226.   STOR .f. TO wholelist
  227.  CASE char = 'F'
  228.   STOR code5 TO mcode
  229.   STOR count+1  TO count
  230.  CASE char = '6' .OR. char = 'G' .OR. char = 'M'
  231.   STOR code6 TO mcode
  232.   STOR count + 1 TO count
  233.  CASE char = '7' .OR. char = 'H'
  234.   STOR code7 TO mcode
  235.   STOR count + 1 TO count
  236.  CASE char = '8' .OR. char = 'I'
  237.   STOR code8 TO mcode
  238.   STOR count + 1 TO count
  239.  CASE char = '9' .OR. char = 'J'
  240.   STOR code9 TO mcode
  241.   STOR count + 1 TO count
  242.  CASE char = '0' .OR. char = 'K'
  243.   STOR code0 TO mcode
  244.   STOR count + 1 TO count
  245.  CASE char = 'A'
  246.   STOR codea TO mcode
  247.   STOR count + 1 TO count
  248.  CASE char = 'L'
  249.   STOR codea TO mcode
  250.   STOR .f. TO wholelist
  251.  ENDC
  252.  STOR ',' TO C
  253.  STOR 1 TO X
  254.  STOR 1 TO Y
  255.  STOR AT(C,SUBSTR(mcode,x)) TO y
  256.  STOR .t. TO more
  257.  STOR 0 TO countup
  258.  STOR '0' TO nu
  259.  DO WHIL more
  260.   IF Y > 0
  261.    IF VAL(nu) <9
  262.     STOR STR(VAL(SUBSTR(nu,1,1))+1,1) TO nu
  263.    ELSE
  264.     STOR STR(VAL(SUBSTR(nu,1,2))+1,2) TO nu
  265.    ENDI VAL(nu)
  266.    STOR X + Y TO X
  267.    STOR AT(C,SUBSTR(mcode,x)) TO y
  268.    STOR SUBSTR(mcode,x,y-1) TO N&nu
  269.    STOR X + Y TO X
  270.    STOR AT(C,SUBSTR(mcode,x)) TO y
  271.    STOR (VAL(SUBSTR(mcode,x,y-1))*1.00) TO NM&nu
  272.    STOR countup + 1 TO countup
  273.   ELSE
  274.    STOR .f. TO more
  275.   ENDI Y > 0
  276.  ENDD WHILE more
  277.  STOR VAL(nu) TO last
  278.  STOR 0 TO sumup
  279.  STOR countup-1 to countup
  280.  STOR countup to countup1
  281.  SELE D
  282.  USE &dr.:chart
  283.  STOR '0' TO nu
  284.  DO WHIL val(nu)  < last-1
  285.  ** here comes trouble
  286.   IF countup > 0
  287.    IF VAL(nu) <9
  288.     STOR STR(VAL(SUBSTR(nu,1,1))+1,1) TO nu
  289.    ELSE
  290.     STOR STR(VAL(SUBSTR(nu,1,2))+1,2) TO nu
  291.    ENDI VAL(nu)
  292.    LOCA FOR N&nu= acctno
  293.    IF comm = 'A' .OR. comm = 'C'
  294.     STOR N&nu + '  ' + desc TO mdesc&nu
  295.    ELSE
  296.     STOR desc TO mdesc&nu
  297.    ENDI comm
  298.   * RELE N&nu
  299.    STOR sumup + NM&nu TO sumup
  300.    STOR countup -1 TO countup
  301.    else
  302.    stor last-1 to last
  303.   ENDI countup
  304.  ENDD WHILE &nu
  305.  DO CASE
  306.   CLEA
  307.  CASE char = 'B'
  308.   ? ' '
  309.   ? coname1
  310.   ? '                                 TRIAL BALANCE'
  311.   ? date1
  312.   ? ' '
  313.   ? '----------------------------------------------------------------------------'
  314.   ? 'Acct #    Description                                        Debit     Credit'
  315.   ? '----------------------------------------------------------------------------'
  316.  CASE char = '1'
  317.   IF printer = 'Y'
  318.    EJEC
  319.    SET PRINT OFF
  320.   ELSE
  321.    ? CHR(12)
  322.   ENDI printer
  323.   ? ' '
  324.   ? coname1
  325.   ? '                                 BALANCE SHEET'
  326.   ? date1
  327.   ? ' '
  328.   ? ' '
  329.   ? 'ASSETS '
  330.   ? ' '
  331.  CASE char = '3'
  332.   ? ' '
  333.   ? 'LIABILITIES AND CAPITAL'
  334.   ? ' '
  335.  CASE char = '5'
  336.   ? ' '
  337.   ? 'CAPITAL'
  338.   ? ' '
  339.  CASE char = '6' .OR. char = 'M'
  340.   ? ' '
  341.   ? coname1
  342.   ? '                           PROFIT AND LOSS STATEMENT'
  343.   IF char = '6'
  344.    ? date3
  345.   * RELE date3
  346.   ELSE
  347.    ? '                                ONE MONTH ENDING '
  348.    ? date1
  349.   ENDI char = '6'
  350.   ? ' '
  351.   ? 'INCOME'
  352.   ? ' '
  353.  ENDC
  354.  STOR '0' TO nu
  355.  IF trial
  356.   IF char='B'.OR.char='C'.OR.char='D'.OR.char='E'.OR.char='F';
  357.    .OR.char='G'.OR.char='H'.OR.char='I'.OR.char='J'.OR.;
  358.    char='K'.OR.char='L'
  359.    DO WHIL VAL(nu) < last-1
  360.     IF countup1 > 0
  361.      IF VAL(nu) <9
  362.       STOR STR(VAL(SUBSTR(nu,1,1))+1,1) TO nu
  363.      ELSE
  364.       STOR STR(VAL(SUBSTR(nu,1,2))+1,2) TO nu
  365.      ENDI VAL(nu)
  366.      IF NM&nu< 0
  367.       STOR '            ' TO sp
  368.       STOR minus + NM&nu TO minus
  369.      ELSE
  370.       STOR '  ' TO sp
  371.       STOR plus + NM&nu TO plus
  372.      ENDI NM
  373.      ? '  ' + mdesc&nu + sp+ STR(NM&nu,12,2)
  374.    *  RELE N&nu, mdesc&nu, NM&nu, sp
  375.      STOR countup1 -1 TO countup1
  376.     ENDI countup1
  377.    ENDD WHILE &nu
  378.   ENDI char
  379.  ELSE
  380.   STOR .t. TO full
  381.   DO WHIL VAL(nu)  < last-1
  382.    IF countup1 > 0
  383.     IF VAL(nu) <9
  384.      STOR STR(VAL(SUBSTR(nu,1,1))+1,1) TO nu
  385.     ELSE
  386.      STOR STR(VAL(SUBSTR(nu,1,2))+1,2) TO nu
  387.     ENDI VAL(nu)
  388.     IF NM&nu < 0 .AND. char <> '1'
  389.      STOR (NM&nu*-1) TO NM&nu
  390.     ENDI NM
  391.     IF full .AND. NM&nu <> 0
  392.      DO CASE
  393.      CASE char = '1'
  394.       ? 'CURRENT ASSETS '
  395.       ? ' '
  396.      CASE char = '2'
  397.       ? ' '
  398.       ? 'FIXED ASSETS'
  399.       ? ' '
  400.      CASE char = '3'
  401.       ? ' '
  402.       ? 'CURRENT LIABILITIES'
  403.       ? ' '
  404.      CASE char = '4'
  405.       ? ' '
  406.       ? 'LONG TERM LIABILITIES'
  407.       ? ' '
  408.      CASE char = '7'
  409.       ? ' '
  410.       ? 'OPERATING EXPENSES'
  411.       ? ' '
  412.      CASE char = '8'
  413.       ? ' '
  414.       ? 'GENERAL & ADMINISTRATIVE EXPENSES'
  415.       ? ' '
  416.      CASE char = '9'
  417.       ? ' '
  418.       ? 'FINANCIAL EXPENSES'
  419.       ? ' '
  420.      CASE char = '0'
  421.       ? ' '
  422.       ? 'TAX EXPENSES'
  423.       ? ' '
  424.      ENDC
  425.     ENDI NM&nu
  426.     ? '      ' + mdesc&nu + STR(NM&nu,12,2)
  427.     STOR .f. TO full
  428.     * RELE mdesc&nu, MN&nu, N&nu
  429.     STOR countup1 -1 TO countup1
  430.    ENDI countup1
  431.   ENDD while &nu
  432.  ENDI trial
  433.  DO CASE
  434.  CASE char = '1'
  435.   STOR 0 TO totalit
  436.   STOR sumup + totalit TO totalit
  437.   STOR 0 TO sumup
  438.  CASE char = '2'
  439.   ? '                                                     ----------  '
  440.   STOR sumup + totalit TO totalit
  441.   IF totalit < 0
  442.    STOR totalit*-1 TO totalit
  443.    ? '         TOTAL ASSETS                                           (' + STR(totalit,12,2)+')'
  444.   ELSE
  445.    ? '         TOTAL ASSETS                                            ' + STR(totalit,12,2)
  446.   ENDI totalit
  447.   ? '                                                                  ============'
  448.   ? ' '
  449.   STOR 0 TO sumup
  450.  CASE char = '3'
  451.   STOR 0 TO totalit
  452.   STOR sumup + totalit TO totalit
  453.  CASE char = '4'
  454.   STOR sumup + totalit TO totalit
  455.   ? '                                                     ----------  '
  456.   IF TOTALIT < 0
  457.    STOR totalit*-1 TO total1
  458.   ELSE
  459.    STOR totalit TO total1
  460.   ENDI
  461.   ? '        TOTAL LIABIlITIES                                        ' + STR(total1,12,2)
  462.   ? ' '
  463.   STOR 0 TO sumup
  464.  * RELE total1
  465.  CASE char = '5'
  466.   STOR sumup + totalit + netin TO totalit
  467.   IF netin >= 0
  468.    STOR netin*-1 TO net
  469.    ? '      Earnings this period                         ' + STR(NET,12,2)
  470.   ELSE
  471.    ? '      Earnings this period                        (' + STR(NETIN,12,2)+')'
  472.   ENDI netin
  473.   ? '                                                     ----------  '
  474.   IF totalit > 0
  475.    ? '        TOTAL LIABILITIES & CAPITAL                             (' + STR(totalit,12,2)+')'
  476.   ELSE
  477.    ? '        TOTAL LIABILITIES & CAPITAL                              ' + STR(totalit,12,2)
  478.   ENDI totalit
  479.   ? '                                                                  ============'
  480.   IF printer = 'Y'
  481.    EJEC
  482.    SET PRINT OFF
  483.   ELSE
  484.    ? CHR(12)
  485.   ENDI printer
  486.   ? ' '
  487.  CASE char = 'B'.OR.char='C'.OR.char='D'.OR.char='E'.OR.char='F'
  488.   STOR 0 TO sumup
  489.  CASE char = 'G'
  490.   STOR 0 TO netin
  491.   STOR sumup + netin TO netin
  492.   STOR 0 TO sumup
  493.  CASE char = 'H'.OR.char='I'.OR.char='J'
  494.   STOR sumup + netin TO netin
  495.   STOR 0 TO sumup
  496.  CASE char = 'K'
  497.   STOR 0 TO sumup
  498.  CASE char = 'L'
  499.   STOR sumup + netin TO netin
  500.   IF netin < 0
  501.    STOR '            ' TO sp
  502.   ELSE
  503.    STOR '  ' TO sp
  504.   ENDI netin
  505.   STOR minus*-1 TO minus
  506.   ? '----------------------------------------------------------------------------'
  507.   ? '   VALIDATION   Debits = '+ STR(plus,12,2)+ ' Credits = '+STR(minus,12,2)
  508.   ? '----------------------------------------------------------------------------'
  509.   IF netin <=0
  510.    ? '        NET INCOME FOR PERIOD                        ' +sp+ STR(netin,12,2)
  511.   ELSE
  512.    ? '        NET LOSS FOR PERIOD                          ' +sp+ STR(netin,12,2)
  513.   ENDI netin
  514.   ? '----------------------------------------------------------------------------'
  515.   ? ' '
  516.   IF printer = 'Y'
  517.    EJEC
  518.    SET PRINT OFF
  519.   ELSE
  520.    ? CHR(12)
  521.   ENDI printer
  522.   ? ' '
  523.  CASE char = '6' .OR. char = 'M'
  524.   STOR 0 TO netin
  525.   STOR sumup + netin TO netin
  526.   STOR (sumup*-1) TO sumup
  527.   IF sumup <> 0
  528.    ? '                                                     ----------  ' + STR(SUMUP,12,2)
  529.   ENDI sumup
  530.   ? ' '
  531.   STOR 0 TO sumup
  532.  CASE char = '7'
  533.   STOR sumup + netin TO netin
  534.   STOR 0 TO exp
  535.   STOR sumup + exp to exp
  536.   IF sumup <> 0
  537.    ? '                                                     ----------  ' + STR(SUMUP,12,2)
  538.   ENDI sumup
  539.   ? ' '
  540.   STOR 0 TO sumup
  541.  CASE char = '8'
  542.   STOR sumup + netin TO netin
  543.   STOR sumup + exp TO exp
  544.   IF sumup <> 0
  545.    ? '                                                     ----------  ' + STR(SUMUP,12,2)
  546.   ENDI sumup
  547.   ? ' '
  548.   STOR 0 TO sumup
  549.  CASE char = '9'
  550.   STOR sumup + netin TO netin
  551.   STOR sumup + exp TO exp
  552.   STOR sumup TO adjust
  553.   IF sumup <> 0
  554.    ? '                                                     ----------  ' + STR(SUMUP,12,2)
  555.   ENDI sumup
  556.   ? ' '
  557.   STOR 0 TO sumup
  558.  CASE char = '0'
  559.   STOR sumup + netin TO netin
  560.   STOR sumup + exp TO exp
  561.   IF sumup <> 0
  562.    ? '                                                     ----------  ' + STR(SUMUP,12,2)
  563.   ENDI sumup
  564.   ? '                                                                --------------'
  565.   ? '               TOTAL ALL EXPENSES                                ' + STR(exp,12,2)
  566.   ? '                                                                  ------------'
  567.   IF netin < 0
  568.    STOR netin*-1 TO net
  569.    ? '               NET INCOME FOR PERIOD                             ' + STR(net,12,2)
  570.    ? '                                                                  ============'
  571.   ELSE
  572.    ? "               NET INCOME FOR PERIOD                           $(" + STR(netin,12,2) + ")"
  573.    ? '                                                                  ============'
  574.   ENDI netin
  575.   STOR (sumup+netin-adjust) TO adjust
  576.   IF adjust <> netin
  577.    IF adjust < 0
  578.     STOR adjust*-1 TO adjust
  579.     ? ' '
  580.     ? '               CASH GENERATED FROM OPERATIONS                   $' + STR(adjust,12,2)
  581.     ? '  '
  582.     ? '  '
  583.    ELSE
  584.     ? ' '
  585.     ? '               CASH GENERATED FROM OPERATIONS                  $(' + STR(adjust,12,2)+ ')'
  586.     ? '  '
  587.     ? '  '
  588.     STOR 0 TO sumup
  589.    ENDI
  590.   ENDI adjust
  591.   IF stub
  592.    SKIP -1
  593.   ENDI stub
  594.  CASE char = 'X'
  595.   IF printer = 'Y'
  596.    EJEC
  597.    SET PRINT OFF
  598.   ELSE
  599.    ? CHR(12)
  600.   ENDI printer
  601.   ? ' '
  602.   STOR .f. TO wholelist
  603.  ENDC
  604. * RELE N1, N2, N3, N4, N5, N6, N7, N8, N9, N10, N11, N12,N13,N14,N15,N16,N17,N18
  605. * RELE NM1, NM2, NM3, NM4, NM5, NM6, NM7, NM8, NM9, NM10, NM11, NM12,NM13,NM14
  606. * RELE NM15,NM16,NM17,NM18,mdesc1, mdesc2, mdesc3, mdesc4, mdesc5, mdesc6, mdesc7, mdesc8
  607. * RELE mdesc9, mdesc10, mdesc11, mdesc12,mdesc13,mdesc14,mdesc15,mdesc16,mdesc17,mdesc18, countup, countup1, full
  608.  STOR 0 TO countup
  609. ENDD while wholelist
  610. SET PRINT OFF
  611. SET ALTERNATE OFF
  612. CLEA
  613. SELE C
  614. USE &dr.:account
  615. SET INDEX TO account
  616. RETU
  617. 
  618.