home *** CD-ROM | disk | FTP | other *** search
- ****** ╤í╘±▒╗╨▐╕─╫╓╢╬ SELEFD.PRG ******
- ****** DO SELEFD ******
- ****** FN:╬─╝■├√.(╚δ┐┌) ******
- ****** FD:▒╗╨▐╕─╫╓╢╬.(│÷┐┌) ******
- SET DELI OFF
- SELE 10
- USE FILE INDE FILE
- SEEK M->FN
- FNO=F_NO
- @ 1,0 CLEAR
- USE DBD INDE DBD
- SET FILT TO F_NO=M->FNO.AND.FIELD_TYPE<>'M'
- COUNT TO MAX
- GO TOP
- HS=25
- PRIV XS,LS
- LS=5
- XS=M->HS-3
- N=0
- DO WHILE .T.
- @ 3,0 CLEAR
- N1=N+1
- I=2
- DO WHILE .NOT. EOF()
- J=0
- DO WHILE .NOT. EOF() .AND. J<LS
- N=N+1
- @ I,J*15 SAY STR(N,2)+'.'+C_NAME
- J=J+1
- SKIP
- ENDDO
- I=I+1
- IF I=XS+2
- EXIT
- ENDIF
- ENDDO
- DO WHILE .T.
- @ 1,58 SAY ' '
- YN=0
- @ 1,7 SAY '╤í ╘± ╩² ╛▌ ╧ε ┤· ║┼ PgUp__╟░▓Θ PgDn__║≤▓Θ '
- DO WHILE .T.
- @ 1,57 SAY ' '
- YN=INKEY(0)
- IF YN=3.OR.YN=18.OR.YN=27.OR.YN>48.AND.YN<58
- EXIT
- ENDIF
- ??CHR(7)
- ENDDO
- @ 1,0 SAY SPACE(7)
- @ 1,62 SAY SPACE(16)
- IF YN=18
- IF N1=1
- LOOP
- ENDIF
- IF N1<LS*XS+1
- N=0
- ELSE
- N=N1-LS*XS-1
- ENDIF
- GO TOP
- SKIP N
- EXIT
- ENDIF
- IF YN=3
- IF N=MAX
- LOOP
- ENDIF
- GO TOP
- SKIP N
- EXIT
- ENDIF
- IF YN=27
- USE
- RETU TO MAST
- ENDIF
- DO WHILE .T.
- @ 1,58 SAY CHR(YN)
- YN1=INKEY(0)
- IF YN1>47.AND.YN1<58.OR.YN1=13.OR.YN1=127.OR.YN1=19.OR.YN1=27
- EXIT
- ENDIF
- ?? CHR(7)
- ENDDO
- IF YN1=27
- CLOS DATA
- RETU TO MAST
- ENDIF
- IF YN1=127.OR.YN1=19
- LOOP
- ENDIF
- IF YN1=13
- NN=YN-48
- ELSE
- @ 1,59 SAY CHR(YN1)
- NN=VAL(CHR(YN)+CHR(YN1))
- ENDIF
- IF NN>MAX .OR. NN<1
- @ 1,62 SAY STR(NN,2)+'╨≥║┼│¼╖╢╬º!'
- @ 1,3 SAY '╓╪╨┬'
- LOOP
- ENDIF
- GO TOP
- SKIP NN-1
- FD=TRIM(FIELD_NAME)
- FT=FIELD_TYPE
- FL=FIELD_LEN
- FX=FIELD_DEC
- CFD=TRIM(C_NAME)
- FDN=IIF(NN<10,STR(NN,1),STR(NN,2))
- USE
- RETURN
- ENDDO
- ENDDO
- ** END OF SELEFD.PRG **