Foxtable(狐表)用户栏目专家坐堂 → [求助]如何实现编号列的自动填充


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

主题:[求助]如何实现编号列的自动填充

帅哥,在线噢!
有点蓝
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110608 积分:562942 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/4/7 17:27:00 [显示全部帖子]

DataColChanged事件

If e.DataCol.Name = "日期" Then
    If e.DataRow.IsNull("日期") Then
        e.DataRow("编号") = Nothing
    Else
        Dim d As Date = e.DataRow("日期")
        Dim bh As String = Format(d,"yyyy") '生成编号的前6位,4位年,2位月.
        Dim max As String
        Dim idx As Integer
        If e.DataRow("编号").StartsWith(bh) = False '如果编号的前6位不符
            max = e.DataTable.Compute("Max(编号)","编号 like '" & bh & "%'") '取得该月的最大编号
            If max > "" Then '如果存在最大编号
                idx = CInt(max.Substring(bh.length)) + 1 '获得最大编号的后三位顺序号,并加1
            Else
                idx = 1 '否则顺序号等于1
            End If
            e.DataRow("编号") = bh & Format(idx,"000")
        End If
    End If
End If

 回到顶部