Foxtable(狐表)用户栏目专家坐堂 → 【求助】求助老师,在窗口控件中根据表数据自动生产编号的问题


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

主题:【求助】求助老师,在窗口控件中根据表数据自动生产编号的问题

帅哥,在线噢!
王小风
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:44 积分:484 威望:0 精华:0 注册:2021/9/2 16:35:00
【求助】求助老师,在窗口控件中根据表数据自动生产编号的问题  发帖心情 Post By:2025/2/13 17:24:00 [只看该作者]

If e.Sender.Name = "ddjrq" Or e.Sender.Name = "ddjlx" Then
    If e.Form.Controls("ddjrq").Text <> "" And e.Form.Controls("ddjlx").Text <> "" Then
        Dim d As Date = e.Form.Controls("ddjrq").Text
        Dim lx As String
        If e.Form.Controls("ddjlx").Text = "入库" Then
            lx = "RK"
        ElseIf e.Form.Controls("ddjlx").Text = "出库" Then
            lx = "CK"
        ElseIf e.Form.Controls("ddjlx").Text = "退库" Then
            lx = "TK"
        End If
        Dim y As Integer = d.Year
        Dim m As Integer = d.Month
        Dim Days As Integer = Date.DaysInMonth(y, m)
        Dim fd As Date = New Date(y, m, 1) '获得该月的第一天
        Dim ld As Date = New Date(y, m, Days) '获得该月的最后一天
        Dim bh As String = lx & "-" & Format(d, "yyyyMMdd") '生成编号的前11位,4位年,2位月,2位日.
        
        If '能在表“备件出入库”找到bh      这部怎么写
            
            Dim max As String '定义“备件出入库”最大的值
            '提取最大的单据编号这部怎么写
            
            Dim idx As Integer '编号规则         
            idx = CInt(max.Substring(12, 3)) + 1 '获得最大编号的后三位顺序号,并加1
        Else
            idx = 1 '否则顺序号等于1
            
            e.Form.Controls("ddjbh").Text = bh & "-" & Format(idx, "000")
            
            
        End If
    End If
End if 

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


加好友 发短信
等级:超级版主 帖子:112219 积分:571309 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2025/2/13 17:32:00 [只看该作者]

If e.Sender.Name = "ddjrq" Or e.Sender.Name = "ddjlx" Then
    If e.Form.Controls("ddjrq").Text <> "" And e.Form.Controls("ddjlx").Text <> "" Then
        Dim d As Date = e.Form.Controls("ddjrq").Text
        Dim lx As String
        If e.Form.Controls("ddjlx").Text = "入库" Then
            lx = "RK"
        ElseIf e.Form.Controls("ddjlx").Text = "出库" Then
            lx = "CK"
        ElseIf e.Form.Controls("ddjlx").Text = "退库" Then
            lx = "TK"
        End If
        
        Dim bh As String = lx & "-" & Format(d, "yyyyMMdd") & "-" '生成编号的前11位,4位年,2位月,2位日.
        
        Dim max As String = DataTables("备件出入库").Compute("max(ddjbh)", "ddjbh like '" & bh & "%'")
        Dim idx As Integer = 1 '编号规则  
        
        If max > "" Then 
            idx = CInt(max.Substring(12, 3)) + 1 '获得最大编号的后三位顺序号,并加1
        End If
        
        e.Form.Controls("ddjbh").Text = bh & Format(idx, "000")
    End If
End If 

 回到顶部