Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.04.14;
Скачать: [xml.tar.bz2];

Вниз

подстановка   Найти похожие ветки 

 
guest123   (2003-03-25 14:11) [0]

Здраствуйте мастера!
Видел одну БД там при заполнении поля имеется возможность выбора нужной записи из выпадающего списка. Попробую описать как это происходит:Вводиш последовательность значений и принажатии клавиши "стрелка вниз" выпадает список с данными где присутствует эта последовательность, далее пролистываеш той же самой стрелкой до нужного значения потом enter и запись подставляется, причем в других полях таблицы тоже подставляются данные соответсвующие этому значению). Вобщем хотел узнать как это можно сделать в дельфи.
Заранее благодарен!!!


 
tomkat   (2003-03-25 14:24) [1]

Это называется LookUp поля ....
есть две таблицы - главная <MAIN m > и подстановочная <DICT d>
в главной заводится поле ID_dic - идентификатор записей из DICT
соединяются они запросом типа
SELECT m.* ,d.name
FROM
main m
,dict d
WHERE
d.id=id_dic
потом на этом запросе (он выступает в роли датасета) указывается, что столбец NAME есть LookUP и ключ для него ID_dic, а берутся значения из другого датасета (тоже должон быть на форме) - таблицы DICT ....
ну может хоть чего-то понятно ...:-))))


 
Stas   (2003-03-25 14:31) [2]

EHLIB-набор готовых компонентов.
Хотя MSGuns и Fiend. Говорят что все нужно делать самому.


 
guest123   (2003-03-25 14:39) [3]

I>ну может хоть чего-то понятно ...:-))))
неа %))

Хотя MSGuns и Fiend. Говорят что все нужно делать самому
очень хотелась бы узнать как самому это все сделать


 
Соловьев   (2003-03-25 14:40) [4]

Какие компоненты используешь?


 
Sheriff   (2003-03-25 14:44) [5]

Страница Data Controls
DBLookupComboBox


 
guest123   (2003-03-25 14:48) [6]

Какие компоненты используешь?
пака еще ничего неиспользую, но хателось бы узнать и для Table и для Query


 
Stas   (2003-03-25 14:52) [7]

Для Table и для Query они одинаковые.
Если стандартные то DBLookupComboBox.


 
Соловьев   (2003-03-25 14:52) [8]

Table и для Query. Для них аналогично.
Двойной клик на TTable. Добавляешь поля. Потом там есть New...
Там есть 3 вида: Data, Calculated, LookUp. тебе надо третье.
Предварительно на форму надо положить справочную таблицу и привяжать DataSource. Потом Ложишь на форму DBGrid. Компилишь. И в уже рабочей проге дважды кликаешь на LookUp поле там должен появиться список. Можно еще в настройках DBGrida выставить для поля PickList, но он уже без справочной таблицы.


 
guest123   (2003-03-25 17:16) [9]

а если 3000 записей?
надо вот так например таблица имет поля: артикул,наименование,цена и др., я пишу в артикул 50603 и нажимаю на клавиатуре стрелку вниз появляется выпадающий список в нем 6 5060312, 5060314, 803 50603001 и тд.короче тока те записи где есть 50603 вначале, серидине, в конце без разницы пролистываю клавишей стрелка вниз до нужной записи жму ентер и потом она подставляется как в DBLookupComboBox.Вобщем нада чтоб в выпадающем списке были записи где есть 50603


 
Соловьев   (2003-03-25 17:20) [10]

фильтр на справочную таблицу...


 
Johnmen   (2003-03-25 17:25) [11]

>...пака еще ничего неиспользую
Ну не понимаю я, как можно задавать вопросы, даже не начав что-либо писать ???!!!


 
guest123   (2003-03-25 17:33) [12]

уже начал


 
MsGuns   (2003-03-25 20:58) [13]

>guest123 (25.03.03 17:33)
Для начала повозись со стандартными компонентами, не спеши связыватся с Эх! и прочими либами. Stas © извратил саму мысль, которая заключалась в том, ЧТО НЕ СЛЕДУЕТ ИСКАТЬ ПАНАЦЕИ ОТ ВСЕХ СВОИХ БЕД В ПОИСКАХ ГОТОВЫХ КОМПОНЕНТ.

В данном случае на лицо еще и обработка событий грида, и посылка ему сообщений программно (эмуляция нажатия юзером на кнопульке) и т.д.


 
guest123   (2003-03-26 08:25) [14]

а по конкретней можна, с чего начать


 
Соловьев   (2003-03-26 09:21) [15]

открыть демки по БД


 
Stas   (2003-03-26 11:01) [16]

To MsGuns
Я ничего не извращал, а наоборот, посоветовал EHLib и предупредил, что с этим не все согласны.

P.S. Я пользуюсь лишь одной готовой компонентой это EhLib.
И могу сказать, что это неглючная, нормальная библиотека.


 
guest123   (2003-03-26 11:42) [17]

Соловьев © (26.03.03 09:21)
какую именно, чета там я такого невстричал


 
Соловьев   (2003-03-26 11:44) [18]


> там я такого невстричал

$(DELPHI)\Demos\Db


 
MsGuns   (2003-03-26 12:23) [19]

>Stas © (26.03.03 11:01)
>P.S. Я пользуюсь лишь одной готовой компонентой это EhLib.
И могу сказать, что это неглючная, нормальная библиотека.

Прежде чем утверждать подобное, надо поюзать не одну компоненту, и сделать это с АНАЛИЗОМ всех подключаемых библиотек и генерируемого кода. Так вот, с компонентой грида идет достаточно немалая "тележка" других Эх-компонент. Не разбирался до конца, но могу сказать с 90% гарантией, что некоторые из них элементарно глючат на некоторых видеокартах (в W98 по крайней мере) - у меня полтетради записей регистрации подвисания и перегрузок винды с одной и той же диагностикой.



 
Stas   (2003-03-26 13:20) [20]

to MsGuns

В свое время у меня было около 20 разных компонент, и я их все повытерал.
Что касается Эх-компонент, я в курсе что при работе грида подключается много Эх-компонент. Но все проги которые я делал, а они стоят на разных компах и системах, еще ни разу не глючили. А если бы и глючили, то исходники есть.
Винда тоже глючит, ты же себе не будешь систему писать сам, чтобы знать как устранить глюки ?



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

Форум: "Базы";
Текущий архив: 2003.04.14;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.49 MB
Время: 0.007 c
1-44159
Zarba
2003-04-03 16:45
2003.04.14
Копирование файлов Stealths ом


6-44307
_MAD_
2003-02-15 23:19
2003.04.14
Дружда cgi и делфи


3-43997
junior
2003-03-24 21:10
2003.04.14
Как в IB создать БД из Delphi?


14-44332
VD601
2003-03-30 21:10
2003.04.14
Игры, в которых надо программить - вот будущее индустрии!


14-44369
TIER
2003-03-22 08:17
2003.04.14
Как программно скопировать файл по локалке ???





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский