Система автоматизации библиотек ИРБИС

       

Команда IF


Команда IF предоставляет возможность строить контекстнозависимые форматы, т. е. форматы, способные изменять выходные значения в зависимости от содержимого форматируемой записи.

Команда IF записывается следующим образом:

IF  условие  THEN  формат-1  ELSE  формат-2  FI

где:

Условие

логическое выражение, определенное в соответствии с правилами, описанными в п. 7.3;

Формат-1

формат, который вычисляется в том и только том случае, когда значением логического выражения является "истина";

формат-2

формат, который вычисляется в том и только том случае, когда значением логического выражения является "ложь".

Фраза ELSE формат-2 не является обязательной, и может быть опущена. Ключевые слова IF, THEN и FI обязательны всегда. Формат-1 может быть опущен, если присутствует предложение ELSE

(т.е. если условие истинно, то ничего не будет выведено). Таким образом, команда IF может также принимать одну из следующих дополнительных форм:

IF  условие  THEN  формат-1  FI

IF  условие  THEN  ELSE формат-2  FI

Поскольку нет никаких ограничений на команды, которые можно использовать в формате-1 и формате-2, то команды IF

могут быть вложены друг в друга любое количество раз. Ключевое слово FI, в таком случае, должно закрывать каждую команду IF (можно рассматривать IF и FI

как пару скобок). Например:

if p(v1) then v24 else if p(v2) and a(v3) then v5 fi fi

Команда IF
Команда IF
Команда IF
Команда IF
 

Команда IF
Команда IF
   

Команда IF особенно полезна для создания обобщенных форматов в интегрированных базах данных, которые содержат различные типы записей. В этом случае надо иметь различные метки для каждого типа записи (должно быть поле, содержащее код, идентифицирующий тип записи). Таким образом, проверяя тип документа с помощью команды IF, можно порождать в одном формате специфическое форматирование записей каждого типа.



Содержание раздела