Foxtable(狐表)用户栏目专家坐堂 → 重算当前表代码


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

主题:重算当前表代码

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


加好友 发短信
等级:三尾狐 帖子:790 积分:5677 威望:0 精华:0 注册:2009/4/17 18:42:00
重算当前表代码  发帖心情 Post By:2010/8/11 23:48:00 [显示全部帖子]

如题,重置当前表所有列代码,谢谢

 

 


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


加好友 发短信
等级:三尾狐 帖子:790 积分:5677 威望:0 精华:0 注册:2009/4/17 18:42:00
  发帖心情 Post By:2010/8/12 0:24:00 [显示全部帖子]

C版,3楼也是要指定表名的,能不能不指定表名,重算当前表所有列。

或者如以下要求,如果当前表名=表A,则执行1条,如果当前表名=表B,则执行2条,如果当前表名=表C,则执行3条。。。。。我要把这个按钮放在菜单上,点击则重算当前表指定列,谢谢

 

1.DataTables("表A").DataCols("第一列").RaiseDataColChanged()

   DataTables("表A").DataCols("第二列").RaiseDataColChanged()

2.DataTables("表B").DataCols("第一列").RaiseDataColChanged()

3.DataTables("表C").DataCols("第一列").RaiseDataColChanged()

4.DataTables("表D").DataCols("第一列").RaiseDataColChanged()

   DataTables("表D").DataCols("第三列").RaiseDataColChanged()


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


加好友 发短信
等级:三尾狐 帖子:790 积分:5677 威望:0 精华:0 注册:2009/4/17 18:42:00
  发帖心情 Post By:2010/8/12 1:19:00 [显示全部帖子]

谢谢2位老师!

终于搞定,并测试了效率,知道遍历所有列的效率很低的。以前主要是判断当前表的表名代码不知怎么写:If CurrentTable.Name = "日报表" Then

 

For Each dt As datatable In DataTables

    dt.Save()'保存所有数据

Next

Syscmd.Table.Load() '同步当前表

If CurrentTable.Name = "日报表" Then
    DataTables("日报表").DataCols("图号").RaiseDataColChanged()'重算表
    DataTables("日报表").DataCols("工序_序号").RaiseDataColChanged()'重算表
    DataTables("日报表").DataCols("工艺_序号").RaiseDataColChanged()'重算表
    DataTables("日报表").DataCols("派工单号").RaiseDataColChanged()'重算表
Elseif CurrentTable.Name = "产品目录" Then
    DataTables("产品目录").DataCols("图号").RaiseDataColChanged()'重算表
    DataTables("产品目录").DataCols("材料_重量Kg").RaiseDataColChanged()'重算表
    DataTables("产品目录").DataCols("材料_材质").RaiseDataColChanged()'重算表
    DataTables("产品目录").DataCols("批量").RaiseDataColChanged()'重算表
    DataTables("产品目录").DataCols("确定").RaiseDataColChanged()'重算表
Elseif CurrentTable.Name = "产品工序" Then
    DataTables("产品工序").DataCols("图号").RaiseDataColChanged()'重算表
    DataTables("产品工序").DataCols("工序_序号").RaiseDataColChanged()'重算表
    DataTables("产品工序").DataCols("确定").RaiseDataColChanged()'重算表   
Else
    Messagebox.Show("没有要重算的表!","提示")
End If

For Each dt As datatable In DataTables

    dt.Save()'保存所有数据

Next

 

 

[此贴子已经被作者于2010-8-12 1:20:02编辑过]

 回到顶部