home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 5 / 05.iso / a / a085 / 1.ddi / EXP18_3.PRG < prev    next >
Encoding:
Text File  |  1994-01-13  |  7.0 KB  |  256 lines

  1. *⌐░⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐┤ 
  2. *⌐ª      Program: EXP18_3.PRG                                          ⌐ª
  3. *⌐ª     Function: ┤≥╙í▒¿▒φ╖╢└²╚²                                       ⌐ª
  4. *⌐ª   DBF & File: .restaurs.dbf (restaurs.fpt, restaurs.cdx)           ⌐ª
  5. *⌐ª               .restaurs.frx (restaurs.frt)                         ⌐ª
  6. *⌐╕⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐╝
  7. SET TALK OFF
  8. PRIVATE m.currarea, m.talkstat,   m.compstat, m.safestat
  9. PRIVATE m.output,   m.filename,   m.choice,   m.fromname, ;
  10.         m.report,   reps,m.scope, m.record,   forexpr, whileexpr, ;
  11.         m.saverec,  m.while,      m.for,      repo,    options, to , ;
  12.         m.plain,    m.summary,    m.noeject
  13.  
  14. IF SET("TALK") = "ON"
  15.         SET TALK OFF
  16.         m.talkstat = "ON"
  17. ELSE
  18.         m.talkstat = "OFF"
  19. ENDIF
  20. IF SET("SAFETY") = "ON"
  21.         SET SAFETY OFF
  22.         m.safestat = "ON"
  23. ELSE
  24.         m.safestat = "OFF"
  25. ENDIF
  26.  
  27. m.compstat = SET("COMPATIBLE")
  28. SET COMPATIBLE FOXPLUS
  29. *IF ISCOLOR()
  30. *   mycolor = "W+/RB,W+/BG,W+/W,W+/RB,W/RB,W+/B,GR+/RB,N+/N,W+/RB,W/RB,+"
  31. *ELSE
  32. *   mycolor=",,/W+"
  33. *ENDIF
  34. IF NOT WEXIST("reports")
  35.         DEFINE WINDOW reports ;
  36.                 FROM INT((SROW()-18)/2),INT((SCOL()-58)/2) ;
  37.                 TO INT((SROW()-18)/2)+17,INT((SCOL()-58)/2)+57 ;
  38.                 TITLE "<< ▒¿▒φ╩Σ│÷╜τ├µ >>" ;
  39.                 FLOAT ;
  40.                 NOCLOSE ;
  41.                 SHADOW;
  42.                 COLOR SCHEME 5
  43. *                COLOR (mycolor)
  44. ENDIF
  45.  
  46. USE restaurs
  47. m.choice   = ""
  48. m.output   = "Preview"
  49. m.filename = SPACE(20)
  50. m.plain    = .F.
  51. m.summary  = .F.
  52. m.noeject  = .F.
  53. m.report   = 1
  54. m.saverec  = RECNO()
  55. forexpr    = ""
  56. whileexpr  = ""
  57. CLEAR
  58. IF WVISIBLE("reports")
  59.         ACTIVATE WINDOW reports SAME
  60. ELSE
  61.         ACTIVATE WINDOW reports NOSHOW
  62. ENDIF
  63. @ 0, 0 TO  6,34
  64. @ 0,35 TO  6,54
  65. @ 7, 0 TO 12,54
  66.  
  67. * Radio ░┤┼ñ
  68. @ 01,3 GET m.output ;
  69.         PICTURE "@*RVN ╙Φ╩╙;╬─╝■;┤≥╙í╗·" ;
  70.         SIZE 1,10,1 ;
  71.         DEFAULT 1 ;
  72.         VALID _val181()
  73. * ╬─╫╓▒α╝¡╟°
  74. @ 03,14 EDIT m.filename ;
  75.         PICTURE "@TK" ;
  76.         SIZE 1,19,0 ;
  77.         DEFAULT " " ;
  78.         COLOR SCHEME 1
  79. * ╝∞▓Θ║╨ Check box
  80. @ 1,37 GET m.plain ;
  81.         PICTURE "@*C ▒Ω╠Γ╓╗╘┌╩╫╥│" ;
  82.         SIZE 1,12 ;
  83.         DEFAULT 0
  84. * ╝∞▓Θ║╨ Check box
  85. @ 3,37 GET m.summary ;
  86.         PICTURE "@*C ▓╗┤≥╙í├≈╧╕╨╨" ;
  87.         SIZE 1,12 ;
  88.         DEFAULT 0
  89. * ╝∞▓Θ║╨ Check box
  90. @ 5,37 GET m.noeject ;
  91.         PICTURE "@*C ┤≥╙í╟░▓╗╠°╥│" ;
  92.         SIZE 1,12 ;
  93.         DEFAULT 0
  94. * Push ░┤┼ñ
  95. @ 7,24  GET m.gethelp ;
  96.         PICTURE "@*VN ░∩╓·" ;
  97.         SIZE 1,8,1 ;
  98.         DEFAULT 1 ;
  99.         VALID _val182()
  100. * ╝∞▓Θ║╨ Check box
  101. @ 9,3 GET m.for ;
  102.         PICTURE "@*C \<For..." ;
  103.         SIZE 1,10 ;
  104.         DEFAULT 0 ;
  105.         VALID _val183()
  106. * ╝∞▓Θ║╨ Check box
  107. @ 09,41 GET m.while ;
  108.         PICTURE "@*C \<While..." ;
  109.         SIZE 1,12 ;
  110.         DEFAULT 0 ;
  111.         VALID _val184()
  112. * Push ░┤┼ñ
  113. @ 14,10 GET m.choice ;
  114.         PICTURE "@*HN \!╓┤╨╨;╨▐╕─;\?╚í╧√" ;
  115.         SIZE 1,10,4 ;
  116.         DEFAULT 1 ;
  117.         VALID _val185()
  118.  
  119. IF NOT WVISIBLE("reports")
  120.         ACTIVATE WINDOW reports
  121. ENDIF
  122.  
  123. READ CYCLE
  124.  
  125. RELEASE WINDOW reports
  126.  
  127. IF m.talkstat = "ON"
  128.    SET TALK ON
  129. ENDIF
  130. IF m.safestat = "ON"
  131.    SET SAFETY ON
  132. ENDIF
  133. IF m.compstat = "ON"
  134.         SET COMPATIBLE ON
  135. ENDIF
  136. GOTO RECORD (m.saverec)
  137.  
  138. *⌐░⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ
  139. *⌐ª   ▒Σ┴┐: m.output
  140. *⌐ª   ╡≈╙├: VALID ▒Σ┴┐
  141. *⌐ª   └α╨═: Radio Buttons
  142. *⌐╕⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ
  143. FUNCTION _val181     &&  m.output VALID
  144. #REGION 1
  145. PRIVATE m.reponame
  146. m.reponame = "retaurs"+".TXT"
  147. IF m.output = "To File"
  148.         m.filename = ALLTRIM(PUTFILE("Output file:", reponame,"TXT"))
  149.         SHOW GET m.filename
  150. ELSE
  151.         m.filename = SPACE(20)
  152.         SHOW GET m.filename
  153. ENDIF
  154.  
  155.  
  156. *⌐░⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ
  157. *⌐ª     ▒Σ┴┐: m.gethelp
  158. *⌐ª     ╡≈╙├: VALID ▓╬╩²
  159. *⌐ª     └α╨═: Push Buttons
  160. *⌐╕⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ
  161. FUNCTION _val182     &&  m.gethelp VALID
  162. #REGION 1
  163. HELP ■ Report Dialog
  164.  
  165. *⌐░⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ
  166. *⌐ª     ▒Σ┴┐: m.for
  167. *⌐ª     ╡≈╙├: VALID ▓╬╩²
  168. *⌐ª     └α╨═: Check box
  169. *⌐╕⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ
  170. FUNCTION _val183     &&  m.for VALID
  171. #REGION 1
  172. IF EMPTY(forexpr)
  173.         GETEXPR "╟δ╝ⁿ╚δ FOR ╠⌡╝■╘╦╦π╩╜:" TO forexpr TYPE 'L'
  174. ELSE
  175.         GETEXPR "╟δ╝ⁿ╚δ FOR ╠⌡╝■╘╦╦π╩╜:" TO forexpr TYPE 'L' ;
  176.            DEFAULT forexpr
  177. ENDIF
  178.  
  179. m.for = IIF(EMPTY(forexpr), 0, 1)
  180. SHOW GET m.for
  181.  
  182.  
  183. *⌐░⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ
  184. *⌐ª     ▒Σ┴┐: m.while
  185. *⌐ª     ╡≈╙├: VALID ▓╬╩²
  186. *⌐ª     └α╨═: Check box
  187. *⌐╕⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ
  188. FUNCTION _val184     &&  m.while VALID
  189. #REGION 1
  190. IF EMPTY(whileexpr)
  191.         GETEXPR "╟δ╝ⁿ╚δ  WHILE ╠⌡╝■╘╦╦π╩╜:" TO whileexpr TYPE 'L'
  192. ELSE
  193.         GETEXPR "╟δ╝ⁿ╚δ  WHILE ╠⌡╝■╘╦╦π╩╜:" TO whileexpr TYPE 'L' ;
  194.         DEFAULT whileexpr
  195. ENDIF
  196.  
  197. m.while = IIF(EMPTY(whileexpr), 0, 1)
  198. SHOW GET m.while
  199.  
  200.  
  201. *⌐░⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ
  202. *⌐ª     ▒Σ┴┐: m.choice
  203. *⌐ª     ╡≈╙├: VALID ▓╬╩²
  204. *⌐ª     └α╨═: Push Buttons
  205. *⌐╕⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ⌐ñ
  206. FUNCTION _val185     &&  m.choice VALID
  207. #REGION 1
  208. repo="restaurs.frx"
  209. DO CASE
  210. CASE m.choice = "╓┤╨╨"
  211.         options = IIF(m.plain," PLAIN", "")+;
  212.         IIF(m.summary, " SUMMARY", "")+;
  213.         IIF(m.noeject, " NOEJECT", "")
  214.  
  215.         IF NOT EMPTY(forexpr)
  216.                 forexpr = IIF(AT("FOR",forexpr)=0,"FOR ","") + forexpr
  217.         ENDIF
  218.         IF NOT EMPTY(whileexpr)
  219.                 whileexpr = IIF(AT("WHILE",whileexpr)=0,"WHILE ","") + ;
  220.                         whileexpr
  221.         ENDIF
  222.  
  223.         DO CASE
  224.         CASE m.output = "╬─╝■"
  225.                 to = m.filename
  226.                 REPORT FORM &repo &options &forexpr &whileexpr ;
  227.                         TO FILE &to ENVIRONMENT NOCONSOLE
  228.                 CLEAR READ
  229.         CASE m.output = "╙Φ╩╙"
  230.                 REPORT FORM &repo &options &forexpr &whileexpr ;
  231.                         PREVIEW ENVIRONMENT
  232.         CASE m.output = "┤≥╙í╗·"
  233.              SET ESCAPE OFF
  234.              IF PRINTSTATUS()
  235.                 REPORT FORM &repo &options &forexpr &whileexpr ;
  236.                 TO PRINTER ENVIRONMENT NOCONSOLE
  237.                 CLEAR READ
  238.              ELSE
  239.                  WAIT WINDOW " ┤≥╙í╗·╬┤╫╝▒╕║├! "
  240.                  RETURN TO MASTER
  241.              ENDIF
  242.              SET ESCAPE ON
  243.         ENDCASE
  244.  
  245. CASE m.choice = "╨▐╕─"
  246.      MODIFY REPORT &repo
  247. CASE m.choice = "╚í╧√"
  248.      CLEAR READ
  249. ENDCASE
  250. IF AT("FOR",forexpr)<>0
  251.         forexpr = SUBSTR(forexpr, AT("FOR",forexpr)+4)
  252. ENDIF
  253. IF AT("WHILE",whileexpr)<>0
  254.         whileexpr = SUBSTR(whileexpr, AT("WHILE",whileexpr)+6)
  255. ENDIF
  256.