以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]关于行号固定位数 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=131756) |
-- 作者:工匠 -- 发布时间: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 |
-- 作者:有点甜 -- 发布时间: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 |
-- 作者:工匠 -- 发布时间:2019/3/6 9:11:00 -- 谢谢有点甜老师,第二种方法好,因为明细行多了,还要用订单号和行号合并排序,整数的调为3位,合并后位数无法固定,谢谢老师! [此贴子已经被作者于2019/3/6 9:11:06编辑过]
|