У меня тут проблема и не могу понять что не так.
Значит так, имеются таблицы 'abonents', 'services' и 'order' и три DBGrid, соответственно. Нужно реализовать следующее: когда пользователь загружает все таблицы в DBGrid'ы (это работает правильно) и выбирает определенного человека из таблицы 'abonents', то при нажатии кнопки, должен осуществляться запрос к таблице 'order' и на форме должен заполниться DBGrid4: из 'order' в DBGrid4 выбираются поля 'rental_fee', 'internet', 'talks', а определение принадлежности строки к выбранному абоненту осуществляется по полю 'user_id'. Я попробовал сделать. Как загружаются таблицы, описывать не буду, т.к. это срабатывает верно, а вот с запросом застопорился.
Сделал следующее:
1. Разместил DBF1, DBGrid4, Order (это объект TDatasource).
2. В свойствах указал:
а) для DBGrid4: DataSource=Query
б) для Query: DataSet=Dbf1
в) для DBF1: FilePath={полный путь до файла order.dbf}, File=order.dbf
3. Написал следующую процедуру:
if Dbf1.Active then Dbf1.Close;
- Код: Выделить всё
Dbf1.TableName:='/media/DATA/OOT/Запросы/DATABASE/TABLES/order.dbf';
if SqlQuery1.Active then SqlQuery1.Close;
SqlQuery1.SQL.Clear;
SqlQuery1.SQL.Add('SELECT rental_fee, internet, talks FROM order.dbf WHERE user_id="'+DBGrid_abonents.SelectedField.AsString+'"');
Dbf1.Open;
SqlQuery1.Open;
4. После запуска загружаю таблицы. Нажимаю кнопку, и выходит сообщение [file not found:".../.../order.dbf"]. Хотя файл лежит на месте и путь к нему верный.
Помогите, пожалуйста...