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


Команда 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, можно порождать в одном формате специфическое форматирование записей каждого типа.



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