home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 5 / 05.iso / a / a056 / 5.ddi / RS / YQMIS007.PRG < prev    next >
Encoding:
Text File  |  1993-12-21  |  7.6 KB  |  376 lines

  1. *******************************************************
  2. * ╬─╝■├√│╞: YQMIS007
  3. * │╠╨≥╔Φ╝╞: ╤┼╞µ                  
  4. * ▒α│╠╚╒╞┌: 93.12.21   21:29:37
  5. *******************************************************
  6. set safe off
  7. set date ansi
  8. close data
  9. set color to w/1,,
  10. clear
  11. do smggp with '╟δ  ╔╘  ║≥ !',10,34
  12. set color to w/1,,
  13. sele A
  14. *set excl on
  15. use RS alia A
  16. set proc to YQMIS007
  17. priv ozdm,ogzq,oh,ol,ok,oj,ojsgs
  18. ojsgs=space(78)
  19. ok=-1
  20. oj=.f.
  21. do while .t.
  22. set color to 7/1,1/7,
  23. clear
  24. call hj with '00007924'
  25. @ 2,1 say repl('⌐Ñ',39)
  26. @ 22,1 say repl('⌐Ñ',39)
  27. set dele off
  28. @ 23,1 say 'Esc:═╦│÷ F2:╬─╝■╩╫ F3:╬─╝■╬▓ F4:╓╕╢¿╝╟┬╝ F5:╚╬╥Γ╠⌡╝■ F6:╚í╧√╠⌡╝■ F7:╧╘╩╛═╝╧≤'
  29. @ 1,2 say '╝╟┬╝║┼:        ╝╟┬╝╫▄╩²:         '
  30. @ 5,2 say '                           ═¿╙├╚╦╩┬╡╡░╕┬╝╚δ│╠╨≥'
  31. @ 6,2 say '                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
  32. @ 7,2 say '     ⌐│⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐╫⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐╫⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐╫⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐╖'
  33. @ 8,2 say '     ⌐º╨╒├√:       ⌐º╨╘▒≡:   ⌐º╡Ñ╬╗:       ⌐º│÷╔·╚╒╞┌:         ⌐º'
  34. @ 9,2 say '     ⌐╟⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐▀⌐Ñ⌐Ñ⌐╫⌐Ñ⌐▀⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐╫⌐▀⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐╧'
  35. @ 10,2 say '     ⌐º╣ñ╫≈╩▒╝Σ:         ⌐º╬─╗»│╠╢╚:     ⌐º╝╝╩⌡╓░│╞:           ⌐º'
  36. @ 11,2 say '     ⌐╟⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐∩⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐▀⌐Ñ⌐╫⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐╧'
  37. @ 12,2 say '     ⌐º╗∙▒╛╣ñ╫╩:         ⌐º╓░╬±╜≥╠∙:         ⌐º─Ω┴Σ:           ⌐º'
  38. @ 13,2 say '     ⌐╟⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐▀⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐╫⌐Ñ⌐Ñ⌐Ñ⌐▀⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐╧'
  39. @ 14,2 say '     ⌐º▒╧╥╡╤º╨ú:                     ⌐º─Ω┴Σ╢╬:                 ⌐º'
  40. @ 15,2 say '     ⌐╗⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐▀⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐Ñ⌐┐'
  41. set color to w+/1,,
  42. sele 1
  43. @ 1,26 say recc() pict '@B 99999999'
  44. sele 9
  45. use odm.lby inde odm alia i
  46. sele 10
  47. use YQMIS007.olr alia j
  48. otxbszd='╨╒├√'
  49. omlwj='c:\rs\RS'
  50. do xs
  51. set color to w+/1,0/w,
  52. sele 1
  53. do while .t.
  54. ok=inkey(0)
  55. do case
  56.    case ok=18
  57.         sele 1
  58.         if .not.bof()
  59.            skip -1
  60.         endif
  61.         if bof()
  62.            goto top
  63.         endif
  64.         do xs
  65.    case ok=3
  66.         sele 1
  67.         if .not.eof()
  68.            skip
  69.         endif
  70.         if eof()
  71.            go top
  72.         endif
  73.         do xs
  74.    case ok=27.or.ok=30
  75.         do smggp with '╒²╘┌┤µ┼╠,╟δ╔╘║≥!',10,31
  76.         close data
  77.         close proc
  78.         return
  79.    case ok=-5
  80.         sele 1
  81.         set filt to
  82.    case ok=-6
  83.         sele 1
  84.         do txxs with 0,0,omlwj,&otxbszd
  85. *       brow nomo
  86.         exit
  87.    case ok=-1
  88.         sele 1
  89.         goto top
  90.         do xs
  91.    case ok=-2
  92.         sele 1
  93.         goto bott
  94.         do xs
  95.    case ok=-3
  96.         sele 1
  97.         o=recn()
  98.         @ 1,54 say '╝╟┬╝║┼:' get o rang 1,recc() pict '@B'
  99.         read
  100.         @ 1,54 say space(25)
  101.         goto o
  102.         do xs
  103.    case ok=-4
  104.         do cx
  105.         do xs
  106.  endcase
  107.  sele 10
  108. enddo
  109. enddo
  110. return
  111.  
  112. ****************
  113. * ╧╘╩╛╦∙╙╨╫╓╢╬ *
  114. ****************
  115. proc xs
  116. priv ozdm,ogzq,oh,ol
  117. sele 1
  118. @1,9 say recn() pict '@B 99999999'
  119. if dele()
  120.    set color to r+/1,,
  121. else
  122.    set color to w+/1,,
  123. endif
  124. sele 10
  125. goto top
  126. do while .not.eof()
  127.    ozdm=trim(╫╓╢╬├√)
  128.    ogzq=╟°
  129.    oh=╨╨+2
  130.    ol=┴╨+2
  131.    sele 1
  132.    @ oh,ol say &ogzq.->&ozdm
  133.    sele 10
  134.    skip
  135. enddo
  136. goto top
  137. ok=5
  138. return
  139.  
  140.  
  141. ****************
  142. *   ╚╬╥Γ╠⌡╝■   *
  143. ****************
  144. proc cx
  145. set exac off
  146. priv ox,o,ocr,osq,ozf,ohz,ozdm,ol,obj
  147. set color to 0/3,,
  148. @ 23,1 say space(78)
  149. @ 23,18 say '^End:═╦│÷ íⁿí²:╥╞╢»╫╓╢╬╣Γ▒Ω ╗╪│╡╝ⁿ:╤í╘±╫╓╢╬'
  150. set color to w+/r,,
  151. obj=chr(160)
  152. ohz=0
  153. ozf=''
  154. ocr=1
  155. ox=1
  156. sele 10
  157. goto top
  158. set color to w+/r,,
  159. @ ╨╨+2,┴╨+2 say space(╫╓╢╬│ñ╢╚)
  160. ol=recn()
  161. ozdm=trim(╫╓╢╬├√)
  162. @ 1,60 say '╨▐╕─'
  163. set color to 0/w,,
  164. @ 21,1 say space(78)
  165. @ 21,1 say ojsgs
  166. do while .t.
  167. set color to 0/w,,
  168. @ 21,ox say ''
  169. o=inkey(0)
  170. do case
  171. case o=19.and.ox>1
  172. ox=ox-1
  173. if subs(ojsgs,ox,1)>obj
  174. ox=ox-1
  175. endif
  176. loop
  177. case o=4.and.ox<78
  178. ox=iif(subs(ojsgs,ox,1)>obj,ox+2,ox+1)
  179. loop
  180. case o<127.and.o>31
  181. ozf=iif(subs(ojsgs,ox,1)>obj.and.ocr=1,chr(o)+' ',chr(o))
  182. if ocr=0
  183. if len(trim(ojsgs))+len(ozf)<79
  184. ojsgs=left(stuf(ojsgs,ox,0,ozf),78)
  185. ox=iif(ox<78,ox+1,ox)
  186. @ 21,1 say ojsgs
  187. endif
  188. else
  189. ojsgs=stuf(ojsgs,ox,len(ozf),ozf)
  190. @ 21,ox say ozf
  191. ox=iif(ox<78,ox+1,ox)
  192. endif
  193. ohz=0
  194. case o>160.and.ox<78
  195. if ohz=0
  196. ozf=chr(o)
  197. ohz=1
  198. else
  199. ozf=ozf+chr(o)
  200. ozf=iif(ocr=1.and.subs(ojsgs,ox,1)<obj.and.subs(ojsgs,ox+1,1)>obj,ozf+' ',ozf)
  201. if ocr=0
  202. if len(trim(ojsgs))+len(ozf)<79
  203. ojsgs=left(stuf(ojsgs,ox,0,ozf),78)
  204. @ 21,1 say ojsgs
  205. ox=iif(ox<77,ox+2,ox)
  206. endif
  207. else
  208. ojsgs=stuf(ojsgs,ox,len(ozf),ozf)
  209. @ 21,ox say ozf
  210. ox=iif(ox<77,ox+2,ox)
  211. endif
  212. ohz=0
  213. endif
  214. case o=22
  215. ocr=iif(ocr=0,1,0)
  216. @ 1,60 say iif(ocr=0,'▓σ╚δ','╨▐╕─')
  217. case o=7
  218. ojsgs=iif(subs(ojsgs,ox,1)<obj,stuf(ojsgs,ox,1,'')+' ',stuf(ojsgs,ox,2,'')+'  ')
  219. @ 21,1 say ojsgs
  220. case o=127.and.ox>1
  221. ox=ox-1
  222. if subs(ojsgs,ox,1)>obj
  223. ox=ox-1
  224. endif
  225. ojsgs=iif(subs(ojsgs,ox,1)<obj,stuf(ojsgs,ox,1,'')+' ',stuf(ojsgs,ox,2,'')+'  ')
  226. @ 21,1 say ojsgs
  227. case o=13
  228. keyb chr(24)
  229. sele 10
  230. ozdm0=iif(╟°='A',trim(╫╓╢╬├√),╟°+'->'+trim(╫╓╢╬├√))
  231. if len(trim(ojsgs))+len(ozdm0)<79
  232. ojsgs=left(stuf(ojsgs,ox,0,ozdm0),78)
  233. @ 21,1 say ojsgs
  234. ox=ox+len(ozdm0)
  235. ox=iif(ox>78,78,ox)
  236. endif
  237. case o=23
  238. ojsgs0=ojsgs
  239. do zryy
  240. oer=.f.
  241. on erro oer=.t.
  242. sele 1
  243. set filt to &ojsgs
  244. ojsgs=ojsgs0
  245. goto top
  246. if oer
  247. set color to w+/r,,
  248. @ 1,40 say '▓Θ╤»╠⌡╝■╙╨╬≤!!!'
  249. ok=inkey(2)
  250. @ 1,40 say '               '
  251. else
  252. on erro
  253. exit
  254. endif
  255. case o=24
  256. sele 10
  257. set color to w+/1,,
  258. @ ╨╨+2,┴╨+2 say space(╫╓╢╬│ñ╢╚)
  259. if .not.eof()
  260. skip
  261. endif
  262. if eof()
  263. goto top
  264. endif
  265. set color to w+/r,,
  266. @ ╨╨+2,┴╨+2 say space(╫╓╢╬│ñ╢╚)
  267. case o=5
  268. sele 10
  269. set color to w+/1,,
  270. @ ╨╨+2,┴╨+2 say space(╫╓╢╬│ñ╢╚)
  271. if .not.bof()
  272. skip -1
  273. endif
  274. if bof()
  275. goto bott
  276. endif
  277. set color to w+/r,,
  278. @ ╨╨+2,┴╨+2 say space(╫╓╢╬│ñ╢╚)
  279. endcase
  280. enddo
  281. set color to 7+/1,,
  282. @ 1,40 say space(39)
  283. @ 21,1 say space(78)
  284. @ 23,1 say space(78)
  285. @ 23,2 say 'Esc:═╦│÷ F2:╬─╝■╩╫ F3:╬─╝■╬▓ F4:╓╕╢¿╝╟┬╝ F5:╚╬╥Γ╠⌡╝■ F6:╚í╧√╠⌡╝■ F7:╡τ╫╙▒¿▒φ'
  286. set color to 7/1,1/7,
  287. return
  288. ************
  289. * ╫╘╚╗╙∩╤╘ *
  290. ************
  291. proc zryy
  292. priv zh,zrm(8,2),o,om
  293. om=8
  294. dime zrm(8,2)
  295. zrm(1,1)='['
  296. zrm(2,1)=']'
  297. zrm(3,1)='╢°╟╥'
  298. zrm(4,1)='╗≥╒▀'
  299. zrm(5,1)='▓╗╡╚╙┌'
  300. zrm(6,1)='╡╚╙┌'
  301. zrm(7,1)='╨í╙┌'
  302. zrm(8,1)='┤≤╙┌'
  303. zrm(1,2)=[ctod(']
  304. zrm(2,2)=[')]
  305. zrm(3,2)='.and.'
  306. zrm(4,2)='.or.'
  307. zrm(5,2)='#'
  308. zrm(6,2)='='
  309. zrm(7,2)='<'
  310. zrm(8,2)='>'
  311. o=1
  312. do while o<=om
  313. do while .t.
  314. zh=at(zrm(o,1),ojsgs)
  315. if zh>0
  316. ojsgs=stuf(ojsgs,zh,len(zrm(o,1)),zrm(o,2))
  317. else
  318. exit
  319. endif
  320. enddo
  321. o=o+1
  322. enddo
  323. return
  324. ************
  325. * ═╝╨╬╧╘╩╛ *
  326. ************
  327. proc txxs
  328. PARA XPOS,YPOS,DBNAME,IMGID
  329. PRIV IMXNAME,COMMDSTR
  330. SELECT 9
  331. IMXNAME = TRIM(DBNAME)+".Imx"
  332. DBNAME = TRIM(DBNAME)+".Imb"
  333. IF FILES(IMXNAME)
  334. use &Imxname ALIA I
  335. LOCATE FOR .NOT.DELETED().AND.IMGCODE=TRIM(IMGID)
  336. IF .NOT.EOF()
  337. COMMDSTR = TRIM(STR(XPOS,3,0))+" "+TRIM(STR(YPOS,3,0))+" "+DBNAME
  338. COMMDSTR = COMMDSTR+" "+TRIM(STR(IMGOFFS))+" "+TRIM(STR(IMGSIZE))
  339. COMMDSTR = COMMDSTR+" 640 480 0 0 0"
  340. RUN txms 93
  341. !TXXS &commdstr
  342. do xshz with 16,460,otxbszd++':'+imgid,255,0
  343. ok=inkey(0)
  344. !TXMS  3
  345. ELSE
  346. DO TXMY
  347. ENDIF
  348. USE
  349. ENDIF
  350. RETURN
  351. ************
  352. * ╧╘╩╛║║╫╓ *
  353. ************
  354. proc xshz
  355. PARA XPOS,YPOS,HZSTR,FRONT,BACK
  356. PRIV CNNDSTR
  357. CMMDSTR = "1 "+TRIM(STR(XPOS,3,0))+" "+TRIM(STR(YPOS,3,0))
  358. CMMDSTR = CMMDSTR+" "+TRIM(HZSTR)+" "+TRIM(STR(FRONT,3,0))
  359. CMMDSTR = CMMDSTR+" "+TRIM(STR(BACK,3,0))
  360. !TXHZ &CMMDSTR
  361. RETURN
  362. ************
  363. * ═╝╧≤├╗╙╨ *
  364. ************
  365. proc txmy
  366. do owindow with 10,25,12,54,'0/w,w+/r,'
  367. @ 11,27 say '╒Γ╕÷═╝╧≤║├╧≤▓╗┤µ╘┌......'
  368. txymy=.f.
  369. ok=inkey(1)
  370. set color to w/1,,
  371. @ 10,25 clear to 15,56
  372. return
  373.  
  374. *******************************************************
  375. * ▒α│╠╚╒╞┌: 93.12.21   21:29:39
  376. *******************************************************