起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 160|回复: 4

【结帖】自增序号的问题?**

[复制链接]
发表于 2008-9-4 11:00:00 | 显示全部楼层 |阅读模式
为什么我的自增序号,最大为10 ,从1-10,之后的都是10;

我的代码:



procedure TGZXX.DataSetGZGHPJXXNewRecord(DataSet: TDataSet);
var
  V: object;
begin
  V := DataSet.CalcAggregate(GZGHPJXXMaxLineNum, 0);
  if Variants.VarToStr(V) = '' then
    DataSet.FieldByName('XH').AsInteger := 1
  else
    DataSet.FieldByName('XH').AsInteger := SysUtils.StrToInt(Variants.VarToStr(V)) + 1;
end;

问题在哪里?
回复

使用道具 举报

 楼主| 发表于 2008-9-4 11:01:19 | 显示全部楼层
procedure TGZXX.InfoCreate(Sender: TObject);
begin
     GZGHPJXXMaxLineNum:=DataSetGZGHPJXX.Aggregates.Add;
     GZGHPJXXMaxLineNum.Expression := 'max(XH)';
end;
回复 支持 反对

使用道具 举报

发表于 2008-9-4 11:26:09 | 显示全部楼层
楼主我这里执行是正常的啊。
implementation
var GZGHPJXXMaxLineNum : TBaseAggregate;

procedure TYWXX1.DataSetBZSJJ1NewRecord(DataSet: TDataSet);
var
  V: object;
begin
  V := DataSet.CalcAggregate(GZGHPJXXMaxLineNum, 0);
  if Variants.VarToStr(V) = '' then
    DataSet.FieldByName('ZD3').AsInteger := 1
  else
    DataSet.FieldByName('ZD3').AsInteger := SysUtils.StrToInt(Variants.VarToStr(V)) + 1;
end;

procedure TYWXX1.InfoCreate(Sender: TObject);
begin
     GZGHPJXXMaxLineNum:=DataSetBZSJJ1.Aggregates.Add;
     GZGHPJXXMaxLineNum.Expression := 'max(zd3)';
end;

11.png

12.84 KB, 下载次数: 102

回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-9-4 11:48:01 | 显示全部楼层
我这里出错。

33.jpg

17.7 KB, 下载次数: 99

回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-9-4 11:59:51 | 显示全部楼层
我查看,是数据类型的问题。

我原来是 字符型

改成 整数 就可以了。


谢谢!!!!

结!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-22 01:50 , Processed in 0.045816 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表