Foxtable(狐表)用户栏目专家坐堂 → [求助]关于行号固定位数


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

主题:[求助]关于行号固定位数

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


加好友 发短信
等级:二尾狐 帖子:550 积分:5021 威望:0 精华:0 注册:2017/4/20 11:08:00
[求助]关于行号固定位数  发帖心情 Post By:2019/3/6 8:00:00 [只看该作者]

老师好:
       由于原行号按顺序生成,1和10会排在一起,导致顺序会乱,请帮看看,如何将行号固定3位或4位,如果是1,变为001或0001,谢谢!

Select Case e.DataCol.Name
    Case  "编号"
        Dim max As Integer = e.DataTable.Compute("max(行号)","编号 = '" & e.DataRow("编号") & "' and [_Identify] <> " & e.DataRow("_Identify"))
        e.DataRow("行号") = max + 1
        Dim dr As DataRow
End Select

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/3/6 8:47:00 [只看该作者]

方法一:你把行号列改成整数列,即可,不要用字符列;

 

方法二:

 

Select Case e.DataCol.Name
    Case  "编号"
        Dim max As Integer = e.DataTable.Compute("max(行号)","编号 = '" & e.DataRow("编号") & "' and [_Identify] <> " & e.DataRow("_Identify"))
        e.DataRow("行号") = format(max + 1, "0000")
        Dim dr As DataRow
End Select

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


加好友 发短信
等级:二尾狐 帖子:550 积分:5021 威望:0 精华:0 注册:2017/4/20 11:08:00
  发帖心情 Post By:2019/3/6 9:11:00 [只看该作者]

谢谢有点甜老师,第二种方法好,因为明细行多了,还要用订单号和行号合并排序,整数的调为3位,合并后位数无法固定,谢谢老师!
[此贴子已经被作者于2019/3/6 9:11:06编辑过]

 回到顶部