就字段的和---不用SQL语句求

xxxfffcn 2004-05-06 11:02:43
procedure Tw_shfw.DataSource_GHPJUpdateData(Sender: TObject);
var
total_tmp,totalsum_tmp:integer;
begin
totalsum_tmp:=0;
total_tmp:=0;
with dm_sqlserver.ADOQuery_ghpj do
begin
first;
while not eof do
begin
total_tmp:=FieldByName('price_ghpj').Value+FieldByName('num_ghpj').Value;
totalsum_tmp:=totalsum_tmp+total_tmp;
/// showmessage(floattostr(total_tmp));
next;
end;
w_shfw.Edit_total.Text:=floattostr(totalsum_tmp);
end;
end;

上面的有点问题
在database里price_ghpj为decimal型,num_ghpj为number型
...全文
34 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
hmily1688 2004-05-07
  • 打赏
  • 举报
回复
如果你的字段为null值时你有没有考虑到呢。
将这句total_tmp:=FieldByName('price_ghpj').Value+FieldByName('num_ghpj').Value;
改为total_tmp:=FieldByName('price_ghpj').AsFloat+FieldByName('num_ghpj').AsFloat;

xxxfffcn 2004-05-06
  • 打赏
  • 举报
回复
报这个错

project eims_system.exe raised exception class EStackoverflow with message 'stack overflow'.process stopped.use step or run to continue.

以下是我保存按钮的代码(按保存按钮后开始计算)

procedure Tw_shfw.SpeedButton_save2Click(Sender: TObject);
begin
try
dm_sqlserver.ADOConnection_sqlserver.BeginTrans;//开始事务
with dm_sqlserver.ADOQuery_GHPJ do
begin
// post;
UpdateBatch();
MessageBox(Handle,pchar('配件数据保存成功!'),'信息',MB_ICONINFORMATION);
end;
dm_sqlserver.ADOConnection_sqlserver.CommitTrans;//提交事务
except
dm_sqlserver.ADOConnection_sqlserver.RollBackTrans;//出现异常,事务回滚
MessageBox(Handle,pchar('配件数据保存失败!'),'提示',MB_ICONEXCLAMATION);
end;
end;
xxxfffcn 2004-05-06
  • 打赏
  • 举报
回复
求字段的和---不用SQL语句求
marf_cn 2004-05-06
  • 打赏
  • 举报
回复
什么问题?
看起来没什么错误。

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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