Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.006 c
1-57048
Елена
2002-02-04 11:52
2002.02.18
Гориз. полоса прокрутки в ComboBox


4-57266
relaxer
2001-12-20 11:43
2002.02.18
Помогите с Таймером


4-57248
yriy
2001-12-19 22:45
2002.02.18
вопрос


6-57178
Алиса
2001-10-16 11:14
2002.02.18
Имя пользователя на сетевом компьютере


14-57204
Иван Шихалев
2001-12-27 20:20
2002.02.18
Насколько быстрее borlndmm.dll выделяет и освобождает память, чем функции WinAPI?




   Наверх