home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / cpm / database / ledgers.lbr / LRDYTD.CZD / LRDYTD.CMD
OS/2 REXX Batch file  |  1987-05-10  |  3KB  |  127 lines

  1.  
  2. NOTE * Program...: LRDYTD.CMD
  3. NOTE * Version...: 2.0
  4. NOTE * Author....: Terry Hazen
  5. NOTE * Date......: 12/06/85
  6. NOTE * Notice....: Copyright (c) 1985,  n/SYSTEMS
  7. IF 'A'$rn2
  8. SELECT PRIMARY
  9. SET INDEX TO ndx1
  10. SELECT SECONDARY
  11. USE laccount
  12. ?
  13. ?
  14. ? rline1
  15. ?
  16. ? rline2
  17. ?
  18. ? '==========================================================================='
  19. DO WHILE .not. eof
  20. STORE a:number TO rfind
  21. SELECT PRIMARY
  22. FIND &rfind
  23. IF # <> 0
  24. ? 'Account ' + a:number + ' ... ' + a:name
  25. ? '============================================='
  26. ? 'CkNo Tr Date    Payee                    Memo                        Amount'
  27. ? '---------------------------------------------------------------------------'
  28. STORE 0 TO rtrans
  29. STORE 0 TO rctot
  30. DO WHILE l:account = a:number .AND. .NOT. EOF
  31. DISPLAY OFF FIELDS l:check,l:type,l:date,l:payee,l:memo,l:amount
  32. STORE rtrans + 1 TO rtrans
  33. STORE rctot + l:amount TO rctot
  34. SKIP
  35. ENDD
  36. ? '---------------------------------------------------------------------------'
  37. ? 'Transactions: '+STR(rtrans,3) + '                                          Total: ' + STR(rctot,9,2)
  38. ?
  39. ?
  40. ENDI
  41. GO TOP
  42. SELECT SECONDARY
  43. SKIP
  44. ENDD
  45. ENDI
  46. IF 'C'$rn2
  47. SELECT PRIMARY
  48. SET INDEX TO ndx2
  49. SELECT SECONDARY
  50. USE lcat
  51. STORE 'I' TO r1
  52. STORE 'Income:   ' TO r1d
  53. STORE c:category TO r2
  54. STORE c:desc TO r2d
  55. STORE "l:check,l:type,l:date,l:payee,$(l:memo,1,19),l:account,l:amount" TO rfields
  56. STORE 0 TO rctot
  57. ?
  58. ?
  59. ? rline1
  60. ?
  61. ? rline2
  62. ?
  63. ? '==========================================================================='
  64. ?
  65. ?
  66. DO WHILE .not. EOF
  67. STORE r1 TO rfind
  68. SELECT PRIMARY
  69. FIND &rfind
  70. IF # <> 0
  71. STORE 0 TO rtrans
  72. STORE 0 TO rctot
  73. DO WHILE rfind$l:category .AND. .NOT. r2$l:category.AND. .NOT. EOF
  74. SKIP
  75. ENDD
  76. IF r2$l:category
  77. ? 'Categories ' + r1 + r2 + ' ... ' + r1d + TRIM(r2d)
  78. ? '============================================='
  79. ? 'CkNo Tr Date    Payee                    Memo       Acct    Amount'
  80. ? '---------------------------------------------------------------------------'
  81. DO WHILE rfind$l:category .AND. .NOT. EOF
  82. IF r2$l:category
  83. DISPLAY OFF FIELDS &rfields
  84. STORE rtrans + 1 TO rtrans
  85. STORE rctot + l:amount TO rctot
  86. ENDI
  87. SKIP
  88. ENDD
  89. ? '---------------------------------------------------------------------------'
  90. ? $(STR(0,80),1,16) + 'Transactions: ' + STR(rtrans,3)+ $(STR(0,80),1,26) + 'Total: ' + STR(rctot,9,2)
  91. ?
  92. ?
  93. ENDI
  94. ENDI
  95. SELECT SECONDARY
  96. STORE T TO rnext
  97. DO WHILE rnext .AND. .NOT. EOF
  98. SKIP
  99. IF c:category = 'E' .OR. c:category = 'I' .OR. c:category = 'O'.OR. c:category = 'X'
  100. LOOP
  101. ELSE
  102. STORE c:category TO r2
  103. STORE c:desc TO r2d
  104. ENDI
  105. STORE F TO rnext
  106. ENDD
  107. IF EOF .AND. r1 = 'I'
  108. STORE 'E' TO r1
  109. STORE 'Expense:  ' TO r1d
  110. ?
  111. GO TOP
  112. STORE c:category TO r2
  113. STORE c:desc TO r2d
  114. ELSE
  115. IF EOF .AND. r1 = 'E'
  116. STORE 'X' TO r1
  117. STORE 'Capital:  ' TO r1d
  118. ?
  119. GO TOP
  120. STORE c:category TO r2
  121. STORE c:desc TO r2d
  122. ENDI
  123. ENDI
  124. ENDD
  125. ? '==========================================================================='
  126. ENDI
  127. RETU