Показать сообщение отдельно
  #4  
Старый 24.03.2009, 15:25
prog64free prog64free вне форума
Прохожий
 
Регистрация: 21.03.2009
Сообщения: 3
Репутация: 10
По умолчанию Попробую ещё раз, но уже так. Код ниже

Это фильтр

Код:
procedure TForm1.Edit1Change(Sender: TObject);       //поиск фильтр
begin
  // Поиск
  if  RadioGroup1.ItemIndex = 0   //по номеру наряда
  then
    begin
      // Фильтрация данных по первым первым буквам
      Table1.Filter := 'Kod_N = '''+Edit1.Text+'*''';

      // Включаем фильтрацию, если поле ввода "не пустое"
     Table1.Filtered := True;

end;

  if  RadioGroup1.ItemIndex = 1     //по наименование
   Then
    begin
      // Фильтрация данных по первым первым буквам
     Table1.Filter := 'Naimenovanie = '''+Edit1.Text+'*''';

      // Включаем фильтрацию, если поле ввода "не пустое"
     Table1.Filtered := True;

 end;
   if  RadioGroup1.ItemIndex = 2     //по цене
   Then
    begin
      // Фильтрация данных по первым первым буквам
     Table1.Filter := 'Chena = '''+Edit1.Text+'*''';

      // Включаем фильтрацию, если поле ввода "не пустое"
     Table1.Filtered := True;

 end;
     if  RadioGroup1.ItemIndex = 3     //по номеру нового
   Then
    begin
      // Фильтрация данных по первым первым буквам
     Table1.Filter := 'Kolichestvo_fact = '''+Edit1.Text+'*''';

      // Включаем фильтрацию, если поле ввода "не пустое"
     Table1.Filtered := True;
end;

  if  RadioGroup1.ItemIndex = 4     //по номеру нового
   Then
    begin
      // Фильтрация данных по первым первым буквам
     Table1.Filter := 'Summa_fact = '''+Edit1.Text+'*''';

      // Включаем фильтрацию, если поле ввода "не пустое"
     Table1.Filtered := True;
end;

 if  RadioGroup1.ItemIndex = 5     //по номеру нового
   Then
    begin
      // Фильтрация данных по первым первым буквам
     Table1.Filter := 'Kolichestvo_buxgal = '''+Edit1.Text+'*''';

      // Включаем фильтрацию, если поле ввода "не пустое"
     Table1.Filtered := True;


     end;

   if  RadioGroup1.ItemIndex = 6     //по номеру нового
   Then
    begin
      // Фильтрация данных по первым первым буквам
     Table1.Filter := 'Summa_buxgal = '''+Edit1.Text+'*''';

      // Включаем фильтрацию, если поле ввода "не пустое"
     Table1.Filtered := True;


     end;
    end;

Это запрос к базе

Код:
procedure TForm1.Button10Click(Sender: TObject);     //+++++++++++++++++++++  +++++
begin
  Query2.Close;
Query2.SQL.Clear;
Query2.SQL.Add('select sum(Kolichestvo_fact) from Naryd;');
Query2.Open;
Edit2.Text:=Query2.Fields[0].AsString;
end;

lmikle: Где теги?

Сумму SQL дает по базе. А мне нужен запрос, который из DBGrid выберет сумму в столбце, которая находится на данный момент в DBGrid отобранная фильтром.

Т.е. нужно увязать две вещи SQL и DBGrid.

Собственно нужен правильно сгенерированный SQL запрос на выбор данных из DBGrid.
Ответить с цитированием