Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.11;
Скачать: CL | DM;

Вниз

Два DblookupCombobox - последвательно.   Найти похожие ветки 

 
Николай   (2005-05-23 18:05) [0]

Привет!
Использую Delphi7 + MS Access + AdoTable + DBGridEh (Ehlib)
В Access есть три последовательно связанные между собой таблицы.
Главная – таблица типов оборудования. Два столбца – Код типа и Наименование типа.
Подчиненная – таблица подтипов оборудования. Три столбца Код типа, Код подтипа и Наименование подтипа. Данная таблица связана с предыдущей по столбцу Код типа.
Таблица со списком оборудования – присутствуют столбцы Код типа, Код подтипа, Код оборудования (счетчик) ну и характеристики оборудования. Эта таблица связана с предыдущей по столбцам Код типа и Код подтипа.

Все перечисленные таблицы имеют указанные связи, реализованные как в БД, так и в Mastersource-Masterfields. Окно выглядит так
--------------------
DBLookupCombobox1 (для выбора типа оборудования)
--------------------
DBLookupCombobox2 (для выбора подтипа оборудования)
-------------------
DBGridEh + кнопки управления добавления записей (для описания оборудования).

С первым комбобоксом проблем не возникает.
А вот со вторым наблюдается следующее:
1. При выборе наименования подтипа оборудования в этом комбобоксе (при закрытии комбобокса) курсор в таблице подтипов оказывается совершенно не на той строке, которую выбрал пользователь – комбобокс отображает не тот текст. Естественно, при добавлении записи в таблицу описания оборудования в ключевом поле Подтипа оказывается не тот код. Хотя, если открыть указанный комбобокс второй раз (и выбрать значение), то мы увидим, что в нем курсор стоит на верной записи! А отображение после закрытия комбобокса и добавление кода неверное!
2. Еще смущает то, что иногда все вроде работает как надо (пару раз попадал на такой случай, радовался и думал, что исправил), но потом все снова как описано. Явных ошибок нет, все проверено по три раза, все объекты стерты, заменены и сконфигурированы заново, БД заполнена корректно, никаких событий, которые могли бы “сбрасывать курсор в таблице” не на то место – нет.

Подскажите, пожалуйста возможные причины – я допускаю, что использование такой схемы в Дельфи может глючить (раньше похожие случаи у кого-то были) – хочу узнать Ваше мнение по этому поводу.
Спасибо.


 
DSKalugin ©   (2005-05-23 20:16) [1]

проверь ключевые поля для подтипов, список должен быть завязан на таблицу со списком оборудования, а не на типы и прочее
Field
 KeyField
 KeyValue
 ListField
 ListFieldIndex
 ListSource


 
Николай   (2005-05-23 20:33) [2]

немного не понял :-(


 
Sergey13 ©   (2005-05-24 09:30) [3]

2Николай   (23.05.05 18:05)
Попробуй реализовать мастер-деталь руками. На изменение первого комбобокса - фильтрация второй таблицы с ручной установкой второго комбобокса на первую запись. Так же и со вторым.

>Эта таблица связана с предыдущей по столбцам Код типа и Код подтипа.
Код типа тут в принципе лишний, если Код подтипа - первичный ключ.



Страницы: 1 вся ветка

Текущий архив: 2005.07.11;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.035 c
14-1118226776
YurikGL
2005-06-08 14:32
2005.07.11
USB-разъем под обжимку. Как обжать?


1-1118318484
Juster2
2005-06-09 16:01
2005.07.11
Пропала форма


14-1118569480
AngeL B.
2005-06-12 13:44
2005.07.11
Ошибка при запуске на ноуте


1-1118666806
Cooler
2005-06-13 16:46
2005.07.11
Блокировка таблицы


1-1118472818
violla
2005-06-11 10:53
2005.07.11
Деление на цело не работает?????????????