Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.09.02;
Скачать: CL | DM;

Вниз

Что тут лучше использовать: триггер и ХП   Найти похожие ветки 

 
Виталий Панасенко   (2002-08-12 15:01) [0]

Имеем две таблицы мастер-детаил:
Мастер: Шапка накладной
Doc_Id Integer *
Owner_Code
Doc_Type
Doc_Date
Client_Code
ну и тд

Детаил: данные об отпускаемом товаре
Doc_Id Integer *
Id Integer *
Produkt_Kolvo
и тд


Doc_Id в Мастер генерирует генератор.
Но для того чтобы их связать я должен знать Doc_Id.
На ум приходит вызвать ХП и получить Doc_ID.
Далее insert into detail ... values(:doc_id etc.)
Но вообще-то как я слышал это можно сделать с помощью триггера.
Но как получить Doc_ID.
Id в детаил тоже генерит генератор, но там вроди понятно - это
для уникальности и мне его знать не обязательно (по Doc_ID я найду все).
Подскажите как можно это сделать, любой вариант.


 
Leran2002 ©   (2002-08-12 15:12) [1]

По моему вот самый простой способ:
GenQuery:TIBQuery;
GenQuery.SQL содержит "SELECT GEN_ID(GENNUMRES, 1) FROM RDB$DATABASE"

GENNUMRES – имя вашего генератора

// после добавления записи
procedure TDM.MainTblAfterInsert(DataSet: TDataSet);
begin
GenQuery.Open;
MainTblNUMRES.AsInteger:=GenQuery.Fields[0].AsInteger;
GenQuery.Close;
end;


 
Johnmen ©   (2002-08-12 15:51) [2]

>Leran2002 © (12.08.02 15:12)

По сути это то же, что и
>На ум приходит вызвать ХП и получить Doc_ID.
>Далее insert into detail ... values(:doc_id etc.)

>Виталий Панасенко
Делай, как сам написал. И это будет правильно.



 
Leran2002 ©   (2002-08-12 16:03) [3]


> Johnmen © (12.08.02 15:51)

А чем мой вариан плох??? Заранее спасибо за ответ...


 
Johnmen ©   (2002-08-12 16:32) [4]

>Leran2002 ©

Я не говорил, что плох ! Я сказал, что суть его та же !



Страницы: 1 вся ветка

Текущий архив: 2002.09.02;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.016 c
14-3619
MeamoryLeak
2002-08-06 14:08
2002.09.02
Непростая задачка... кому интересно...


1-3428
Berser
2002-08-23 01:25
2002.09.02
Как получить список всех выполняемых *.ехе (но не окон)?


4-3677
Max2000
2002-06-28 13:55
2002.09.02
Мастера!!! Подскажите как это сделать на API? Без TCanvas?


1-3349
XPatriot
2002-08-18 00:43
2002.09.02
MDIForm ы


1-3383
Lendl
2002-08-22 10:06
2002.09.02
Координаты X и Y текущего положения окна на экране?