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

Вниз

Получение значения поля только что вставляемой записи   Найти похожие ветки 

 
supersan ©   (2003-04-21 16:40) [0]

Здравствуйте, господа. Возможно, данный вопрос уже где-то звучал, но не нашел я. :-(
А именно: в обработчике BeforePost нужно получить значение поля для только что вставленной записи. Отображение таблицы - в TDBGrid (если б был, например, DBEdit, то просто взял бы его Text). Возможно такое в принципе? Если да, то как? Если нет - то все равно как (см. сабж)?


 
Zacho ©   (2003-04-21 16:46) [1]

http://www.ibase.ru/devinfo/generator.htm
Если кратко - получать перед вставкой записи


 
Johnmen ©   (2003-04-21 16:48) [2]

Есть такая штука, как генератор. Используя его можно заранее получить уникальный идентификатор записи...


 
Anatoly Podgoretsky ©   (2003-04-21 16:50) [3]

supersan © (21.04.03 16:40)
Такой записе еще нет, она будет после AfterPost


 
supersan ©   (2003-04-21 16:53) [4]

Извините, мне не надо значение автоинкрементного поля, получаемого при использовании генератора. Надо посчитать значение поля, используя значение другого поля (сразу предупрежу, что алгоритм непростой, в триггер не загнать, или загнать с трудом). Как?


 
3JIA9I CyKA ©   (2003-04-21 16:56) [5]

Есть способ. Но он не простой! В форуме не опишешь. А если опишешь - хрен кто прочитает!


 
supersan ©   (2003-04-21 16:59) [6]


> Anatoly Podgoretsky © (21.04.03 16:50)

Дак если была такая запись, так и вопроса бы не было

> 3JIA9I CyKA © (21.04.03 16:56)

А хоть примерно?


 
Соловьев ©   (2003-04-21 16:59) [7]


> сразу предупрежу, что алгоритм непростой, в триггер не загнать,
> или загнать с трудом). Как?

UDF, но все же может и ХП или трггер справиться...


 
3JIA9I CyKA ©   (2003-04-21 17:00) [8]

>>алгоритм непростой, в триггер не загнать,
>>или загнать с трудом
Поподробней, плз.


 
Zacho ©   (2003-04-21 17:02) [9]

Напиши подробнее, что тебе надо. Пока информации для ответа не достаточно.


 
supersan ©   (2003-04-21 17:12) [10]


> Соловьев © (21.04.03 16:59)


> 3JIA9I CyKA © (21.04.03 17:00)

Во-первых, юзер может сам внести значение в это поле, поэетому желательно спросить, надо ли его рассчитать.
В-общем, предметная область, чувствую, без этого не договоримся. Расчет добавок к пенсиям. Есть таблица
CREATE TABLE TBPENS (
ID T_ID NOT NULL,
ID_CARD T_ID,
ID_VPENS T_ID,
R_PENS T_MONEY,
ZPL T_MONEY,
PERCENT T_PERCENT,
R_SUM T_MONEY,
DOPL T_MONEY,
NUM_RNV T_NUM,
DATE_RNV T_DATE,
DATE_NV T_DATE,
DATE_KV T_DATE,
DELETED T_DELETED COLLATE PXW_CYRL
);

Поле DOPL:=R_SUM-R_PENS, причем, если DOPL<PMIN (это значение из другой таблицы), то DOPL:=PMIN.
Причем юзер может изменить, например, какое-нибудь из полей R_SUM или R_PENS и захотеть пересчитать заново. Может ввести новую запись и захотеть посчитать. А может и сам ввести авторитарно значение DOPL и прога должна это принять. Т.е. задается вопрос:"Хотите пересчитать", в зависимости от ответа - считать или просто запостить.
Поля ZPL, PERCENT, R_SUM тоже рассчитываются, в зависимости от других таблиц, но с ними я справился. Нужно получить значение NEW.R_PENS, тогда будет мне в жизни щастье.
Есть идеи?


 
supersan ©   (2003-04-21 18:06) [11]

Ну вот, совсем про меня забыли :-(


 
3JIA9I CyKA ©   (2003-04-21 18:10) [12]

>>А может и сам ввести авторитарно значение DOPL и прога должна >>это принять.
Это случай, когда
new.dopl is not null
в противном случае считаем.
В чём сложность?


 
supersan ©   (2003-04-21 18:25) [13]


> 3JIA9I CyKA © (21.04.03 18:10)

А если он изменит, например, поле R_Pens? Тогда, во-первых, уже нужен триггер BeforeUpdate, во-вторых, все равно остается проблема, а нужно ли пересчитывать?



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

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

Наверх




Память: 0.49 MB
Время: 0.016 c
1-34476
galexis
2003-04-29 13:23
2003.05.12
Не работает OnKeyDown на клавишу Tab


1-34415
Separator
2003-04-30 08:29
2003.05.12
Прорисовка StringGrid


14-34594
Дмитрий К.К.
2003-04-24 06:19
2003.05.12
Именинники 24 апреля


3-34360
Ruslan.
2003-04-22 14:15
2003.05.12
VIEW


14-34564
Vint45
2003-04-23 14:16
2003.05.12
Распределение элементов с учетом приоритетов