Вниз
Скачать: CL | DM;

БД в комбо   Найти похожие ветки 

 
syte_ser78 ©   (2005-07-01 15:27) [0]

Возможно путь избранный мною глуп, но сделать по другому не выходит (у меня).
Вобщем есть таблица следующего вида
Деталь Диаметр Давление ГОСТ ....
Есть 4 комбобокса
Нужно в них записать без повторов значения первых четырех полей.
Далее при выборе любого значения в любом комбе отобразить в других комбах только те значения которые удовлетворяют условию выбранному в вышеследующем комбе. Тоесть если выполнить фильтр по второму комбу то при повторном вызове процедуры изменится содержимое 3,4, и 1 а нужно только 3 и 4

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

//ЗАГРУЗКА В КОМБОБОКСЫ ДАННЫХ ДЛЯ ВЫБОРА типа/госта/ру/ду...
//ЭТУ ПРОЦЕДУРУ НУЖНО ПЕРЕПИСАТЬ ТАКИМ ОБРАЗОМ ЧТОБЫ В НИЖЕСЛЕДУЮЩИХ КОМБАХ
//ОТОБРАЖАЛИСЬ ДАННЫЕ ТОЛЬКО УДОВЛЕТВОРЯЮЩИЕ УСЛОВИЯМ ВЫШЕСЛЕДУЮЩИХ
//ЭТУ ХЕРНЬ ОБЯЗАТЕЛЬНО ПЕРЕПИСАТЬ!!!!!!!!
procedure tfrm_main.load_cmb;
var i,ii:integer;
begin
  frm_main.cmb_armatura.Clear;
  frm_main.cmb_armatura.Items.Add ("-");
  frm_main.cmb_gost.Clear;
  frm_main.cmb_gost.Items.Add ("-");
  frm_main.cmb_Py.Clear;
  frm_main.cmb_Py.Items.Add ("-");
  frm_main.cmb_Dy.Clear;
  frm_main.cmb_Dy.Items.Add ("-");
  ii:=0;
  while not frm_main.Table1.Eof do
     begin
     ii:=ii+1;
     frm_logo.Gauge1.Progress:=round(50*ii/frm_main.Table1.RecordCount);
     frm_logo.Label2.Caption:="Обрабатываем "+frm_main.Table1Name.AsString;
     frm_logo.Label2.Refresh;
           if frm_main.Table1Name.AsString<>"" then
              begin
              if frm_main.cmb_armatura.Items.IndexOf(frm_main.Table1Name.AsString)<0 then
                 frm_main.cmb_armatura.Items.Add (frm_main.Table1Name.AsString);
              end;
           if frm_main.Table1GOST.AsString<>"" then
              begin
              if frm_main.cmb_gost.Items.IndexOf(frm_main.Table1Gost.AsString)<0 then
                 frm_main.cmb_gost.Items.Add (frm_main.Table1Gost.AsString);
              end;
           if frm_main.Table1D_usl_proh.AsString<>"" then
              begin
              if frm_main.cmb_Dy.Items.IndexOf(frm_main.Table1D_usl_proh.AsString)<0 then
                 frm_main.cmb_Dy.Items.Add (frm_main.Table1D_usl_proh.AsString);
              end;
           if frm_main.Table1PY.AsString<>"" then
              begin
              if frm_main.cmb_Py.Items.IndexOf(frm_main.Table1Py.AsString)<0 then
                 frm_main.cmb_Py.Items.Add (frm_main.Table1Py.AsString);
              end;
           end;
     frm_main.Table1.Next;
     end;
  frm_logo.Close;
  frm_main.Table1.First;
end;


 
Sergey13 ©   (2005-07-01 15:33) [1]

>БД в комбо
А почему бы БД не в БДкомбо? И заполняй их параметрическими запросами.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.024 c
14-1121765884
YurikGL
2005-07-19 13:38
2005.08.07
Хранение картинок в базе или в файле IB


14-1121290192
Alex_Korn
2005-07-14 01:29
2005.08.07
Черт !!! Застыл на одном месте !


6-1114747447
Valera
2005-04-29 08:04
2005.08.07
IdIcmpClient и многопоточность


1-1121714343
BBCHa
2005-07-18 23:19
2005.08.07
Заголовок дочерней формы в TaskBare


1-1121986829
waterfoll
2005-07-22 03:00
2005.08.07
Текст и таблички, что использовать?




   Наверх