Foxtable(狐表)用户栏目专家坐堂 → [求助]外部数据表的列表项目和删除问题求助


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

主题:[求助]外部数据表的列表项目和删除问题求助

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


加好友 发短信
等级:幼狐 帖子:59 积分:741 威望:0 精华:0 注册:2008/9/1 16:54:00
[求助]外部数据表的列表项目和删除问题求助  发帖心情 Post By:2012/10/16 21:08:00 [只看该作者]

1、点开列表项目报错,我看了好多遍也没看出来错在那,代码如下:

If e.Node.Level = 1 Then '如果单击的是第二层节点
    Dim ps() As String = e.Node.FullPath.Split("\")
    Dim tr As Row = Tables("收入_tbsr").Current
    Dim dr As DataRow = "SELECT * From {分类} Where [分类] = '" & dr("分类") & "' And [明细] = '" & dr("明细") & "'"
If dr IsNot Nothing Then '如果在行政区域表找到对应的行,则将此行的值写入客户表的当前行.
        tr("分类") = dr("分类")
        tr("明细") = dr("明细")       
        e.Form.DropDownBox.Value = tr("明细") '这行不是多余的,省略此行,无法在表中正常使用此下拉窗口输入数据.
    End If
    e.Form.DropDownBox.CloseDropdown()  '关闭下拉目录树
End If

2、删除按钮要实现的功能是要删除所有选中行,现在一点就全部删掉了,代码如下:

Dim Result As DialogResult
Result = MessageBox.Show("是否删除选定记录!","提示",MessageBoxButtons.OKCancel, MessageBoxIcon.Question)
If Result = DialogResult.OK Then
   DataTables("收入_tbsr").DeleteFor(Tables("收入_tbsr").filter)
   DataTables("收入_tbsr").save()
End If
Tables("收入_tbsr").AllowEdit = False

3、我想在“收入”表里添加记录后自动在“账户”表里的相关记录的收入列的数据同步增加,因为外部数据窗口表,我不会写这个代码了,恳求帮我简单的写下先谢谢!

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:测试项目.rar


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

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


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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2012/10/16 21:39:00 [只看该作者]

1 没看懂你的意思···

2 删除按钮:

Dim Result As DialogResult
Result = MessageBox.Show("是否删除选定记录!","提示",MessageBoxButtons.OKCancel, MessageBoxIcon.Question)
If Result = DialogResult.OK Then
    For i As Integer = Tables("收入_tbsr").count -1 To 0 step -1
        If Tables("收入_tbsr").Rows(i).Checked = True
            Tables("收入_tbsr").Rows(i).Delete()
        End If
    Next
    DataTables("收入_tbsr").save()
End If
Tables("收入_tbsr").AllowEdit = False

[此贴子已经被作者于2012-10-16 21:59:57编辑过]

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


加好友 发短信
等级:幼狐 帖子:59 积分:741 威望:0 精华:0 注册:2008/9/1 16:54:00
  发帖心情 Post By:2012/10/16 22:08:00 [只看该作者]

先谢版主,剩下的问题我明天再详细说明,我的表达能力也很差,呵呵


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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2012/10/16 22:30:00 [只看该作者]

1 这样:?

If e.Node.Level = 1 Then '如果单击的是第二层节点

    Dim tr As Row = Tables("收入_tbsr").Current
    tr("明细") = e.Node.Name

    e.Form.DropDownBox.CloseDropdown()  '关闭下拉目录树
End If


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


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33957 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2012/10/16 22:35:00 [只看该作者]

看图中table有复选框,是不是想选中复选框的行删除?

如果是这样可以看看GetCheckedRows


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


加好友 发短信
等级:幼狐 帖子:59 积分:741 威望:0 精华:0 注册:2008/9/1 16:54:00
  发帖心情 Post By:2012/10/17 8:02:00 [只看该作者]

删除问题解决了,第一个问题一半成功了,不报错了,我要实现的目的是明细列用列表自动输入值的同时分类列要自动输入,不知说清楚了没,谢谢啊各位

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/10/17 9:27:00 [只看该作者]

 问题1

Dim dr As DataRow = "SELECT * From {分类} Where [分类] = '" & dr("分类") & "' And [明细] = '" & dr("明细") & "'"

改成这句

Dim dr As DataRow = LB.Find("[分类] = '" & ps(0) & "' And [明细] = '" & ps(1) & "'")

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/10/17 9:35:00 [只看该作者]

 看了楼主的代码,楼主为什么不直接用 “外部数据表” 添加表来操作?……

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


加好友 发短信 一级勋章
等级:MVP荣誉狐 帖子:5154 积分:31434 威望:0 精华:8 注册:2008/9/8 12:27:00
  发帖心情 Post By:2012/10/17 9:39:00 [只看该作者]

加上:
    tr("分类") = e.node.ParentNode.name

 

就可以了,我以为你会呢。


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


加好友 发短信
等级:幼狐 帖子:59 积分:741 威望:0 精华:0 注册:2008/9/1 16:54:00
  发帖心情 Post By:2012/10/17 13:55:00 [只看该作者]

OK了,谢谢,回8楼:我是试着用纯外部数据来做呢,虽然对写代码不懂,想通过这样做来学习,当然离不开大家的热心帮助。

 回到顶部