Здравствуйте, Sinclair, Вы писали:
S>Здравствуйте, adontz, Вы писали:
A>>ИМХО первый вариант вообще нельзя использовать, второй лучше но не идеален, а надо так
A>>Ну и колечно когда выбрано use default value EDIT должен быть выключен.
S>Подход совершенно верный. Я бы еще дополнил, что бизнес-логика в таком случае на самом деле включает в себя два вопроса. И только второй из них про значение. При этом текст вопроса может и должен зависеть от бизнес логики. Например:
S>S>[x] Отправлять ли извещения об изменениях в данной категории?
S> Введите адрес: [_________________________________________]
S>
S>Или:
S>S>[x] Ограничить максимальный размер занимаемой памяти?
S> Ограничение, МB: [_________________________[v]
S>
S>И т.д. А то, что оба ответа можно спрятать в одно поле СУБД — игра слепого случая
Итак, имеется конкретная задача: рабочее место врача-эксперта (члена некоей комиссии).
Врач должен отразить свое мнение по баальшущему списку (~100) вопросов, каждый из которых имеет ~10 вариантов ответов. Причем практически по любому из них у него мнения может и не быть (не уверен, не уполномочен и т.п.) — т.е. типичное значение "не известно","не знаю" — т.е. NULL. И что же, прикажете вместо 100 контролов (комобо-боксов в этом случае) лепить 200?!
Действительно, бизнес-логика включает два вопроса, но зачем же этим загружать пользователя (и перегружать интерфейс)?! И средствами одного контрола можно показать, что значение не определено (если spin-edit пустой — IMHO все и так понятно). Это ж не бумажный документ, где нужно явно ставить прочерк или Z, чтобы враг не вписал чего лишнего!
Достаточно дать пользователю единообразный способ очистки (сброса в NULL) любого атрибута (комбинация клавиш и кнопка на тул-баре, а для комбо-бокса, кроме того, в список можно ввести пустую строку или строку типа "Не определено").
По-моему, грузить пользователя различиями между "пусто", "отсутствует", "не определено", "по-умолчанию" и т.п. нужно, только если без этого действительно не обойтись (в случае текста, если пустая строка имеет смысл, отличный от "не определено" или в случае, если атрибут — множественное значение на основе справочника).