我在DataModule中设定了针对表A的计算字段
CalA1、CalA2、CalA3其中CalA1由A表中字段“1”“2”“3”计算得出,
CalA2和CalA3分别为CalA1与A表中另外的字段“4”“5”计算得出,作为结果我需要A表存储这三个计算字段的值,分别存在字段“6”“7”“8”在数据录入界面里,要求输入“1”“2”“3”“4”“5”的值后在“6”“7”“8”中自动出现计算结果,
我分别试用了一下语句
dbedit4.text:='CalA1';
dbedit14.text:=datamodule2.A.fieldbyname('CalA1').asstring;没有反应,写入后库中字段为空,录入时屏幕相应也没有数据计算出来哪位大大能帮忙看看?指点一二
万分感谢
CalA1、CalA2、CalA3其中CalA1由A表中字段“1”“2”“3”计算得出,
CalA2和CalA3分别为CalA1与A表中另外的字段“4”“5”计算得出,作为结果我需要A表存储这三个计算字段的值,分别存在字段“6”“7”“8”在数据录入界面里,要求输入“1”“2”“3”“4”“5”的值后在“6”“7”“8”中自动出现计算结果,
我分别试用了一下语句
dbedit4.text:='CalA1';
dbedit14.text:=datamodule2.A.fieldbyname('CalA1').asstring;没有反应,写入后库中字段为空,录入时屏幕相应也没有数据计算出来哪位大大能帮忙看看?指点一二
万分感谢
在数据录入界面里,要求输入“1”“2”“3”“4”“5”的值后在“6”“7”“8”中自动出现计算结果,
那你这样求:
当输入1、2、3、4、5回车后计算
6:=CalA1:=计算(1、2、3)
7:=CalA2:=计算(6、4)
8:=CalA3:=计算(6、5)
然后存入A表中即可
之前我写在DataModule form里,用:
procedure TDataModule2.midCalcFields1(DataSet: TDataSet);
begin
dataset['6']:=dataset['1']+dataset['2)']+dataset['3']; //合计
end;
procedure TDataModule2.midCalcFields2(DataSet: TDataSet);
begin
dataset['7']:=dataset['6']*dataset['4’];
end;
procedure TDataModule2.midCalcFields(DataSet: TDataSet);
begin
dataset['8']:=dataset['6']+dataset['5'];
end;编译通过了,但是在程序中没有反应。
有新招吗?请指教!!
可以考虑写在afteropen 中