以文本方式查看主题

-  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=20272)

--  作者:yifan3429
--  发布时间:2012/6/3 10:02:00
--  求解:自动编号问题

设计好的自动编号列  为什么有些可以自动编号  有些就没有反应了呢下图编号空白处  不能自动生成  其他的又可以。


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20120603095903.png
图片点击可在新窗口打开查看

 

之前编辑过  我删除了,原因是不是在这,怎么解开呢

 

DataColChanged下

 

Select e.DataCol.Name
    Case "类别"
        If e.DataRow.IsNull("类别") Then
            e.DataRow("编号") = Nothing
        Else
            Dim lBb As String = e.DataRow("类别")
            If e.DataRow("编号").StartsWith(lBb) = False \'如果单据编号前缀不符
                Dim max As String
                Dim idx As Integer
                max = e.DataTable.Compute("Max(编号)","类别 = \'" & lBb & "\'") \'取得该类别的最大编号
                If max > "" Then \'如果存在最大编号
                    idx = CInt(max.Substring(3,3)) + 1 \'获得最大编号的后三位顺序号,并加1
                Else
                    idx = 1 \'否则顺序号等于1
                End If
                e.DataRow("编号") = lBb & Format(idx,"000")
            End If
        End If
End Select

[此贴子已经被作者于2012-6-3 11:52:04编辑过]

--  作者:程兴刚
--  发布时间:2012/6/3 10:27:00
--  

需要贴出您的代码,并告诉您放在哪个事件的,否则,无法断言之!


--  作者:cuiler
--  发布时间:2012/6/3 10:37:00
--  
虽然理解你的意思,但看贴图是 无法帮你解决问题的。
--  作者:狐狸爸爸
--  发布时间:2012/6/4 10:06:00
--  

做个简单的例子发上来测试