CONTINUE |
CONTINUE используют после того, как LOCATE успешно найдет запись, для продолжения операции LOCATE. CONTINUE перемещает указатель записи к следующей записи, для которой логическое выражение, определенное в предшествующей LOCATE, оценивается в истину (.T.)
CONTINUE может быть повторена, пока не будет обнаружен конец файла или конец области, определенной в LOCATE.
Если CONTINUE успешно нашла запись, RECNO( ) возвращает номер записи, FOUND( ) возвращает значение True (.T.), и EOF( ) возвращает значение False (.F.).
Если CONTINUE не обнаружила запись, RECNO( ) возвращает номер записи в таблице плюс один, FOUND( ) возвращает False (.F.), и EOF( ) возвращает True (.T.).
Пример
В следующем примере подсчитываются и отображаются все клиенты из Франции. Все записи найдены с использованием LOCATE с применением CONTINUE в пределах цикла.
![]() | |
---|---|
CLOSE DATABASES OPEN DATABASE (HOME(2) + 'Data\testdata') USE customer && Opens Customer table SET TALK OFF STORE 0 TO gnCount LOCATE FOR ALLTRIM(UPPER(country)) = 'FRANCE' DO WHILE FOUND( ) gnCount = gnCount + 1 CONTINUE ENDDO ? 'Total customers from France: '+ LTRIM(STR(gnCount)) |