Определяет, совпадает ли некоторое выражение с каким-либо другим выражением из заданной группы выражений.

INLIST(eExpression1, eExpression2 [, eExpression3 ...])

Параметры

eExpression1

Задает выражение, которое функция INLIST( ) ищет в группе выражений.

eExpression2[, eExpression3...]

Задает группу выражений, среди которых ведется поиск. Необходимо задать, по крайней мере, одно выражение (eExpression2), а всего их может быть не более 25 (eExpression2, eExpression3, и т. д.).

Все выражения в этой группе должны быть одного и того же типа.

Expand imageВозвращаемое значение

Логический или значение NULL

Expand imageПримечания

Функция INLIST( ) возвращает значение "истина" (.T.), если она нашла данное выражение в группе выражений; в противном случае INLIST( ) возвращает "ложь" (.F.). Если eExpression1 задает значение NULL, возвращается значение NULL. Значение NULL возвращается также в том случае, если выражение eExpression1 определяет значение, отличное от NULL, eExpression1 не совпадает ни с каким другим выражением и, по меньшей мере, одно из этих других выражений имеет значение NULL.

Expand imageПример

В следующем примере функция INLIST( ) определяет, какому кварталу соответствует текущий месяц. Имя месяца хранится в переменной gcMonth. Каждый оператор CASE с помощью функции INLIST( ) определяет, находится ли содержимое gcMonth в списке имен месяцев. Возвращаемое имя квартала записывается в переменную gcReporTitle.

  CopyCode imageCopy Code
SET TALK ON
STORE CMONTH(DATE( )) TO gcMonth
DO CASE
   CASE INLIST(gcMonth,'January','February','March')
      STORE 'First Quarter' TO gcReporTitle
   CASE INLIST(gcMonth,'April','May','June')
      STORE 'Second Quarter' TO gcReporTitle
   CASE INLIST(gcMonth,'July','August','September')
      STORE 'Third Quarter' TO gcReporTitle
   OTHERWISE
      STORE 'Fourth Quarter' TO gcReporTitle
ENDCASE
WAIT WINDOW gcReporTitle

Expand imageСмотрите также