home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 6 / 06.iso / b / b007 / 2.ddi / AMISG / MENUCREA.PRG < prev    next >
Encoding:
Text File  |  1990-05-09  |  2.9 KB  |  153 lines

  1. ** BEGIN OF MENUCREA.PRG **
  2. SET TALK OFF
  3. SELE 1
  4. IF .NOT.FILE('MENU.DBF')
  5. DO WHILE .T.
  6. @ 1,0 CLEAR
  7. A=SPAC(8)
  8. @ 5,20 SAY '╟δ╩Σ╚δ╚╬╥Γ╥╗╩²╛▌╬─╝■├√: ' GET A
  9. READ
  10. A=TRIM(A)
  11. IF FILE('&A..DBF')
  12. EXIT
  13. ENDIF
  14. ENDDO
  15. USE &A
  16. COPY STRU EXTE TO FNS
  17. USE FNS
  18. ZAP
  19. APPE BLAN
  20. REPL FIELD_NAME WITH 'NO',FIELD_LEN WITH 10
  21. APPE BLAN
  22. REPL FIELD_NAME WITH 'NOTE',FIELD_LEN WITH 30
  23. APPE BLAN
  24. REPL FIELD_NAME WITH 'NAME',FIELD_LEN WITH 8
  25. APPE BLAN
  26. REPL FIELD_NAME WITH 'TYPE',FIELD_LEN WITH 1
  27. APPE BLAN
  28. REPL FIELD_NAME WITH 'BROTHER',FIELD_LEN WITH 1
  29. REPL ALL FIELD_TYPE WITH 'C',FIELD_DEC WITH 0
  30. USE
  31. CREA MENU FROM FNS
  32. INDE ON NO TO MENU
  33. ENDIF
  34. IF .NOT.FILE('MENU.IDX')
  35. USE MENU
  36. INDE ON NO TO MENU
  37. ENDIF
  38. USE MENU INDE MENU
  39. IF EOF() .AND. BOF()
  40. @ 1,0 CLEAR
  41. A=SPAC(30)
  42. B=SPACE(8)
  43. @ 5,30 SAY '╟δ╩Σ╚δ......'
  44. @ 4,14 TO 7,66 DOUB
  45. @ 5,15 SAY '      ╧╡═│├√│╞: ' GET A
  46. @ 6,15 SAY '      ╧╡═│┤·║┼: ' GET B PICT '!!!!!!!!'
  47. READ
  48. IF A=SPACE(30)
  49. CLOS DATA
  50. RETU
  51. ENDIF
  52. APPE BLAN
  53. REPL NOTE WITH LTRIM(A),NAME WITH LTRIM(B),TYPE WITH '0',BROTHER WITH '0'
  54. ENDIF
  55. RNO=RECNO()
  56. CDBH='0'
  57. DO WHILE .T.
  58. @ 1,0 CLEAR
  59. GO RNO
  60. LNO=LEN(TRIM(NO))
  61. @ 0,0 SAY SPACE(21)
  62. @ 0,0 SAY '▓╦╡Ñ║┼: {.'+CDBH+'.}'
  63. @ 0,64 SAY '▓╦╡Ñ├√:'+NAME
  64. @ 1,INT((68-LEN(TRIM(NOTE)))/2) SAY '0**í╢ '+TRIM(NOTE)+' í╖**0'
  65. TJ=TRIM(NO)
  66. SET FILT TO NO=TJ .AND. LEN(TRIM(NO))=LNO+1
  67. GO TOP
  68. I=1
  69. XH='0123456789'
  70. DO WHILE .NOT. EOF()
  71. @ (I+3)/2,9 SAY STR(I,2)+'..'+NOTE
  72. IF AT(SUBS(NO,LNO+1,1),XH)<LEN(XH)
  73. XH=SUBS(XH,1,AT(SUBS(NO,LNO+1,1),XH)-1)+SUBS(XH,AT(SUBS(NO,LNO+1,1),XH)+1)
  74. ELSE
  75. XH=SUBS(XH,1,AT(SUBS(NO,LNO+1,1),XH)-1)
  76. ENDIF
  77. I=I+1
  78. SKIP
  79. IF .NOT.EOF()
  80. @ I/2+1,45 SAY STR(I,2)+'..'+NOTE
  81. IF AT(SUBS(NO,LNO+1,1),XH)<LEN(XH)
  82. XH=SUBS(XH,1,AT(SUBS(NO,LNO+1,1),XH)-1)+SUBS(XH,AT(SUBS(NO,LNO+1,1),XH)+1)
  83. ELSE
  84. XH=SUBS(XH,1,AT(SUBS(NO,LNO+1,1),XH)-1)
  85. ENDIF
  86. I=I+1
  87. SKIP
  88. ENDIF
  89. ENDDO
  90. YN=' '
  91. DO WHILE .NOT. YN$'YN'
  92. @ 9,30 SAY '╫╖╝╙▓╦╡Ñ┬≡?[Y/N]:' GET YN
  93. READ
  94. YN=UPPE(YN)
  95. ENDDO
  96. IF YN='Y'.AND.I<11
  97. A=SPACE(30)
  98. B=SPACE(8)
  99. C=0
  100. @ 1,0 CLEAR
  101. @ 3,35 SAY '╟δ╩Σ╚δ......'
  102. @ 4,14 TO 8,64 DOUB
  103. @ 5,15 SAY ' ▓╦   ╡Ñ   ╠ß  ╩╛:' GET A
  104. @ 6,15 SAY ' ▓╦╡Ñ├√  / │╠╨≥├√:' GET B PICT '!!!!!!!!'
  105. @ 7,15 SAY ' ▓╦╡Ñ└α╨═[ú░ú¡▓╦╡Ñ ú▒ú¡│╠╨≥ ]:' GET C PICT '9' RANG 0,1
  106. READ
  107. C=STR(C,1)
  108. GO RNO
  109. D=TRIM(NO)+SUBS(XH,1,1)
  110. APPE BLAN
  111. REPL NO WITH D,NAME WITH B,NOTE WITH A,TYPE WITH C,BROTHER WITH '1'
  112. SKIP -1
  113. IF .NOT.BOF()
  114. REPL BROTHER WITH '1'
  115. ENDIF
  116. SKIP 2
  117. IF EOF()
  118. SKIP -1
  119. REPL BROTHER WITH '0'
  120. ENDIF
  121. LOOP
  122. ENDIF
  123. IF YN='Y' .AND.I=11
  124. @ 0,8 SAY '▓╦╡Ñ╕÷╩²╥╤┬·10╕÷,▓╗╘╩╨φ╘┘╫╖╝╙úí'
  125. ?? CHR(7)+CHR(7)+CHR(7)
  126. ENDIF
  127. GNH=0
  128. @ 9,25 SAY '╟δ╤í╘±ú█ú░ú«ú«╖╡╗╪ú▌ú║' GET GNH PICT '99' RANG 0,I-1
  129. READ
  130. IF GNH=0
  131. SET FILT TO
  132. GO RNO
  133. IF LEN(TRIM(NO))=0
  134. CLOS DATA
  135. RETU
  136. ENDIF
  137. A=SUBS(NO,1,LEN(TRIM(NO))-1)
  138. CDBH=SUBS(CDBH,1,LEN(CDBH)-3)
  139. SEEK A
  140. RNO=RECNO()
  141. LOOP
  142. ENDIF
  143. GO TOP
  144. SKIP GNH-1
  145. IF TYPE='0'
  146. CDBH=CDBH+'--'+STR(GNH,1)
  147. RNO=RECNO()
  148. LOOP
  149. ENDIF
  150. LOOP
  151. ENDDO
  152. ** END OF MENUCREA.PRG **
  153.