Foxtable(狐表)用户栏目专家坐堂 → [求助][求助]我这个帖子实现的动态列加入查询结果中,版主告诉我用临时表,但是我作报表的时候又遇见了新的问题,谢谢大家帮我看看,问题在最后


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

主题:[求助][求助]我这个帖子实现的动态列加入查询结果中,版主告诉我用临时表,但是我作报表的时候又遇见了新的问题,谢谢大家帮我看看,问题在最后

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/22 14:12:00 [显示全部帖子]

1、把AB表用连接查询的方式,把要生成的数据取得;

 

2、根据那个查询表去设计模板。

 

http://www.foxtable.com/help/topics/2321.htm

 

http://www.foxtable.com/help/topics/1542.htm

 

-------不会做,就请上传具体例子。


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/22 14:14:00 [显示全部帖子]

 有或者换一种方式,根据子表生成报表,引用父表的内容

 

-------不会做,就请上传具体例子。


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/22 15:15:00 [显示全部帖子]

 多表连接查询而已啊,两个表跟三个表四个表都是一样的啊。

 

 不会做,就请上传具体例子。


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/22 16:05:00 [显示全部帖子]

 呃,你要生成交叉表头?参考,先生成表,再填充数据。比直接写sql语句要简单

 

http://www.foxtable.com/help/topics/2394.htm

 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/22 16:20:00 [显示全部帖子]

参考代码

 

Dim dtb As New DataTableBuilder("临时表")
dtb.AddDef("工程名称", Gettype(String), 16)
Dim prds As List(of String) = DataTables("单位类型").GetValues("单位类型")
For Each prd As String In prds
    dtb.AddDef(prd, Gettype(String), 16)
    For Each s As String In DataTables("人员岗位").GetValues("人员岗位")
        dtb.AddDef(prd & s, Gettype(String), 16)
    Next
Next
dtb.Build()
Dim dt As DataTable = DataTables("临时表")
For Each dr As DataRow In DataTables("施工记录").Select("")
    Dim ndr As DataRow = dt.AddNew
    ndr("工程名称") = dr("工程名称")
    For Each cdr As DataRow In DataTables("单位名称").Select("工程名称 = '" & dr("工程名称") & "'")
        If dt.DataCols.Contains(cdr("单位类型")) Then
            ndr(cdr("单位类型")) = cdr("单位名称")
            For Each ccdr As DataRow In DataTables("人员名称").Select("单位名称 = '" & cdr("单位名称") & "'")
                Dim cname As String = cdr("单位类型") & ccdr("人员岗位")
                If dt.DataCols.Contains(cname) Then
                    ndr(cname) = ccdr("人员名称")
                End If
            Next
        End If
    Next
Next


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/22 16:44:00 [显示全部帖子]

 可以用。

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/22 22:50:00 [显示全部帖子]

在最开始那里赋值

 

Dim dtb As New DataTableBuilder("临时表")
dtb.AddDef("工程名称", Gettype(String), 16)

dtb.AddDef("第二列", Gettype(String), 16)

dtb.AddDef("第三列", Gettype(String), 16)
Dim prds As List(of String) = DataTables("单位类型").GetValues("单位类型")
For Each prd As String In prds
    dtb.AddDef(prd, Gettype(String), 16)
    For Each s As String In DataTables("人员岗位").GetValues("人员岗位")
        dtb.AddDef(prd & s, Gettype(String), 16)
    Next
Next
dtb.Build()

Dim dt As DataTable = DataTables("临时表")
For Each dr As DataRow In DataTables("施工记录").Select("")
    Dim ndr As DataRow = dt.AddNew
    ndr("工程名称") = dr("工程名称")
    ndr("第二列") = dr("第二列")
    ndr("第三列") = dr("第三列")


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/22 23:14:00 [显示全部帖子]

 呃,是。

 

Dim dtb As New DataTableBuilder("临时表")
For Each dc As DataCol In DataTables("施工记录").DataCols
    dtb.AddDef(dc.Name, Gettype(String), 16)
Next
Dim prds As List(of String) = DataTables("单位类型").GetValues("单位类型")
For Each prd As String In prds
    dtb.AddDef(prd, Gettype(String), 16)
    For Each s As String In DataTables("人员岗位").GetValues("人员岗位")
        dtb.AddDef(prd & s, Gettype(String), 16)
    Next
Next
dtb.Build()

 


 回到顶部