Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
Andrey19951
0 / 0 / 0
Регистрация: 10.06.2016
Сообщений: 28
1

ADOTable: поиск через 2 Edit-a

24.05.2017, 19:41. Просмотров 1606. Ответов 57

Доброго времени суток. Столкнулся с очень неприятной ситуацией. В общем у меня есть две формы. На первой форме у меня DBGrid с номером, названием поезда. Вторая форма открывает расписание этого поезда через вот такую процедурку

Delphi
1
2
3
4
5
6
7
if Form2.ADOTable1.TableName=Form1.DBGrid1.DataSource.DataSet.Fields.Fields[i].Value then
      begin
        Form2.Label1.Caption:='Поезд №105 Киев - Одесса';
        Form2.DataSource1.DataSet:=Form2.ADOTable1;
        Form2.ADOTable1.Active:=true;
        Form2.ShowModal;
      end
Так вот мне нужно чтобы при вводе в Edit1 и Edit2 станций отправления и прибытия в DBGrid на первой форме остались только те поезда (строки), в расписании которых (ADOTable) есть эти значения (из Edit1 и Edit2 по порядку).
ADOQuery использовать не получается, потому что у меня в процедуре сравнивается текст ячейки с названием таблицы. Огромнейшее спасибо, кто откликнется!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.05.2017, 19:41
Ответы с готовыми решениями:

Поиск в DBGrid через Edit
Всем привет, и снова нужна помощь... У меня есть формы, возьмем к примеру одну...

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

сравнение edit и adotable
Здравствуйте! У меня на форме есть 2 таблицы: приход и состояние склада....

Access БД. Поиск по таблице через Edit
Ребята, подскажите, какой нужно вписать код в Edit, чтобы осуществить поиск по...

Поиск в базе данных Access через Edit
Здравствуйте. Тут возникла проблемка у меня, подскажите пожалуйста: Вот код...

57
Andrey19951
0 / 0 / 0
Регистрация: 10.06.2016
Сообщений: 28
29.05.2017, 23:21  [ТС] 21
Пытливый, я в 2016 делал

Добавлено через 1 минуту
Пытливый, думаю, можно в новый
0
Пытливый
1380 / 691 / 249
Регистрация: 29.05.2013
Сообщений: 3,116
29.05.2017, 23:51 22
Это хорошо, т.к. там появилась поддержка вычисляемых полей в таблице, что упрощает получение времени стоянки.
Вот я немного переделал структуру и наполняемость. Не используйте названия полей из нескольких слов. Если есть такая необходимость, то пишите слитно. Не [Номер поезда] а [НомерПоезда].
В общем смотрите, что в итоге получилось.
0
Вложения
Тип файла: rar Поезда.rar (29.1 Кб, 1 просмотров)
Пытливый
1380 / 691 / 249
Регистрация: 29.05.2013
Сообщений: 3,116
30.05.2017, 14:25 23
Вот я вам сделал базку и приложение под нее.
0
Вложения
Тип файла: rar Поезда.RAR (2.75 Мб, 3 просмотров)
Andrey19951
0 / 0 / 0
Регистрация: 10.06.2016
Сообщений: 28
30.05.2017, 19:23  [ТС] 24
Пытливый, в приложении скорее всего закомпилен путь к БД с вашего компьютера. Не может подключится

Добавлено через 22 минуты
Пытливый, можешь проект кинуть?
0
Пытливый
1380 / 691 / 249
Регистрация: 29.05.2013
Сообщений: 3,116
30.05.2017, 20:26 25
в приложении скорее всего закомпилен путь к БД с вашего компьютера
Да ладно!? Вот так я давно не ошибался.

Добавлено через 3 минуты
Действительно, как это я так? И на старуху бывает проруха.
0
Пытливый
1380 / 691 / 249
Регистрация: 29.05.2013
Сообщений: 3,116
30.05.2017, 20:33 26
Пытливый, можешь проект кинуть?
Могу конечно, держите.
0
Вложения
Тип файла: rar Train.rar (2.82 Мб, 3 просмотров)
Andrey19951
0 / 0 / 0
Регистрация: 10.06.2016
Сообщений: 28
30.05.2017, 20:53  [ТС] 27
Пытливый, ,вот блиин, у меня adoconnection требует mdb

Добавлено через 1 минуту
Пытливый, а бд пересохраняться в этом формате не хочет...
0
Пытливый
1380 / 691 / 249
Регистрация: 29.05.2013
Сообщений: 3,116
30.05.2017, 20:59 28
У меня строка подключения вынесена в приложение.
Delphi
1
2
Const
  ConnectionString = 'Provider=Microsoft.ACE.OLEDB.12.0;Data Source=%sПоезда.accdb';
