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

Вниз

Изменить значение во время ввода   Найти похожие ветки 

 
ruslan_as ©   (2002-11-14 12:45) [0]

Дан DBGrid, куда напрямую пользователи вводят значения (цену).
Как можно сделать, чтобы они вводили свою цену, а в базу записывалось эта цена умноженная на 1,1. Вроде просто, а сообразить не могу.


 
iNew ©   (2002-11-14 12:52) [1]

В какое-нибудь событие (Типа OnDataChange) засунь это самое умножение.


 
ЮЮ ©   (2002-11-14 12:58) [2]

А разницу в ценах на личный счёт переводить будешь?
Интересный клиент получится: пользователь вводит 1, а получает 1.1 ! А что он должен увидеть в поле редактирования, когда захочет его исправить? 1.1 или опять 1?


 
KoluChi ©   (2002-11-14 13:03) [3]

Нужно использовать 2 разных поля в dataset - одно для отображения и ввода, другое реальное для записи в базу данных.
при чтении из базы - select field, field/1.1 as view-field from ...
В программе при изменении view_field менять field.
В базу записать соответственно field.



 
ЮЮ ©   (2002-11-14 13:19) [4]

>Как можно сделать, чтобы они вводили свою цену, а в базу записывалось эта цена умноженная на 1,1

Почему же они сразу не вводят цену, умноженную на 1.1? Наверное, потому, что вводимая цена есть какое-то реальное свойствою Не с потолка же они её берут. Вопрос в другом. Почему тебя не устраивает введённая цена, зачем её тут же менять? Если где-то в другом месте, при рассчётах, должна использоваться не сама она, а умноженная на 1.1, во там и умножай, не меняя при этом значение в базе.


 
Roma111   (2002-11-14 13:32) [5]

Есть очень ценное предложение:
В таблицу базы записывай нормальное число, сделай вьюер который умножает на 1.1. Можно, конечно, и триггер написать на события INSERT, UPDATE, который умножает, но это неправильно с точки зрения нормальной логики.


 
Виталий Панасенко   (2002-11-14 13:33) [6]

BeforePost - > Tbl1Field1.AsFloat := Tbl1Field1.AsFloat * 1.1;


 
Виталий Панасенко   (2002-11-14 13:35) [7]

Или добавь в таблицу вычисляемое поле: Field2 computed by(Field1*1.1)



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

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

Наверх




Память: 0.48 MB
Время: 0.021 c
1-4267
Corte ™
2002-11-19 16:32
2002.12.02
Как открыть TreeView root


1-4471
Gadfly
2002-11-19 13:23
2002.12.02
Установка нового компонента


1-4410
Separator
2002-11-20 13:10
2002.12.02
Прикол с TThread


14-4575
copyr25
2002-11-06 18:41
2002.12.02
---|Ветка была без названия|---


1-4366
Николай В.
2002-11-21 16:42
2002.12.02
Динамическая загрузка своей DLL, а не зарегистрированной в Window