Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

как правильно делать расчет по полям DBGrid...? [D6]


Страницы:   1 2

iusupp ©   (2003-03-23 11:16:00) 

как правильно делать расчет (арифметика) по полям DBGrid...?

Table1.FieldByName("<имя поля>").Value
или как ещё...?
Напишите пример пожалуйста...


iusupp   (2003-03-26 18:39:00) [1]

Всем большое спасибо...
Вычитал в книге вот так...

procedure TDataModule2.Table1CalcFields(DataSet: TDataSet);
begin
Table1SUMM.Value:= Table1BDEDesigner.AsInteger *
Table1BDEDesigner2.AsInteger/Table1BDEDesigner3.AsVariant;
end;

работает...


Silver_   (2003-03-24 17:38:00) [2]

Делаешь вычисляемое поле
В OnCalcFields нужного ДатаСета
или OnChange, OnGetText нужного Поля
Делаешь все вычисления


VAleksey   (2003-03-24 16:28:00) [3]


> MsGuns © (24.03.03 13:21)

Добавлю немного.
Бывает необходимо у клиента выяснить что есть что.
Цена = Сумма / кол- во
или
Сумма = кол-во * цена.


MsGuns   (2003-03-24 13:21:00) [4]

>tomkat © (24.03.03 13:14)
>то есть нада считать К-во от цены и суммы?

Это бывает крайне редко (например, при инвентаразациях довводится недостающее кол-во). А вот цену от кол-ва и суммы частенько приходится вычислять там, где в складском учете разрешены "средневзвешенные" цены.


tomkat   (2003-03-24 13:14:00) [5]

то есть нада считать К-во от цены и суммы?
как-то не красиво ....


MsGuns   (2003-03-24 12:43:00) [6]

>tomkat © (24.03.03 10:16)
SQL не всегда помогает. Пример:

3 колонки: Кол-во, Цена, Сумма.

Надо, чтоб прога могла вычислять ЛЮБОЕ одно по оставшимся 2-м.
Причем ДО постинта. Причем здесь вообще SQL ?


tomkat   (2003-03-24 10:16:00) [7]

>Ne na 5 minut chtivo :)
ну хоть будет знать, что такое существует, считать лучшее ...
SELECT (t1.kol-vo*t2.price)as summa
FROM table1 t1
,table2 t2
WHERE
t2.id=t1.Id_t2


Ash   (2003-03-24 09:47:00) [8]

Est" horoshaya po MS Sql.. no tam 1200 s chem to stranic.. Ne na 5 minut chtivo :)


Tomkat   (2003-03-24 09:16:00) [9]

не морочте чаловеку голову, а посоветуйте книжку по SQL ....


MsGuns   (2003-03-23 16:53:00) [10]

>iusupp © (23.03.03 16:19)
>Методом научного "тыка"...

Зачем же "тыкать". Достаточно просто внимательно почитать хэлпы по тем компонентам, которые используешь. Лучше всякой книги.



Anatoly Podgoretsky   (2003-03-23 16:38:00) [11]

За пять минут не рассказать о программировании на языках высокого уровня, тебе все таки нужна книга для самых, самых начинающих.


iusupp   (2003-03-23 16:19:00) [12]

MsGuns ©


Понятно...
Методом научного "тыка"...

""Твои проблемы решаются очень просто - методом простых экспериментов""... это значить разбирайся сам...?

Давно известно...что ты можешь книгу прочитать чтобы наити
что тебе надо (примерно 1 час)...
А если есть человек который подскажет...
То тебе нужно 5 минут или ещё меньше...

Ну спасибо и на этом...


MsGuns   (2003-03-23 16:04:00) [13]

Аси нет. Убрал чтоб не задр...ли. С почтой тоже временно траблы.
Все мои "примеры" на IB (от парадокса отошел уже с полгода). На парадоксе есть несколько старых прог, но там ты вряд ли разберешься, да и искать лень.
Твои проблемы решаются очень просто - методом простых экспериментов


iusupp   (2003-03-23 15:30:00) [14]

MsGuns ©

Да.. пойдут схожие...
Посмотрю в исходнике как делать расчеты...
У тебя Ася есть...?


MsGuns   (2003-03-23 15:21:00) [15]

>iusupp © (23.03.03 15:13)

Тебе что, любая годится ?)))


iusupp   (2003-03-23 15:13:00) [16]

MsGuns ©

Не имееться исходник типа бухпрога "Зарплата"
или что нибуть подобное по расчетам...


MsGuns   (2003-03-23 14:56:00) [17]

Рекомендуется все использовать прямое указание типа поля.
Например:
Table1.FieldByName("DokDate").AsDateTime := DataTimePicker1.DateTime;
Table1.FieldByName("DokSum").AsFloat :=
Table1.FieldByName("DokNDS").AsFloat+
Table1.FieldByName("DokProd").AsFloat;

При этом неважно, отображаются ли поля, участвующие в выражении, где-либо в визуальных конролах или нет


iusupp   (2003-03-23 14:25:00) [18]

Anatoly Podgoretsky ©

Ты решил меня заморить...?

Напиши процедуру (пример)...!

Я же только начинаю...!


Anatoly Podgoretsky   (2003-03-23 12:26:00) [19]

умножить "*"
делить "/"
и т.д. - тебе домашнее задание


iusupp   (2003-03-23 11:37:00) [20]

Anatoly Podgoretsky ©

Хорошо в таблицах ...
Как умножить , делить и т.д.
Table1.FieldByName("<имя поля>"/ "имя поля").Value ...?
Напишите пример...


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо