DBGrid+MySQL enum или..?

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

DBGrid+MySQL enum или..?

Сообщение А.Н. » 15.06.2010 11:55:33

Возможно ли, по-человечески (выбирая значения из списка) работать с Enum, используя стандартный DBGrid?
А, может, есть компоненты, которые это позволяют?

Или, может, возможно обойтись без Enum (хотя, это уже не в тему Lazarus, но, может, кто поможет)?
Есть таблица, такого типа:
http://mvf.klerk.ru/zakon/pp739.htm

Самая нижняя:
"Раздел III. Порядок применения страховых тарифов страховщиками при определении страховой премии".

Охота хранить формулы. Сами формулы хранятся, например, в таблице ins_formula.
Есть таблица, используемая для выбора нужной формулы.
Выбор формулы зависит от группы клиента (юр. или физ. лицо), типа ТС (лекговая/грузовая/прицеп и т.д.) и ещё одного параметра.

Одни формулы для граждан РФ, другие для иностранцев, третьи для транзита.
Транзит - это флаг в договоре. А то, где зарегистрированы - это группа геогр. объектов.
Что делать с транзитом?

Я сделал таблицу такого толка:
Код: Выделить всё
ins_formula_cnf
(
  OWNER_TYPE ENUM('Зарегистрирован в РФ', 'Транзит', 'Иностранец'),
  ID_CAR_TYPE INT,
  ID_CLIENT_TYPE_GROUP INT,
  ID_FORMULA INT,
  PRIMARY KEY(OWNER_TYPE, ID_CAR_TYPE, ID_CLIENT_TYPE_GROUP)
);


dForge Studio for MySQL нормально отображает enum - списком. DBGrid - нет.
Как обойтись без enum?
А.Н.
постоялец
 
Сообщения: 230
Зарегистрирован: 13.03.2010 12:23:58

Re: DBGrid+MySQL enum или..?

Сообщение Light13 » 15.06.2010 12:12:04

имхо отказаться от enum и нормализовать таблицу: добавить таблицу с этими перечислениями и в основной линк на нее
Да, ежели вы так любите в таблицах редактировать - PickList Вам в помощь
Аватара пользователя
Light13
постоялец
 
Сообщения: 127
Зарегистрирован: 17.07.2009 07:50:10
Откуда: Челябинск

Re: DBGrid+MySQL enum или..?

Сообщение А.Н. » 15.06.2010 15:04:05

имхо отказаться от enum и нормализовать таблицу: добавить таблицу с этими перечислениями и в основной линк на нее

Если так сделать, то придётся "зашивать" значения ключей в программу...
И плюс ещё одна таблица со всего-лишь одним значением.

Да, ежели вы так любите в таблицах редактировать

Я со справочниками сейчас разбираюсь.

PickList Вам в помощь

Хм... Не лучшее решение. :( Там один DBGrid и список справочников.
Если делать PickList, менеджер справочников будет "знать" об этом справочнике слишком много.
Дополнительная обработка, и дополнительное место, которое придётся исправлять, если что-то поменяется.
А.Н.
постоялец
 
Сообщения: 230
Зарегистрирован: 13.03.2010 12:23:58


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 42

Рейтинг@Mail.ru