以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  通过查询表删除主表的问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=87451)

--  作者:hopestarxia
--  发布时间:2016/7/12 7:56:00
--  通过查询表删除主表的问题
本人做了一个窗口,窗口里有一Table插件,Table插件对应的是一查询表;
窗口下方有一删除按钮,希望点击删除按钮时,能将查询表关联的主要表的数据行删除。
注:查询表里的ID与源表里的ID相同

查询表名为“资产变动视图”,源表为“ZCBD”表和“资产信息”表,
希望在选择“资产变动视图”中某一行后点删除,则自动删除源表“ZCBD”中对应的数据行,然后同时刷新查询表。
现用语句如下:不能完成需求,请指教一下如何才能实现。

If User.IsRole("查看所有并编辑") Then
    
Dim Result As DialogResult
Result = MessageBox.Show("确定要删除该项目吗?","提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
If Result = DialogResult.Yes Then
    If Tables("zcbd").Current IsNot Nothing Then
        If Tables("zcbd").TopPosition>-1 Then
            For  i As Integer=Tables("zcbd").BottomPosition To Tables("zcbd").TopPosition Step -1
                Tables("zcbd").Rows(i).Delete()
            Next
DataTables("zcbd").Save()
        End If
    End If

End If

Else
    MessageBox.show("你无权执行此项操作!")
End If

Tables("资产变动视图").DataTable.Load()

--  作者:Hyphen
--  发布时间:2016/7/12 8:53:00
--  
查询表是不能修改和刷新的,改为sqltable
--  作者:大红袍
--  发布时间:2016/7/12 9:25:00
--  

If User.IsRole("查看所有并编辑") Then
   
    Dim Result As DialogResult
    Result = MessageBox.Show("确定要删除该项目吗?","提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
    If Result = DialogResult.Yes Then
        Dim t1 As Table = Tables("视图")
        Dim dt1 As DataTable  = DataTables("zcbd")
        dt1.DeleteFor("某列 = \'" & t1.Current("某列") & "\'")
        dt1.save
        t1.Current.Delete
    Else
        MessageBox.show("你无权执行此项操作!")
    End If
End If

[此贴子已经被作者于2016/7/12 9:26:06编辑过]

--  作者:hopestarxia
--  发布时间:2016/7/16 10:41:00
--  谢谢
谢谢两位的帮助。