home *** CD-ROM | disk | FTP | other *** search
/ Software Du Jour / SoftwareDuJour.iso / BUSINESS / DBASE / DB3AR.ARC / INV.PRG < prev    next >
Encoding:
Text File  |  1985-10-04  |  3.0 KB  |  151 lines

  1. SET HEADING OFF
  2. ******************** (INV.PRG)
  3. CLEAR
  4. SET BELL OFF
  5. STORE '                              ' TO MNAME
  6. STORE 0.00 TO MAMT,MTOT,MOLD,MOLDY
  7. STORE 0 TO T
  8. STORE 0 TO REC
  9. USE B:INV
  10. GO BOTT
  11. STORE RECNO() TO REC
  12. STORE REC-1 TO REC
  13. CLEAR
  14. DO WHILE .T.
  15. USE B:CUST INDEX B:ACCT
  16. SET CONFIRM ON
  17. STORE '     ' TO MINV
  18. STORE '         ' TO MPO
  19. STORE '    ' TO MACCT
  20. STORE ' ' TO MSALES
  21. SET EXACT ON
  22. @ 2,0 CLEAR
  23. TYPE B:LINE.TXT
  24. @ 6,23 SAY 'Do you want to enter an invoice?'
  25. @ 13,32 SAY 'Last entered:'
  26. IF T<>0
  27. @ 14,T SAY MNAME
  28. ENDIF
  29. @ 15,27 SAY MAMT
  30. TYPE B:LINE.TXT
  31. ?
  32. ?
  33. STORE ' ' TO OPTION
  34. WAIT '                                Press Y or N  'TO OPTION
  35. IF OPTION='N'
  36. CLEA
  37. @ 10,15 SAY 'The first invoice was entered previously'
  38. TYPE B:LINE.TXT
  39. USE B:INV
  40. DISP ALL OFF FOR RECNO()>REC 'Account # '+ACCT,'Invoice # ì
  41. '+INVNO,'  Price $',+NET,' Date of invoice',NEWDATE
  42. TYPE B:LINE.TXT
  43. WAIT '.............................Press ì
  44. anything..................................'
  45. CLEA
  46. @ 15,20 SAY 'Press F9 to return to menu'
  47. RETURN
  48. ENDIF
  49. IF OPTION='Y'
  50. STORE '                             ' TO MNAME
  51. @ 2,0 CLEAR
  52. @ 6,25 SAY 'Enter account number ' GET MACCT PICTURE 'XXXX'
  53. READ
  54. IF MACCT='    '
  55. CLEA
  56. @ 15,30 SAY 'NO ACCOUNT NUMBER !! '
  57. ? CHR(7)
  58. LOOP
  59. ENDIF
  60. FIND &MACCT
  61. STORE SALES TO MSALES
  62. STORE LOWER(TRIM(NAME)) TO MNAME
  63. STORE LEN(TRIM(MNAME)) TO A
  64. STORE ALLPAY TO MTOT
  65. IF (EOF() .OR. BOF())
  66. SET TALK ON
  67. @ 2,0 CLEAR
  68. ? CHR(007)
  69. @ 6,20 SAY " I can't find an account for # &MACCT "
  70. SET TALK OFF
  71. STORE '                              ' TO MNAME
  72. STORE 1 TO XX
  73. DO WHILE XX<70
  74. STORE XX+1 TO XX
  75. ENDDO WHILE XX<70
  76. LOOP
  77. ENDIF BOF()
  78. USE B:CUST INDEX B:ACCT
  79. FIND &MACCT
  80. @ 2,0 CLEAR
  81. TYPE B:CUST.TXT
  82. @ 5,2 SAY NAME
  83. @ 5,58 SAY ACCT
  84. @ 7,2 SAY ADDRESS
  85. @ 7,58 SAY DISC
  86. @ 9,2 SAY TRIM(CITY)+' ,'+STATE+' '+ZIP
  87. @ 9,62 SAY MTOT
  88. IF OLD_45 > 0.01
  89. STORE OLD_45 TO MOLD
  90. @ 12,1 SAY 'This account is 45 days past due by'
  91. @ 12,36 SAY MOLD
  92. ENDIF
  93. IF DISC='HOLD*COD'
  94. ? CHR(7)
  95. SET COLOR TO /W
  96. @ 10,25 SAY DISC
  97. SET COLOR TO W
  98. ENDIF
  99. IF OLD_60 > 25.00
  100. STORE OLD_60 TO MOLDY
  101. @ 12,56 SAY 'Over 60'
  102. SET COLOR TO /W
  103. @ 12,64 SAY MOLDY
  104. SET COLOR TO W
  105. ENDIF
  106. ENDIF
  107. @ 15,25 SAY 'Is this the correct account?'
  108. ?
  109. ?
  110. WAIT '                                      ? ' TO OPTION
  111. IF OPTION='N'
  112. LOOP
  113. ENDIF
  114. @ 2,0 CLEAR
  115. USE B:INV INDEX B:ACCTS
  116. SET TALK OFF
  117. APPEND BLANK
  118. STORE 0 TO T
  119. STORE LEN(MNAME) TO T
  120. S=T/2
  121. STORE (80-T)/2 TO T
  122. @ 4,T SAY MNAME
  123. TYPE B:INV.TXT
  124. @ 8,44  GET INVNO
  125. @ 10,44 GET PONO
  126. @ 12,44 GET NEWDATE PICTURE '99/99/99'
  127. @ 14,44 GET PRICE
  128. READ
  129. STORE PRICE TO MAMT
  130. STORE RECNO() TO RECNO
  131. REPLACE NET WITH PRICE
  132. REPLACE PAID WITH .F.
  133. REPLACE ACCT WITH MACCT
  134. REPLACE SALES WITH MSALES
  135. @ 2,(T+S-6) SAY 'Acct #'
  136. @ 2,(T+S+2) SAY MACCT
  137. @ 19,32 SAY 'Is this correct?'
  138. @ 20,0 SAY ' '
  139. WAIT '                                       ? 'TO OPTION
  140. IF OPTION='N'
  141. EDIT RECNO()
  142. REPLACE NET WITH PRICE
  143. CLEAR
  144. ENDIF
  145. SET CONFIRM OFF
  146. @ 2,0 CLEAR
  147. STORE UPPER(MNAME) TO MNAME
  148. ENDDO
  149. SET EXACT OFF
  150. RETURN
  151.