|
0 / 0 / 0
Регистрация: 17.03.2019
Сообщений: 131
|
|
DBLookupComboBox в Forme16.06.2022, 11:26. Показов 863. Ответов 11
Метки нет (Все метки)
БД на MS Access в формате .mdb
Windows 7 - 64 Delphi 7 Подключил таблицы TADOTable через TADOConnection и TDataSource. Все прописал для работы, отметил все поля и тд. Соединений никаких не делал на графике. На форме у меня 2 нужных мне компонента: DBLookupComboBox3 и DBLookupComboBox4. В DBLookupComboBox3 выбираю через Object Inspector - ListSource - fDM.DSGUInfo, а также ListField и KeyField к нему. В DBLookupComboBox4 через выбираю через Object Inspector - ListSource - fDM.DSGUInfo (то есть тот же Source), а вот ListField и KeyField другие. (прикерпил Проблема: в запущенной форме при выборе в DBLookupComboBox3, а затем выборе DBLookupComboBox4, в одном из этим компонентов сбивается то, что я выбрал Вопрос: как сделать так, чтобы не сбивалось, а оставалось то, что я выбрал. Читал про то, что надо как-то обновлять DataSet.Refresh каждый раз при выборе таблицы, но не нашел как это сделать. P.S. если я выбираю из разных Source, то проблем нет, все остается.
0
|
|
| 16.06.2022, 11:26 | |
|
Ответы с готовыми решениями:
11
задача на строки в forme !!! Udalenie zapisi v forme вывод данных стека в Forme |
|
0 / 0 / 0
Регистрация: 17.03.2019
Сообщений: 131
|
|
| 16.06.2022, 11:27 [ТС] | |
|
Вот нормальная картинка
0
|
|
|
|
|
| 16.06.2022, 11:57 | |
|
по картинке я засомневался, что вы понимаете, для чего нужен DBLCbox
реляционные БД строятся на том, что в некоей таблице есть код записи из другой таблицы, например, справочника, по которому можно вытащить нужную запись этого справочника. При этом показывать человеку код нехорошо, его надо заменить текстом из справочника Вот этим и занимается DBLCbox. он подключен как и все DBxxx к какому-то полю, содержащему КОД и второй стороной - к датасету-справочнику, где есть ЭТОТ ЖЕ КОД (поле KeyField) и некий текст (поле ListField) и подменяет на лету для пользователя одно на другое у вас ListField и KeyField одинаковые. Что на что вы там решили подменить? Кроме того, из описания следует, что для работы DBLCbox требуется отдельный, ни к чему не подключенный более датасет2. Потому что перемещение по этому датасету2 где-то в другом месте приведет и к замене значения в датасете1, к которому и подключен DBLCbox. Так как вы не указали в вопросе главное - а что хотели-то достичь, помочь больше нечем
0
|
|
|
0 / 0 / 0
Регистрация: 17.03.2019
Сообщений: 131
|
||
| 16.06.2022, 12:02 [ТС] | ||
|
Идея программы в том, что из списка фамилий и тд. человек все заполняет, а потом выводит в ворд. DBLCbox взял так как видел в примере других работ. Я БД не изучал и delphi тоже, поэтому делаю как умею. Если подскажите, то буду благодарен.
0
|
||
|
0 / 0 / 0
Регистрация: 17.03.2019
Сообщений: 131
|
||
| 16.06.2022, 14:01 [ТС] | ||
|
Мна это не интересно, интересно разобраться самому, но иногда сложно. Вот и прошу грамотных людей помочь. Мне интересно делать самому, для себя.
Добавлено через 37 секунд Хорошо, почитаю, спасибо Добавлено через 6 минут
0
|
||
|
|
|
| 16.06.2022, 15:08 | |
|
вы так и не описали точно, что вам нужно, и что у вас есть в наличии
если принять на веру, что у вас есть справочник городов, и структура БД сделана так, как я описывал выше, то это действительно DBLC. Но проверить это у меня возможности нет.
0
|
|
|
408 / 242 / 88
Регистрация: 28.04.2022
Сообщений: 1,207
|
||
| 17.06.2022, 00:49 | ||
|
0
|
||
|
0 / 0 / 0
Регистрация: 17.03.2019
Сообщений: 131
|
||
| 17.06.2022, 07:54 [ТС] | ||
|
0
|
||
|
|
|
| 17.06.2022, 09:27 | |
Сообщение было отмечено Eirstrean как решение
Решение
вам жалко что-ли?
датасет - это просто массив данных, скачанных с сервера никакой чудесной связи между ним и сервером нет надо два - делайте два, десять - десять. даже если они брали данные из одной и той же таблицы. у лукапа должен быть свой отдельный, ни к чему более не подключенный справочный датасет ListDataSource Добавлено через 29 минут структура вашей базы нам неизвестна, но вот как ДОЛЖНО быть предположим, есть таблица addresses - Справочник адресов, у которой есть ключевое поле ID и поля Street, City, House и другие есть таблица профессий - professions, где есть ключевое поле ID и наименование профессии Name и есть таблица клиентов - clients, у которой есть свое поле ID и поля ADDRESS_ID и PROFESSION_ID, в которых лежат коды из соответствующих таблиц выше к каждому датасету подключены имядатасета_datasource делаем два DBLC 1. DataSource = clients_datasource ListSource = addresses_datasource DataField = ADDRESS_ID KeyField = ID ListField = Street;City;House 2. DataSource = clients_datasource ListSource = professions_datasource DataField = PROFESSION_ID KeyField = ID ListField = NAME все датасеты должны быть открыты все указанные поля заполнены теперь если выбрать в любом комбо что-либо, поменяется содержимое поля ADDRESS_ID или PROFESSIONS_ID в датасете clients соответственно, при этом пользователь будет видеть те поля, которые указаны в ListField если после этого у вас еще не получилось, рассказывать здесь бесполезно, сначала читайте/смотрите обучалки
1
|
|
|
0 / 0 / 0
Регистрация: 17.03.2019
Сообщений: 131
|
|
| 17.06.2022, 10:53 [ТС] | |
|
спасибо большой за подробный ответ
0
|
|
| 17.06.2022, 10:53 | |
|
Помогаю со студенческими работами здесь
12
zagruzka dannyh v combobox na forme iz polja tablicy- help! Pochemu na esli na forme lejit checkbox, on vsegda kakoito serovati ... :-) DBLookupComboBox DBLookupComboBox DBLookupComboBox Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
|
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс.
Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
|
Программный отбор значений справочника
Maks 21.03.2026
Установка программного отбора значений справочника "Сотрудники" из модуля формы документа.
В качестве фильтра для отбора служит предопределенное значение перечислений.
Процедура. . .
|
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
|
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|