Модераторы: Akella
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Не удается сделать Master+detail 
:(
    Опции темы
Chaos A.D.
Дата 15.12.2005, 16:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 172
Регистрация: 16.1.2005
Где: 09 RUS

Репутация: нет
Всего: 7



Помогите пожалуйста... Недавно столкнулся с необходимостью писать софт с использованием БД. Выбрал FireBird 1.5. Скачал книгу "Мир Interbase". Дочитал до главы про Master+Detail. В моей проге решил сделать так-же. У меня два DBGrid-а, по два IBDataSet и TDataSource. Хочу сделать так, как в примере из книги. Жмякнул по строке в первой таблице, во второй отобразились данные, относящиеся к этой строке. Пытался сделать все как в книге, но не работает... Сейчас примерно обрисую, что у меня к чему...

Есть две таблицы, которые я хочу связать. В первой содержатся клиенты. У них есть поле CLIENT_ID. Во второй - договора. У каждого договора опять же, есть поле CLIENT_ID. В таблице с договорами CLIENT_ID - внешнее поле...

На форме у меня две таблицы. DBGridClients и DBGridContracts. Затем, два TDataSource - DataSourceClients и DataSourceContracts. Ну и два TIBDataSet - IBDataSetClients и IBDataSetContracts.

Далее, у DataSourceClients->DataSet = IBDataSetClients, а у DataSourceContracts->DataSet = IBDataSetContracts.
Я задаю IBDataSetContracts->DataSource = DataSourceClients. Пишу SelectSQL =
Код

select 
    CONTRACT_ARCHIVE_NUM, 
    BEGIN_DATE, 
    EXPIRE_DATE, 
    CONTRACT_SUBJ, 
    CONTRACT_TYPE, 
    CONTRACT_SUM
    // - И Так далее
from CONTRACTS
where CLIENT_ID = :CLIENT_ID


Все компилируется, запускается, но таблица с договорами постоянно пустая. Хотя данные там есть гарантированно. В чем проблема, подскажите пожалуйста?
--------------------
Надо смеяться над тем, что тебя мучит, иначе не сохранишь равновесия, иначе мир сведет тебя с ума...Ken Kesey - One Flew Over The Cocoo's Nest
PM MAIL   Вверх
Chaos A.D.
Дата 15.12.2005, 16:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 172
Регистрация: 16.1.2005
Где: 09 RUS

Репутация: нет
Всего: 7



Извините, поспешил, оказывается, обязательно было в SelectSQL Master-detail-таблицы выбирать CLIENT_ID. Я, как начинающий, этого не знал.
--------------------
Надо смеяться над тем, что тебя мучит, иначе не сохранишь равновесия, иначе мир сведет тебя с ума...Ken Kesey - One Flew Over The Cocoo's Nest
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Interbase"
Alex

Обязательно указание:

1. Версию InterBase (Firebird, Yaffil)

2. Способа доступа (ADO, BDE, IBX и т.д.)

  • КАК ПРАВИЛЬНО ОФОРМИТЬ КОД - ЗДЕСЬ
  • КАК ПРАВИЛЬНО УКАЗАТЬ ТЕКСТ ОШИБКИ - ЗДЕСЬ
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • FAQ раздела лежит здесь!

Если Вам понравилась атмосфера форума, заходите к нам чаще! С Уважением, Akella.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Firebird, Interbase | Следующая тема »


 




[ Время генерации скрипта: 0.0387 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.