Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.04.15;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "Базы";
Текущий архив: 2002.04.15;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.013 c
1-46449
Yuraz
2002-04-01 11:06
2002.04.15
Подскажите, как в полезную ф-ю commatext добавить др. разграничит


1-46427
RUS1
2002-04-01 15:57
2002.04.15
Как проверить что файл занят другим приложением


7-46520
amamed_3071
2002-01-18 13:28
2002.04.15
где находится файл?


1-46321
Cyrex
2002-04-01 17:34
2002.04.15
Обращение к объектам, созданным в Run-Time.


14-46491
rambler
2002-03-05 17:58
2002.04.15
Вычисления.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский