 |
поэтому пользователь должен иметь возможность переопределения
вычисляемого значения поля Item (Элемент).
Однако, во многих случаях защита вычисляемых полей необходима.
Некоторые вычисляемые поля в прикладной задаче не должны
переопределяться, в противном случае возникают недопустимые
значения. Например, система ObjectVision может вычислить неверное
значение для поля Extended Price (Увеличенная цена), если
пользователь переопределил вычисляемое значение для поля Total Price
(Итоговая цена).
Некоторые прикладные задачи (те, которые относятся к
"деликатным" областям, например, управлению персоналом) могут также
потребовать сокрытия некоторых деревьев принятия решений от
пользователей.
Далее Вам предстоит воспользоваться командой Properties|
Protection (Свойства| Защита) для защиты от переопределения
нескольких полей в форме Sales Order (Заказ на покупку).
+++> Ваши дальнейшие действия:
1. Находясь в инструментальном окне формы (Form Tool), выберите
поле Amount (Базовая цена), а затем выберите команду
Properties| Protection (Свойства| Защита).
Инструментальное окно формы (Form Tool) предлагает Вам
селектировать тип защиты, которую Вы хотите добавить к полю,
что показано на следующем рисунке:
50
Рис.4.4 Блок диалога Properties| Protection (Свойства| Защита):
1 - Защита поля; 2 - Без переопределения; 3 - Без отображения дерева
решений; 4 - Выполнить; 5 - Отменить
2. Маркируйте кнопку No Override (Без переопределения), а затем
нажмите кнопку OK или клавишу Enter.
3. Воспользуйтесь командой Properties| Repeat (Свойства|
Повторить), чтобы добавить защиту от переопределения к полям
Less Discount (Уменьшенная скидка), Total Price (Итоговая
цена), Shipping Cost (Стоимость отгрузки) и Extended Price
(Увеличенная цена).
Заметьте, что не следует добавлять защиту от переопределения к
полям Discount (Скидка) и Sales Tax (Налог на продажу). У
пользователя может возникнуть потребность в модификации значений
этих полей при определенных обстоятельствах, и изменение этих
значений не приведет к тому, что система ObjectVision будет
вычислять неверные результаты.
Если теперь Вы закроете инструментальное окно формы (Form Tool)
и попытаетесь модифицировать одно из защищенных полей, то
обнаружите, что это невозможно. Однако, Вы попрежнему можете
селектировать эти поля (чтобы в дальнейшем Вы могли бы при
необходимости добавить или просмотреть деревья принятия решений).
Создание поля с маской ввода (шаблоном)
--------------------------------------------------------------------
Ваша прикладная задача Myorder не содержит поля с маской ввода
(Picture), которая является мощным средством, контролирующим
правильность вводимых пользователем данных. В данном уроке Вам
предстоит создать поле Phone (Номер телефона) и превратить его из
типового поля в поле с маской ввода. Затем Вы опишете строку шаблона
(строку маски) (Picture string), чтобы ограничить пользователя
вводом телефонного номера в заданном Вами формате.
+++> Ваши дальнейшие действия:
1. Выберите команду Objects| Field (Объекты| Поле), селектируйте
элемент (Добавить новое поле), а затем выберите
кнопку OK. На экране появляется блок диалога Add New Field|
Field Name (Добавить новое поле| Имя поля).
2. Введите имя поля Phone (Номер телефона) и нажмите клавишу
Enter.
3. Расположите новое поле где-либо вблизи нижнего края Вашей формы
(в дальнейшем Вам предстоит удалить его, поэтому его точная
позиция не имеет значения).
4. Выберите команду Properties| Field Type (Свойства| Тип поля).
5. В блоке диалога Properties| Field Type (Свойства| Тип поля)
выберите элемент Picture (Маска ввода).
6. В блоке диалога Properties| Field Type| Picture String
(Свойства| Тип поля| Строка маски) введите строку
51
(###)###-####. Ваш блок диалога будет выглядеть приблизительно
так:
Рис.4.5 Блок диалога Field Type| Picture (Тип поля| Маска
ввода):
1 - Строка маски ввода (шаблона); 2 - Выполнить; 3 - Отменить
7. Выберите кнопку OK или нажмите клавишу Enter.
Возможно, теперь Вы захотите закрыть инструментальное окно
формы (Form Tool) и попытаться ввести какие-нибудь значения в
поле Phone (Номер телефона). Маски ввода (шаблоны) могут помочь
Вам без затруднений поддерживать единообразие и целостность
данных при вводе значений в нестандартные поля, такие как
номера карточек социального страхования, номера телефонов,
серийные номера и номера компонентов.
8. Выберите команду Tools| Form (Инструментарий| Форма) для того,
чтобы возвратиться в режим редактирования формы.
9. Селектируйте новое поле Phone (Номер телефона), а затем
выберите команду Edit| Cut (Редактировать| Отсечь) для удаления
поля из формы.
За дополнительной информацией относительно полей с масками
ввода следует обращаться к Главе 3 "Справочника по системе
ObjectVision". Сейчас Вы завершили текущую часть Учебника. Если Вы
предполагаете продолжить работу, то сначала непременно сохраните
свою форму.
52
ГЛАВА 5. СОЗДАНИЕ ДЕРЕВА РЕШЕНИЙ
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
В предлагаемой главе Вы добавите дерево принятия решений к полю
Shipping Method (Метод отгрузки). Вам предстоит выполнить следующие
процедуры системы ObjectVision:
- Открыть инструментальное окно дерева (Tree Tool);
- Использовать команды меню Objects (Объекты) для вставки узлов
ветвей, условий (conditions) и узлов выводов в дерево принятия
_____________________
решений поля Shipping Method (Метод отгрузки);
- Проверить свое дерево принятия решений.
Инструментальное окно дерева (Tree Tool)
--------------------------------------------------------------------
Дерево принятия решений графически представляет тот логический
аппарат, который используется системой ObjectVision для вычисления
значения поля.
Не каждое поле обладает деревом принятия решений. Вам следует
описывать дерево принятия решений для некоторого поля только в том
случае, когда Вы хотите, чтобы система ObjectVision вычисляла бы
значение этого поля. Если поле получит свое значение в результате
ввода данных пользователем или через внешнюю связь, то для него не
нужно создавать дерево принятия решений.
 |
|