Foxtable(狐表)用户栏目专家坐堂 → 返回一级码是唯一值的所有行的条件表达式


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

主题:返回一级码是唯一值的所有行的条件表达式

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


加好友 发短信
等级:二尾狐 帖子:526 积分:4566 威望:0 精华:0 注册:2018/3/24 18:04:00
返回一级码是唯一值的所有行的条件表达式  发帖心情 Post By:2019/12/21 9:41:00 [只看该作者]

返回一级码是唯一值的所有行的条件表达式
For Each dr As DataRow In dt.Select("", "一级码")

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106206 积分:540153 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/12/21 9:59:00 [只看该作者]

For Each dr As DataRow In dt.sqlSelect("一级码 in (select 一级码 from {某表} group by 一级码 having count(一级码) = 1)", "一级码")

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


加好友 发短信
等级:二尾狐 帖子:526 积分:4566 威望:0 精华:0 注册:2018/3/24 18:04:00
回复:(有点蓝)For Each dr As DataRow In dt.sqlSe...  发帖心情 Post By:2019/12/21 10:19:00 [只看该作者]

老师我在命令窗口测试了下您的代码,不知道我转换的是否正确,测试没有结果,1没有跳出来
For Each dr As DataRow In DataTables("科目汇总").sqlS elect("一级码 in (s elect 一级码 from {科目汇总} group by 一级码 having count(一级码) = 1)", "一级码")
    MessageBox.Show(1)
Next

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


加好友 发短信
等级:二尾狐 帖子:526 积分:4566 威望:0 精华:0 注册:2018/3/24 18:04:00
  发帖心情 Post By:2019/12/21 10:21:00 [只看该作者]

我提出这个问题其实是想解决一级科目目录树重复显示的问题,

图片点击可在新窗口打开查看此主题相关图片如下:重复的科目.png
图片点击可在新窗口打开查看

我做了如下设置,

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

图片点击可在新窗口打开查看此主题相关图片如下:加载窗口代码.png
图片点击可在新窗口打开查看



 回到顶部
帅哥,在线噢!
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106206 积分:540153 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/12/21 10:51:00 [只看该作者]

使用GetValues,http://www.foxtable.com/webhelp/topics/2747.htm,看示例六用法

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


加好友 发短信
等级:二尾狐 帖子:526 积分:4566 威望:0 精华:0 注册:2018/3/24 18:04:00
回复:(有点蓝)使用GetValues,http://www.foxtable...  发帖心情 Post By:2019/12/21 14:26:00 [只看该作者]

老师,这个我目前理解起来有点困难,弄了个一个上午,您帮我做下,我学习下哈
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.foxdb




 回到顶部
帅哥,在线噢!
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106206 积分:540153 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/12/21 14:46:00 [只看该作者]

只有2级,没有必要递归,何况也不是这样递归的。

总账科目下拉,afterload事件
Dim tr As WinForm.TreeView = e.Form.Controls("TreeView1")
Dim rts() As String = {"全部","资产","负债","权益","成本","损益"}
Dim nd As WinForm.TreeNode
Dim dt As DataTable = DataTables("科目汇总")
tr.StopRedraw()
tr.Nodes.Clear
For Each rt As String In rts
    nd = tr.Nodes.Add(rt)
    For Each str As String() In dt.GetValues("一级码|一级科目","一级码 like '" & nd.Index & "%'")
        nd.Nodes.Add(str(0),str(0) & " " & str(1) )
    Next
Next
tr.ResumeRedraw()

 回到顶部