Возвращает значение "истина" (.T.) в случае успешного выполнения команды CONTINUE, FIND, LOCATE или SEEK.
Синтаксис:
FOUND([nWorkArea | cTableAlias])
Параметры:
nWorkArea
Задает рабочую область таблицы, для которой функция FOUND( ) сообщает о результатах выполнения последней команды CONTINUE, FIND, LOCATE или SEEK.
Функция FOUND( ) возвращает значение "ложь" (.F.), если таблица в заданной рабочей области не открыта.
cTableAlias
Задает псевдоним таблицы, для которой FOUND( ) сообщает о результатах выполнения последней команды CONTINUE, FIND, LOCATE или SEEK.
Если задать несуществующий псевдоним таблицы, Visual FoxPro генерирует сообщение об ошибке.
Результат:
Логический.
Комментарии:
Функция FOUND( ) возвращает логическое значение, которое говорит о том, была ли успешной последняя выполненная команда CONTINUE, FIND, LOCATE или SEEK или перемещался ли указатель записи в связанной таблице. FOUND( ) возвращает значение "истина" (.T.), если поиск прошел успешно, в противном случае FOUND( ) возвращает "ложь" (.F.).
Если все необязательные аргументы опущены, функция FOUND( ) сообщает о результате выполнения последней команды CONTINUE, FIND, LOCATE или SEEK для таблицы, открытой в текущей рабочей области.
Совет. С помощью данной функции можно определить, есть ли в дочерней таблице запись, соответствующая некоторой родительской записи.
Пример:
* В следующем примере подсчитывается число покупателей в Германии. SET TALK OFF CLOSE DATABASES OPEN DATABASE (HOME( ) + 'samples\data\testdata') USE customer && Opens Customer table STORE 0 TO gnCount LOCATE FOR UPPER(country) = 'GERMANY' DO WHILE FOUND( ) gnCount = gnCount + 1 CONTINUE ENDDO WAIT WINDOW 'Total customers from Germany: '; + LTRIM(STR(gnCount)) NOWAIT