
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
16.03.2003, 07:15:18
|
|||
|---|---|---|---|
|
|||
DBGridEh |
|||
|
#18+
Что это может быть? На событие DataSet OneCalcFields FieldByName('Rest').Value:=(FieldByName('Quantity').Value)-(FieldByName('SaleQuantity').Value); Получается переполнение стека.Как сделать правильно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.03.2003, 08:40:28
|
|||
|---|---|---|---|
DBGridEh |
|||
|
#18+
А поле Rest у тебя вычисляемое или нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.03.2003, 09:13:00
|
|||
|---|---|---|---|
DBGridEh |
|||
|
#18+
ЕСли это поле данных, и ты его модифицируешь на OnCalcFields, в ответ тебе снова генериться OnCalcFields и ты получаешь зацикливание, что в конце концов приводит к Stack Overflow. Вот тока интересно, причем тут DBGridEH в теме топика?! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
18.03.2003, 00:38:57
|
|||
|---|---|---|---|
|
|||
DBGridEh |
|||
|
#18+
А поле Rest у тебя вычисляемое или нет? Поле Rest хочу сделать вычисляемым: FieldByName('Rest').Value:=(FieldByName('Quantity').Value)-(FieldByName('SaleQuantity').Value);Оно не виртуальное и находится в базе,может содержать значения. Вот тока интересно, причем тут DBGridEH в теме топика?! Чтоб было понятнее :) Как теперь понимаю OnCalcFields событие не подходит. Что можно сделать???????? Help me please!? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
18.03.2003, 08:17:29
|
|||
|---|---|---|---|
DBGridEh |
|||
|
#18+
Я спрашивал про вычисляемое поле в терминах TDataSet. А у тебя поле fkData, и делать с ним такое в обработчике OnCalcFields нельзя. Как можно сделать, если нужно вычисляемое поле хранить в базе. Из базы это поле можно не выбирать, раз оно расчитывается на основании значений других полей. Создай поле Rest, типа fkCalculated, в обработчике OnCalcFields пиши, что писал. И его сохраняй в базе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
18.03.2003, 17:35:55
|
|||
|---|---|---|---|
|
|||
DBGridEh |
|||
|
#18+
Создай поле Rest, типа fkCalculated, в обработчике OnCalcFields пиши, что писал. И его сохраняй в базе. Прошу меня простить за мою непонятливость.Но как сохраняются поля OnCalcFields?Это же виртуальные поля.Они видны только при работе приложения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
18.03.2003, 18:19:11
|
|||
|---|---|---|---|
DBGridEh |
|||
|
#18+
Я не знаю, через что ты работаешь. У меня есть два варианта проектов, одни на BDE, другие на ADO. Везде используются переработанные компоненты доступа к данным, в которых изменения данных сохраняются через инструкции UpdateSQL, InsertSQL и DeleteSQL (не люблю когда за меня ADO решает, какую инструкцию ему на сервер посылать) В которых, как обычно стоит параметр ...SET SomeField = :SomeCalculatedField... А его подствляем из DataSeta, и в данном случаи без разницы, какого оно типа fkData или fkCalculated. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
18.03.2003, 22:57:23
|
|||
|---|---|---|---|
|
|||
DBGridEh |
|||
|
#18+
А что делать в ADO?Компоненты UpdateSQL, InsertSQL и DeleteSQL к сожалению я не использую.Данные получаю через ClientDataSet. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
19.03.2003, 03:24:11
|
|||
|---|---|---|---|
DBGridEh |
|||
|
#18+
Лучше поставить в DataSource обработку на DataChange. Тогда значение этого поле будет пересчитываться при редактировании других полей. Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=58&tablet=1&tid=2118877]: |
0ms |
get settings: |
7ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
4ms |
track hit: |
204ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
40ms |
get tp. blocked users: |
1ms |
| others: | 208ms |
| total: | 495ms |

| 0 / 0 |
