Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методическое пособие (KAPPA).doc
Скачиваний:
27
Добавлен:
10.02.2015
Размер:
393.22 Кб
Скачать

Результаты выполнения шага 5

Вы создали метод с именем ChangeJob ( рис. 5), который будет автоматически изменять свойство «качество работы» объекта, как модели служащего, на Engineer, как только его качество работы превысит рейтинг 9. В настоящее время Том – инженер. Кликните на иконке Session главного меню КАРРА РС. Откроется окно Session. Используя ползунок Slider измените качество работы Тома на величину больше 9. Теперь кликните на иконке Object Browser и посмотрите на свойства Тома. Теперь он автоматически (программно) продвинут в менеджеры.

Рис. 5. Разработанный метод ChangeJob в окне редактора методов.

Рис. 6. Использование образа «ползунок» для изменения значения свойства Performance у объекта Tom.

Рис. 7. Окно Object Browser с измененной иерархией, после использования метода ChangeJob для продвижения Тома в менеджеры.

Шаг 6: Создание и использование функций

Вам необходимо вручную продвинуть или понизить в должности служащего. Для этого можно использовать такое средство КАРРА-РС как функция. Функции выполняют типовые, базовые подзадачи обработки информации при разработке приложений. В КАРРА-РС имеется около 300 стандартных функций. Вы можете также разрабатывать и свои собственные функции.

Интерактивно

Программно

  1. В Object Browser кликните на классе объекте Global.

В окне KAL-интерпретатора введите:

MakeSlot (Global, Demotee);

MakeFunction (Demote, [ ]);

{

PostInputForm (“Who is to be demoted?”, Global:Demotee, Name);

MoveInstance (GlobalDemotee, Engineer);

});

MakeSlot (Global, Promotee);

MakeFunction (Promote, [ ]);

{

PostInputForm (“Who is to be promoted?”, Global:Promotee, Name);

MoveInstance (GlobalPromotee, Manager);

});

2. Выберите Edit из выпадающего меню.

3. Выберите Slots из меню и выберите из выпадающего меню New.

4. Введите в поле имени:

Demote

и нажмите Enter.

5. Выберите Update из меню и выберите Close из выпадающего меню. Сохраните объект.

6. В главном меню КАРРА РС кликните на опции Windows. На выпадающем меню выберите опцию Show Knowledge Tools. В открывшемся окне кликните на иконке Function. В выпадающем меню выберите опцию New.

7. Введите Demote в поле имени и нажмите Enter.

8. Нажмите еще раз Enter (или кликните мышью на поле Body), чтобы перейти из поля Arguments в поле Body (т.е. чтобы приступить к записи тела функции) .

  1. В поле Body введите следующее:

{

PostInputForm (“Who is to be demoted?”, Global:Demotee, Name);

MoveInstance (Global:Demotee, Engineer);

};

10. Выберите еще раз Update из меню редактора классов и выберите Close из выпадающего меню. Нажмите Enter, чтобы закрыть окно и сохранить функцию.

11. Повторите п. 1 – 11, чтобы создать функцию Promote. При этом замените везде слово Demote на слово Promote, Demotee на Promotee и Engineer на Manager.

Завершите шаг 6.

Из меню главного окна КАРРА РС выберите Fail, далее Save as

В поле Fail Name Field введите Tut6.kal и кликните на кнопке Save.