Foxtable(狐表)用户栏目专家坐堂 → 同一界面编码只生成同一个


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

主题:同一界面编码只生成同一个

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


加好友 发短信
等级:超级版主 帖子:110743 积分:563641 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/2/16 14:46:00 [显示全部帖子]

生成采购明细按钮代码:
Dim t As Table = Forms("外贸订单下达").Controls("外购").Table
Dim rs As List(of Row) = Tables("外贸订单下达_订单下达").GetCheckedRows
If rs = 0 Then Return
Dim d As Date =
Dim max As String
Dim idx As Integer
max = t.DataTable.SQLCompute("Max(采购申请号)","申请日期 = '" & rs(0)("下单日期") & "'") '取得该天的最大编号
If max > "" Then '如果存在最大编号
    idx = CInt(max.Substring(10,3)) + 1 '获得最大编号的后三位顺序号,并加1
Else
    idx = 1 '否则顺序号等于1
End If
Dim bh As String = "CGSQ"& bh  & Format(idx,"000")
For Each r As Row In rs
    Dim r2 As Row = t.AddNew
    r2("采购申请号") = bh
    r2("材料编码") = r("成品编码")
    r2("材料描述") = r("成品描述")
    r2("申请人") = r("业务员")
    r2("制单人") = r("业务员")
    r2("申请日期") = r("下单日期")
    r2("申请数量") = r("订单数量")
    r2("要求交货日期") = r("要求交货日期")
    r2("需审核人") = "谢磊"
    r2("用途") = "销售发货"
    r2("订单状态") = "待审核"
    r2("销售订单号") = r("销售订单号")
Next
t.save
[此贴子已经被作者于2019/2/16 14:46:19编辑过]

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


加好友 发短信
等级:超级版主 帖子:110743 积分:563641 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/2/16 14:54:00 [显示全部帖子]

很简单的问题,自己先想想哪里错了

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


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

If rs.count = 0 Then Return

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


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

……
For Each r As Row In rs
    Dim r2 As Row = t.AddNew
    r2("采购申请号") = bh
    r2("材料编码") = r("成品编码")
    r2("材料描述") = r("成品描述")
    r2("申请人") = r("业务员")
    r2("制单人") = r("业务员")
systemready = false
    r2("申请日期") = r("下单日期")
systemready = true
……


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


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

请上传具体实例说明

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


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

很简单的东西,既然知道少了日期,补上不就行了:

Dim t As Table = Forms("质量反馈").Controls("过程明细").Table
Dim rs As List(of Row) = Tables("质量反馈_信息总表").GetCheckedRows
If rs.count = 0 Then Return
Dim d As Date
Dim max As String
Dim idx As Integer

max = t.DataTable.SQLCompute("Max(采购申请号)","采购日期 = '" & rs(0)("下单日期") & "'") '取得该天的最大编号
If max > "" Then '如果存在最大编号
    idx = CInt(max.Substring(10,3)) + 1 '获得最大编号的后三位顺序号,并加1
Else
    idx = 1 '否则顺序号等于1
End If
Dim bh As String = "CGSQ" & Format(rs(0)("下单日期"),"yyMMdd")  & Format(idx,"000")
For Each r As Row In rs
    Dim r2 As Row = t.AddNew
    r2("采购申请号") = bh
    r2("材料编码") = r("成品编码")
    r2("材料描述") = r("成品描述")
    systemready = False
    r2("采购日期") = r("下单日期")
    systemready = True
    r2("申请数量") = r("订单数量")
    r2("销售订单号") = r("销售订单号")
Next
t.save

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


加好友 发短信
等级:超级版主 帖子:110743 积分:563641 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/2/19 9:30:00 [显示全部帖子]

看8楼,加上systemready 

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


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

感觉写代码都是乱来的,根本都没有尝试去理解代码代表的意思

……
max = t.DataTable.SQLCompute("Max(销售订单号)","下单日期 = '" & date.today & "' And 客户编码 = '"& rs(0)("客户编码") &"'") '取得该天的最大编号
If max > "" Then '如果存在最大编号
    idx = CInt(max.Substring(max.length - 3,3)) + 1 '获得最大编号的后三位顺序号,并加1
Else
    idx = 1 '否则顺序号等于1
End If
Dim bh As String = Format(date.today,"yyMMdd") & rs(0)("客户编码") & Format(idx,"000")
……

 回到顶部