Диалоговое окно мастера Model Update Tool с итоговым отчетом показано на рис. В.8.
Рис. В.8. Итоговый отчетов обновлении модели
Приложение С. Примеры программ на Visual Basic
Здесь содержится информация, необходимая для создания динамической библиотеки (DLL) на языке Visual Basic и использования ее в приложениях (подразумевается, что у вас есть версия Rational Rose Enterprise или Rational Rose Professional Visual Basic Edition). Если язык Visual Basic недоступен, сделайте следующее: выберите команду меню Add-Ins => Add-In Manager (Подключаемые модули => Менеджер подключаемых модулей), а затем модуль для Visual Basic и щелкните по кнопке ОК. Поскольку обычно в Rational Rose операции можно выполнять различными способами, то в этом примере элементы будут создаваться по-разному.
Создание динамической библиотеки ActiveXДля установки Visual Basic в качестве языка, используемого по умолчанию, и отображения стереотипов в виде названий:
1. Выберите команду меню Tools => Options (Сервис => Параметры).
2. Выберите вкладку Notation (Нотация).
3. В открывающемся списке Default Language (Язык по умолчанию) укажите Visual Basic.
4. Выберите вкладку Diagram (Диаграмма).
5. Установите переключатель Label (Название) в группе переключателей Stereotype display (Отображение стереотипов).
6. Щелкните по кнопке ОК, чтобы закрыть диалоговое окно Options (Параметры).
Последовательность установки параметров генерации кода для языка Visual Basic:
1. Выберите команду меню Tools => Visual Basic => Options (Сервис => Visual Basic => Параметры).
2. Сбросьте флажки Generate debug code (Генерация отладочной информации) и Generate error-handling (Генерация обработчиков ошибок).
3. Щелкните по кнопке ОК, чтобы закрыть диалоговое окно Visual Basic Properties (Параметры Visual Basic).
Этапы создания класса Payclerk:
1. Щелкните по значку «+» слева от названия раздела Logical View (Логическое представление) в окне браузера.
2. Дважды щелкните по диаграмме Main (Главная диаграмма), чтобы открыть ее.
3. Щелкните по кнопке Class (Класс) на панели инструментов.
4. Щелкните по главной диаграмме, чтобы поместить на нее класс.
5. Наберите имя класса — Payclerk.
Чтобы ввести описание для класса Payclerk и добавить операцию:
1. Дважды щелкните по классу в списке браузера или по главной диаграмме классов — откроется диалоговое окно настройки параметров класса.
2. В поле Documentation (Описание) введите описание класса Payclerk — Payclerk вычисляет недельный заработок.
3. Выберите вкладку Operations (Операции).
4. Щелкните правой кнопкой мыши по списку операций.
5. В появившемся контекстно-зависимом меню выберите команду Insert (Добавить). В список будет добавлена новая операция.
6. Введите имя новой операции — calcPay.
7. Щелкните по кнопке ОК, чтобы закрыть диалоговое окно настройки параметров класса.
Последовательность указания аргументов и типа возвращаемого значения для операции calcPay:
1. Щелкните по значку «+» слева от названия раздела Logical View в окне браузера.
2. Щелкните по значку «+» слева от названия класса Payclerk.
3. Дважды щелкните по операции calcPay, чтобы закрыть диалоговое окно настройки параметров операции.
4. В открывающемся списке Return Class (Возвращаемый класс) выберите Currency.
5. Выберите вкладку Detail (Детально).
6. Щелкните правой кнопкой мыши по списку аргументов.
7. В появившемся контекстно-зависимом меню выберите команду Insert. В список будет добавлен новый аргумент.
8. Введите имя нового аргумента — rate.
9. В открывающемся списке в колонке Туре (Тип) выберите Integer.
10. Щелкните по кнопке ОК, чтобы закрыть диалоговое окно настройки параметров операции.
Для создания интерфейсного класса IPayroll:
1. Щелкните правой кнопкой мыши по названию раздела Logical View.
2. В появившемся контекстно-зависимом меню выберите команду New => Interface (Создать => Интерфейс). В список браузера будет добавлен новый класс со стереотипом интерфейс (Interface).
3. Введите имя нового интерфейсного класса — IPayroll.
Добавление интерфейсного класса на главную диаграмму классов предусматривает выполнение следующих действий:
1. Дважды щелкните по диаграмме Main в разделе Logical View (Логическое представление), чтобы открыть ее.
2. В списке браузера выберите класс IPayroll и перетащите его с помощью мыши на главную диаграмму классов.
Последовательность добавления операции к классу IPayroll:
1. Щелкните правой кнопкой мыши по классу IPayroll на главной диаграмме классов.
2. В появившемся контекстно-зависимом меню выберите команду New => Operation (Создать => Операция). К классу будет добавлена новая операция.
3. Введите имя операции и тип возвращаемого значения — calcPay(rate Integer):Currency (проверьте, что указали именно такой формат).
Для создания класса Payroll:
1. Щелкните правой кнопкой мыши по названию раздела Logical View.
2. В появившемся контекстно-зависимом меню выберите команду New => Class (Создать => Класс). В список браузера будет добавлен новый класс.
3. Введите имя нового класса — Payroll.
Этапы добавления класса Payroll на главную диаграмму классов:
1. Дважды щелкните по диаграмме Main в разделе Logical View, чтобы открыть ее.
2. В списке браузера выберите класс Payroll и перетащите его с помощью мыши на главную диаграмму классов.
Чтобы создать отношения реализации между классами IPayroll и Payroll:
1. Щелкните по кнопке Realize (Реализация) на панели инструментов.
2. Щелкните по классу Payroll на главной диаграмме классов и проведите линию связи к классу IPayroll.
Для создания отношения между классами Payroll и Payclerk:
1. Щелкните по кнопке Unidirectional Association (Однонаправленная ассоциативная связь) на панели инструментов.
2. Щелкните по классу Payroll на главной диаграмме классов и проведите линию связи к классу Payclerk.
Чтобы указать название роли:
1. Щелкните правой кнопкой мыши по линии ассоциативной связи рядом с классом Payclerk.
2. В появившемся контекстно-зависимом меню выберите команду Role Name (Название роли).
3. Введите название роли — myClerk.
Этапы объявления ассоциации скрытой:
1. Щелкните правой кнопкой мыши по линии ассоциативной связи рядом с классом Payclerk.
2. В появившемся контекстно-зависимом меню выберите команду Private (Скрытый).
Для указания мощности:
1. Щелкните правой кнопкой мыши по линии ассоциативной связи рядом с классом Payclerk.
2. В появившемся контекстно-зависимом меню выберите команду Multiplicity: 1 (Мощность: 1).
Установка параметров генерации кода для класса IPayroll с помощью программы Model Assistant Tool требует выполнения следующих действий:
1. В списке браузера щелкните правой кнопкой мыши по классу IPayroll или по диаграмме классов.
2. В появившемся контекстно-зависимом меню выберите команду Model Assistant.
3. Выберите класс IPayroll в списке программы Model Assistant.
4. В открывающемся списке Instancing (Способ создания экземпляров) выберите MultiUse (Многократное использование).
5. Щелкните по кнопке ОК, чтобы закрыть окно Model Assistant.
Чтобы установить параметры генерации кода для класса Payroll с помощью программы Model Assistant Tool:
1. Щелкните правой кнопкой мыши по классу Payroll в списке браузера или по диаграмме классов.
2. В появившемся контекстно-зависимом меню выберите команду Model Assistant.
3. Выберите класс Payroll в списке программы Model Assistant.
4. В открывающемся списке Instancing (Способ создания экземпляров) выберите MultiUse (Многократное использование).
5. Щелкните по значку «+» слева от названия раздела Implements Classes (Реализует классы) в списке, чтобы открыть вложенный список.
6. Щелкните по значку «+» слева от названия класса IPayroll, чтобы открыть вложенный список.
7. Выберите операцию IPayroll_calcPay.
8. Установите переключатель Public (Общедоступный) в группе элементов Access (Доступ).
9. Щелкните по значку «+» слева от названия раздела Properties (Свойства) в списке, чтобы открыть вложенный список.
10. Щелкните по значку «+» слева от названия роли myClerk, чтобы открыть вложенный список.
11. Выберите роль myClerk.
12. Установите флажок New (Новый).
13. Щелкните по кнопке ОК, чтобы закрыть окно Model Assistant.
Для создания компонента PayrollCalculator:
1. Щелкните правой кнопкой мыши по названию раздела Component View (Представление компонентов) в браузере.