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

Вниз

Мне необходимо получить значение из поля, которое формируется при помощи генератора и триггера   Найти похожие ветки 

 
Rex   (2002-01-23 11:12) [0]

Уважаемые мастера! Мне необходимо получить значение из поля, которое формируется при помощи генератора и триггера. При вводе записи в таблицу, значение этого поля не доступно. Оно появляется лишь после IBDataSet.Close и IBDataSet.Open. Это очень коряво, есть ли вариант получше?


 
Alexandr ©   (2002-01-23 11:45) [1]

какими компонентами пользуешься?


 
Alexandr ©   (2002-01-23 11:46) [2]

сорри.
Догадался IBX с политры Interbase

я не знаю как легче это сделать в IBX, кстати, а какой текст у генератора?


 
Romkin ©   (2002-01-23 11:48) [3]

Просто получай значение триггера на OnNewRecord, у меня просто организованы не триггера, а процедуры вида
create procedure <TableName>_ID
returns(ID integer)
as
begin
ID = Gen_ID(<GeneratorName>,1);
end

Для каждой таблицы. НА клиенте есть TStoredProc, и делается вызов:
SpID.StoredProcName := TableName + "_ID";
SpID.ExecProc;
NewID := SpID.ParamByName("ID").asInteger;

и пользуешься, причем в триггере присвоение, если значение поля NULL


 
Rex   (2002-01-23 13:31) [4]

А если я хочу, чтобы значение этого поля было записано в дочернюю таблицу. Можно ли заставить работать какой-нибудь триггер, который бы на before insert дочерней таблицы вставлял значение поля из родительской ?


 
Digitman ©   (2002-01-23 14:12) [5]

см. TIBDataSet.RefreshSQL


 
Romkin ©   (2002-01-23 14:13) [6]

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


 
Rex   (2002-01-23 15:06) [7]

2Romkin
Никак. У меня c триггером не получилось. Но по вашему (с процедурой) всё работает.



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

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

Наверх




Память: 0.48 MB
Время: 0.008 c
4-57260
Man In Red
2001-12-20 21:04
2002.02.18
Как отправить SMS?


1-57110
pakko
2002-02-02 15:09
2002.02.18
Как мне получить дату созидания файла???


14-57187
tovSuhov
2001-12-27 14:51
2002.02.18
BMP - картинки теоретически могут содержать ВИРУСЫ!


4-57241
Alex Y.
2001-12-19 16:14
2002.02.18
драйвер устройства, прерывания


3-56986
Илья Лу.
2002-01-23 14:28
2002.02.18
внешнее объединение и connect by в одном запросе