Foxtable(狐表)用户栏目专家坐堂 → 请教excel报表关联表的细节区定义


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

主题:请教excel报表关联表的细节区定义

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


加好友 发短信
等级:三尾狐 帖子:771 积分:6388 威望:0 精华:0 注册:2011/12/1 14:47:00
请教excel报表关联表的细节区定义  发帖心情 Post By:2012/9/17 20:20:00 [只看该作者]

A(父表)-B(子表),excel报表需要定义子表两个细节区,

 

<表A>

<表B>

<表B>

<表A>

 

这种形式是否正确?

 

 


图片点击可在新窗口打开查看此主题相关图片如下:snap009.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2012-9-17 20:23:06编辑过]

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


加好友 发短信
等级:二尾狐 帖子:518 积分:4773 威望:0 精华:1 注册:2011/11/23 20:48:00
  发帖心情 Post By:2012/9/17 20:28:00 [只看该作者]

第五行至第八行,一共四行 都属于表C的细节区

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


加好友 发短信
等级:三尾狐 帖子:771 积分:6388 威望:0 精华:0 注册:2011/12/1 14:47:00
  发帖心情 Post By:2012/9/18 10:50:00 [只看该作者]

请老师给看看

 


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

 

难道是一个关联表只能有一个细节区?

 

 例子:

 

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

[此贴子已经被作者于2012-9-18 11:42:00编辑过]

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


加好友 发短信
等级:等待验证 帖子:3855 积分:20692 威望:0 精华:5 注册:2012/6/21 14:03:00
  发帖心情 Post By:2012/9/18 11:13:00 [只看该作者]

用户已被锁定

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


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

 楼主,你这种需求用模板是实现不了的。

 只能通过写代码完成。上传个例子帮你弄一下。

 参考这个 http://www.foxtable.com/help/topics/1955.htm

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


加好友 发短信
等级:三尾狐 帖子:771 积分:6388 威望:0 精华:0 注册:2011/12/1 14:47:00
  发帖心情 Post By:2012/9/18 11:43:00 [只看该作者]

以下是引用lin_hailun在2012-9-18 11:24:00的发言:
 楼主,你这种需求用模板是实现不了的。

 只能通过写代码完成。上传个例子帮你弄一下。

 参考这个 http://www.foxtable.com/help/topics/1955.htm

啊,太好了,谢谢!我看看先!!

例子在3楼!

[此贴子已经被作者于2012-9-18 11:44:30编辑过]

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


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

代码在报表事件里,修改了模板。注意看。

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



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


加好友 发短信
等级:三尾狐 帖子:771 积分:6388 威望:0 精华:0 注册:2011/12/1 14:47:00
  发帖心情 Post By:2012/9/18 12:50:00 [只看该作者]

好的,谢谢 lin_hailun !  问题解决了。

[此贴子已经被作者于2012-9-18 13:07:04编辑过]

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


加好友 发短信
等级:三尾狐 帖子:771 积分:6388 威望:0 精华:0 注册:2011/12/1 14:47:00
  发帖心情 Post By:2012/9/18 16:07:00 [只看该作者]

以下是引用lin_hailun在2012-9-18 12:09:00的发言:
代码在报表事件里,修改了模板。注意看。

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


 

不好意思,我又回来了,代码似乎有点问题,结果是错乱的.我改成下面这样,还是错乱的。不知何故。。。

 

Select Case e.Book.TempLate
    Case "经销商调查表"
        Dim drs As List(Of DataRow) = e.DataRow.GetChildRows("附属信息")
        Dim i As Integer = 1
        Dim max As Integer = drs.Count
        For Each dr As DataRow In drs
            If i > max OrElse i > 3 Then
                Exit For
            End If
            e.Book.Marks("授权品牌" & i) = dr("授权品牌")
            e.Book.Marks("改装厂" & i) = dr("改装厂")
            i = i + 1
        Next
End Select

 


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


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

 呵呵,不好意思,代码是有欠考虑。

Select Case e.Book.TempLate
    Case "经销商调查表"
        Dim drs As List(Of DataRow) = e.DataRow.GetChildRows("附属信息")
        For i As Integer = 1 To 3
            If i <= drs.Count Then
                e.Book.Marks("授权品牌" & i) = drs(i-1)("授权品牌")
                e.Book.Marks("改装厂" & i) = drs(i-1)("改装厂")
            Else
                e.Book.Marks("授权品牌" & i) = ""
                e.Book.Marks("改装厂" & i) = ""
            End If
        Next
End Select
[此贴子已经被作者于2012-9-18 23:15:26编辑过]

 回到顶部
总数 12 1 2 下一页