Foxtable(狐表)用户栏目专家坐堂 → 自动编号-按时间段编号


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

主题:自动编号-按时间段编号

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


加好友 发短信
等级:超级版主 帖子:112393 积分:572233 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/5/18 13:30:00 [显示全部帖子]

按什么规则生成编号?

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112393 积分:572233 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/5/18 15:06:00 [显示全部帖子]

Case "登记时间","工程编号" ,"合同编号","子目号","计价开始时间","计价结束时间","计价编号"
改为
Case "合同编号","计价开始时间","计价结束时间"

flt = "合同编号 = '" & e.DataRow("合同编号") & " ' and 子目号 = '" & e.DataRow("子目号") & "' And #" & d2 & "#  >#" & d1 & "#  And [_Identify] <> "  &  e.DataRow("_Identify")
改为
flt = "合同编号 = '" & e.DataRow("合同编号") & " ' And 计价结束时间 < #" & d1 & "# And [_Identify] <> "  &  e.DataRow("_Identify")

 回到顶部
帅哥,在线噢!
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112393 积分:572233 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/5/18 17:41:00 [显示全部帖子]

请上传实例测试

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112393 积分:572233 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/5/18 20:06:00 [显示全部帖子]

7楼的项目和1楼的问题有什么关系?

 回到顶部
帅哥,在线噢!
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112393 积分:572233 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/5/18 21:24:00 [显示全部帖子]

哪个表?没看到有什么计价开始时间到计价结束时间这些列

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112393 积分:572233 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/5/18 21:28:00 [显示全部帖子]

试试

Select e.DataCol.Name
    Case "合同编号","计价开始时间","计价结束时间"
        If e.DataRow.IsNull("合同编号") OrElse e.DataRow.IsNull("计价开始时间")  OrElse e.DataRow.IsNull("计价结束时间") Then
            e.DataRow("计价编号") = Nothing
        Else
            Dim d As Date = e.DataRow("登记时间")
            Dim d1 As Date = e.DataRow("计价开始时间")
            Dim d2 As Date = e.DataRow("计价结束时间")
            'Dim dr1 As DataRow
            'Dim dr2 As DataRow
            Dim bh As String = e.DataRow("合同编号")  & "-" & "Y13" & "-" '生成编号的前缀
            If e.DataRow("计价编号").StartsWith(bh) = False '如果单据编号前缀不符
                Dim max As String
                Dim idx As Integer
                Dim flt As String
            flt = "合同编号 = '" & e.DataRow("合同编号") & " ' And 计价结束时间 < #" & d1 & "# And [_Identify] <> "  &  e.DataRow("_Identify")
                max = e.DataTable.Compute("Max(计价编号)",flt) 
                If max > "" Then 
                    idx = CInt(max.Substring(max.Length - 2)) + 1 '获得最大单据编号的后二位顺序号,并加1
                Else
                    idx = 1 '否则顺序号等于1
                End If
                e.DataRow("计价编号") = bh & Format(idx,"00")
            End If
        End If

End Select

 回到顶部