BI PUBLISHER RTF模板制作PIVOT表和重分组

重分组介绍
语法:<?for-each-group: BASE-GROUP;GROUPING-ELEMENT?>
用法:重分组可以把XML数据做重新分组,这样数据的展示就不一定必须按照XML数据的结构显示。例如原来的XML数据结构是CD类别->CD信息(名称,年份,国家,价格),我们可以用重分组功能按CD年份->CD国家来显示.

重分组应用
1 按照和XML数据不同的结构显示数据
XML数据格式如下:

<CATALOG>
   <CD>
      <TITLE>Empire Burlesque</TITLE>
      <ARTIST>Bob Dylan</ARTIST>
      <COUNTRY>USA</COUNTRY>
      <COMPANY>Columbia</COMPANY>
      <PRICE>10.90</PRICE>
      <YEAR>1985</YEAR>
   </CD>
。。。。。
</CATALOG>

报表打算按照国家和年份重新分组,用到的重分组如下:

<?for-each-group:CD;COUNTRY?>
<?for-each:current-group();YEAR?> 

这里的current-group()表示当前COUNTRY组下的子分组

2 显示PIVOT报表
XML数据如下:

<ROWSET>
<RESULTS>
 <INDUSTRY>Motor Vehicle Dealers</INDUSTRY>
 <YEAR>2005</YEAR>
 <QUARTER>Q1</QUARTER>
 <SALES>1000</SALES>
</RESULTS>
<RESULTS>
 <INDUSTRY>Motor Vehicle Dealers</INDUSTRY>
 <YEAR>2005</YEAR>
 <QUARTER>Q2</QUARTER>
 <SALES>2000</SALES>
</RESULTS>
<RESULTS>
 <INDUSTRY>Motor Vehicle Dealers</INDUSTRY>
 <YEAR>2004</YEAR>
 <QUARTER>Q1</QUARTER>
 <SALES>3000</SALES>
</RESULTS>
。。。。
         
</ROWSET>

如果想按年份生成PIVOT表,可以用如下TAG实现:

<?for-each-group@column:RESULTS;YEAR?>
<?YEAR?>
<?end for-each-group?>
<?for-each-group:RESULTS;INDUSTRY?>
<?for-each-group@cell:current-group();YEAR?>
<?sum(current-group()//SALES)?>
<?end for-each-group?>
<?end for-each-group?>

这里的@cell是给每个组生成一个CELL

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值