Foxtable(狐表)用户栏目专家坐堂 → 导出不全


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

主题:导出不全

美女呀,离线,留言给我吧!
zhangning
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:513 积分:3355 威望:0 精华:0 注册:2016/4/14 16:56:00
导出不全  发帖心情 Post By:2017/8/9 10:46:00 [只看该作者]


老师,我想将”进展状态“里显示”报警“的行,导入到表”加工进展异常监控“里,
代码是:
If e.DataCol.name Like "*序_进展状态*"  Then
    Dim idx As Integer = e.DataCol.name.replace("第", "").replace("序_进展状态", "")
    If e.DataRow("第" & idx & "序_进展状态") = "报警"  Then
        Dim dr6 As DataRow
        dr6 = DataTables("加工进展异常监控").Find("进展状态 = '" & e.DataRow("第" & idx & "序_进展状态") & "'")
        If dr6 Is Nothing Then
            dr6 = DataTables("加工进展异常监控").AddNew()
            dr6("进展状态") = e.DataRow("第" & idx & "序_进展状态")
            dr6("设备") = e.DataRow("第" & idx & "序_调度设备")
            dr6("类别") = "计划"
            dr6("部组名") = e.DataRow("部组名")
            dr6("部品ID") = e.DataRow("部品ID")
            dr6("工程") = e.DataRow("第" & idx & "序_工程名")
            dr6("开始日期") = e.DataRow("第" & idx & "序_开始日")
            dr6("结束日期") = e.DataRow("第" & idx & "序_结束日")
            dr6("投入数量") = e.DataRow("第" & idx & "序_投入数量")
            dr6("作业者") = e.DataRow("第" & idx & "序_作业者")
            dr6("加工先") = e.DataRow("第" & idx & "序_加工先")
            dr6("配膳日") = e.DataRow("第" & idx & "序_配膳日")
            dr6("夜") = e.DataRow("第" & idx & "序_夜")
            dr6("瓶颈") = e.DataRow("第" & idx & "序_瓶颈")
        End If
    End If
End If

但导出的不全,无论有多少个”报警“,但导出的只有一个,
请参考下图,请老师帮看看问题出在哪里,谢谢!

图片点击可在新窗口打开查看此主题相关图片如下:导1.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:导2.png
图片点击可在新窗口打开查看



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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/8/9 11:25:00 [只看该作者]

If e.DataCol.name Like "*序_进展状态*"  Then
    Dim idx As Integer = e.DataCol.name.replace("第", "").replace("序_进展状态", "")
    If e.DataRow("第" & idx & "序_进展状态") = "报警"  Then
        Dim dr6 As DataRow
        dr6 = DataTables("加工进展异常监控").Find("加工日期编号 = '" & e.DataRow("第" & idx & "序_加工日期编号") & "'")
        If dr6 Is Nothing Then
            dr6 = DataTables("加工进展异常监控").AddNew()
            dr6("加工日期编号") = e.DataRow("第" & idx & "序_加工日期编号")
            dr6("进展状态") = e.DataRow("第" & idx & "序_进展状态")
            dr6("设备") = e.DataRow("第" & idx & "序_调度设备")
            dr6("类别") = "计划"
            dr6("部组名") = e.DataRow("部组名")
            dr6("部品ID") = e.DataRow("部品ID")
            dr6("工程") = e.DataRow("第" & idx & "序_工程名")
            dr6("开始日期") = e.DataRow("第" & idx & "序_开始日")
            dr6("结束日期") = e.DataRow("第" & idx & "序_结束日")
            dr6("投入数量") = e.DataRow("第" & idx & "序_投入数量")
            dr6("作业者") = e.DataRow("第" & idx & "序_作业者")
            dr6("加工先") = e.DataRow("第" & idx & "序_加工先")
            dr6("配膳日") = e.DataRow("第" & idx & "序_配膳日")
            dr6("夜") = e.DataRow("第" & idx & "序_夜")
            dr6("瓶颈") = e.DataRow("第" & idx & "序_瓶颈")
        End If
    End If
End If


 回到顶部
美女呀,离线,留言给我吧!
zhangning
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:513 积分:3355 威望:0 精华:0 注册:2016/4/14 16:56:00
  发帖心情 Post By:2017/8/9 11:58:00 [只看该作者]

这个问题,按照老师的方法,解决了,
还有一个问题,如果显示“报警”就追加,追加以后,如果报警消除,显示为“报警解除”,那就需要将原来追加的行删掉,

这么做的目的是,将各部门报警的着重抓出来,如果问题解决了,就不需要关注了,
需要自动删除,请问老师,这种功能如何实现呢?谢谢!


 回到顶部
美女呀,离线,留言给我吧!
zhangning
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:513 积分:3355 威望:0 精华:0 注册:2016/4/14 16:56:00
  发帖心情 Post By:2017/8/9 15:25:00 [只看该作者]

