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

Вниз

Как в ComboBox загрузить данные из базы   Найти похожие ветки 

 
Бульбаш   (2003-04-09 11:45) [0]

Мне необходимо производить выбор значения из базы (kod и name), отображаться должно текстовое значение, а затем в параметр запроса на апдейт другой базы браться значение kod. Аваре компоненты не идут, так как с оракелом работаю. Можно ли решить проблему комбобоксом или существет что-нибудь более удобное???
Подскажите плиз, проект стоит... :(


 
Жук   (2003-04-09 11:47) [1]

DBLookupComboBox


 
Бульбаш   (2003-04-09 11:49) [2]

Я же пишу что аваре не идет, может работать только один юзер, надо все SQL-ем гнать.


 
Соловьев   (2003-04-09 11:50) [3]

Можно загнать в Items значение name, а потом Искать запросом kod и его подставлять в запрос. Можно конечно еще попробовать с индексом в комбобоксе, но тогда надо динамический массив создать. Сопоставить индексу в масиве значение kod, чтобы не мучаться с Locate...


 
Max Zyuzin   (2003-04-09 11:52) [4]

>Бульбаш © (09.04.03 11:45)
Я вот делал так, как приедлагает Соловьев © (09.04.03 11:50) но мне и самому это всегда казалось... "извратом" :)


 
Соловьев   (2003-04-09 11:58) [5]

мне тоже :)))


 
Бульбаш   (2003-04-09 11:59) [6]

Я сейчас поступаю так:делаю невидимую панель, помещаю на нее грид, затем отслеживаю двойной клик на простом едите, после чего вывожу панель, выбираю значение поля, заношу текст в едит,считываю ключевое значение и убираю панель.Юзер видит почти тот же комбобокс. Это меня коллеги залажали что нет значка распахивания. Как вы думаете, стоит ли замарачиваться со списками, или все это выльется в еще больший гимор и стоит оставить все как есть???


 
Соловьев   (2003-04-09 12:04) [7]


> Я же пишу что аваре не идет, может работать только один
> юзер, надо все SQL-ем гнать.

что-то я не пойму что ты пишешь...


 
Max Zyuzin   (2003-04-09 12:06) [8]

>Бульбаш © (09.04.03 11:59)
Даааа... я то думал я большой извращенец :-))) шутка... попробуй сделать со списком... думаю это получше будет чем с мигающими панелями


 
ЮЮ   (2003-04-09 12:07) [9]

>Жук © (09.04.03 11:47)
DBLookupComboBox
>Я же пишу что аваре не идет, может работать только один юзер, надо все SQL-ем гнать.

1)Если У DBLookupComboBox-а не указывать DataSource и FieldName - это уже и не DBAware, а ListSource - это уже SQL
2)Items - это TStrings, т.е. может хранить не только текст, по и Objects:

Combo.Items.AddObject(Query.Fields[0].asString, TObject(Query.Fields[0].asInteger))

а использовать

Integer(Combo.Items.Object[Index])


 
Бульбаш   (2003-04-09 12:09) [10]

Раньше когда на локале работал, использовал лукапбоксы и прочее. Думал также и на оракеле пойдет. Уже нарисовал добрый кусок. В общем давал Edit или Insert для базы и забивал значения, затем Post. Все было красиво, пока не посадил 2 юзверей, сразу пошли взаимные блокировки и невозможность дальнейшей работы. После этого я понял что такое SQL. Пришлось все пределывать так как описал выше.


 
Бульбаш   (2003-04-09 12:57) [11]

to ЮЮ
Список заполнил, но не могу взять значение ключа в переменную.
Насколько я понимаю это надо делать в Change? Как обратится к выбранной строке в списке?


 
Johnmen   (2003-04-09 13:13) [12]

>Раньше когда на локале работал, использовал лукапбоксы и
>прочее. Думал также и на оракеле пойдет. Уже нарисовал добрый
>кусок. В общем давал Edit или Insert для базы и забивал
>значения, затем Post. Все было красиво, пока не посадил 2
>юзверей, сразу пошли взаимные блокировки и невозможность
>дальнейшей работы. После этого я понял что такое SQL.

Мдя-а-а-а...

А себя кем считаешь ? Если не секрет ?


 
Бульбаш   (2003-04-09 13:44) [13]

To Johnmen
Да не секрет, в штатном записано инженер-программист. Деньги свои успешно отрабатываю, никто не жалуется. Не всем же быть мастерами, для нормального функционирования большинства контор пойдут и "подмастерья". Добрее нужно быть, батенька...


 
Johnmen   (2003-04-09 13:58) [14]

>Добрее нужно быть,

А я разве злой ? :)

>батенька...

Вроде у меня не было сына....Может внебрачный ?
:)))

> для нормального функционирования большинства контор пойдут и "подмастерья".

Возможно... Но, почему то думается, что ты завысил свою самооценку... (Ничего злого !)


 
Бульбаш   (2003-04-09 14:47) [15]

>Вроде у меня не было сына....Может внебрачный ?
В жизни всякое бывает :)
>Возможно... Но, почему то думается, что ты завысил свою самооценку... (Ничего злого !)
Я здесь никому ничего не доказываю, просто хочу получить помощь в вещах которые не знаю. Я получил то что хотел, уже все работает+ доставил удовольствие Вам указать на мою никчемность.
Все цели достигнуты, треп заканчиваю :)


 
Соловьев   (2003-04-09 15:00) [16]


> доставил удовольствие Вам указать на мою никчемность.

зря ты так, никто тут не зазнается...


 
malkolinge   (2003-04-09 16:18) [17]

Можно комбобокс сделать с гридом :)
Берете грид, а потом смотрите
http://www.delphikingdom.com/helloworld/treecombobox.htm


 
Sergey Masloff   (2003-04-09 21:27) [18]

Бульбаш ©
Обычно если этих код-имя больше 10 то все эти выпадающие списки крайне неэффективны. Я обычно вызываю в таких случаях поисковую форму которая в виде модального диалога дает отобрать нужное и по закрытию диалога присваиваю значения.

Если выборов немного то есть такой грязный хак - у комбобокса Items это TStrings, у которого кроме строк еще есть свойство Objects - массив указателей на объекты каждый из которых соответствует каждой строке. Так как указатель это 32битное значение то ты в память выделеную под указатель спокойно можешь записать Integer значение кода.

То есть Items комбобокса перед открытием заполняешь так:
Strings[0] := "name1";
Objects[0] := TObject(kod1);
и так далее. Когда пользователь выбрал Item, например с индексом 5 соотв. код получаешь так:
Значение кода := Integer(Objects[5]);

>Я здесь никому ничего не доказываю, просто хочу получить помощь >в вещах которые не знаю.
Вот этот ответ мне понравился



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

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

Наверх





Память: 0.49 MB
Время: 0.008 c
6-91421
FND
2003-02-25 01:42
2003.04.28
Срочно нужна помощь по ISAPI/NSAPI для получения файла по HTTP


1-91247
Dmitry V. Averuanov
2003-04-16 13:34
2003.04.28
Очень прошу пример DLL


14-91473
Мазут Береговой
2003-04-08 02:11
2003.04.28
Раз зашел вопрос о смерти, то как оценить человеческую жизнь?


1-91366
Oleg1
2003-04-15 14:29
2003.04.28
Free Report 3.2


14-91472
Плохой человек
2003-04-09 23:57
2003.04.28
Чем работать с палитрами.





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский