实现DBGRID字段相乘

ysguo 2009-04-19 10:00:35
在DBGrid中要显示 ‘数量’、‘单价’、‘金额’ 等字段,其中 ‘数量’、‘单价’ 是数据库中的字段,金额=数量*单价。如何在DBGrid中显示 ‘金额’ ? 请各位大哥指点一二,最好能有示例!
...全文
43 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhouhaoIT2005 2011-02-16
  • 打赏
  • 举报
回复
直接SQL运算就可以了
Rainy_mimi 2009-04-22
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 AOM 的回复:]
直接在sql中实现运算是最快的。
[/Quote]

就是
禹爸爸 2009-04-20
  • 打赏
  • 举报
回复
可以在写SQL语句时计算出该字段值,也可以在Delphi的Dataset中创建一个计算字段,并在数据集的CalcFields事件中计算出该字段的值。
genispan 2009-04-20
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 mrwangfei 的回复:]
在SQL语句中写出来不就行了。

select 字段1,2,3.....,(单价*数量) as 金额 from 表不就行了。
[/Quote]
SQL语句里面直接计算就可以了
疯狂低调 2009-04-20
  • 打赏
  • 举报
回复
直接在sql中实现运算是最快的。
7年 2009-04-20
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 mrwangfei 的回复:]
在SQL语句中写出来不就行了。

select 字段1,2,3.....,(单价*数量) as 金额 from 表不就行了。
[/Quote]
可以啦。
阿三 2009-04-20
  • 打赏
  • 举报
回复
加个计算字段
然后在
procedure TFrmShouldPay.ADOQuery1CalcFields(DataSet: TDataSet);
begin
AdoQuery1.FieldByName('金额').Value := AdoQuery1.FieldByName('单价').AsFloat*   AdoQuery1.FieldByName('数量').AsFloat;
end;
de410 2009-04-20
  • 打赏
  • 举报
回复
在on DBGrid1DrawColumnCell事件中写代码~~有数据则运算,没有则不运算~~
starluck 2009-04-19
  • 打赏
  • 举报
回复

在数据集中增加一个 calc 字段。
22222bbb 2009-04-19
  • 打赏
  • 举报
回复
在SQL语句中写出来不就行了。

select 字段1,2,3.....,(单价*数量) as 金额 from 表不就行了。

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