Форум: "Базы";
Текущий архив: 2002.12.02;
Скачать: [xml.tar.bz2];
ВнизИзменить значение во время ввода Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c