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




Вниз

Уважаемые не поможете примерчиком.. 


vopros   (2002-01-22 10:10) [0]

Как из таблица загнать в DbComboBox это понятно, но почему я потом из списка не могу выбрать нужную запись чтобы поставить фильтр по этой записи... у меня почему-то всегда первая запись в базе ..и не хочет меняться...Подскажите..



TSV   (2002-01-22 10:31) [1]

Потому как таблицы у тебя связаны по кодам, а не по названиям.

procedure TSborkaComForm.FilterComboBoxChange(Sender: TObject);
begin
with DataModule1 do
begin
if FilterComboBox.Text = "Нет" then
begin
ComponentsTable.Filter := "";
end
else
begin
CatCompQuery.ParamByName("CatName").Value := FilterComboBox.Text;
CatCompQuery.Open;
ComponentsTable.Filter := "Id_cat = " + CatCompQueryId_cat.AsString;
CatCompQuery.Close;
end;
end; //with
end;

Пояснения следуют...



TSV   (2002-01-22 10:39) [2]

Есть две таблицы: комплектующие и категории комплектующих. Первая связана со второй связью вида много к одному по полю Id_cat . После выбора из ComboBox(a) посылается запрос на номер категории ( CatCompQuery). Далеше строится выражение фильтра. Можно конечно хранить информацию в каком-то массиве, но я сделал вот так. FilterComboBox заполняется и обновляется при OnFormActivate:

procedure TSborkaComForm.FormActivate(Sender: TObject);
begin
with DataModule1 do
begin
FilterComboBox.Clear;
FilterComboBox.Items.Add("Нет");
CategoriesQuery.Open;
CategoriesQuery.First;
while not CategoriesQuery.Eof do
begin
FilterComboBox.Items.Add(CategoriesQueryCat_name.Value);
CategoriesQuery.Next;
end; // while
CategoriesQuery.Close;
end; //with
end;

Удачи.



Gregory   (2002-01-22 10:46) [3]

Вообще то DbComboBox предназначен для выбора из списка или ввода значения для конкретного поля текущей записи DataSet. Для выбора записи из DataSet используй DbLookupComboBox.



vopros   (2002-01-22 11:54) [4]

Спасибо за ответы! Я кажется допер.




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




Наверх





Память: 0.72 MB
Время: 0.022 c
14-42833          wild                  2001-12-20 10:17  2002.02.14  
МАЗДАЙ - что это?


14-42859          Awex                  2001-12-26 12:36  2002.02.14  
Вопрос по Assembler у


7-42874           Александр А.          2001-11-06 14:36  2002.02.14  
Конкретно PGM-у и Dima-k17 (и любому, кто знает) доп. вопрос о процессорах:


1-42734           Alexxx                2002-01-29 15:19  2002.02.14  
Печать из дельфи документов в 866 кодировке с псевдографикой


3-42648           Eraser                2002-01-17 11:21  2002.02.14  
Изменение конкретной строки