以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  求助:唯一序号  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=69290)

--  作者:Bin
--  发布时间:2015/6/2 16:50:00
--  
默认就是这样的

你的意思是不断号?

--  作者:大红袍
--  发布时间:2015/6/2 16:50:00
--  
Dim lb As String = "PO#"
Dim max As String
Dim idx As Integer
\'max = e.DataTable.Compute("Max(客户编号)","Ib = \'" & lb & "\' And [_Identify] <> " & e.DataRow("_Identify")) \'取得该类别的最大编号
max = e.DataTable.Compute("Max(产品编号)","[_Identify] <> " & e.DataRow("_Identify")) \'取得该类别的最大编号
If max > "" Then \'如果存在最大编号
    idx = CInt(max.Substring(3,5)) + 1 \'获得最大编号的后三位顺序号,并加1
Else
    idx = 1 \'否则顺序号等于1
End If
e.DataRow("产品编号") = lb & Format(idx,"00000")

--  作者:大红袍
--  发布时间:2015/6/2 17:12:00
--  

 哦,那你可以直接用 _Identify

 

Dim lb As String = "PO#"
e.DataRow.Save
e.DataRow("产品编号") = lb & Format(e.DataRow("_Identify"),"00000")