以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]查询表根据 国家、省份、市、街道表的变化自动更新汇总  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=104522)

--  作者:湛江智
--  发布时间:2017/7/31 12:13:00
--  [求助]查询表根据 国家、省份、市、街道表的变化自动更新汇总

查询表根据 国家、省份、市、街道表的变化自动更新汇总,请帮忙

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


--  作者:湛江智
--  发布时间:2017/7/31 12:21:00
--  


图片点击可在新窗口打开查看此主题相关图片如下:窗口里增加行,查询表自动更新.png
图片点击可在新窗口打开查看

想实现的效果:
窗口里的国家、省份、市、街道表分别新增加行,查询表自动汇总更新


--  作者:有点甜
--  发布时间:2017/7/31 12:25:00
--  

 参考

 

http://www.foxtable.com/webhelp/scr/2322.htm

 


--  作者:湛江智
--  发布时间:2017/7/31 12:44:00
--  

因为后期,还要利用查询表,生成 国家\\省份\\市\\街道  的文件夹,所以要实现查询表自动填入前面关联表的数据,下午版主帮忙写个代码了

目前能力不足,写不了这个代码


--  作者:有点甜
--  发布时间:2017/7/31 12:45:00
--  
以下是引用湛江智在2017/7/31 12:44:00的发言:

因为后期,还要利用查询表,生成 国家\\省份\\市\\街道  的文件夹,所以要实现查询表自动填入前面关联表的数据,下午版主帮忙写个代码了

目前能力不足,写不了这个代码

 

直接用3楼的查询表不行?为什么一定要填充?

 

如果要生成文件夹,你可以循环每一行,然后生成的。


--  作者:湛江智
--  发布时间:2017/7/31 13:28:00
--  

填充汇总到 查询表,直观,且还想用通用目录树进行复选框,对行筛选

所以很想实现这个功能

快速查找+打开要打开的文件夹,管理文件夹

[此贴子已经被作者于2017/7/31 13:28:45编辑过]

--  作者:有点甜
--  发布时间:2017/7/31 14:47:00
--  

直接用查询表也可以有同样的效果啊。

 

如果确实要填充,参考代码

 

Dim drs1 = DataTables("国家").Select("")
For Each dr As DataRow In drs1
    Dim drs2 = DataTables("省份").Select("所属国家 = \'" & dr("编号") & "\'")
    If drs2.count = 0 Then
        Dim ndr As DataRow = DataTables("查询").AddNew
        ndr("国家") = dr("名称")
    Else
        For Each cdr As DataRow In drs2
            Dim drs3 = DataTables("市").Select("所属省份编号 = \'" & cdr("编号") & "\'")
            If drs3.count = 0 Then
                Dim ndr As DataRow = DataTables("查询").AddNew
                ndr("国家") = dr("名称")
                ndr("省份") = cdr("名称")
            Else
                For Each ccdr As DataRow In drs3
                    Dim drs4 = DataTables("街道").Select("所属市编号 = \'" & ccdr("编号") & "\'")
                    If drs4.count = 0 Then
                        Dim ndr As DataRow = DataTables("查询").AddNew
                        ndr("国家") = dr("名称")
                        ndr("省份") = cdr("名称")
                        ndr("市") = ccdr("名称")
                    Else
                        For Each cccdr As DataRow In drs4
                            Dim ndr As DataRow = DataTables("查询").AddNew
                            ndr("国家") = dr("名称")
                            ndr("省份") = cdr("名称")
                            ndr("市") = ccdr("名称")
                            ndr("街道") = cccdr("名称")
                        Next
                    End If
                Next
            End If
        Next
    End If
Next

 


--  作者:湛江智
--  发布时间:2017/7/31 14:52:00
--  

好的,先谢了


--  作者:湛江智
--  发布时间:2017/7/31 15:10:00
--  
 

国家_DataColChanged里面添加上楼代码进去,查询表重复3次生成。避免重复,且如果该行存在就不生成,代码怎么写呢?


--  作者:有点甜
--  发布时间:2017/7/31 15:14:00
--  

不要在datacolchanged事件写。请做一个按钮。

 

如果存在,加上代码判断 http://www.foxtable.com/webhelp/scr/0396.htm