Страница 1 из 1

Непонятно работает t(DB)EnumEditLB

СообщениеДобавлено: 18.09.2009 01:09:27
t-ea
Есть две таблицы по два поля в каждой:
1. ЛЮДИ — ФИО (varchar) и код города (decimal 12,0)
2. СПРАВОЧНИК (код города и его название)
Если для указания города в таблице ЛЮДИ использовать t(DB)EnumEditLB, то на некоторых значениях компонент ругается на Range Error. В даннаом примере пытался выбрать значение «ГДЕ ТО ТАМ» (77 257 802 013).

Экранчики внизу.

У кого-нибудь такое же было и кто как с этим справлялся.
start.png
Старт программы
start.png (4.25 КБ) Просмотров: 11746
error.png
Пытался выбрать ГДЕ ТО ТАМ (77 257 802 013)
error.png (752 байт) Просмотров: 11747

Re: Непонятно работает t(DB)EnumEditLB

СообщениеДобавлено: 18.09.2009 08:30:43
debi12345
Потому что tdbenumeditln.max=2 147 483 647 в ваших настройках (по умолчанию).

Re: Непонятно работает t(DB)EnumEditLB

СообщениеДобавлено: 18.09.2009 17:25:48
t-ea
Это первое что я попытался исправить, но не помогло, тем более остальные два значения выбираются без ошибки, хотя их код больше.

Немного разъясню: в работе используется настоящий — большой — справочник ОКАТО, и я заметил три вида поведения t(DB)EnumEditLB: как положено выбирается, заполняется и т.д., один с ошибкой с которой я описал, а в третьем случае после выбора значения в выпадающем списке поле ввода просто очищается. Закономерности и зависимости от значений кода я не могу понять: одно значение выбирается, следующее за ним нет, а ещё следующее опять можно выбрать…

Re: Непонятно работает t(DB)EnumEditLB

СообщениеДобавлено: 19.09.2009 01:18:58
debi12345
Может, дело в используемом типе largeInt ?
Если можете описать шаги и подробности - напишите Мартину в конференцию.

Re: Непонятно работает t(DB)EnumEditLB

СообщениеДобавлено: 19.09.2009 04:01:07
t-ea
Тип кодов городов непосредственно в таблице-справочнике — FLOAT 12 знаков, а тип LargeInt для поля ID mse устанавливает самостоятельно.

Насчёт описания шагов и подробностей: даже не знаю что написать. Мне надо знать, как в приложенном примере выбрать поле с кодом 77257802013 и возможно ли это вообще?

В конференцию я написать не смогу, так как если даже здесь не могу объяснить, что мне надо, то там тем более.

Re: Непонятно работает t(DB)EnumEditLB

СообщениеДобавлено: 19.09.2009 16:20:50
debi12345
Martin:
T-EA,
You probably should use tenum64editlb or use a string key with
tkeystringeditlb.