|
![]() |
#1 |
Участник
|
Согласен, т.к. "датабинд" при модификации поля с полом распространится на все записи в Grid'e.
В принципе, как мне кажется есть выход в создании справочника семейных статусов, где каждому значению семейного статуса будет соответствовать определенный пол. И уже после этого следует перекрывать метод lookup() для поля с семейным статусом из созданной таблицы-справочника, в котором отфильтровывались бы записи в зависимости от значения поля с полом. Может быть, я немного отдалился от первоначального вопроса, но данную задачу я, скорее всего, решил бы так.
__________________
С уважением, Александр. Последний раз редактировалось samolalex; 24.12.2010 в 11:59. |
|
![]() |
#2 |
Administrator
|
Цитата:
Сообщение от samolalex
![]() Согласен, т.к. датабинд при модификации поля с полом распространится на все записи в Grid'e.
В принципе, как мне кажется есть выход в создании справочника семейных статусов, где каждому значению семейного статуса будет соответствовать определенный пол. И уже после этого следует перекрывать метод lookup() для поля с семейным статусом из созданной таблицы-справочника, в котором фильтровались записи в зависимости от значения поля с полом. Может быть, я немного отдалился от первоначального вопроса, но данную задачу я, скорее всего, решил бы так.
__________________
Возможно сделать все. Вопрос времени |
|
![]() |
#3 |
Участник
|
Цитата:
Сообщение от sukhanchik
![]() В данной конкретной - задаче - можно решить так, поскольку енумы с полом и семейным положением не влияют на функциональную логику работы системы. В общем-же случае - замена енума на справочник невозможна / нетривиальна, т.к. на конкретные значения енума может быть завязана конкретная логика, которую нельзя завязать на значения справочника.
__________________
С уважением, Александр. |
|
![]() |
#4 |
Участник
|
А где дальше используется это значение "женат/замужем" ? Может проще было расширить enum: значение "женат/замужем" поменять на "женат", добавить новое "замужем", джобиком поменять значения для женщин.
|
|
|
За это сообщение автора поблагодарили: sukhanchik (2), samolalex (1). |
![]() |
#5 |
Участник
|
Цитата:
Получилось сделать как предложил samolalex, НО пришлось контрол отвязать от поля таблицы. И прийдется вручную присваивать значение полю. |
|
![]() |
#6 |
Administrator
|
Во! а это я тоже проходил. Но сразу не вспомнил. Тоже момент кстати. Т.е. едит-метод => без сортировки / фильтрации получился
__________________
Возможно сделать все. Вопрос времени |
|
![]() |
#7 |
северный Будда
|
Строго говоря, нужно (в зависимости от пола) не два разных enuma, а два разных перевода значений енума. Т.е. нужно всегда выбирать NotMarried, но в грид выводить либо "Холост", либо "Не замужем".
Т.е. я бы сделал так: 1) Сделал на форме фильтрацию по данному енуму в заголовке. Там можно использовать стандартный перевод 2) Убрал бы само поле из отображения на форме (со всех закладок), а вместо него - выводил бы дисплей с соответствующим переводом 3) Ещё понадобится отдельная кнопка для ручной смены статуса. Там в диалоге уже можно использовать подменные енумы. P.S. Можно ещё покопаться в классе FormComboBoxControl. Может быть, там найдётся инструмент подмены меток.
__________________
С уважением, Вячеслав Последний раз редактировалось pitersky; 24.12.2010 в 12:59. |
|
|
За это сообщение автора поблагодарили: sukhanchik (2). |
![]() |
#8 |
Administrator
|
В этом случае опять все упрется в сложность отображения енума в гриде. Ну либо это уже будет не енум, а текстовое значение. Формальный минус - лишимся сортировки в форме. Правда не сильно критично - при наличии фильтрации и возможности сортировать по исходному полю
__________________
Возможно сделать все. Вопрос времени |
|
![]() |
#9 |
северный Будда
|
В принципе, если к расширенному енуму создать EDT и на него навесить relation по значению пола, то можно получить отдельные списки по каждому полу. Другое дело, что такое расширение енума ИМХО неоправдано - состояние "в браке" от пола не зависит
__________________
С уважением, Вячеслав |
|
![]() |
#10 |
Участник
|
Цитата:
Но в стандарте используется енум. Поэтому и хочется перейти на стандарт, но со своими особенностями. |
|
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|