Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.05.2016, 17:15   #1
Gul'ka
Пользователь
 
Аватар для Gul'ka
 
Регистрация: 11.02.2011
Сообщений: 69
Восклицание Фильтрация по связанной таблице

Добрый день. У меня такая проблема. Имеются много таблиц и все они зависят от 1-ой и таблицы Контрагенты, связанны они через MasterSourse по Коду контрагента ( Делала программно, но мне преподаватель сказал именно через MasterSource делать). Мне нужно по определенному значению (введенному в Edit) сделать фильтрацию. Но при фильтрации выбивает ошибку ( картинку ошибки прикрепляю), я понимаю, что она из-за того, что таблицы связанны.

Подскажите, пожалуйста, как это можно реализовать. Заранее большое спасибо.
Изображения
Тип файла: jpg 1111111111.jpg (24.5 Кб, 68 просмотров)
Gul'ka вне форума Ответить с цитированием
Старый 05.05.2016, 18:14   #2
xxbesoxx
Участник клуба
 
Регистрация: 10.08.2010
Сообщений: 1,389
По умолчанию

Цитата:
но мне преподаватель сказал именно через MasterSource делать)
Но , тогда я промолчу
Цитата:
сделать фильтрацию. Но при фильтрации выбивает ошибку ( картинку ошибки прикрепляю),
Покажите код как вы делаете фильтр .
-- Как вась помошь ?
-- Что такой ADOTable8 ?
-- Как вы эти таблици связали ?

Последний раз редактировалось xxbesoxx; 05.05.2016 в 18:16.
xxbesoxx вне форума Ответить с цитированием
Старый 05.05.2016, 19:26   #3
Dvoishnik
Форумчанин
 
Регистрация: 12.02.2011
Сообщений: 808
По умолчанию

а мне вот интересно
что у вас в свойстве Filter содержится на момент активации фильтра?
а лучше листинг программы покажите в том месте где вы фильтрами управляете.
Терпение!Дежурный экстрасенс скоро свяжется с вами!
Dvoishnik вне форума Ответить с цитированием
Старый 06.05.2016, 01:22   #4
Gul'ka
Пользователь
 
Аватар для Gul'ka
 
Регистрация: 11.02.2011
Сообщений: 69
По умолчанию

Код фильтрации: по дате поступления.

var
FilterStr:String;

begin

FilterStr:='';
begin
if not InputQuery('Задание поиска', 'Введите дату поступления', FilterStr) then
exit;
if FilterStr=''
then
datamodule2.adoTable8.Filtered:=fal se
else
begin

datamodule2.adoTable8.Filter:='Дата _поступления='''+FilterStr+'''';
datamodule2.adoTable8.Filtered:=tru e;
end;
end;
end;
Gul'ka вне форума Ответить с цитированием
Старый 06.05.2016, 03:36   #5
xxbesoxx
Участник клуба
 
Регистрация: 10.08.2010
Сообщений: 1,389
По умолчанию

1) Фильтр
Код:
procedure TForm2.BitBtn1Click(Sender: TObject);
begin
  ADOTable1.Filtered:=false;
  ADOTable1.Filter:='[Дата]>='+QuotedStr(DateToStr(DateTimePicker1.DateTime))+'and [Дата]<='+QuotedStr(DateToStr(DateTimePicker2.DateTime))+'';
  ADOTable1.Filtered:=true;
end;
2) Параметризированный запрос
Код:
procedure TForm1.Button2Click(Sender: TObject);
var
  dt1, dt2 : TDatetime;
begin
  ADOQuery1.Close;
  ADOQuery1.SQL.Text := 'SELECT * FROM uslugi WHERE [Дата_поля] BETWEEN :Start_date AND :End_date';
  dt1 := trunc(DateTimePicker1.Date);
  dt2 := trunc(DateTimePicker2.Date);
  ADOQuery1.Parameters.ParamByName('Start_date').Value := dt1;
  ADOQuery1.Parameters.ParamByName('End_date').Value  := dt2;
  ADOQuery1.Open;
end;
xxbesoxx вне форума Ответить с цитированием
Старый 06.05.2016, 06:16   #6
Dvoishnik
Форумчанин
 
Регистрация: 12.02.2011
Сообщений: 808
По умолчанию

xxbesoxx дело говорит.
Gul'ka у вас дата скорей всего некорректно вводится.
Терпение!Дежурный экстрасенс скоро свяжется с вами!
Dvoishnik вне форума Ответить с цитированием
Старый 06.05.2016, 13:15   #7
Gul'ka
Пользователь
 
Аватар для Gul'ka
 
Регистрация: 11.02.2011
Сообщений: 69
По умолчанию

Спасибо Вам большое)
Gul'ka вне форума Ответить с цитированием
Старый 06.05.2016, 13:16   #8
Gul'ka
Пользователь
 
Аватар для Gul'ka
 
Регистрация: 11.02.2011
Сообщений: 69
По умолчанию

У меня поиск много по каким критериям, сюда я сбросила по дате. По остальным критерием, выбивает аналогичную ошибку.
Gul'ka вне форума Ответить с цитированием
Старый 06.05.2016, 13:43   #9
xxbesoxx
Участник клуба
 
Регистрация: 10.08.2010
Сообщений: 1,389
По умолчанию

Цитата:
Сообщение от Gul'ka Посмотреть сообщение
По остальным критерием, выбивает аналогичную ошибку.
1) Вот суда смотрите http://programmersforum.ru/showthread.php?t=277392
2) Тип поля какой ? где у вас хранится дата

Последний раз редактировалось xxbesoxx; 06.05.2016 в 13:46.
xxbesoxx вне форума Ответить с цитированием
Старый 06.05.2016, 14:17   #10
Dvoishnik
Форумчанин
 
Регистрация: 12.02.2011
Сообщений: 808
По умолчанию

Цитата:
Сообщение от Gul'ka Посмотреть сообщение
У меня поиск много по каким критериям, сюда я сбросила по дате. По остальным критерием, выбивает аналогичную ошибку.
а давайте ка ваш проект сюда.
Терпение!Дежурный экстрасенс скоро свяжется с вами!
Dvoishnik вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запрос по таблице связанной сама на себя superpsih Microsoft Office Access 6 18.03.2016 16:48
Фильтрация данных в таблице stevieg БД в Delphi 4 04.10.2012 18:09
Запросы в Access. Сделать выборку по условию в связанной таблице Faeton Microsoft Office Access 2 19.03.2012 00:50
Данные в связанной таблице ара PHP 13 10.12.2010 19:12
как в связанной таблице разукрасить DBGrid ГОСЕАН БД в Delphi 5 23.07.2009 10:11