Foxtable(狐表)用户栏目专家坐堂 → [求助] 自动编号的问题!


  共有8041人关注过本帖树形打印复制链接

主题:[求助] 自动编号的问题!

帅哥哟,离线,有人找我吗?
pfj511
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:32 积分:398 威望:0 精华:0 注册:2012/10/20 18:09:00
[求助] 自动编号的问题!  发帖心情 Post By:2013/2/10 16:13:00 [只看该作者]

Select Case e.DataCol.Name
    Case "委托日期", "样品编号"
        If e.DataRow.IsNull("委托日期") OrElse e.DataRow.IsNull("样品编号") Then
            e.DataRow("自动编号") = Nothing
        Else
            Dim y As String = Format(e.DataRow("委托日期"),"yyyy") '取得编号的年号
            Dim bh As String = e.DataRow("样品编号") & y.SubString(2,2)'取得编号的前缀
            Dim max As String=e.DataTable.Compute("Max(自动编号)","自动编号 like '" & bh & "*'") '取得该年的最大自动编号
            Dim idx As Long
           
            If max = "" Then          
                e.DataRow("自动编号") = bh & "-1"
            Else              
                Dim va As String() = CStr(max).Split("-")
                idx = CLng(va(1)) + 1 '获得最大编号的顺序号,并加1
                e.DataRow("自动编号") = bh & "-" & idx
            End If
           
        End If
End Select

 

 

我想实现

HH13-1

HH13-2

.

.

HH13-9

HH13-10

HH13-11

...

 

但是

HH13-10 以后一直是 HH13-10

 

请教高手 帮忙分析下哪里出错了?感谢!

 

 

 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:编号.table

[此贴子已经被作者于2013-2-10 16:13:02编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
Liuxinyu
  2楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:183 积分:1645 威望:0 精华:0 注册:2012/1/4 13:13:00
  发帖心情 Post By:2013/2/10 18:48:00 [只看该作者]

由于自动编号的数据格式是文本,FT比较文本大小时,是从左到右逐个比较大小,当比较到第6位时,9最大,所以加1后,总是10。

 

楼主自行想法解决吧。

 

[此贴子已经被作者于2013-2-10 18:48:17编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2013/2/10 22:21:00 [只看该作者]

这不是狐表本身的问题,VB.net比较文本都是这个规则,也许这个对楼主有用:

 

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=26913&replyID=&skin=1


 回到顶部
帅哥哟,离线,有人找我吗?
pfj511
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:32 积分:398 威望:0 精华:0 注册:2012/10/20 18:09:00
  发帖心情 Post By:2013/2/11 16:04:00 [只看该作者]

晓得了 ,如果我将格式修改为0001....0009 0010  就可以避免这个问题了!非常感谢!

 回到顶部