写了以下代码,请老师斧正,谢谢!

If e.DataCol.name Like "*序_进展状态*"  Then
    Dim idx As Integer = e.DataCol.name.replace("第", "").replace("序_进展状态", "")
    If e.DataRow("第" & idx & "序_进展状态") = "报警解除"  Then
        Dim dr6 As DataRow
        dr6 = DataTables("加工进展异常监控").Find("开始日期 = '" & e.DataRow("第" & idx & "序_开始日期") & "'")
        If dr6 IsNot Nothing Then
            dr6 = DataTables("加工进展异常监控").Delete()                       
        End If
    End If
End If

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/8/9 15:35:00 [只看该作者]

If e.DataCol.name Like "*序_进展状态*"  Then
    Dim idx As Integer = e.DataCol.name.replace("第", "").replace("序_进展状态", "")
    If e.DataRow("第" & idx & "序_进展状态") = "报警解除"  Then
        DataTables("加工进展异常监控").DeleteFor("加工日期编号 = '" & e.DataRow("第" & idx & "序_加工日期编号") & "'")
    End If
End If

 回到顶部
美女呀,离线,留言给我吧!
zhangning
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:513 积分:3355 威望:0 精华:0 注册:2016/4/14 16:56:00
  发帖心情 Post By:2017/8/9 15:50:00 [只看该作者]

老师太厉害了,经过实验,点“报警”,就增加行了,如“报警解除“后,增加的行就自动删除了,
我什么时候能达到老师这样的水平就好了。

 回到顶部
美女呀,离线,留言给我吧!
zhangning
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:513 积分:3355 威望:0 精华:0 注册:2016/4/14 16:56:00
  发帖心情 Post By:2017/8/10 15:09:00 [只看该作者]

老师,我今天多加了一个条件,如代码:
If e.DataCol.name Like "*序_进展状态*"  Then
    Dim idx As Integer = e.DataCol.name.replace("第", "").replace("序_进展状态", "")
    If e.DataRow("第" & idx & "序_进展状态") = "报警"  Then
        Dim dr6 As DataRow
         dr6 = DataTables("设备别任务").Find("指令单 = '" & e.DataRow("指令单") & "' AND 工程 = '" & e.DataRow("第" & idx & "序_工程名") & "'")
        If dr6 Is Nothing Then
            dr6 = DataTables("加工进展异常监控").AddNew()
            dr6("开始日期") = e.DataRow("第" & idx & "序_开始日")
            dr6("进展状态") = e.DataRow("第" & idx & "序_进展状态")
            dr6("设备") = e.DataRow("第" & idx & "序_调度设备")
            dr6("类别") = "计划"
            dr6("部组名") = e.DataRow("部组名")
            dr6("部品ID") = e.DataRow("部品ID")
            dr6("指令单") = e.DataRow("指令单")
            dr6("工程") = e.DataRow("第" & idx & "序_工程名")
            dr6("开始日期") = e.DataRow("第" & idx & "序_开始日")
            dr6("结束日期") = e.DataRow("第" & idx & "序_结束日")
            dr6("投入数量") = e.DataRow("第" & idx & "序_投入数量")
            dr6("作业者") = e.DataRow("第" & idx & "序_作业者")
            dr6("加工先") = e.DataRow("第" & idx & "序_加工先")
            dr6("配膳日") = e.DataRow("第" & idx & "序_配膳日")
            dr6("夜") = e.DataRow("第" & idx & "序_夜")
            dr6("瓶颈") = e.DataRow("第" & idx & "序_瓶颈")
        End If
    End If
End If
结果每次切换数据表,就会再次导出一遍,导致多次重复,请老师帮看看问题出在哪里?谢谢!


图片点击可在新窗口打开查看此主题相关图片如下:导出1.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:导出2.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:导出3.png
图片点击可在新窗口打开查看




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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/8/10 18:25:00 [只看该作者]

你切换数据表执行了什么代码?maintableChanged等事件。
[此贴子已经被作者于2017/8/10 18:24:52编辑过]

 回到顶部
美女呀,离线,留言给我吧!
zhangning
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:513 积分:3355 威望:0 精华:0 注册:2016/4/14 16:56:00
  发帖心情 Post By:2017/8/11 8:47:00 [只看该作者]

老师,是属性中的DATACOLCHANGED


 回到顶部
美女呀,离线,留言给我吧!
zhangning
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:513 积分:3355 威望:0 精华:0 注册:2016/4/14 16:56:00
  发帖心情 Post By:2017/8/11 8:49:00 [只看该作者]

在maintablechanged中的代码是:
DataTables("加工排产").DataCols("第11序_调度设备").RaiseDataColChanged()

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