Вниз
Скачать: CL | DM;

Помогите с изменением полей, плииииз.   Найти похожие ветки 

← →
Art1   (2002-03-22 16:16) [0]

У меня в базе 3 поля: цена, кол-во, сумма. Подключены 3 компоненты для работы с базой: Table, DataSource и DBGrid.
На какое событие прицепиться или как решить проблему по другому, но нужно, что-бы при изменении поля из DBGrid цены или кол-ва СРАЗУ менялось значение поля сумма, а не после ререхода на следующую запись. При вызове события AfterEdit значение измененного поля возвращается старое (еще же не вызывался Post). Впихнуть пересчет в событие AfterPost тоже не подходит, т.к. оно вызывается только при переходе на следующую запись. Внутри обработчика события AfterEdit вызывать Table.Post нельзя т.к. значение потом вобже становиться не изменяемым.
Что делать?


← →
Val ©   (2002-03-22 16:26) [1]

TField.OnChange


← →
Art1   (2002-03-22 17:17) [2]

Объясните пожалуйста по-подробнее, я не профессионал.


← →
Val ©   (2002-03-22 17:32) [3]

Это событие происходит при изменении поля, что подробнее объяснить?


← →
Art1   (2002-03-22 19:00) [4]

Если вы имели в виду событие DataSource.OnDataChange, так это не проходит. Как я говорил выше, что при изменении поля цена или кол-во у меня пересчитывается и меняется поле сумма, т.е. не завершившись данный обработчик событий вызывается изменение другого поля текущей записи, а следовательно снова вызов события OnDataChange. Получаем безконечный цикл вызова процедуры самой из себя, и дельфя выдает ошибку переполнения стэка - и правильно делает.
Если вы имели в виду другое событие, то пожалуйста детальней опишите из какой компоненты и как в нем обрабатывать.
Большое спасибо.


← →
Val ©   (2002-03-22 19:10) [5]

Я имел ввиду событие, которое написал-по нему есть хелп вообще-то.
Это событие возникает именно при изменении конкретного объекта-поля. Его вы можете создать с помощью Field Editor. Щелкаете doubleclick на компоненте TTable , он появится-правая кнопка мыши- AddAllFields-создадутся поля, выберите нужное вам поле и увидите, как его свойства, так и события.


← →
Art1   (2002-03-22 19:31) [6]

РАБОТАЕТ!!!
Огромное СПАСИБО.
Я и не подозревал о таких возможностях дельфи.



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

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



Память: 0.46 MB
Время: 0.009 c
14-46486
lel
2002-03-06 10:51
2002.04.15
RSDN magazine продается на Кузнецком мосту 8))


4-46536
Yonic
2002-02-12 04:40
2002.04.15
Как скопировать текст из листбокса?


4-46553
slydiman
2002-02-08 23:56
2002.04.15
C++Builder & ExcelApplication


1-46328
Reals
2002-04-03 20:12
2002.04.15
Проблема с отладкой ISAPI приложения.


1-46393
Немировский Шурик
2002-04-02 12:16
2002.04.15
Работа с циклами.




   Наверх