Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

TpFIBDataSet + master-detail [D5, IB6.x]


-=Sergeante=- ©   (2002-12-04 10:56:00) 

Изматюгался весь. Переписываю потихоньку все наработки с BDE под нормальные компаненты. А конкретно TpFIB... Всё работает просто на ура. Аж приятно становится. Но вот одна дрянь не работает, хоть ты тресни!

Так вот. Есть 2 т-цы, скажем:
СУДОВЛАДЕЛЬЦЫ(ID integer, name varchar) и
СУДА(ID integer, OWNER_ID integer, name varchar)
Соотношение(1:M). Ничего сложного.

В СУДАХ в InsertSQL

insert into SHIP(
ID,
OWNER_ID,
NAME)
values(
:ID,
:OWNER_ID,
:NAME);


tShip связываю с OWNER по DataSource для master-detail связи.
Удаление, редактирование и просмотр работает как положено, но
при tShip.insert параметр :OWNER_ID равен 0. ПОЧЕМУ?
Присидел специально в субботу сверхурочно, излазил весь инет, просмотрел досканально все демки, НУ НЕ РАБОТАЕТ!

Кончилось тем, что я послал все к бабушке и пошёл с горя напился пива.

Помогите.


-=Sergeante=-   (2002-12-05 10:24:00) [1]


> OlegE © (04.12.02 17:16)
> Префикс MAS_, специально введен в FIBPlus для использования
> в механизме master-detail.


DAS IST FANTASTISH!!!!!!! РАБОТАЕТ!
Что бы я без вас делал. Спасибо!


-=Sergeante=-   (2002-12-05 10:20:00) [2]


> OlegE © (04.12.02 17:16)
> Префикс MAS_, специально введен в FIBPlus для использования
> в механизме master-detail.
> В файле(там же)fibplus_article_rus.zip это все описано.
> Там просто часть главы книги "Мир InterBase" по созданию
> master-detail.
> Если не можешь скачать, могу выслать.


Вот оно что... Ща попробуем...


OlegE   (2002-12-04 17:16:00) [3]

Префикс MAS_, специально введен в FIBPlus для использования в механизме master-detail.
В файле(там же) fibplus_article_rus.zipэто все описано. Там просто часть главы книги "Мир InterBase" по созданию master-detail.
Если не можешь скачать, могу выслать.


Johnmen   (2002-12-04 15:32:00) [4]

MASTER_ID - имя поля в реальной таблице,
MAS_ID - имя поля в НД


-=Sergeante=-   (2002-12-04 14:28:00) [5]


> OlegE © (04.12.02 11:39)
> Возьми FIBPlusDemoPack.zip на http://FIBPlus.com.ua.
> Там все хорошо показано.

Первым делом смотрел.
Что меня ввело в заблуждение: в демке в свойстве InsertSQL:

insert into...
(id,
MASTER_ID, ...)
values(
:ID,
:MAS_ID,
...)

параметры поля и значения разные! Как это объясняется?


OlegE   (2002-12-04 11:39:00) [6]

Возьми FIBPlusDemoPack.zip на http://FIBPlus.com.ua.
Там все хорошо показано.


-=Sergeante=-   (2002-12-04 11:14:00) [7]

Или, если не затруднит, поледовательность действий, может что-то я пропускаю, какую-нибудь деталь...


-=Sergeante=-   (2002-12-04 11:09:00) [8]

Нет.
SelectSQL:
select *from ship
order by name


Всё в ажуре.

Есть ещё мысли?


Prooksius   (2002-12-04 11:07:00) [9]

Скорее всего у тебя в SelectSQL нет поля OWNER_ID
При вставке записи параметры InsertSQL проставляются из самого запроса.


Наверх

Титульная страница Поиск, карта сайта Написать письмо