在线等待,急急急!!!(30分)

  • 主题发起人 主题发起人 leo_zzz
  • 开始时间 开始时间
L

leo_zzz

Unregistered / Unconfirmed
GUEST, unregistred user!
数据库为access一个表,有 单价 数量 金额等字段,

单价已经确定,数量等待输入,金额缺省,

用adotable 连接 datasource 连接 grid 显示,

要求 在grid中输入数量,同时grid中金额处自动机算出数值。 请问 怎么 实现啊??
 
procedure TCustomerData.ADOTablexjhAfterPost(DataSet: TDataSet);
begin
with DataSet do
begin
if fieldbyname('金额').AsString = '' then
fieldbyname('金额').Asinteger:=单价*数量
end;
end;
 
不行啊,出错提示'table not in insert or edit mode'

怎么回事 啊??
 
在编辑前加一个
dataset.edit
最后再post一下
试试看
 
在post 中 再加post 会无限循环啊!
 
哦,对了
那写在AfterScroll中试试
我通常不会在数据库中加入这个字段
都是在table中加入计算型字段来显示计算结果的
 
直接在静态字段数量的OnValidate事件中加入

with dataset do
begin
TNumericField(fieldbyname('金额')).DisplayFormat:='0.00';
fieldbyname('金额').value:=fieldbyname('单价').value*fieldbyname('数量').value;
end;

未验证,有误的地方自己改改
 
多人接受答案了。
 
后退
顶部