Foxtable(狐表)用户栏目专家坐堂 → 下面这段代码处理少的数据还比较快,数据量多了就卡死,可以怎么改善


  共有1911人关注过本帖平板打印复制链接

主题:下面这段代码处理少的数据还比较快,数据量多了就卡死,可以怎么改善

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


加好友 发短信
等级:四尾狐 帖子:858 积分:6381 威望:0 精华:0 注册:2017/2/13 9:04:00
下面这段代码处理少的数据还比较快,数据量多了就卡死,可以怎么改善  发帖心情 Post By:2019/5/29 10:52:00 [只看该作者]

Tables("分派工序_table8").save()
For Each dr As Row In Tables("分派工序_table8").rows
    For Each br As Row In Tables("分派工序_table5").rows
Dim hpr = DataTables("派发工序表").Find("[订单号] = '" & br("订单号")  & "' and [制单号] = '" & br("制单号")  & "'and [箱号] = '" & br("箱号")  & "' and [工序号] = '" & dr("工序号")  & "'")
    If hpr IsNot Nothing Then
       If dr("生产员工") <> hpr("生产员工") Or dr("生产员工工号") <> hpr("生产员工工号")  Then
        hpr("生产员工") = dr("生产员工")
        hpr("生产员工工号") = dr("生产员工工号")
       End If
       If dr("生产员工1") <> hpr("生产员工1") Or dr("生产员工1工号") <> hpr("生产员工1工号")  Then
        hpr("生产员工1") = dr("生产员工1")
        hpr("生产员工1工号") = dr("生产员工1工号")
       End If
       If dr("生产员工2") <> hpr("生产员工2") Or dr("生产员工2工号") <> hpr("生产员工2工号")  Then
        hpr("生产员工2") = dr("生产员工2")
        hpr("生产员工2工号") = dr("生产员工2工号")
       End If
       If dr("生产员工3") <> hpr("生产员工3") Or dr("生产员工3工号") <> hpr("生产员工3工号")  Then
        hpr("生产员工3") = dr("生产员工3")
        hpr("生产员工3工号") = dr("生产员工3工号")
       End If
       If dr("生产员工4") <> hpr("生产员工4") Or dr("生产员工4工号") <> hpr("生产员工4工号")  Then
        hpr("生产员工4") = dr("生产员工4")
        hpr("生产员工4工号") = dr("生产员工4工号")
       End If
       If dr("生产员工5") <> hpr("生产员工5") Or dr("生产员工5工号") <> hpr("生产员工5工号")  Then
        hpr("生产员工5") = dr("生产员工5")
        hpr("生产员工5工号") = dr("生产员工5工号")
       End If
       If dr("工序号") <> hpr("工序号") Then
        hpr("工序号")  = dr("工序号") 
       End If
       If dr("工序名") <> hpr("工序名") Then
        hpr("工序名")  = dr("工序名") 
       End If
       If dr("车种") <> hpr("车种") Then
        hpr("车种")  = dr("车种")
       End If
       If dr("部门") <> hpr("部门") Then
        hpr("部门")  = dr("部门") 
       End If
       If dr("工价") <> hpr("工价") Then
        hpr("工价")  = dr("工价")
       End If
       If dr("基本工价") <> hpr("基本工价") Then
        hpr("基本工价")  = dr("基本工价")
       End If
       If dr("工价系数") <> hpr("工价系数") Then
        hpr("工价系数")  = dr("工价系数")
       End If
       If dr("标准工时") <> hpr("标准工时") Then
        hpr("标准工时")  = dr("标准工时")
       End If

Else
        Dim pr As DataRow = DataTables("派发工序表").addnew
        pr("订单号") = br("订单号")
        pr("制单号") = br("制单号")
        pr("客款号") = br("客款号")
        pr("货品名") = br("货品名")
        pr("物供号") = br("物供号")
        pr("部门") = br("部门")
        pr("组别") = br("班组")
        pr("款号") = br("款号")
        pr("颜色") = br("颜色")
        pr("尺码") = br("尺码")
        pr("件数") = br("件数")
        pr("箱号") = br("箱号")
        pr("工段") = br("工段")
        pr("鼎邦制单数ID") = br("鼎邦制单数ID")
        pr("工序号") = dr("工序号")
        pr("工序名") = dr("工序名")
        pr("标准工时") = dr("标准工时")
        pr("车种") = dr("车种")
        pr("部门") = dr("部门")
        pr("工价") = dr("工价")
        pr("基本工价") = dr("基本工价")
        pr("工价系数") = dr("工价系数")
        pr("生产员工") = dr("生产员工")
        pr("生产员工1") = dr("生产员工1")
        pr("生产员工2") = dr("生产员工2")
        pr("生产员工3") = dr("生产员工3")
        pr("生产员工4") = dr("生产员工4")
        pr("生产员工5") = dr("生产员工5")
        pr("生产员工工号") = dr("生产员工工号")
        pr("生产员工1工号") = dr("生产员工1工号")
        pr("生产员工2工号") = dr("生产员工2工号")
        pr("生产员工3工号") = dr("生产员工3工号")
        pr("生产员工4工号") = dr("生产员工4工号")
        pr("生产员工5工号") = dr("生产员工5工号")

        pr("条码") = br("订单号") & br("制单号") & br("款号") & br("箱号")
End If
     Next
Next

Tables("派发工序表").save()

 回到顶部
总数 19 1 2 下一页