Foxtable(狐表)用户栏目专家坐堂 → 优化代码


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

主题:优化代码

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


加好友 发短信
等级:四尾狐 帖子:977 积分:6800 威望:0 精华:1 注册:2012/8/7 22:03:00
  发帖心情 Post By:2012/9/8 17:59:00 [只看该作者]

原因正是C版说的,因为我的两个表里面都有这个类似的代码,造成循环执行了

不过还是谢谢程版热心帮助

再次谢谢C版

[此贴子已经被作者于2012-9-8 18:06:14编辑过]

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


加好友 发短信
等级:四尾狐 帖子:977 积分:6800 威望:0 精华:1 注册:2012/8/7 22:03:00
  发帖心情 Post By:2012/9/8 18:01:00 [只看该作者]

貌似只能把不同内容的数据拆成两个表了

 

受程版启发,我把代码简化成下面这样了

 

 

Select Case e.DataCol.Name      '自动填数据
    Case "熔铸编号"
      Dim nms() As String = {"合金","坯料规格","当前规格","库位","流程","完成情况"}
      Dim dr As DataRow = DataTables("生产").Find("[熔铸编号] = '" & e.NewValue & "'")
       For Each nm As String In nms
           If dr IsNot Nothing
              e.DataRow(nm) = dr(nm)
           Else
              e.DataRow(nm) = Nothing
           End If
       Next

    Case "合金","坯料规格","当前规格","库位","流程","完成情况"
    DataTables("生产").ReplaceFor(e.DataCol.Name, e.NewValue, "[熔铸编号] = '" & e.DataRow("熔铸编号") & "'")
End Select

[此贴子已经被作者于2012-9-8 18:29:49编辑过]

 回到顶部
总数 22 上一页 1 2 3