0
Andrey19951
0 / 0 / 0
Регистрация: 10.06.2016
Сообщений: 28
30.05.2017, 21:04  [ТС] 29
Пытливый, ну в общем вот такая ошибка
0
Миниатюры
ADOTable: поиск через 2 Edit-a  
Andrey19951
0 / 0 / 0
Регистрация: 10.06.2016
Сообщений: 28
30.05.2017, 21:17  [ТС] 30
Пытливый, Не удалось подключится к БД
0
Пытливый
1380 / 691 / 249
Регистрация: 29.05.2013
Сообщений: 3,116
30.05.2017, 21:35 31
Вы внизу внимательно читали аж 3 сообщения?
Я понятия не имею, зачем у вас Дельфи в Temp лазит и там что-то не находит. У вас может что-то с правами или какой-то антивирус стоит и мелко пакостит?

Добавлено через 1 минуту
Ха, так зачем же вы столько проектов открыли одновременно с одинаковым именем? Справа в группе проектов аж 3 штуки висит.
0
Andrey19951
0 / 0 / 0
Регистрация: 10.06.2016
Сообщений: 28
30.05.2017, 21:38  [ТС] 32
Пытливый, да, это я уже решил
0
Пытливый
1380 / 691 / 249
Регистрация: 29.05.2013
Сообщений: 3,116
30.05.2017, 21:39 33
И не забудьте положить файл базы данных в Win32\Debug пока идет отладка программы.
0
Andrey19951
0 / 0 / 0
Регистрация: 10.06.2016
Сообщений: 28
30.05.2017, 21:42  [ТС] 34
Пытливый, теперь новые 2 ошибки: "Style "sky" not found" и "Не удалось подключится к БД". Одна за одной выскакивают
0
Пытливый
1380 / 691 / 249
Регистрация: 29.05.2013
Сообщений: 3,116
30.05.2017, 21:45 35
Я так и не нашел применения в вашей базе вагонам. Вы собираетесь еще делать покупку билетов? Иначе я не понимаю, зачем они нужны.

Добавлено через 2 минуты
Стиль Sky или любой на выбор вы выбираете в настройках проекта Application\Appearance. Ну а подключение не получится если файл БД не находится. В приложении, путь получается от местоположения файла приложения Train.exe
0
Andrey19951
0 / 0 / 0
Регистрация: 10.06.2016
Сообщений: 28
30.05.2017, 21:45  [ТС] 36
Пытливый, да, покупка билетов. Но там все посложней. Главная цель - рассчитать стоимость билета соответствующей категории вагона (Люкс, купе, плацкарт). Самое главное условие - это тарифное расстояние, то есть за сколько километров мы платим (там в общем-то таблица, которую тоже надо будет внести) ну и куча других коэффициентов
0
Пытливый
1380 / 691 / 249
Регистрация: 29.05.2013
Сообщений: 3,116
30.05.2017, 21:48 37
Ну расстояние то вы получите из инета, откуда и я взял станции и т.д. Добавить только придется это поле в Расписание.
0
Andrey19951
0 / 0 / 0
Регистрация: 10.06.2016
Сообщений: 28
30.05.2017, 22:00  [ТС] 38
Пытливый, Не удалось подключится к БД. Все лежит где надо
0
Пытливый
1380 / 691 / 249
Регистрация: 29.05.2013
Сообщений: 3,116
30.05.2017, 23:01 39
А попробуйте как вот такую строку подключения:
Delphi
1
2
Const
  ConnectionString = 'Provider=Microsoft.ACE.OLEDB.16.0;Data Source=%sПоезда.accdb';
Вы вроде говорили, что у вас 16 офис. Может в этом проблема.

Добавлено через 17 минут
Если не поможет, то попробуйте заменить:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
procedure TForm16.FormCreate(Sender: TObject);
Const
  ConnectionString = 'Provider=Microsoft.ACE.OLEDB.16.0;Data Source=%sПоезда.accdb';
begin
 AdoDB.Close;
 try
  AdoDB.ConnectionString := Format(ConnectionString, [ExtractFilePath(ParamStr(0))]);
  AdoDB.Open;
  dicOutStation.Open;
  dicInStation.Open;
  dicStation.Open;
  qTrain.Open;
  qOutStation.Open;
  qInStation.Open;
  qSchedule.Open;
 except on E: Exception
  do begin
     MessageDlg('Ошибка подключения к БД.'#13 + E.Message, mtError, [mbOk], 0);
     Application.Terminate;
     end;
 end;
 DBLookupComboBox2.KeyValue := -1;
 DBLookupComboBox3.KeyValue := -1;
end;
Тут более подробная информация по ошибке.
0
Andrey19951
0 / 0 / 0
Регистрация: 10.06.2016
Сообщений: 28
31.05.2017, 18:55  [ТС] 40
Пытливый, "Ошибка подключения к БД. Не удается найти указанный поставщик. Вероятно он установлен неправильно"
0
31.05.2017, 18:55
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.05.2017, 18:55

Поиск в базе данных Access через Edit
Прочитал до этого созданные темы перепробовал по разному, но у меня всё равно...

Поиск в DBGrid по каждому столбцу через единственный Edit
Добрый день, прошу помочь с одной задачкой. Мне нужно чтобы при вводе текста в...

добавление записей в цикле из edit (adotable, access)
Здравствуйте! Есть форма для ввода пользователем учебных предметов. Сначала...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru