Foxtable(狐表)用户栏目专家坐堂 → 自动删除行


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

主题:自动删除行

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


加好友 发短信
等级:四尾狐 帖子:804 积分:5548 威望:0 精华:0 注册:2017/12/19 14:46:00
自动删除行  发帖心情 Post By:2019/5/14 16:18:00 [只看该作者]

请教:以下代码
自动生成行没问题,自动删除行没反应,是什么问题

Select Case e.DataCol.name
    Case "编制"
        If e.DataRow("编制") = False Then
            DataTables("项目用无损检验资质清单").DeleteFor("生产令号 = '" & e.DataRow("生产令号") & "'And 机组 = '" & e.DataRow("机组") & "'And 资质名称 = '" & e.DataRow("编制人资质") & "' And 姓名 = '" & e.DataRow("编制人") & "'And 等级 = '" & e.DataRow("编制人等级") & "'")
        Else
            Dim ndr As DataRow = DataTables("项目用无损检验资质清单").Find("生产令号 = '" & e.DataRow("生产令号") & "'And 机组 = '" & e.DataRow("机组") & "'And 资质名称 = '" & e.DataRow("编制人资质") & "' And 姓名 = '" & e.DataRow("编制人") & "'And 等级 = '" & e.DataRow("编制人等级") & "'")
            If ndr Is Nothing Then
                Dim nr As Row = Tables("项目用无损检验资质清单").AddNew
                nr.Move(0)
                ndr = nr.DataRow
            End If
            ndr("生产令号") = e.DataRow("生产令号")
            ndr("项目名称") = e.DataRow("项目名称")
            ndr("机组") = e.DataRow("机组")
            ndr("姓名") = e.DataRow("编制人")
            ndr("资质名称") = e.DataRow("编制人资质")
            ndr("等级") = e.DataRow("编制人等级")
        End If
End Select

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


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

弹出这个信息,看条件是否正确

 

msgbox("生产令号 = '" & e.DataRow("生产令号") & "'And 机组 = '" & e.DataRow("机组") & "'And 资质名称 = '" & e.DataRow("编制人资质") & "' And 姓名 = '" & e.DataRow("编制人") & "'And 等级 = '" & e.DataRow("编制人等级") & "'")

 

然后再在命令窗口执行

 

Tables("项目用无损检验资质清单").filter = 弹出的条件

 

看是否可以正常筛选数据出来

 


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


加好友 发短信
等级:四尾狐 帖子:804 积分:5548 威望:0 精华:0 注册:2017/12/19 14:46:00
  发帖心情 Post By:2019/5/14 16:49:00 [只看该作者]

信息可以弹出来

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


加好友 发短信
等级:四尾狐 帖子:804 积分:5548 威望:0 精华:0 注册:2017/12/19 14:46:00
  发帖心情 Post By:2019/5/14 16:51:00 [只看该作者]

弹出的条件  怎么写?

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


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

以下是引用13775189031在2019/5/14 16:51:00的发言:
弹出的条件  怎么写?

 

弹出窗口那里ctrl+c复制内容,粘贴到命令窗口那里测试。

 

贴出你复制的内容,发上来看看。

 

 


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


加好友 发短信
等级:四尾狐 帖子:804 积分:5548 威望:0 精华:0 注册:2017/12/19 14:46:00
  发帖心情 Post By:2019/5/14 17:03:00 [只看该作者]

---------------------------
生产采购管理系统.DataTable.AtnVxpq9vNIx5hvGG
---------------------------
生产令号 = '17F8-5'And 机组 = '3#'And 资质名称 = 'VT' And 姓名 = ''And 等级 = ''
---------------------------
确定   
---------------------------

[此贴子已经被作者于2019/5/14 17:06:24编辑过]

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


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

 

DataTables("项目用无损检验资质清单").DeleteFor("生产令号 = '" & e.DataRow("生产令号") & "'And 机组 = '" & e.DataRow("机组") & "'And 资质名称 = '" & e.DataRow("编制人资质") & "' And 姓名 = '" & e.DataRow("编制人") & "'And 等级 = '" & e.DataRow("编制人等级") & "'")

 

改成

 

Dim filter As String = "1=1"

If e.DataRow("编制人等级") = Nothing Then

    filter &= " and 等级 is null"

Else

    filter &= " and 等级 = '" & e.DataRow("编制人等级") & "'"

End If

If e.DataRow("编制人") = Nothing Then

    filter &= " and 姓名 is null"

Else

    filter &= " and 姓名 = '" & e.DataRow("编制人") & "'"

End If

 

......

 

msgbox(filter)

DataTables("项目用无损检验资质清单").DeleteFor(filter)

 

[此贴子已经被作者于2019/5/14 17:08:31编辑过]

 回到顶部