|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
16.10.2014, 20:11 | #1 |
Пользователь
Регистрация: 18.08.2014
Сообщений: 11
|
delphi 7 вопросы
Как создать в базе данных математические действия над ячейками?? ? Например как в Excel, была возможность заложить формулу в ячейку, чтоб производился автоматический расчет.
|
16.10.2014, 20:19 | #2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Это делается вычисляемыми полями.
Опять таки все зависит от задачи. Опиши задачу тогда можно будет точнее рассказать что и как настраивать.
I'm learning to live...
|
17.10.2014, 08:53 | #3 |
Просветитель
Участник клуба
Регистрация: 26.12.2012
Сообщений: 1,834
|
На уровне самой БД -- создать представление (view).
В разработке: воспроизводственный контур ИТ
|
24.03.2015, 16:38 | #4 |
Пользователь
Регистрация: 18.08.2014
Сообщений: 11
|
Создать для таблицы Tovar.db два вычисляемых поля Total (общая стоимость товара в рублях) и TotalUE (общая стоимость товара в у.е. (в $)).
Значения полей Total и TotalUE вычисляются по следующим правилам: Total=Kolvo*Cena TotalUE= Total/30.36 При расчете стоимости в условных единицах предполагается, что обменный курс составляет 30 руб. 36 коп. Расположите на форме компоненты Table1, DataSource1, DBGrid1 для работы с БД (для таблицы Tovar.db) и свяжите их. Сделайте поля Tovar, Kolvo, Cena набора данных Table1статическими. В контекстном меню Редактора полей выберите пункт New Field. В поле Name задайте имя поля Total. В списке Type выберите значение Float. Установите переключатель Calculated в группе переключателей Field type. Нажмите ОК. Произведите аналогичные действия для поля TotalUE. Закройте Редактор полей. Напишите обработчик события OnCalcFields для НД Table1: procedure TForm1.Table1CalcFields(DataSet: TDataSet); begin Table1Total.AsFloat:=Table1.FieldBy Name('Kolvo').AsFloat* Table1.FieldByName('Cena').AsFloat; Table1TotalUE.AsFloat:=Table1Total. AsFloat/30.36; end; Чтобы отформатировать значение поля TotalUE можно написать следующий обработчик события OnCreate для формы: procedure TForm1.FormCreate(Sender: TObject); begin Table1TotalUE.DisplayFormat:='###.# #'; end; Последний раз редактировалось anastassia; 24.03.2015 в 16:40. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
вопросы по delphi | Julia21 | Помощь студентам | 0 | 24.06.2013 00:23 |
Вопросы Delphi &VB | Extez1 | Помощь студентам | 2 | 24.02.2011 22:25 |
Вопросы по Delphi | Dinkall | Помощь студентам | 1 | 08.09.2010 19:01 |
Delphi 7. Вопросы от новичка. | Neroaz | Общие вопросы Delphi | 6 | 26.03.2010 15:23 |
С++ и Delphi. Вопросы | UnD)eaD)Snake | Общие вопросы C/C++ | 3 | 21.08.2007 20:11 |