2.4.2. Генерация кода в Visual Basic
2.4.2. Генерация кода в Visual Basic
ERwin поддерживает генерацию кода для MS Visual Basic версий 4.0 и 5.0. В качестве источника информации при генерации форм служит модель ERwin. Использование ERwin позволяет одновременно описывать как клиентскую часть (объекты, отображающие данные на экране), так и сервер БД (процедуры и триггеры), тем самым оптимально распределяя функциональность ИС между клиентской и серверной частью. Компонент ERwin Form Wizard автоматически проектирует формы с дочерними объектами -кнопками, списками, полями, радиокнопками и т. д., используя расширенные атрибуты.
Совместное использование ERwin и Visual Basic может значительно сократить жизненный цикл разработки ИС, поскольку для каждой задачи используется наиболее эффективный инструмент. Visual Basic может быть использован для проектирования визуального интерфейса, а ERwin - для разработки логической и физической модели данных с последующей генерацией системного каталога сервера. Если БД уже существует, то с помощью ERwin можно провести обратное проектирование (reverse engineering),
полученную модель дополнить расширенными атрибутами и сгенерировать клиентское приложение.
Для генерации клиентской части в диалоге Target Client (меню Client/ Target Client) необходимо выбрать среду программирования - Visual Basic либо Power Builder (рис. 2.111).
Рис. 2.111. Диалог Target Client
Если в качестве клиента выбран Visual Basic, в диалоге Column Editor появляются две закладки для задания расширенных атрибутов (рис. 2.112).
Рис. 2.112. Закладки Visual Basic диалога Column Editor
В первой закладке (на рисунке слева) комбинированные списки Style, Valid и Initial служат соответственно для задания колонке предварительно описанных и именованных стиля, правила валидации и начального значения.
Help ID - поле для контекстного номера объекта, который используется при создании контекстной помощи (HelpContextID).
Опция Read Only должна быть включена, если объект на экранной форме не должен редактироваться.
Окно выбора Bitmap служит для указания, что в соответствующей колонке хранится изображение.
Включенная опция Required указывает, что пользователь обязательно должен внести данные в соответствующее поле. Если данные не будут введены, Visual Basic выдаст предупреждение.
Empty Is Null - опция указывает, что пустое поле будет восприниматься как NULL-значение.
Visible - если опция выключена, Visual Basic создает невидимый объект. Tag - текст комментария к объекту. При генерации кода не используется.
Prompt - текст, который появляется в status bar, если на объекте установлен фокус.
Во второй закладке (на рисунке справа) можно задать шрифт, цвет, метку (Label) и заголовок (Header) объекта. Поле Accel служит для описания комбинации клавиш быстрой установки фокуса на объект.
После задания свойств для каждой колонки следует сохранить модель.
В среде Visual Basic 5.0 необходимо создать новый проект Visual Basic и подключить к нему два внешних файла CONST40.BAS и ERWIN40.BAS, расположенных в каталоге ERwin. Затем следует выбрать в меню Add-Ins/ERwin/Form Wizard. В появляющихся затем диалогах (для перехода к последующему служит кнопка Next, к предыдущему - Back) нужно последовательно указать имя файла модели, родительской и дочерних таблиц (возможно построение формы по родительской и нескольким дочерним таблицам) и колонок, которые будут отображены в сгенерированной форме (рис. 2.113), Затем нужно установить стиль отображения таблиц - свободный (freeform), в виде полей или табличный (grid).
После нажатия на кнопку ОК будет сгенерировано приложение, которое может быть откомпилировано и выполнено без дополнительного редактирования.
Сгенерированная экранная форма (рис. 2.114) помимо элементов отображения информации БД будет содержать управляющие кнопки New, Update, Delete, Close и навигатор для перемещения по строкам. Если полученную форму сделать главной формой проекта, то при запуске приложения возникнет диалог связи с БД. При успешном соединении (через ODBC) будет загружена информация из БД.