Поле типа выборка имеет фиксированный набор данных. Чтобы определить возможные значения, необходимо разместить поле на какой-либо экранной форме. По команде Свойства контекстного меню открывается окно (рис. 2.5.10), в котором возможны следующие настройки:
·дополнительный заголовок поля;
·в разделе Внешний вид определяется вид поля — набор кнопок (элемент RadioButton) или выпадающий список (элемент ComboBox); в режиме RadioButton можно задать количество колонок при отображении данных на экране;
·в разделе Возможные значения вводятся значения поля (до 50 значений).
Рисунок 2.5.10. Окно настройки поля типа выборка
Изменение значений поля-выборки
Если некоторое поле-выборка уже заполнялось где-либо в ЭМК пациентов, т.е. для него имеются данные в базе, возможные значения в свойствах поля становятся недоступны для редактирования. Чтобы отредактировать набор значений, нужно нажать кнопку Изменить. Откроется окно Правила трансформации поля-выборки (рис. 2.5.10), в котором можно:
|
·изменить значение, вписав новый вариант в столбце Новое значение; |
·добавить новое значение; |
|
·удалить значение. При удалении поле с таким значением в базе данных обнулится, а числовые эквиваленты следующих за удаленным значений станут меньше на 1 (т.е. изменятся в соответствии с порядковым номером значения). |
Поле-выборка в формулах
Физически поле-выборка в таблице базы данных определено типом Integer (целое число). Первому значению выборки соответствует значение 0, второму – 1 и т.д. В формулах и макроподстановках можно сравнивать поля-выборки как с числовым, так и с текстовым значением, но рекомендуется использовать сравнение с числовым значением, чтобы при переименовании текстового значения формула осталась работоспособной.
Пример: формула
IF( {Пациенты.Пол =’женский’,1,0)
и формула
IF( {Пациенты.Пол} =1,1,0)
являются равнозначными.
Таким образом, если будет изменено текстовое значение поля-выборки, потребуется скорректировать первую формулу; если же в результате удаления некоторого значения изменится числовой эквивалент следующих за ним значений, потребуется скорректировать вторую формулу.
Если на поле-выборку назначена формула, присваивающая полю значение 0, поле получит первое значение из списка. Для проверки, имеет ли поле какое-либо значение, необходимо пользоваться функцией ISNULL(), а не сравнивать значение поля с нулем.