Foxtable(狐表)用户栏目专家坐堂 → 自动编号问题


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

主题:自动编号问题

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


加好友 发短信
等级:超级版主 帖子:109736 积分:558396 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/7/10 21:16:00 [显示全部帖子]

Dim d As Date = Date.today
Dim bh As String = Format(d,"yyyyMM") '生成编号的前6位,4位年,2位月.
    Dim max As String
    Dim idx As Integer
    max = e.DataTable.Compute("Max(关联索引列)","Substring(关联索引列,1,6)='" & bh & "'") '取得该月的最大编号
    If max > "" Then '如果存在最大编号
        idx = CInt(max.Substring(7,4)) + 1 '获得最大编号的后四位顺序号,并加1
    Else
        idx = 1 '否则顺序号等于1
    End If
    e.DataRow("关联索引列") = bh & "-" & Format(idx,"0000")
End If

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


加好友 发短信
等级:超级版主 帖子:109736 积分:558396 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/7/11 11:51:00 [显示全部帖子]

这种只能到datacolchanged事件处理,并且必须有一个日期列
[此贴子已经被作者于2022/7/11 11:51:08编辑过]

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


加好友 发短信
等级:超级版主 帖子:109736 积分:558396 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/7/12 14:02:00 [显示全部帖子]

    If e.DataRow.isnull("关联索引二列") Then
        e.DataRow("编号日期") = Date.today
        Dim d As Date = e.DataRow("编号日期") 

        Dim fd As Date = New Date(y,m,1) '获得该月的第一天

        Dim ld As Date = New Date(y,m,Days) '获得该月的最后一天

        Dim bh As String = e.DataRow("线索来源") & "-" & Format(d,"yyyyMM") '生成编号的前6位,4位年,2位月.
        Dim max As String
        Dim idx As Integer
        max = e.DataTable.Compute("Max(关联索引二列)","线索来源='" & e.DataRow("线索来源") & "' and 编号日期>=#" & fd & "# and 编号日期<=#" & ld & "# and  [_Identify] <> " & e.DataRow("_Identify")") '取得该月的最大编号
        If max > "" Then '如果存在最大编号
            idx = CInt(max.Substring(max.length - 4)) + 1 '获得最大编号的后四位顺序号,并加1
        Else
            idx = 1 '否则顺序号等于1
        End If
        e.DataRow("关联索引二列") = bh & "-" & Format(idx,"0000")
    End If

 回到顶部