![]() |
|
|
![]()
|
|
| Devostator |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 5.8.2003 Репутация: нет Всего: нет |
Есть две таблицы:
![]() ![]() Есть форма: ![]() Как сделать так, чтобы при введении идентификационного номера (id_StudentKey) и нажатии кнопки ОК, в ComboBox'е выводились название предметов (id_Predmet). Сравнение идет по id_PredmetKey двух таблиц. Т.е. для Иванова должны выйти ТГП и Философия. Заранее благодарен. Это сообщение отредактировал(а) Devostator - 13.5.2010, 19:25 |
|||
|
||||
| former |
|
|||
![]() MEMS Expert ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1166 Регистрация: 1.3.2006 Где: Россия Репутация: 7 Всего: 17 |
Было бы неплохо написать про компоненты доступа.
В любом случае читай про связку master-detail. -------------------- Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами. |
|||
|
||||
| Devostator |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 5.8.2003 Репутация: нет Всего: нет |
Компоненты АDOConnection, AdoQuery1, AdoQuery2, DataSourse1, DataSourse2, DBGrid1, DBGrid2.
|
|||
|
||||
| former |
|
|||
![]() MEMS Expert ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1166 Регистрация: 1.3.2006 Где: Россия Репутация: 7 Всего: 17 |
Пусть AdoQuery1,DataSourse1 - PredmetFirst и AdoQuery2,DataSourse2 - StudentFirst. У AdoQuery2 указываешь в качестве DataSource - DataSourse1 . Настраиваешь master-detail. Вместо ComboBox используй LookupComboBox. Его привяжи к DataSourse2. Для поиска используй Locate или параметры запроса. Все. -------------------- Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами. |
|||
|
||||
| Devostator |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 5.8.2003 Репутация: нет Всего: нет |
Не осилил. Что такое master-detail? Что за Locate?
У меня вот так получилось, нахимичил if EdID.Text<>'' then begin Query1.SQL.Clear; Query1.SQL.Add('SELECT id_StudentFio, id_StudentGroup, id_PredmetKey FROM StudentFirst WHERE id_StudentKey='+EdID.Text); Query1.Active:=true; Query2.SQL.Clear; Query2.SQL.Add('SELECT id_Predmet, id_PredmetActive FROM PredmetiFirst Where id_PredmetKey='+Query1.FieldByName('id_PredmetKey').AsString); Query2.Active:=true; PredmetBox.Clear; Query2.First; while not Query2.eof do begin if Query2.FieldByName('id_PredmetActive').AsInteger=0 then begin PredmetBox.Items.Add(Query2.FieldByName('id_Predmet').value); end; Query2.Next; end; lblFio.Caption:=Query1.FieldByName('id_StudentFio').AsString; lblGroup.Caption:=(Query1.FieldByName('id_StudentGroup').AsString)+' группа'; end; end; Добавлено @ 23:02 ![]() Я тут еще сделал проверку на id_PredmetActive (сдавал ли он этот предмет или еще не сдавал). Это сообщение отредактировал(а) Devostator - 13.5.2010, 23:04 |
|||
|
||||
| former |
|
|||
![]() MEMS Expert ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1166 Регистрация: 1.3.2006 Где: Россия Репутация: 7 Всего: 17 |
Что именно? Ты хоть одну книгу открывал? Это основы основ! -------------------- Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами. |
|||
|
||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 29 Всего: 329 |
на лекции надо было ходить
|
|||
|
||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |