Здравствуйте, помогите пожалуйста начинающему программисту! У меня на форме находятся два DBComboboxa: DBCombobox1 - отображает список шахт, DBCombobox2 - отображает список точек отбора проб ( т.е. местоположение в шахте). Необходимо, чтобы при выборе конкретной шахты из DBCombobox1, в DBCombobox2 появлялся список точек проб для этой шахты. Вроде кажется что легко, а никак не могу реализовать! База данных InterBase, состоит из 4х таблиц: таблица шахт, таблица точек отбора(замера) проб, таблица проб и главная таблица. Код заполнения DBComboboxов:
Код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | procedure TFormMain . FormActivate(Sender: TObject);
begin
try
DataModule3 . IBDataBase1 . Connected:= true ;
except
Showmessage( 'Нет базы' );
end ;
if DataModule3 . IBDataBase1 . Connected then
begin
DataModule3 . IBDataSet2 . Active:= False ;
DataModule3 . IBDataSet2 . SelectSQL . Text:= 'select * from TCHK_PROBA' ;
DataModule3 . IBDataSet2 . Active:= True ;
while not DataModule3 . IBDataSet2 . Eof do
begin
DBComboBox1 . Items . Add(DataModule3 . IBDataSet2 . FieldByName( 'NAME' ).AsString);
DataModule3 . IBDataSet2 . Next;
end ;
DataModule3 . IBDataSet1 . Active:= False ;
DataModule3 . IBDataSet1 . SelectSQL . Text:= 'select * from SHAXTA' ;
DataModule3 . IBDataSet1 . Active:= True ;
while not DataModule3 . IBDataSet1 . Eof do
begin
DBComboBox2 . Items . Add(DataModule3 . IBDataSet1 . FieldByName( 'NAME' ).AsString);
DataModule3 . IBDataSet1 . Next;
end ;
end ;
end ;
|
Admin: Незабываем про теги!