Bold — инструмент реализации MDA в Delphi
Таблица 1. Состав основных тэг-параметров и их назначение
Тэг-параметр |
Назначение |
Элементы модели |
| DefaultStringRepresentation | Определяет строковое представление для объектов класса, в частности при отображении на формах, автоформах, заголовках столбцов сеток (Grid). Задается OCL-выражением | Класс |
| FileName | При генерации кода определяет имя файла, содержащего код операций класса | Класс |
| InitalValue | Начальное значение, автоматически присваиваемое атрибуту при вызове конструктора объекта | Атрибут класса |
| Derived | Признак того, что значение данного объекта является «вычисляемым» по данным других объектов. Правила для вычисления задаются либо OCL-выражением, либо в коде программы | Атрибут класса |
| Visibility | Задает «видимость» объекта при генерации свойства класса в программном коде | Атрибут класса |
| AttributeKind | Вид атрибута. Если значение равно BOLD, то атрибут является Bold-атрибутом, если значение равно Delphi, то Delphi-свойством. В последнем случае информация об объекте недоступна во время выполнения. По умолчанию значение равно BOLD | Атрибут класса |
| Length | Длина атрибута. Имеет значение при генерации строковых полей таблиц некоторых СУБД, имеющих ограничения на длину строки. По умолчанию равна 255 | Атрибут класса |
| AllowNULL | Указывает, допустимы ли значения NULL (пустые) для атрибута. По умолчанию равно False | Атрибут класса |
| DerivationOCL | OCL-выражение для «вычисляемых» (derived) атрибутов (см. выше в этой таблице) | Атрибут класса |
| DelayedFetch | Если TRUE, то указывает, что значения данного атрибута не должны вызываться из уровня данных во время загрузки объекта класса. Значения будут в этом случае загружены при первом обращении к атрибуту | Атрибут класса |
| Persistent | Если TRUE, то значение атрибута будет сохраняться на уровне данных. Для derived-атрибутов этот параметр игнорируется | Атрибут класса |
| Ordered | Если TRUE, то роль упорядоченная. При этом автоматически будет создаваться дополнительное поле для таблицы класса на противоположном конце ассоциации | Роль ассоциации |
| DeleteAction | Определяет тип действия при попытке удаления связанного объекта. Принимает
значения: • Allow (разрешить) объект удаляется • Prohibit (запретить) — генерируется программное исключение • Cascade (каскадное удаление) — удаляются все связанные объекты |
Роль ассоциации |








