Абриаль 2.0 http://www.artint.ru/packin/abrial А.И.Пацкин [mailto:aleksandr@tochka.ru]
README 2.0 ] Абриаль 2.0 ] Введение (1.6) ] Обзор (1.6) ] Публикации ] Глоссарий ] Оглавление ] Руководство ] Выше ] _ operations ] A ] B ] C ] D ] E ] F ] G ] H-I ] L ] M ] N ] [ O ] P ] R ] S ] T-X ]

O


OBJ  Получение идентификатора объекта.


Формат:

<#OBJ [{[N=]object-name [C=]class-name}| O=object]> 

Аргументы/Атрибуты:

object - идентификатор объекта
object-name - имя объекта
class-name - имя класса объекта

Описание:

Получает числовой идентификатор объекта текущей БД по имени и имени класса. 

Объект может быть указан числовым идентификатором object или своим именем object-name и именем класса class-name, членом которого он является, без атрибутов "N= C=" ожидается в качестве первого и второго аргументов. По умолчанию возвращает числовой идентификатор текущего объекта текущей БД.

Возвращает числовой идентификатор объекта текущей БД, (0) - для несуществующих объектов.

Признаки:

простой, ленивый.  

Использование:  

 

Примечание:

 

Пример:

<#EQ (OBJ N=(person) С="Личность") "0" ("Данные о личности "(person)" отсутствуют.")(PersonPage(person))> 


OBJFORM  Получение стандартного изображения объекта в виде таблицы.


Формат:

<#OBJFORM [{[N=]object-name [C=]class-name}| O=object] [D=dbname]> 

Аргументы/Атрибуты:

object-name - имя объекта
class-name - имя класса объекта
object - идентификатор объекта
dbname - путь к файлу БД

Описание:

Формирует в виде таблицы стандартное изображение объекта, в общем виде:
<table border=1>
<tr align=center><th><a href="ab://ab/D=dbname">[class-name]</a>[#object]</th><th>[object-name]</th></tr>

<tr><td><b><a href="ab://ab/D=dbname&O=aspect">aspect-name</a></b></td>
  <td>
 {<a href="ab://ab/D=dbname&O=value">value-image</a>&nbsp;}* 
 </td>
</tr> 
}+
</table>
где: aspect - числовой идентификатор аспекта; aspect-name - имя аспекта; value - числовой идентификатор объекта - значения аспекта; value-image - изображение значения аспекта объекта. 

Формируется таблица из двух столбцов. В заголовке первого столбца отображается ссылка на класс объекта и числовой идентификатор объекта. В заголовке второго столбца отображается имя объекта. В каждой строке таблицы в первом столбце отображается ссылка на аспект класса объекта, во втором столбце - ссылки на все значения аспекта объекта. 

Объект может быть указан числовым идентификатором object или своим именем object-name и именем своего класса class-name, без атрибутов "N= C=" ожидается в качестве первого и второго аргументов. По умолчанию используется текущий объект.

Если указана БД dbname, отличная от текущей, то необходимо явно задавать объект. По умолчанию используется текущая БД.

В случае успеха возвращает полученный таким образом <table>- тег (стандартное изображение объекта), иначе пусто. 

Признаки:

простой, ленивый.  

Использование:  

 

Примечание:

 

Пример:

<#(OBJFORM N="Вася" C="Names")>


ON  Установка текущего объекта и аспекта.


Формат:

<#ON [[O=]object] [AN=aspect-name | A=aspect] [D=dbname] [[RET=]body]>

Аргументы/Атрибуты:

object - идентификатор объекта
aspect-name - имя аспекта
aspect - идентификатор аспекта
dbname - путь к файлу БД
body - тело области контекста

Описание:

В теле body устанавливает текущим объект и аспект. Если указана БД dbname, отличная от текущей, то необходимо явно указывать объект и аспект. 

Объект может быть указан числовым идентификатором object, без атрибута "O=" ожидается в качестве первого аргумента. По умолчанию используется текущий объект. 

Аспект может быть указан числовым идентификатором aspect или своим именем aspect-name

С атрибутом "RET=", или без него последним аргументом, может быть указано тело body

В случае успеха возвращает результат вычисленного тела body, иначе пусто.

Признаки:

простой, ленивый.  

Использование:  

 

Примечание:

Аналогичен FOROBJ, отличается тем, что ON-простой. 

Пример:

<#ON (OBJ N="Names" C=CLASS) D="MyDB.ab" RET=(OBJFORM)>

Выводим в виде таблицы свойства класса Names БД "MyDB.ab".


OPEN  Открытие БД.


Формат:

<#OPEN D=dbname >

Аргументы/Атрибуты:

dbname - путь к файлу БД

Описание:

См. _OPEN.

Признаки:

простой, ленивый. 

Использование:

 

Примечание:

Аналогичен _OPEN. 

Пример:

<#OPEN (CAT (PATH TYPE=DBASE) "MyDB.ab")>

Открываем БД.


OR  Логическое "ИЛИ".


Формат:

<#OR {expression}*> 

Аргументы/Атрибуты:

expression - аргументы

Описание:

Возвращает вычисленное значение первого непустого аргумента, если таковой имеется среди указанных аргументов expression, иначе пусто.

Признаки:

простой, ленивый.  

Использование:  

 

Примечание:

 

Пример:

<#IF (OR (x)(y))> <#/>


 

Все права защищены. © 2000-2003 РосНИИ ИИ
http://www.artint.ru
Copyright. © 2000-2003 by RRIAI
Александр Иосифович Пацкин [mailto:aleksandr@tochka.ru].
07 марта, 2004

К началу документа.