home *** CD-ROM | disk | FTP | other *** search
- **********************
-
- FUNCTION Infile
-
- * The infile() function validates that the parameter
- * passed in found in the file indicated
- *
-
- PARAMETER _tcode, _tarea, _match, _show, _fill, _req
-
- PRIVATE _retval, _narea, _atesting, _lrow, _lcol, _ldown, _pick
-
- IF LASTKEY() = 5 && If up arrow was pressed, do not validate
- RETURN(.T.) && the field
- ENDIF
-
- IF PCOUNT() < 6
- _req = .F.
- ENDIF
- _narea = 0
-
- scrpath = IF((TYPE("scrpath") = "U"), "", scrpath)
-
- IF EMPTY(_tarea)
- _tarea = LTRIM(TRIM(STR(SELECT())))
- ELSEIF LEN(_tarea) = 1
- SELECT &_tarea
- ELSE
- IF FILE( scrpath+_tarea+".DBF" )
- SELECT 0
- USE ( scrpath+_tarea )
- ELSE
- RETURN(.T.)
- ENDIF
- ENDIF
- _narea = SELECT()
-
- IF "["$_tcode
- _atesting = &_tcode.
- ELSE
- _atesting = _tcode
- ENDIF
-
- IF ( !_req .AND. EMPTY( _atesting ) ) .OR. RECCOUNT() = 0
- SELECT ( _narea )
- USE
- RETURN(!_req)
- ENDIF
-
- LOCATE ALL FOR _atesting = &_match
- _retval = FOUND()
-
- IF !_retval
-
- _lrow = ROW()
- _lcol = COL()
- _ldown= ROW()+7
-
- _pick = Dpop( _lrow, _lcol, _ldown, 24, _tarea, _show, "",.F.,.T.)
- *
- ELSE
- _pick = RECNO()
- ENDIF
-
- IF _pick > 0 .AND. TYPE("_fill") = "A"
-
- Storarray(_fill, _tarea, _pick)
-
- ENDIF
- IF _pick > 0
- GOTO _pick
- IF "["$_tcode
- &_tcode. = &_match.
- ELSE
- _tcode = &_match.
- ENDIF
- _retval = .T.
- ENDIF
- IF _narea > 0
- SELECT (_narea)
- USE
- ENDIF
- RETURN(_retval)
-
- * End of File